Escolar Documentos
Profissional Documentos
Cultura Documentos
Viés – estimador – a certar na média, mas se não acertar, esteja bem próximo do valor dela.
Acertar na média, mas com variância pequena.
Overfitting – modelo se ajustou muito aos dados, que não tem capacidade de generalização. Extremamente específico.
Underfitting – modelo não se ajustou nada aos dados. É muito geral e não prevê nada. Extremamente generalista.
Fitting - não é tão especifico e nem tão generalista. Acertar na média com variância mínima.
Redução do overfitting
Regularização – mexer com os neurônios. Tirar a cola dos alunos, dificultar a capacidade de memorização do
modelo.
Cross validation: troca treinamento e validação, por isso chama cross validation (validação cruzada)
K fold cross validation: divide o modelo em 3 partes
pega o valor de cada k fold
faz a media dos 3 k fold
através dessa media, sabemos o valor esperado de acurácia do modelo.
Perguntas:
O que é viés?
Quantas camadas seria interessante ter em uma rede neural? Em geral, tem um número interessante que a gente
possa ter um bom resultado, ou depende do contexto?
Existe um valor para verificar quando a função perda está boa?
Toda vez que a gente for trabalhar com redes neurais e valores seria interessante usar a função scale?
A atualização dos pesos é feita no processo de backward pass ou no forward pass?
O que e generalização?
O software minitab também importa scripts do R e Python ou temos que usar ele em vez do R ou Python?
08/08/2023 - Deep Learning II
Série temporal: um conjunto de valores de uma variável ao longo do tempo
Dados seccionais (cross section): não é dado sequencial. É uma série “isolada” em um ponto do tempo, ex: ano
passado, PIB de cada estado no ano passado.
Ao prever uma varável, é importante perceber que os valores futuros estão relacionados com os valores passados.
LSTM - Long Short-Term Memory: Memória Longa de Curto Prazo: tem o estado da célula
Baseada em “portões” (gates)
O gate serve para dizer quando ele vai guardar ou manter uma informação
LSTM: intuição
Um neurônio em uma rede LSTM vai fazer 3 coisas:
1-esquecer informação irrelevante
2-adicionar/atualizar nova informação
3-passa informação atualizada
A rede LSTM tem uma função que esquece parte das informações.
O estado da célula é incluído no neurônio. O estado da célula vai nos dizer o quanto vai guardar, o quanto vai
esquecer, o quanto vai usar de cada informação. O estado da célula vai ajudar a filtrar qual é a informação que me
interessa, o quanto queremos dessa informação. Para isso, será utilizado 3 gates:
- Forget Gate – Quanto lembrar?
- Input Gate – Quanto manter dos inputs? O que adicionar ao estado da célula?
- Output Gate – O que do estado da célula e do hidden state será utilizado como resultado?
GRU: Gate Recurrent Unit: arquitetura de rede neural basicamente para resolver o mesmo problema que a LSTM. É
mais simples que a LSTM.
Perguntas
Vimos vários modelos de rede neural. No caso, qual modelo usaremos na prática ou qual modelo é bastante
utilizado?
O professor sugeriu que a gente melhorasse a rede RNN visualizando o gráfico de erros com relação as épocas. Como
podemos saber quando esta relação erro e época está bom?
O professor disse para gente ajustar a RNN, eu ainda não sei fazer isso. Em que momento o professor vai montar uma
rede legal para gente ter como exemplo, tipo analisando o erro e época, acurácia, etc..?
15/08/2023 - Deep Learning III
Deep Learning supervisionado:
Temos variáveis target (explicada) e as features (explicativas)
Fazer previsões: prever uma variável.
Tentar achar uma função que explique a variável target em função das variáveis features
Máquinas de Boltzmann: modelos baseados em energia: objetivo de reduzir a função custo, achando os parâmetros
de menor valor possível da função custo.
Reduzir a energia ao máximo = ter o máximo de acurácia.
Máquinas de Boltzmann é uma rede neural de uma única camada.
inputs = features = características
Objetivo: aprender a distribuição da probabilidade dos inputs
Ajustar os pesos para ser possível reconstruir os inputs (entradas)
Como criar grupos com base nas características deles? Temos que entender como se dá a distribuição da
probabilidade. Como as características de distribuem? Qual a distribuição da probabilidade desses indivíduos e com
base nisso, criar os grupos.
O agrupamento das observações da amostra (no exemplo acima, dos clientes), vem da distribuição da probabilidade.
Os grupos devem ser representativos, refletindo a divisão que existe entre esses indivíduos.
A ideia da máquina de Boltzmann é que se possa agrupar os indivíduos nos grupos ou usar informação dos grupos
para recriar os indivíduos. A ideia é separar esses indivíduos em grupos e esses grupos devem ser exemplificativos,
representativos das características dos indivíduos que poderíamos usar informação desse grupo para recriar o
indivíduo. A ideia é que a gente consiga fazer de trás para frente e de frente para trás.
Redução da dimensionalidade:
Camada de entrada: 4 características
Camada oculta: 3 neurônios
Máquina restrita: é chamada de máquina restrita porque os neurônios não se interligam na mesma camada
Não possui camada de saída
Entradas são passadas para a camada escondida
Variável latente: no exemplo do slide, são as características dos filmes. No exemplo, luta e drama
São variáveis que não existem naturalmente, mas que exemplifica ou caracteriza o que existe na realidade
Para correção dos pesos com relação aos seus erros (gradiente), utilizamos a técnica chamada Aprendizado pela
Divergência Contrastiva (vai e vem dos pesos)
Autoencoder:
Objetivos muito semelhantes à Máquina de Boltzmann
Reconstrução de input
Redução de dimensionalidade
Arquitetura diferente da maquina de boltzmann
Autoencoder é mais determinístico (gera valores). A maquina de boltzmann é mais probabilística
curva roc
qto mais perto do 1 estiver a curva, melhor o modelo
árvore de decisão (no exemplo, foi feita arvore de decisão para classificação)
separação entre treino e teste
estima o modelo, no exemplo é uma única arvore
verifica a acurácia, curva ROC
verifica as métricas de avaliação na amostra de treino
verifica as métricas de avaliação na amostra de teste.
Verificar se há ou não overfitting. Faça ajuste de hiper parâmetros na amostra de treino para melhorar a capacidade
preditiva quanto reduzir o overfitting (essa é a finalidade dos hiper parâmetros feitos pelo grid search)
E depois pode utilizar aquele modelo para previsão de novas observações
xgBosting
Após verificação da acurácia na base de treino e teste, para melhorar acurácia na base de teste, é interessante tunar
os hiper parâmetros
Arvores de decisão, Random forest, modelos ensemble: bagging, bost, gradiente bosting, xgbosting