Rede neural "faça você mesmo" do zero. Parte 1. Teoria

Olá. Meu nome é Andrey, sou desenvolvedor front-end e quero falar com vocês sobre um tópico como redes neurais. O fato é que as tecnologias de ML penetram mais profundamente em nossas vidas, e muito foi dito e escrito sobre redes neurais, mas quando eu quis entender esse problema, percebi que existem muitos guias na Internet sobre como criar uma rede neural e eles se parecem da seguinte maneira:





  1. Pegue o Tensorflow





  2. Nós criamos uma rede neural





Mais informações estão espalhadas em blocos por toda a Internet. Portanto, tentei colocá-lo junto e apresentá-lo neste artigo. Vou fazer uma reserva imediatamente que não sou um especialista em BC ou biologia, então em alguns lugares posso estar impreciso. Nesse caso, ficarei feliz em receber seus comentários.





Enquanto escrevia este artigo, percebi que estava recebendo uma longa leitura um tanto volumosa, então decidi dividi-la em várias partes. Na primeira parte falaremos de teoria, na segunda escreveremos nossa própria rede neural do zero sem usar nenhuma biblioteca, na terceira tentaremos aplicá-la na prática.





Como esta é minha primeira postagem, eles aparecerão à medida que a moderação avança, após o que adicionarei links para todas as partes. Então vamos começar.





Rede neural "faça você mesmo" do zero. Parte 2. Implementação





Rede neural "faça você mesmo" do zero. Parte 3. Triste Ou Feliz?





. - . .





, . . , , , , , , , . 





, , , . , .





. , , , , . - - - .





: , - .





, . . .





, , , , , , .





- . , , , .





IT

, , ? 





, , , , . , . 





, , - , .





, , . , , .





, .





, , . . , .





, , , . . , . , . .





- , . 





, , . , , , , . , , . , . .





.

, , . . , 0 1 0,5 0. . :





f (x) = 1 / (1 + e ^ -x)

0 1. , , > 0.5, , - .





, . , , ( ), , , . , -0,5 0,5. 





 





1 * 0,43 + 0 * 0,18 + 1 * -0,21 = 0,22





, , .





sigmoid(0,22) = 1 / (1 + e^-0,22) = 0,55





0,60.





, , 0,60, .





, . , , . , .





. , .





error = 0.60 - 0 = 0.60





, . , .





sigmóide (x) dx = sigmóide (x) (1 - sigmóide (x))





delta = 0.60 * (1 - 0.60) = 0.24









weight = weight - output * delta * learning rate





weight - , output - , delta - , learning rate - , , . - , . learning rate 0,3. :





w = 0,22 - 0,55 * 0,24 * 0,3 = 0,18





:





w = 0.47 - 0.60 * 0.24 * 0.3 = 0.43





, , , . , . . :





error = 0.18 * 0.24 = 0.04





, , , , . .





, , . , .








All Articles