Como treinar seu robô – AI para todos

No filme " How To Train Your Dragon ", os personagens vivem em uma ilha chamada "Berk" (Obrigado, Stephanie Ehrenberg ), e eles aprendem que os dragões não são malvados, eles são apenas "incompreendidos", e você pode treiná-los e montá-los e coisas e eles não vão comer você.

A única coisa que o filme e este artigo têm em comum é que meu nome é realmente Burke (soletrado CORRETAMENTE) e eu precisava de um título. Também treinei um robô esta semana e estou me sentindo bem.

Eu tenho trabalhado muito com o Processamento da linguagem natural no Azure. Azure chama esse serviço LUIS . Então LUIS é meu robô e eu treinei para me entender quando eu pedi para ligar ou desligar as luzes em uma sala específica. No processo eu aprendi algumas coisas …

  • Inteligência artificial pode por louco inteligente, mas você realmente precisa treiná-lo
  • Ferramentas de Aprendizagem de Máquinas vieram um LONGO caminho
  • Se você não tomar café da manhã e beber muito café, certifique-se de ficar perto de um banheiro

Vamos dar uma olhada em como ensinar a LUIS a processar um comando simples como "Desligue as luzes da cozinha".

LUIS

A Microsoft expõe o serviço LUIS através do site luis.ai. Você não tem que ter uma conta Azure para usá-lo, mas você precisa ter um endereço de e-mail. Se você não possui um endereço de e-mail, seu nome provavelmente será "Brenden Frasier". Mas eu significo especificamente "Blast From The Past" Brenden Frasier.

O que aconteceu com você, Brenden? Você nos deixou e nem sequer se despediu.

O LUIS opera em dois conceitos principais: as intenções e as entidades. Uma intenção é uma ação ou idéia específica de um usuário. Eles poderiam vocalizar essa ação de várias maneiras diferentes, mas sua "intenção" subjacente permanece a mesma. Por exemplo, no caso de "Ligar as luzes da cozinha", o usuário pode tentar fazer isso de várias maneiras diferentes, incluindo, entre outras, …

  • Ligue as luzes da cozinha
  • Ligue as luzes na cozinha
  • Ligue as luzes na cozinha
  • Luzes de cozinha. Em. AGORA.

As entidades são as peças de informação que queremos analisar da intenção. Neste caso, é Localização (isto é, cozinha, sala de estar, pool house – apenas brincando, não tenho uma casa de bilhar. Eu mal tenho uma casa) e Light State (ligado ou desligado).

O site LUIS é bastante simples de usar. É difícil até mesmo arruiná-lo.

Coloquei duas e duas juntas e percebi que precisava clicar no botão "Criar nova intenção".

Então, quer que você entre em alguns enunciados. O "enunciado" do mundo tem que ser a palavra menos majestosa na língua inglesa. Ninguém nunca disse, "Eu gosto de ouvir seus enunciados". Ou talvez eles tenham e você tenha estado naquele mau encontro.

Comecei com 3 que listei acima.

Agora quer que você crie algumas entidades e rotule as partes do enunciado que deseja extrair. Você faz isso simplesmente mousing sobre as palavras e atribuindo-lhes as entidades. Criei minhas duas entidades como entidades simples. Você pode criar muitos outros tipos de entidades, mas não entendo perfeitamente o que são e você provavelmente deve verificar os documentos .

Agora eu posso rotular meus enunciados com entidades. Você faz isso clicando apenas em uma palavra e rotulando-a selecionando a entidade. Quando terminar, parece assim …

Agora, nós conseguimos o "trem" do modelo. Esta é a minha parte favorita, porque envolve apenas clicar no botão "Treinar" e, em seguida, ir ao twitter para se gabar de como eu sou um cientista de dados.

Agora, vamos testar nosso modelo. É aí que as coisas ficam divertidas e interessantes. Clicando no botão "Teste", abre um pequeno painel lateral onde posso inserir um enunciado. Ao clicar no enunciado depois que eu entrei, ele abre outro painel onde podemos ver o que o LUIS faz disso.

Funciona! Agora vamos começar com o negócio de ver se podemos enganar essa AI.

Se eu disser "por favor, desligue as luzes da cozinha", LUIS apenas pega o local.

O que me faz pensar se a LUIS sabe mesmo que é uma escolha válida para Light State.

Não. Eu preciso adicionar um enunciado ao modelo para lidar com isso.

Vamos re-treinar e tente novamente. Cada vez que fazemos alterações no modelo, como adicionar enunciados, devemos clicar novamente no botão "Treinar". Também outro bom momento para fazer um pouco mais de se gabar no Twitter.

Parecendo melhor! O que acontece se tentarmos uma sala com duas palavras. Algo como "sala de estar".

Não pode lidar com isso. Então, adicionamos outro enunciado e rotulamos a "sala de estar" como "localização".

Agora funciona, mas se eu ligar e dizer "Desligue as luzes da sala de estar", a LUIS só obtém a localização. Mais treinamento!

Depois de passar cerca de uma hora tentando enganar o robô, tenho as seguintes expressões e rótulos.

E é bastante sólido. Eu posso dar quase absurdos absurdos e pode escolher a sala e o estado da luz.

Bem, às vezes…

Eu acho que preciso treinar esse robô na bela arte do memery.

Quando terminar, LUIS expõe esta AI a partir de um ponto de extremidade HTTP simples. Posso então usar isso para criar um bot ou consumi-lo da minha aplicação. Usei o Azure Bot Service junto com Twilio e uma Função Azure sem servidor para criar um botão de texto. Eis a glória!

Treine o seu próprio

Gostei de aprender a usar LUIS. Mais do que tudo, sou encorajado porque sinto que "posso fazer isso!". Eu fui super cético em AI e Machine Learning pelo único motivo de que você se sente como se fosse um físico teórico para descobrir e mal posso amarrar meus sapatos.

A ferramenta está chegando ao ponto em que podemos começar a criar o AI em nossos aplicativos, e você não tem um doutorado para fazê-lo.

Você pode treinar seu próprio robô indo até luis.ai.