Uma rede neural promissora ou apenas outra besteira?

Nós, uma pequena equipe de desenvolvimento de um dos departamentos da YaKurier, realmente queríamos contribuir para o rápido desenvolvimento do espaço de tecnologias não tripuladas. Comprou um Prius para experimentação, um pouco de periferia, concebeu seu próprio truque com o foco do sistema inteligente, imitando a atenção do motorista. Nós começamos. E o que dizer do próprio sistema de visão computacional inteligente e, com ele, do sistema “subinteligente” que garante a detecção da novidade, ou seja, essa mesma atenção?



TensorFlow ou algo semelhante - pronto? Vários experimentos deixam claro que para casos multifatoriais dinâmicos com rearranjos de matrizes de entrada, muitas subtarefas, incerteza óbvia de muitas classes de dados reconhecidos, a escalabilidade inevitável do sistema durante o desenvolvimento, com o desejo de adicionar as convoluções e camadas de seu próprio autor, a opção é "pronta", por incrível que pareça, requer suor, sangue, orçamentos e frustração por erros nas primeiras etapas, que estragam tudo e que não podem mais ser consertados (exceto com muletas chatas). E como somos um time bastante ingênuo, decidimos jogar do nosso jeito. Há uma opinião de que a questão não está no TensorFlow, mas na tecnologia que ele implementa, e seremos capazes de simplificar, melhorar e mudar algo completamente.



Vamos falar primeiro sobre as abordagens de classificação e reconhecimento de padrões, temos certeza de que você sabe tudo sobre eles, mas onde você pode ir sem o eyeliner. Vamos nos ater a abstrações e visualizações mais humanas em vez de falar em uma linguagem matemática estrita e considerar um caso abstrato de reconhecimento de pepinos e tomates convencionais.



Classificação e reconhecimento de padrões



- , , : ( ) ( ). «», , // , , , , , , x_1 x_2.



imagem



, , x_1: (-1), (+1); x_2: (-1), () 1/5 (+1). – , – , . , , , , , 1 {(x_1=0,53@x_2=0,77)} – , 2 {(x_1=-0,51@x_2=-0,82)} – .



, , – – 2 . , , , -, , -, , , , , , , 900 (3030 px) , 900- . , , , (, ).



? , . , , , - ? , , . , . , , : , , , , , :

imagem



, 4- , .. N- .



II-



, , . , , , . :



imagem



: Ax+By+C=0, A, B C w_1, w_2 -v_1, {x;y} {x_1;x_2 }. , N- – N-1. 0, () , , – « », – « », () – . «», «» «- » , - , (. ). . , , . .

imagem



0, «» « », «», «» « » « » 1- .



w (k)/j, , N- – . , , , . , 0 1 .



imagem



– , ( , – ):



imagem



– , , ( ), Ax2+By2+Cxy+Dx+Ey+F=0, . - , , ( , ). , / , , . .



, - . – , , , – , – . : S-, A-, R- . , , MNIST, : , , :



imagem



/ …



! , 1- :



imagem



. . -, , , , , (cost function) , , , . , - , «» , , , , , , , , , , , , – ( – , – ):



imagem



-, , , , , - , . , , , , , . . . 2-- - :



imagem



? , x_1: – (-1), – (+1); x_2: – (-1), 1/5 – (+1). , 2- - , , 900- ? , 1- , – . , . , II- – , , .



. , , , , . . , , .



, , , , .





, , , , : , , , / , , . , , , , , , , , , , - .



. ? -, , , -, , , , . , , . , , , – .



imagem



? {0;0;0} {2;0;2} , {2;2;0} – . , , . , , , , , , , .. , . , , , , , , , , .



. , , , , , , , , .



:



imagem



imagem



w_i – , b_i – , . h. , /, , – .



? , , , , , – . . , , , , , GPU CUDA.



MNIST, 28x28 px. 10 10 , , – . , , .



, , , , , 30÷60 .



, , , . – MNIST, – , – .



imagem



imagem



, , . , , .



« » .



( « »), , « » « ». , , , , «».



, , , (), , , ( , ). , TensorFlow 2- , , MNIST 2,6%, . , .



imagem



MNIST (10 000 ) « ».



, + 25%:



imagem



imagem



:



imagem



imagem



:



  • ;
  • , , , .


:



  • , , , , ;
  • ;
  • , , ;
  • .

    , , , , , .




Hmm, o que a tecnologia não tripulada mencionada no início tem a ver com isso? Estamos confiantes que é nesta área que a nossa rede inteligente encontrará as suas principais aplicações, permitindo-nos ultrapassar as barreiras existentes associadas à multiplicidade, variabilidade e heterogeneidade na percepção e reconhecimento do ambiente.




All Articles