Notação para Deep Learning

2021-10-15 | aprates.dev

[1] Read this post in english

Um computador mereceria ser chamado de inteligente se pudesse enganar um humano fazendo-o acreditar que era humano. - Alan Turing

Matemática profunda, ufff…

Em meados de 2021 comecei a mergulhar em um curso de aprendizado de máquina (machine learning) que pensei que deveria fazer. A um bom tempo atrás, quando concluí minha graduação, meu trabalho de conclusão de curso foi sobre chatbots com emoções e como os humanos reagiriam a isso. Eu queria entender melhor como as técnicas haviam evoluído desde então, em 2006, e encontrei algo um pouco diferente do que eu esperava.

Para o status quo atual, você simplesmente não pode evitar algum conhecimento básico de bibliotecas Python (como numpy), álgebra linear e uma boa dose de compreensão de notação matemática ao ler descrições de métodos de aprendizado de máquina. E às vezes pode ser muito frustrante.

Um pouco de notação em uma equação que você não entende completamente pode impedi-lo de implementar o conceito que está tentando aprender. Chegando como um desenvolvedor experiente, tive aquela sensação de iniciante, enquanto enfrentava os conceitos básicos do aprendizado de máquina moderno.

Então, aqui eu coletei algumas notações matemáticas que encontrei durante o curso de deep learning, e também algumas notas sobre conceitos que pareciam misteriosos para mim, como custo e derivados.

Fiz estas anotações principalmente para meu uso pessoal, mas postei pois gostaria de ter encontrado algo semelhante ao pesquisar na Internet. Também devo dizer que a notação varia muito de autor para autor, e também, que estou aprendendo, então tome minhas notas com um pé atrás.

Princípio

A ativação de um nó em uma rede neural é algo na forma:
resultado = função_de_ativação(produto_escalar(pesos, entradas) + viés)

Notação Geral

de acordo com Andrew Ng da especialização deeplearning.ai no Coursera [2]

Hiperparâmetros

Esses parâmetros controlam de fato como os parâmetros w e b funcionam:

Conceitos

Custo

A função de perda é determinada como a diferença entre o resultado real e o resultado previsto do modelo, como y V.S. y^.

Embora às vezes a perda também seja referida como custo, não é a mesma coisa. A função de custo é a média da perda sobre o conjunto completo dos dados de treinamento Y.

Derivados (dx)

Recolhido de uma nota que achei útil no fórum postado por BurntCalcium (nick), outro aluno:

Basicamente, se f é uma função de x, você está tomando uma proporção da *mudança em f* para a *mudança em x*, dado que a última é uma quantidade infinitesimalmente pequena. O 'd' que é usado ao escrever a notação representa a letra grega Δ (Delta), que é comumente usada para mostrar a mudança em uma quantidade em física e matemática. Então, basicamente dx significaria a mudança em x, df(x) significaria a mudança em f(x) e df(x)/dx como um todo é chamado de derivada de f(x) em relação a x. E, claro, no curso os instrutores adotaram a notação de que dx representa df(x)/dx, entretanto, fora do contexto deste curso, dx significaria simplesmente mudança em x.

Referência

[2] Deep Learning no Coursera

Veja também

[3] Arquivos da Cápsula
[4] Home da Cápsula

Quer mais?

Comente sobre um dos meus posts, fale comigo, diga: hello@aprates.dev

[5] Assine o feed da Cápsula
[6] Confira o projeto FatScript no GitLab
[7] Confira meus projetos no GitHub
[8] Confira meus projetos no SourceHut

Junte-se ao Geminispace

Gemini é um novo protocolo de Internet introduzido em 2019, como uma alternativa ao http(s) ou gopher, para conteúdos em texto leve e melhor privacidade.

Não sabe como, mas quer fazer parte do clube? Veja:
[9] Guia de início rápido Gemini

Já tem um cliente Gemini?
[10] Navegue nesta cápsula via Gemini


© aprates.dev, 2021-2023 - o conteúdo deste site está licenciado sob
[11] Licença Creative Commons BY-NC-SA 4.0
[12] Construído orgulhosamente com GemPress
[13] Política de Privacidade