DZ Online Tech: ABBYY. Como não se confundir em redes neurais?

Pelo segundo ano, nós (DZ Systems) filmamos uma série de programas de transformação digital. Geralmente, esses são programas "relacionados aos negócios", direcionados principalmente aos principais gerentes e projetados para ajudar a entender o valor comercial do que é chamado de transformação digital.

Mas neste ano, também estamos filmando a segunda "linha" de programas - DZ Online Tech, agora já focada nos aspectos tecnológicos do mesmo tópico. Em resumo - isso é "sob o capô".

Abaixo está uma transcrição de outra transmissão em que Ivan Yamschikov e eu (Yandex, ABBYY e um profissional de classe alta em geral) falamos sobre o uso de redes neurais no mundo moderno.

Se estiver interessado, você pode assistir ao próprio programa .

E para quem gosta de ler - uma transcrição abaixo:

Olá. Nosso convidado hoje é Ivan Yamshchikov, da ABBYY, que
nos dirá como a inteligência artificial moderna funciona.
No que diz respeito à IA, existem condicionalmente duas posições: pessoas que dizem: “Nós não queremos
não entendo nada sobre a essência do que está acontecendo no sistema. Temos métodos estatísticos,
que eles mesmos tirarão o modelo da vida externa. Este modelo estará correto, será
Sinta todas as sutilezas semânticas. " E há pessoas que dizem: "Não, isso é
não é permitido Entendemos o que está acontecendo. Nós devemos colocar esse entendimento no sistema.
inteligência artificial, e então será mais valioso, melhor e melhor. " Esta batalha
Tem algum critério?

"Deixe-me explicar em uma linguagem menos filosófica." Há pessoas que dizem: “Precisamos de mais
Algoritmos mais fortes e poderosos e mais dados. Vamos levar mais
um algoritmo produtivo, e isso nos dará uma qualidade alvo maior em um volume maior
métricas, não importa o quê. " Não conheço pessoas que dizem que não precisam de dados ou
Algoritmos Portanto, o segundo grupo de pessoas, na minha opinião, tem a seguinte abordagem: “Além de
de tudo isso, seria bom ainda termos marcas humanas de uma forma ou de outra, algum tipo
conhecimento especializado, adicione por cima ".

Há uma piada no Google que é frequentemente citada: menos linguistas trabalham
produto, melhor será a qualidade final. Essa piada é provavelmente justificada pela prática.
serviços B2C em massa. Mas quando falamos de B2B no contexto de supermercados restritos
soluções, no contexto de uma tarefa claramente definida e de um campo bem definido,
o conhecimento especializado começa a desempenhar um papel bastante importante. Combinamos dentro da ABBYY e
modelos ontológicos que os linguistas constroem e abordagens puramente de aprendizado de máquina.

- Quero dar um exemplo: fizemos um projeto para o Mosvodokanal. Havia uma tarefa assim:
Mosvodokanal é uma rede complexa, de alguma forma funciona e de alguma forma se comporta. E eu quero algo
então, para entender, é aconselhável prever acidentes, sentir quando algo está errado
acontecendo.

- Você fez um sistema de monitoramento.

- Sim, fizemos algum tipo de sistema de análise de comportamento, que deveria dizer: “Nesse
algo está errado no canto. ” Realmente não podemos dizer se isso é um acidente ou apenas uma flutuação.
comportamentos porque são fisicamente indistinguíveis ...

- Eu fiz o mesmo sistema para monitorar o tráfego.

- Um tópico muito parecido. Durante o projeto, brigamos com engenheiros que disseram:
“Escute, você está fazendo lixo. É necessário medir todos os tubos, seus diâmetros externos e
interno e insira informações sobre a suavidade das paredes. E depois conte
modelo hidrodinâmico, e ela mostrará tudo ". E dissemos: “Não.
Dê-nos os dados dos sensores, vamos direcioná-los para o modelo estatístico e ela, sem saber nada sobre
física, funcionará de qualquer maneira, porque eliminará o comportamento real ". É hetero
o caso final do que estamos falando. Por um lado, esse é o conhecimento final.
a física do trabalho do fenômeno que embalamos semanticamente diretamente, e o segundo
lado é o mal-entendido final. Nós não entendemos como isso funciona
hidrodinâmica - nem queríamos entender isso.

- A arrogância é muito característica de pessoas que conhecem bem as estatísticas. Como Mark disse
Twain: "Existem três tipos de mentiras - mentiras, mentiras descaradas e estatísticas".

- Acabamos vencendo-os por um motivo muito simples: coletar informações sobre todos
esses tubos são impossíveis. Mas, por outro lado, alguma profundidade de conhecimento do assunto
área não pode ajudar, mas.

- As pessoas que são os veículos desse conhecimento acreditam que é verdade, porque é
sua área de atuação. Mas, ao mesmo tempo, de fato, entendemos sobre linguagem natural, com
ciência da computação, muito menos do que gostaríamos, porque muitos
termos e categorias não são definidos matematicamente, mas intuitivamente. Isso leva ao fato de que
aquelas pessoas que vêm completamente do lado da ciência da computação, é compreensível
desconfiança das pessoas que vêm do lado da linguística e vice-versa. Na ABBYY, é
decidiu que ambos trabalham no produto, são responsáveis ​​por diferentes partes e você
é possível medir quanta qualidade isso e isso adicionam a você. Este é o caminho
testes e experimentos.

- Este também é um grande problema. Todos sabemos que há um problema de otimização local.

Claro. Isso é reciclagem. Mas com muita frequência coisas relacionadas a
as abordagens linguísticas permitem lidar com a reciclagem. Como os linguistas geralmente tentam criar alguma regra geral, e então há uma grande e maravilhosa história
sobre exceções. Quem leu o livro de Rosenthal sobre russo na escola fica perplexo:
oh meu deus, o que os filólogos fazem? Eles chamam as regras o que realmente
é ...

- Um conjunto de exceções.

- Mas, em essência, esta é exatamente a mesma história sobre o erro no teste. Se você olhar com
ponto de vista de aprendizado de máquina, um número muito grande de regras lingüísticas
abranger um número bastante grande de exemplos e deixar algum erro
dados de teste. Se você seguir essas regras e aplicar aos dados que seu modelo
Eu nunca vi, o modelo neste lugar está errado. Mas muitas heurísticas linguísticas
permitem proteger-se da reciclagem.

- Ouvi corretamente que, se pegarmos um livro em russo e o dirigirmos
no modelo, extrapolando essas regras, o modelo está necessariamente errado?

Claro. Isso mesmo. Quaisquer regras estritas sempre levarão a erros, porque,
infelizmente ou felizmente, a inteligência artificial é muito mais flexível do que um conjunto
regras simples.

- Isso também se deve ao fato de que quando falamos em formalizar as regras da natureza
linguagem, estamos neste lugar inevitavelmente envolvidos em uma tarefa insolúvel. Profundidade disso
o processo é interminável.

- Esta é uma questão filosófica. No nível da máquina, a profundidade não parece infinita, mas há
um artigo interessante, na minha opinião, 2015. Uma breve excursão: existe uma seção dessa matemática,
que é chamado de teoria da informação. Em particular, é usado na teoria da codificação.
Na Rússia, foi fabricado por Kolmogorov e colaboradores, nos EUA - por Shannon. Primeiro de tudo
inventado no contexto da criptografia.

Na teoria da informação, existe algo como "informação geral". Se completamente nos dedos
diga: imagine como os significados de uma palavra em um texto se correlacionam
dependendo da distância entre eles. Imagine essa métrica. Se eu tenho aqui
diz "Petya", depois n-palavras e depois a palavra "comeu". De fato, as palavras "comeu" e "Petya"
correlacionar, apesar do fato de que a palavra "comido" pode estar bem longe de "Petit".
Se construirmos estatisticamente um modelo dessas correlações, verifica-se que, em função de
distâncias, essas informações gerais nos textos diminuem bastante lentamente - não polinomialmente, mas
mais devagar. Grosso modo, nos textos em linguagem natural há uma correlação entre palavras,
distantes.

A mesma coisa é observada nos "textos" do DNA: nossos nucleotídeos também se correlacionam em
distância relativamente grande. Em particular, esse tipo de sistema está tentando descrever
teoria da complexidade, etc. A história toda sobre o efeito borboleta - é sobre isso, que você tem um pouco
desvio em um só lugar pode levar a algumas mudanças significativas até agora.
A linguagem natural é descrita por dependências desse tipo. Agora, digamos LSTM (Long
Rede de Memória de Curto Prazo) é considerada a mais avançada, em termos de memória,
uma rede usada para analisar o idioma apenas para fazer esses amigos de longo alcance
para pegar correlações de um amigo. Aqui ela, a infecção, a memória diminui mais rápido do que o necessário.
Este é um grande tópico para pesquisa. Em particular, nós do Instituto Max Planck estamos tentando
fazer. Há um resultado interessante da teoria dos grafos, que diz que se você tiver ciclos na sua rede, ela deverá ter mais memória. Sabemos que em nosso cérebro existem alguns
essas são frequências características e existem ciclos no cérebro. Um sinal corre ao longo deles, os neurônios estimulam
um ao outro em um círculo com uma determinada frequência. Em redes neurais artificiais, ainda estamos
não pode se reproduzir.

"Por que não podemos?" Adicione loops! Por favor, preencha os ciclos da bolsa.

"E eu vou te dizer." Como aprendemos redes neurais? Usando retropropagação
erros. A propagação de volta de um erro é quando você tem uma passagem neural direta
rede e reverso.

- Assim que houver ciclos, inicie imediatamente problemas com o loop deste
erros?

Sim! O que fazer Como fazer a propagação de volta?
Amigos, façam a propagação de volta no ciclo e vocês farão um poderoso avanço no desenvolvimento
inteligência artificial. Eu digo a todos: precisamos fazer isso, é muito legal. É real
uma tarefa difícil.

- E se essas pessoas que lidam com o cérebro descobrem como ele funciona no cérebro, é
pode ser colocado? Parece que hoje o antropomorfismo do que estamos fazendo é
muito baixo

- Vamos lá: o que é comum entre o ImageNet do Google e o marisco? Acontece mais ou menos
só isso. Inicialmente, o molusco foi desmontado e viu que seus campos visuais estavam dispostos como
redes de convolução modernas, se quiser. Era uma vez nos anos 50, Rosenblatt e seus camaradas
desmontado e surgiu com um perceptron, olhando principalmente para coisas vivas e muito simples. Eles são
pensamos que agora entenderíamos como os organismos primitivos funcionam, e então começaremos a construir
complicado.

- Por que eles não tiveram sucesso? Naqueles dias, acreditava-se que o perceptron não estava vivo.
Não há energia suficiente?

- Houve muitos problemas. Vamos lá: havia vários invernos de IA, ou seja, pessoas todas as vezes
invente um novo avanço no campo da inteligência artificial e pense: "É isso aí,
Jarvis será meu melhor amigo amanhã e se comunicará comigo melhor que o meu
psicanalista ". E então algo acontece, como o mesmo Jarvis. Eu amo muito essa piada
do filme "Homem de Ferro", onde a princípio tudo corre bem, e então você pronuncia
alguns cranberries. Então Jarvis diz ao personagem principal quando ele pergunta se ele depurou
todos os sistemas.

- Como fica praticamente? Onde estão as restrições, se você usar o aplicativo
lado?

- Primeiro, agora mesmo as coisas mais poderosas que coletamos artificialmente, fortemente
menor que o nosso cérebro simplesmente em ordem de magnitude.
E o segundo ponto está relacionado ao fato de não entendermos por que eles funcionam. É separado
grande área de pesquisa.

- Parece que eles já estão começando a contar.

- Primeiro eles descobriram o que funciona, depois começaram a descobrir como funciona.
Há uma direção separada sobre como visualizar a operação de uma rede neural. Existe um separado
um formalismo matemático chamado Decomposição da Informação, que tenta descrever
como é a decomposição das informações em diferentes fluxos dentro da rede para entender o que
que camadas está acontecendo. Com imagens, começa a aparecer e a última aparece
alguns anos. Com textos está ficando mais difícil.

Por que não entendemos como isso funciona? Porque não temos matemática boa
um resultado que explicaria tudo para nós. Não temos um teorema comprovado que diria
que funciona. Porque, digamos, no nível de uma rede neural convolucional: você tem
imagem, um cachorro é desenhado nele. Existem tantos pixels nesta imagem, cada um
pixels, existem muitos valores. Se você tentar contar em conjunto a quantidade
opções para uma combinação de pixels que ainda somam um cachorro - você se cansa. At
você deveria ter um espaço dimensional bastante grande e muitas opções
decisões. Além disso, se você começar a treinar uma rede neural convolucional com o número
parâmetros são muito inferiores ao número de possíveis imagens de um cão, você treina
de uma maneira relativamente simples. Ela diz na saída: é um cachorro ou não, mas
você diz sim ou não. De repente, depois de um tempo, acontece que ela pode
dê muito boa qualidade nas fotos de cães que ela não viu.

- O grau de generalização é inesperadamente alto?

- Sim, este é um grau inesperado de generalização. Todo mundo chegou a um acordo com o fato de que funciona, todo mundo
aplicá-lo em qualquer lugar, mas resultado matemático estritamente fundamentado, o que
explicou por que esse grau de generalização é possível, não. E há várias hipóteses, uma
dos quais me parece o mais interessante. Não é o que está acontecendo em todo mundo
neurônio e como você conecta esses neurônios. A própria estrutura da rede, aparentemente, para você
permite alcançar uma certa generalização em um determinado nível. É interessante
hipótese, porque se é verdade, então está bem conectada à neurofisiologia, e então
você pode pegar e tentar outra coisa na neurofisiologia. Existem outros
suposições, mas esta é uma pergunta: as pessoas agora escrevem kg de artigos por mês sobre como
funciona.

- Há um sentimento de que Python é uma linguagem de IA. Isso é um acidente ou não? Porque
Afinal, em Python, existem muitos Basic.

- Porque grande parte do trabalho de um cientista de dados agora é de
prototipagem. É conveniente prototipar em Python, ele foi criado como uma linguagem para
prototipagem e não como linguagem para soluções industriais. Nós da ABBYY temos pessoas
que prototipam em Python e há pessoas que escrevem modelos finais em C ++,
que estão sendo implementados. A comunidade Python está usando ativamente essa onda e há um feedback positivo. Existe uma demanda, ou seja, a ciência de dados está sendo cada vez mais feita em
Python, respectivamente, a comunidade começa a ficar saturada com pessoas que estão tentando
desenvolver a própria linguagem. Tudo isso está conectado.

- Quando falamos de prototipagem, envolve executar uma grande
número de testes, experimentos. Há um problema com a computação
recursos.

- Os próprios recursos de computação ficaram mais baratos, existem soluções em nuvem que tornaram
a preços acessíveis. Grosso modo, um aluno com acesso à Internet pode brevemente
dinheiro para obter um servidor bastante poderoso, a fim de impulsionar algo nele e alguns
obtenha o modelo e parafuse a AI, por exemplo, na cafeteira. Havia muitos fatores que
dirigir um ao outro. Devido à Internet, o limite para entrar na programação e no
tecnologia em geral. Um monte de ferro relativamente barato apareceu, também entrou em
a nuvem Você pode ganhar tempo, não ferro. Muitos dados ao vivo apareceram.

Por exemplo, nos anos 80, as pessoas envolvidas na ciência de dados tinham um problema fundamental: onde
pegar dados? E agora, para várias tarefas aplicadas, fica claro onde obtê-las.
Elementos-chave do aprendizado de máquina: algoritmo, dados e hardware nos quais esse
o algoritmo funciona. Todas essas três opções se tornaram mais acessíveis. Nesse caso, o algoritmo tornou-se
mais acessível, no sentido de que existem soluções in a box de boa qualidade. Eles são
implementado em uma linguagem com uma sintaxe simples e intuitiva, baixa
nível de entrada e um monte de recursos educacionais.

- Os caras da Microsoft contaram a história de como um pequeno grupo adotou uma rede neural
e o modelo de negócios de uma empresa pequena e simples que entregava pão. E de paus e
de cordas, acabou por construir um modelo que otimizou esse negócio e deu + 10%
para eficiência. É provável que essas imagens sejam uma exceção ou uma regra?

- Isso é uma regra. Na minha opinião, Kelly (um famoso futurologista) tem uma boa palestra sobre
IA futura, na qual ele diz que em 20 anos eles nos tratarão da mesma maneira que
Tratamos aqueles que foram pioneiros da Internet. Estamos dizendo agora: “Como foi fácil para você em 90 a
e anos para fazer negócios na Internet. ” E em 20 anos eles também vão nos tratar, dizendo: “Como
Foi fácil fazer negócios com a IA. Ele pegou qualquer coisa, adicionou a IA e se tornou um líder nesse
categorias ". Pelo menos essa é a opinião de Kelly, e eu a compartilho.

- Você e eu experimentamos uma certa quantidade do que está acontecendo no setor e vimos isso
a imagem em que o que agora é mercadoria já foi um estado da arte. Baseado no seu
experiência, podemos aconselhar as pessoas que agora fazem parte da tecnologia de IA
e como eles devem se mudar?

- Eu tenho duas dicas que me parecem razoáveis. Primeiro, não faça um no canto.
Encontre duas pessoas com ideias semelhantes, trabalhe umas com as outras e mostre
o que você está fazendo na comunidade em geral? E segundo, pense menos sobre
modelos específicos que você usará porque eles mudarão,
melhorando. E se você não está no nível agora para melhorá-los, você
você precisa saber menos sobre como exatamente esse modelo funciona e por que é melhor. Você precisa
pense mais sobre o problema que está resolvendo.

Source: https://habr.com/ru/post/pt418935/


All Articles