Glossário de machine learning: noções básicas de ML

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Nesta página, há termos do glossário de fundamentos de ML. Para ver todos os termos do glossário, clique aqui.

A

accuracy

#fundamentals

O número de previsões de classificação corretas divididas pelo número total de previsões. Ou seja:

$$\text{Accuracy} = \frac{\text{correct predictions}} {\text{correct predictions + incorrect predictions }}$$

Por exemplo, um modelo que fez 40 previsões corretas e 10 previsões incorretas tem uma acurácia de:

$$\text{Accuracy} = \frac{\text{40}} {\text{40 + 10}} = \text{80%}$$

A classificação binária fornece nomes específicos para as diferentes categorias de previsões corretas e previsões incorretas. Portanto, a fórmula de precisão da classificação binária é a seguinte:

$$\text{Accuracy} = \frac{\text{TP} + \text{TN}} {\text{TP} + \text{TN} + \text{FP} + \text{FN}}$$

onde:

Compare e contraste a precisão com precisão e recall.

função de ativação

#fundamentals

Uma função que permite que as redes neurais aprendam relações não lineares (complexas) entre os recursos e o rótulo.

Estas são as funções de ativação mais usadas:

Os gráficos de funções de ativação nunca são linhas retas únicas. Por exemplo, o gráfico da função de ativação ReLU consiste em duas linhas retas:

Um gráfico cartesiano de duas linhas. A primeira linha tem um valor constante de y igual a 0, em execução no eixo x de -infinito,0 a 0,-0.
          A segunda linha começa em 0,0. Essa linha tem uma inclinação de +1, portanto, ela é executada de 0,0 a +infinito,+infinito.

Um gráfico da função de ativação sigmoide tem a seguinte aparência:

Um gráfico curvado bidimensional com valores de x que abrangem o domínio
          - infinito a +positivo, enquanto os valores de y abrangem o intervalo de quase 0 a
          quase 1. Quando x é 0, y é 0,5. A inclinação da curva é sempre positiva, com a inclinação mais alta em 0,0,5 e diminuindo gradualmente as inclinaçãos à medida que o valor absoluto de x aumenta.

inteligência artificial

#fundamentals

Um programa ou modelo não humano que pode resolver tarefas sofisticadas. Por exemplo, um programa ou modelo que traduz texto ou um programa ou modelo que identifica doenças de imagens radiológicas apresenta inteligência artificial.

Oficialmente, o aprendizado de máquina é um subcampo da inteligência artificial. No entanto, nos últimos anos, algumas organizações começaram a usar os termos inteligência artificial e machine learning como sinônimos.

AUC (área abaixo da curva ROC)

#fundamentals

Um número entre 0,0 e 1,0 que representa a capacidade de um modelo de classificação binária para separar as classes positivas de classes negativas. Quanto mais próxima a AUC estiver da versão 1.0, melhor será a capacidade do modelo de separar classes entre si.

Por exemplo, a ilustração a seguir mostra um modelo de classificador separando perfeitamente as classes positivas (ovais verdes) das classes negativas (retângulos roxos). Este modelo irrealista perfeito tem uma AUC de 1,0:

Uma linha numérica com 8 exemplos positivos de um lado e 9 exemplos negativos de outro lado.

Por outro lado, a ilustração a seguir mostra os resultados de um modelo de classificador que gerou resultados aleatórios. Este modelo tem uma AUC de 0,5:

Uma linha numérica com seis exemplos positivos e seis negativos.
          A sequência de exemplos é positiva, negativa,
 positiva, negativa, positiva, negativa, positiva, negativa, positiva, negativa, positiva, negativa.

Sim, o modelo anterior tem uma AUC de 0,5, não 0,0.

A maioria dos modelos está entre os dois extremos. Por exemplo, o modelo a seguir separa os positivos dos negativos de maneira negativa, portanto, tem um AUC entre 0,5 e 1,0:

Uma linha numérica com seis exemplos positivos e seis negativos.
          A sequência de exemplos é negativa, negativa, negativa, negativa,
          positiva, negativa, positiva, positiva, negativa, positiva, positiva, positiva,
          positiva.

A AUC ignora qualquer valor definido para o limite de classificação. Em vez disso, a AUC considera todos os limiares de classificação possíveis.

B

retropropagação

#fundamentals

O algoritmo que implementa o gradiente descendente em redes neurais.

O treinamento de uma rede neural envolve muitas iterações do ciclo de duas transmissões a seguir:

  1. Durante a transmissão para frente, o sistema processa um lote de exemplos para produzir previsões. O sistema compara cada previsão com cada valor de label. A diferença entre a previsão e o valor do rótulo é a perda desse exemplo. O sistema agrega as perdas de todos os exemplos para calcular a perda total do lote atual.
  2. Durante a prorrogação (propagação), o sistema reduz a perda ajustando os pesos de todos os neurônios em todas as camadas ocultas.

Redes neurais geralmente contêm muitos neurônios em diversas camadas escondidas. Cada um desses neurônios contribui de maneira geral para a perda. A retropropagação determina se é necessário aumentar ou diminuir os pesos aplicados a neurônios específicos.

A taxa de aprendizado é um multiplicador que controla o nível em que cada transmissão para trás aumenta ou diminui cada peso. Uma taxa de aprendizado alta aumenta ou diminui cada peso mais do que uma pequena taxa de aprendizado.

Em termos de cálculo, a retropropagação implementa a regra de cadeia do cálculo. Ou seja, a retropropagação calcula a derivada parcial do erro com respeito a cada parâmetro. Para mais detalhes, consulte este tutorial no Curso intensivo de machine learning.

Há anos, os profissionais de ML precisavam escrever código para implementar a retropropagação. APIs de ML modernas, como o TensorFlow, agora implementam a retropropagação para você. Ufa.

lote

#fundamentals

O conjunto de exemplos usados em uma iteração do treinamento. O tamanho do lote determina o número de exemplos em um lote.

Consulte época para ver uma explicação de como um lote está relacionado a uma época.

tamanho do lote

#fundamentals

O número de exemplos em um lote. Por exemplo, se o tamanho do lote for 100, o modelo processará 100 exemplos por iteração.

As seguintes estratégias comuns de tamanho de lote são:

  • Gradiente estocástico (SGD), em que o tamanho do lote é 1.
  • lote completo, em que o tamanho do lote é o número de exemplos em todo o conjunto de treinamento. Por exemplo, se o conjunto de treinamento contiver um milhão de exemplos, o tamanho do lote será de um milhão de exemplos. O lote completo geralmente é uma estratégia ineficiente.
  • mini-lote em que o tamanho do lote geralmente é entre 10 e 1000. O mini-lote geralmente é a estratégia mais eficiente.

viés (ética/imparcialidade)

#fairness
#fundamentals

1. Estereótipos, preconceito ou favoritismo em relação a algumas coisas, pessoas ou grupos sobre outras. Esse viés pode afetar a coleta e a interpretação dos dados, o design e a forma como os usuários interagem com um sistema. Os formulários desse tipo de viés incluem:

2. Erro sistemático introduzido por um procedimento de amostragem ou de geração de relatórios. Os formulários desse tipo de viés incluem:

Não confunda o termo de viés em modelos de machine learning ou o viés de previsão.

viés (matemático) ou termo tendencioso

#fundamentals

Uma interceptação ou deslocamento de uma origem. Viés é um parâmetro em modelos de machine learning, simbolizado por um dos seguintes:

  • b
  • c0

Por exemplo, o viés é o b na seguinte fórmula:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

Em uma linha bidimensional simples, o viés significa apenas "quot;y-intercept"." Por exemplo, o viés da linha na ilustração a seguir é 2.

O gráfico de uma linha com inclinação de 0,5 e um viés (interceptação em y) de 2.

O viés existe porque nem todos os modelos começam na origem (0,0). Por exemplo, suponha que um parque de diversões custe 2 euros para entrar e mais 0,5 euro para cada hora em que um cliente ficar. Portanto, um modelo que mapeia o custo total tem um viés de 2 porque o custo mais baixo é de 2 euros.

O viés não deve ser confundido com o viés em ética e imparcialidade ou com o viés de previsão.

classificação binária

#fundamentals

Um tipo de tarefa de classificação que prevê uma das duas classes mutuamente exclusivas:

Por exemplo, os dois modelos de machine learning a seguir realizam classificação binária:

  • Um modelo que determina se as mensagens de e-mail são spam (a classe positiva) ou não é spam (a classe negativa).
  • Um modelo que avalia sintomas médicos para determinar se uma pessoa tem uma doença específica (a classe positiva) ou não tem essa doença (a classe negativa).

Contraste com a classificação multiclasse.

Consulte também regressão logística e limite de classificação.

agrupamento por classes

#fundamentals

Conversão de um único recurso em vários recursos binários chamados buckets ou bins, geralmente com base em um intervalo de valores. O recurso cortado é geralmente um recurso contínuo.

Por exemplo, em vez de representar a temperatura como um único atributo de ponto flutuante contínuo, é possível cortar intervalos de temperaturas em buckets discretos, como:

  • <= 10 graus Celsius seria o bucket "quot;cold".
  • De 11 a 24 graus Celsius seria o bucket "quot;temperate"".
  • >= 25 graus Celsius seria o bucket "warm".

O modelo tratará todos os valores no mesmo bucket de maneira idêntica. Por exemplo, os valores 13 e 22 estão no bucket temperado. Assim, o modelo trata os dois valores de maneira idêntica.

C

dados categóricos

#fundamentals

Atributos com um conjunto específico de valores possíveis. Por exemplo, considere um atributo categórico chamado traffic-light-state, que só pode ter um dos três valores possíveis a seguir:

  • red
  • yellow
  • green

Ao representar traffic-light-state como um atributo categórico, um modelo pode aprender os impactos diferentes de red, green e yellow no comportamento do driver.

Os atributos categóricos também são chamados de atributos discretos.

Contraste com dados numéricos.

classe

#fundamentals

Uma categoria a que um marcador pode pertencer. Exemplo:

Um modelo de classificação prevê uma classe. Por outro lado, um modelo de regressão prevê um número em vez de uma classe.

modelo de classificação

#fundamentals

Um modelo em que a previsão é uma classe. Por exemplo, os seguintes são todos modelos de classificação:

  • Um modelo que prevê um idioma de frase de entrada (francês? Espanhol? italiano?).
  • Um modelo que prevê espécies de árvores (Maple? Carvalho? Baobab?).
  • Um modelo que prevê a classe positiva ou negativa de uma condição médica específica.

Por outro lado, os modelos de regressão preveem números em vez de classes.

Dois tipos comuns de modelos de classificação:

limite de classificação

#fundamentals

Em uma classificação binária, um número entre 0 e 1 que converte a saída bruta de um modelo de regressão logística em uma previsão da classe positiva ou da classe negativa. Observe que o limiar de classificação é um valor escolhido por um humano, não um valor escolhido pelo treinamento de modelo.

Um modelo de regressão logística retorna um valor bruto entre 0 e 1. Em seguida:

  • Se esse valor bruto for maior do que o limite de classificação, a classe positiva será prevista.
  • Se esse valor bruto for menor que o limite de classificação, a classe negativa será prevista.

Por exemplo, suponha que o limite de classificação seja 0,8. Se o valor bruto for 0,9, o modelo vai prever a classe positiva. Se o valor bruto for 0,7, o modelo vai prever a classe negativa.

A escolha do limite de classificação influencia muito o número de falsos positivos e falsos negativos.

conjunto de dados desequilibrado por classe

#fundamentals

Um conjunto de dados para um problema de classificação em que o número total de rótulos de cada classe é significativamente diferente. Por exemplo, considere um conjunto de dados de classificação binária com dois rótulos divididos da seguinte maneira:

  • 1.000.000 de rótulos negativos
  • 10 rótulos positivos

A proporção de rótulos negativos para positivos é de 100.000 para 1,portanto, esse é um conjunto de dados desequilibrado de classes.

Por outro lado, o conjunto de dados a seguir não é desequilibrado por classe, porque a proporção de rótulos negativos para rótulos positivos é relativamente próxima de 1:

  • 517 rótulos negativos
  • 483 rótulos positivos

Conjuntos de dados de várias classes também podem ser desequilibrados. Por exemplo, o seguinte conjunto de dados de classificação multiclasse também é desequilibrado, porque um rótulo tem muito mais exemplos do que os outros dois:

  • 1.000.000 rótulos com classe "green"
  • 200 rótulos com a classe "roxo"
  • 350 rótulos com a classe "orange"

Consulte também entropia, classe predominante e classe mínima.

recorte

#fundamentals

Uma técnica para processar outliers realizando um ou ambos os seguintes procedimentos:

  • Redução de valores de recurso maiores que um limite máximo que o limite máximo.
  • Aumentar os valores dos recursos para que fiquem abaixo do limite mínimo.

Por exemplo, suponha que <0,5% dos valores para um determinado recurso estejam fora do intervalo de 40 a 60. Nesse caso, faça o seguinte:

  • Corte todos os valores acima de 60 (o limite máximo) para que sejam exatamente 60.
  • Corte todos os valores abaixo de 40 (o limite mínimo) para que sejam exatamente 40.

Os outliers podem danificar modelos, às vezes fazendo com que os pesos overflows durante o treinamento. Alguns outliers também podem estragar métricas como precisão. O recorte é uma técnica comum para limitar o dano.

O corte do gradiente força os valores de gradiente em um intervalo designado durante o treinamento.

matriz de confusão

#fundamentals

Uma tabela NxN que resume o número de previsões corretas e incorretas feitas por um modelo de classificação. Por exemplo, considere a seguinte matriz de confusão para um modelo de classificação binária:

Tumor (previsão) Não Tumor (previsto)
Tumor (informações empíricas) 18 (VP) 1 (FP)
Não Tumor (informações empíricas) 6 (FN) 452 (VN)

A matriz de confusão anterior mostra o seguinte:

  • Das 19 previsões em que informações empíricas foram Tumor, o modelo classificou corretamente 18 e incorretamente 1.
  • Das 458 previsões em que informações empíricas não eram Tumor, o modelo classificou corretamente 452 e 6 incorretamente.

A matriz de confusão para um problema de classificação multiclasse pode ajudar a identificar padrões de erros. Por exemplo, considere a matriz de confusão a seguir para um modelo de classificação de várias classes de três classes que categoriza três tipos de íris diferentes (Virginica, Versicolor e Setosa). Quando a verdade empírica era a Virgem, a matriz de confusão mostra que o modelo tem muito mais probabilidade de prever por engano a Versicolor do que a Setosa:

  Setosa (previsão) Versicolor (previsão) Virgem (previsto)
Setosa (informações empíricas) 88 12 0
Versicolor (informações empíricas) 6 141 7
Virgínia (informações empíricas) 2 27 109

Outro exemplo: uma matriz de confusão pode revelar que um modelo treinado para reconhecer dígitos escritos à mão tende a prever 9 em vez de 4 ou 1 em vez de 7.

As matrizes de confusão contêm informações suficientes para calcular uma variedade de métricas de desempenho, incluindo precisão e recall.

recurso contínuo

#fundamentals

É um recurso de ponto flutuante com um intervalo infinito de valores possíveis, como temperatura ou peso.

Contraste com o recurso discreto.

convergência

#fundamentals

Um estado alcançado quando os valores de perda mudam muito ou nenhuma vez a cada iteração. Por exemplo, a seguinte curva de perda sugere a convergência em cerca de 700 iterações:

Gráfico cartesiano. Perda do eixo X. O eixo Y é o número de iterações de treinamento. A perda é muito alta durante as primeiras iterações, mas
          cai significativamente. Após cerca de 100 iterações, a perda ainda
          é decrescente, mas de maneira muito mais gradual. Após cerca de 700 iterações,
          a perda permanece estável.

Um modelo converge quando um treinamento adicional não melhora o modelo.

No aprendizado profundo, os valores de perda às vezes permanecem constantes ou quase iguais para muitas iterações antes de finalmente descer. Durante um longo período de valores de perda constantes, você pode ter uma falsa convergência temporária.

Consulte também parada antecipada.

D

DataFrames

#fundamentals

Um tipo de dado pandas popular para representar conjuntos de dados na memória.

Um DataFrame é análogo a uma tabela ou uma planilha. Cada coluna de um DataFrame tem um nome (um cabeçalho) e cada linha é identificada por um número único.

Cada coluna em um DataFrame é estruturada como uma matriz 2D, mas cada coluna pode ser atribuída ao próprio tipo de dado.

Consulte também a página de referência oficial do pandas.DataFrame.

conjunto de dados ou conjunto de dados

#fundamentals

É uma coleção de dados brutos, geralmente (mas não exclusivamente) organizados em um dos seguintes formatos:

  • uma planilha
  • um arquivo no formato CSV (valores separados por vírgulas)

modelo profundo

#fundamentals

Uma rede neural com mais de uma camada escondida.

Um modelo profundo também é chamado de rede neural profunda.

Contraste com o modelo amplo.

atributo denso

#fundamentals

Um recurso em que a maioria ou todos os valores são diferentes de zero, normalmente um Tensor de valores de ponto flutuante. Por exemplo, o tensor 10-element a seguir é denso porque nove dos valores dele são diferentes de zero:

8 3 7 5 2 4 0 4 9 6

Contraste com o recurso esparso.

depth

#fundamentals

A soma dos seguintes itens em uma rede neural:

Por exemplo, uma rede neural com cinco camadas escondidas e uma camada de saída tem uma profundidade de seis.

A camada de entrada não influencia a profundidade.

recurso discreto

#fundamentals

Um recurso com um conjunto finito de valores possíveis. Por exemplo, um atributo com valores que só podem ser animais, vegetais ou mineral é um atributo discreto (ou categórico).

Contraste com o recurso contínuo.

dinâmico

#fundamentals

algo feito com frequência ou continuamente. Os termos dinâmico e on-line são sinônimos em machine learning. Veja a seguir usos comuns de dinâmicos e on-line em machine learning:

  • Um modelo dinâmico (ou modelo on-line) é um modelo treinado com frequência ou continuamente.
  • Treinamento dinâmico (ou treinamento on-line) é o processo de treinamento frequente ou contínuo.
  • A inferência dinâmica, ou inferência on-line, é o processo de gerar previsões sob demanda.

modelo dinâmico

#fundamentals

Um modelo que é treinado frequentemente com frequência (talvez até mesmo continuamente). Um modelo dinâmico é um "estudo de longa duração" que se adapta constantemente aos dados em evolução. Um modelo dinâmico também é conhecido como modelo on-line.

Contraste com o modelo estático.

E

parada antecipada

#fundamentals

Um método para regularização que envolve encerrar treinamento antes da perda de treinamento terminar de diminuir. Na parada antecipada, você interrompe intencionalmente o treinamento do modelo quando a perda em um conjunto de dados de validação começa a aumentar, ou seja, quando o desempenho de generalização piora.

camada de embedding

#language
#fundamentals

Uma camada escondida especial que é treinada em um recurso categórico de alta dimensão para a aprender gradativamente um vetor de embedding de dimensão inferior. Uma camada de embedding permite que uma rede neural treine de forma muito mais eficiente do que o treinamento apenas no atributo categórico de alta dimensão.

Por exemplo, o Google Earth suporta atualmente cerca de 73.000 espécies de árvores. Suponha que as espécies de árvore sejam um recurso no modelo, portanto,a camada de entrada do modelo inclui um vetor one-hot de 73.000 elementos. Por exemplo, talvez baobab seja representado desta forma:

Uma matriz de 73.000 elementos. Os primeiros 6.232 elementos contêm o valor 0. O próximo elemento contém o valor 1. Os 66.767 elementos finais mantêm
     o valor zero.

Uma matriz de 73.000 elementos é muito longa. Se você não adicionar uma camada de incorporação ao modelo, o treinamento será muito demorado devido à multiplicação de 72.999 zeros. Talvez você escolha a camada de embedding para consistir em 12 dimensões. Consequentemente, a camada de embedding aprenderá gradualmente um novo vetor de embedding para cada espécie de árvore.

Em determinadas situações, o hashing é uma alternativa razoável a uma camada de embedding.

época

#fundamentals

Um cartão de treinamento completo em todo o conjunto de treinamento. Assim, cada exemplo é processado uma vez.

Um período representa N/tamanho do lote treinamento iterações, em que N é o número total de exemplos.

Por exemplo, suponha o seguinte:

  • O conjunto de dados consiste em 1.000 exemplos.
  • O tamanho do lote é de 50 exemplos.

Portanto, uma única época requer 20 iterações:

1 epoch = (N/batch size) = (1,000 / 50) = 20 iterations

exemplo

#fundamentals

Os valores de uma linha de recursos e possivelmente um rótulo. Os exemplos no aprendizado supervisionado se enquadram em duas categorias gerais:

  • Um exemplo rotulado consiste em um ou mais recursos e um rótulo. Exemplos usados são usados durante o treinamento.
  • Um exemplo sem rótulo consiste em um ou mais recursos, mas nenhum rótulo. Exemplos não rotulados são usados durante a inferência.

Por exemplo, suponha que você esteja treinando um modelo para determinar a influência das condições climáticas nas pontuações dos testes dos alunos. Veja três exemplos rotulados:

Recursos Rótulo
Temperatura Umidade Pressão Pontuação do teste
15 47 998 Bom
19 34 1020 Excelente
18 92 1012 Ruim

Veja estes três exemplos:

Temperatura Umidade Pressão  
12 62 1014  
21 47 1017  
19 41 1021  

A linha de um conjunto de dados normalmente é a fonte bruta de um exemplo. Ou seja, um exemplo geralmente consiste em um subconjunto das colunas no conjunto de dados. Além disso, os atributos em um exemplo também podem incluir atributos sintéticos, como cruzamentos de atributos.

F

falso negativo (FN)

#fundamentals

Um exemplo em que o modelo prevê incorretamente a classe negativa. Por exemplo, o modelo prevê que uma mensagem de e-mail específica não é spam (a classe negativa), mas essa mensagem de e-mail realmente é spam.

falso positivo (FP)

#fundamentals

Um exemplo em que o modelo prevê incorretamente a classe positiva. Por exemplo, o modelo prevê que uma mensagem de e-mail específica é spam (a classe positiva), mas essa mensagem de e-mail não é realmente spam.

taxa de falso positivo (FPR)

#fundamentals

A proporção de exemplos negativos reais para os quais o modelo previu por engano a classe positiva. A fórmula a seguir calcula a taxa de falso positivo:

$$\text{false positive rate} = \frac{\text{false positives}}{\text{false positives} + \text{true negatives}}$$

A taxa de falso positivo é o eixo x de uma curva ROC.

recurso

#fundamentals

Uma variável de entrada para um modelo de machine learning. Um exemplo consiste em um ou mais recursos. Por exemplo, suponha que você esteja treinando um modelo para determinar a influência das condições climáticas nas pontuações dos testes dos alunos. A tabela a seguir mostra três exemplos. Cada um deles contém três recursos e um rótulo:

Recursos Rótulo
Temperatura Umidade Pressão Pontuação do teste
15 47 998 92
19 34 1020 84
18 92 1012 87

Contraste com label.

cruzamento de atributos

#fundamentals

Um recurso sintético formado por recursos de "cruzamento" categóricos ou com agrupamento por classes.

Por exemplo, considere um modelo de "previsão de humor" que representa a temperatura em um dos quatro buckets a seguir:

  • freezing
  • chilly
  • temperate
  • warm

E representa a velocidade do vento em um dos três buckets a seguir:

  • still
  • light
  • windy

Sem cruzamentos de atributos, o modelo linear é treinado de forma independente em cada um dos sete buckets anteriores. Portanto, o modelo é treinado em, por exemplo, freezing independentemente do treinamento em windy.

Como alternativa, você pode criar um cruzamento de atributos de temperatura e velocidade de vento. Esse recurso sintético teria os seguintes 12 valores possíveis:

  • freezing-still
  • freezing-light
  • freezing-windy
  • chilly-still
  • chilly-light
  • chilly-windy
  • temperate-still
  • temperate-light
  • temperate-windy
  • warm-still
  • warm-light
  • warm-windy

Graças aos cruzamentos de atributos, o modelo pode aprender diferenças de humor entre um dia freezing-windy e um freezing-still.

Se você criar um atributo sintético a partir de dois atributos que têm muitos buckets diferentes, o cruzamento de atributos resultante terá um grande número de combinações possíveis. Por exemplo, se um recurso tiver 1.000 buckets e o outro tiver 2.000 buckets, o cruzamento de atributos resultante terá 2.000.000 buckets.

Basicamente, uma cruz é um produto cartesiano.

Os cruzamentos de atributos são usados principalmente com modelos lineares e raramente são usados com redes neurais.

engenharia de atributos

#fundamentals
#TensorFlow

Um processo que envolve as seguintes etapas:

  1. Determinar quais recursos pode ser útil no treinamento de um modelo.
  2. Converter dados brutos do conjunto de dados em versões eficientes desses recursos.

Por exemplo, é possível determinar que temperature pode ser um recurso útil. Depois, tente usar o criação de buckets para otimizar o que o modelo pode aprender com diferentes intervalos temperature.

Às vezes, a engenharia de atributos é chamada de extração de atributos.

conjunto de atributos

#fundamentals

O grupo de recursos em que seu modelo de machine learning é treinado. Por exemplo, o código postal, o tamanho da propriedade e a condição da propriedade podem compor um conjunto de atributos simples para um modelo que prevê preços de imóveis.

vetor de atributos

#fundamentals

A matriz de valores de feature que inclui um exemplo. O vetor de atributos é uma entrada durante treinamento e durante inferência. Por exemplo, o vetor de atributos para um modelo com dois atributos discretos pode ser:

[0.92, 0.56]

Quatro camadas: uma camada de entrada, duas camadas ocultas e uma camada de saída.
          A camada de entrada contém dois nós, um com o valor
          0,92 e outro com o valor 0,56.

Cada exemplo fornece valores diferentes para o vetor de atributos. Portanto, o vetor de recursos do próximo exemplo pode ser algo como:

[0.73, 0.49]

A engenharia de atributos determina como representar os atributos no vetor de atributos. Por exemplo, um recurso categórico binário com cinco valores possíveis pode ser representado com codificação one-hot. Nesse caso, a parte do vetor de recursos para um exemplo específico consistiria em quatro zeros e um único 1.0 na terceira posição, da seguinte maneira:

[0.0, 0.0, 1.0, 0.0, 0.0]

Como outro exemplo, suponha que seu modelo consiste em três atributos:

  • um atributo categórico binário com cinco valores possíveis, representados com codificação one-hot, por exemplo: [0.0, 1.0, 0.0, 0.0, 0.0]
  • outro atributo categórico binário com três valores possíveis, representados com codificação one-hot, por exemplo: [0.0, 0.0, 1.0]
  • Um recurso de ponto flutuante, por exemplo: 8.3.

Nesse caso, o vetor de atributos para cada exemplo seria representado por nove valores. Considerando os valores de exemplo na lista anterior, o vetor de recurso seria:

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

feedback contínuo

#fundamentals

Em machine learning, uma situação em que as previsões de um modelo influenciam os dados de treinamento do mesmo modelo ou de outro modelo. Por exemplo, um modelo que recomenda filmes influencia os filmes que as pessoas veem, o que influencia os modelos de recomendações de filmes subsequentes.

G

generalização

#fundamentals

Uma capacidade de modelo's para fazer previsões corretas em dados novos e anteriormente não vistos. Um modelo que pode ser generalizado é o oposto de um modelo que está sobreajustando.

curva de generalização

#fundamentals

Um gráfico de perda de treinamento e perda de validação como uma função do número de iterações.

Uma curva de generalização pode ajudar você a detectar possíveis overfitting. Por exemplo, a curva de generalização a seguir sugere overfitting, porque a perda de validação se torna significativamente maior do que a perda de treinamento.

Um gráfico cartesiano com o eixo y rotulado como &#39;perda&#39; e o eixo x
          rotulado &#39;iterações&#39; Dois gráficos são exibidos. Um gráfico mostra a
 perda de treinamento e o outro mostra a perda de validação.
          Os dois gráficos começam da mesma forma, mas a perda de treinamento acaba
          sendo muito menor do que a perda de validação.

gradiente descendente

#fundamentals

Uma técnica matemática para minimizar a perda. O gradiente descendente escalona iterativamente pesos e viés, encontrando gradualmente a melhor combinação para minimizar a perda.

O gradiente descendente é muito mais antigo que o aprendizado de máquina.

informações empíricas

#fundamentals

Realidade.

A coisa que realmente aconteceu.

Por exemplo, considere um modelo de classificação binária, que prevê se um aluno no primeiro ano de universidade vai se graduar em seis anos. A verdade em relação a esse modelo indica se o aluno realmente se formou em seis anos.

H

camada escondida

#fundamentals

Uma camada em uma rede neural entre a camada de entrada (os atributos) e a camada de saída (a previsão). Cada camada escondida consiste em um ou mais neurônios. Por exemplo, a rede neural a seguir contém duas camadas escondidas, a primeira com três neurônios e a segunda com dois neurônios:

Quatro camadas A primeira é uma camada de entrada que contém dois
 atributos. A segunda camada é oculta e contém três
          neurônios. A terceira camada é oculta e contém dois
          neurônios. A quarta camada é a camada de saída. Cada recurso
          contém três arestas, cada uma apontando para um neurônio diferente
          na segunda camada. Cada um dos neurônios na segunda camada contém duas arestas, cada uma apontando para um neurônio diferente na terceira camada. Cada um dos neurônios na terceira camada contém
          uma borda, cada um apontando para a camada de saída.

Uma rede neural profunda contém mais de uma camada escondida. Por exemplo, a ilustração anterior é uma rede neural profunda porque o modelo contém duas camadas ocultas.

hiperparâmetro

#fundamentals

As variáveis que você ou um serviço de ajuste de hiperparâmetrosse ajustam durante execuções sucessivas de treinamento de um modelo. Por exemplo, a taxa de aprendizado é um hiperparâmetro. É possível definir a taxa de aprendizado como 0,01 antes de uma sessão de treinamento. Se você determinar que 0,01 é muito alto, defina a taxa de aprendizado como 0,003 para a próxima sessão de treinamento.

Por outro lado, parâmetros são os diversos pesos e viés que o modelo aprende durante o treinamento.

I

distribuídos de maneira independente e idêntica (ou seja,

#fundamentals

Os dados extraídos de uma distribuição que não muda e em que cada valor desenhado não depende de valores que foram desenhados anteriormente. Um exemplo é o gás ideal de machine learning, uma construção matemática útil, mas quase nunca encontrada exatamente no mundo real. Por exemplo, a distribuição dos visitantes de uma página da Web pode ser, ou seja, uma breve janela de tempo, ou seja, a distribuição não muda durante essa janela curta, e a visita de uma pessoa geralmente é independente da visita de outra. No entanto, se você expandir essa janela de tempo, podem aparecer diferenças sazonais na página da Web.

Consulte também não estabilidade.

inferência

#fundamentals

Em machine learning, o processo de fazer previsões aplicando um modelo treinado a exemplos não rotulados.

A inferência tem um significado um pouco diferente nas estatísticas. Consulte o artigo da Wikipédia sobre inferência estatística para ver detalhes.

camada de entrada

#fundamentals

A camada de uma rede neural que contém o vetor de recursos. Ou seja, a camada de entrada fornece exemplos para treinamento ou inferência. Por exemplo, a camada de entrada na seguinte rede neural consiste em dois recursos:

Quatro camadas: uma camada de entrada, duas camadas ocultas e uma camada de saída.

interpretabilidade

#fundamentals

A capacidade de explicar ou apresentar um raciocínio de modelo de ML em termos compreensíveis para uma pessoa.

Por exemplo, a maioria dos modelos de regressão linear é altamente interpretável. Você só precisa analisar os pesos treinados de cada recurso. Florestas de decisão também são altamente interpretáveis. No entanto, alguns modelos exigem visualização sofisticada para se tornar interpretável.

iteração

#fundamentals

Uma única atualização de parâmetros model: os pesos e os viés do modelo durante o treinamento. O tamanho do lote determina quantos exemplos o modelo processa em uma única iteração. Por exemplo, se o tamanho do lote é 20, o modelo processa 20 exemplos antes de ajustar os parâmetros.

Ao treinar uma rede neural, uma única iteração envolve os dois cartões a seguir:

  1. Uma passagem para avaliar a perda em um único lote.
  2. Um passe para trás (backpropagation) para ajustar os parâmetros do modelo com base na perda e na taxa de aprendizado.

L

Regularização de l

#fundamentals

Um tipo de regularização que penaliza o número total de pesos diferentes de um modelo. Por exemplo, um modelo com 11 pesos diferentes de zero será penalizado mais do que um modelo semelhante que tem 10 pesos diferentes de zero.

A regularização de L0 raramente é usada.

Perda L1

#fundamentals

Uma função de perda que calcula o valor absoluto da diferença entre os valores reais do rótulo e os valores que um modelo prevê. Por exemplo, veja o cálculo da perda de L1 para um lote de cinco exemplos:

Valor real do exemplo Valor previsto do modelo Valor absoluto do delta
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = perda de 1

A perda L11 é menos sensível a outliers do que a perda L2.

O erro absoluto médio é a perda média de L1 por exemplo.

Regularização de l

#fundamentals

Um tipo de regularização que penaliza pesos em proporção à soma do valor absoluto dos pesos. A regularização de L1 ajuda a aumentar os pesos de atributos irrelevantes ou pouco relevantes para exatamente 0. Um recurso com peso de 0 é removido do modelo.

Contraste com a L2 regularização.

Perda L2

#fundamentals

Uma função de perda que calcula o quadrado da diferença entre os valores reais do rótulo e os valores que um modelo prevê. Por exemplo, veja o cálculo da perda de L2 para um lote de cinco exemplos:

Valor real do exemplo Valor previsto do modelo Quadrado delta
7 6 1
5 4 1
8 11 9
4 6 4
9 8 1
  16 = perda de 2

Devido ao quadrado, a perda L2 amplifica a influência de outliers. Ou seja, a perda L2 reage mais fortemente a previsões ruins do que a perda de L1. Por exemplo, a perda L1 do lote anterior seria 8 em vez de 16. Observe que um único outlier é responsável por 9 dos 16.

Os modelos de regressão normalmente usam a perda de L2 como a função de perda.

O erro quadrático médio é a perda média de L2 por exemplo. Perda quadrática é outro nome para perda L2.

Regularização de l

#fundamentals

Um tipo de regularização que penaliza pesos em proporção à soma dos quadrados dos pesos. A regularização de L2 ajuda a aproximar os pesos outliers (aqueles com valores altos positivos ou baixos de valores negativos) mais próximos de 0, mas não é exatamente 0. Os recursos com valores muito próximos de 0 permanecem no modelo, mas não influenciam muito a previsão do modelo.

A regularização de L2 sempre melhora a generalização em modelos lineares.

Contraste com a Regularização de L1.

Identificador

#fundamentals

No machine learning supervisionado, a parte "answer" ou "result" de um exemplo.

Cada exemplo rotulado consiste em um ou mais recursos e um rótulo. Por exemplo, em um conjunto de dados de detecção de spam, o rótulo provavelmente seria "spam" ou quot;não é spam." Em um conjunto de dados de chuva, o identificador pode ser a quantidade de chuva que caiu durante um determinado período.

exemplo rotulado

#fundamentals

Um exemplo que contém um ou mais recursos e um rótulo. Por exemplo, a tabela a seguir mostra três exemplos rotulados de um modelo de avaliação interna, cada um com três atributos e um rótulo:

Número de quartos Número de banheiros Idade da casa Preço da casa (etiqueta)
3 2 15 US$ 345.000
2 1 72 US$ 179.000
4 2 34 US$ 392.000

Em machine learning supervisionado, os modelos são treinados em exemplos rotulados e fazem previsões em exemplos não rotulados.

Contraste identificado com exemplos e sem rótulos.

Lambda

#fundamentals

É sinônimo de taxa de regularização.

Lambda é um termo sobrecarregado. Aqui, estamos focados na definição do termo na regularização.

de pesos

#fundamentals

Um conjunto de neurônios em uma rede neural. Existem três tipos comuns de camadas:

Por exemplo, a ilustração a seguir mostra uma rede neural com uma camada de entrada, duas camadas ocultas e uma camada de saída:

Uma rede neural com uma camada de entrada, duas camadas ocultas e uma
 camada de saída. A camada de entrada consiste em dois atributos. A primeira
          camada oculta consiste em três neurônios, e a segunda camada
          composta de dois neurônios. A camada de saída consiste em um único nó.

No TensorFlow, as camadas também são funções do Python que usam Tensors e opções de configuração como entrada e produzem outros tensores como saída.

taxa de aprendizado

#fundamentals

Um número de ponto flutuante que informa ao algoritmo gradiente descendente o ajuste forte de pesos e vieses em cada iteração. Por exemplo, uma taxa de aprendizado de 0,3 ajustaria os pesos e vieses três vezes mais poderosa do que uma taxa de aprendizado de 0,1.

A taxa de aprendizado é um hiperparâmetro importante. Se você definir a taxa de aprendizado muito baixa, o treinamento vai levar muito tempo. Se você definir a taxa de aprendizado muito alta, o gradiente descendente muitas vezes terá problemas para alcançar a convergência.

modelo linear

#fundamentals

Um modelo que atribui um peso por recurso para fazer previsões. Os modelos lineares também incorporam um viés. Por outro lado, a relação entre recursos e previsões em modelos profundos geralmente é não linear.

Os modelos lineares costumam ser mais fáceis de treinar e interpretáveis do que os modelos profundos. No entanto, modelos profundos podem aprender relações complexas entre recursos.

Regressão linear e regressão logística são dois tipos de modelos lineares.

linear

#fundamentals

Uma relação entre duas ou mais variáveis que podem ser representadas exclusivamente por adição e multiplicação.

O gráfico de uma relação linear é uma linha.

Contraste com não linear.

regressão linear

#fundamentals

Um tipo de modelo de machine learning em que ambos os itens a seguir são verdadeiros:

  • O modelo é um modelo linear.
  • A previsão é um valor de ponto flutuante. Essa é a parte de regressão da regressão linear.

Contraste a regressão linear com a regressão logística. Além disso, a regressão de contraste tem a classificação.

regressão logística

#fundamentals

Um tipo de modelo de regressão que prevê uma probabilidade. Os modelos de regressão logística têm as seguintes características:

  • O marcador é categórico. O termo "regressão logística" geralmente se refere a regressão logística binária, ou seja, para um modelo que calcula as probabilidades de rótulos com dois valores possíveis. Uma variante menos comum, a regressão logística multinomial, calcula as probabilidades de rótulos com mais de dois valores possíveis.
  • A função de perda durante o treinamento é a Perda de registro (link em inglês). Várias unidades de perda de registro podem ser colocadas em paralelo para rótulos com mais de dois valores possíveis.
  • O modelo tem uma arquitetura linear, não uma rede neural profunda. No entanto, o restante dessa definição também se aplica a modelos profundos que preveem probabilidades de rótulos categóricos.

Por exemplo, considere um modelo de regressão logística que calcula a probabilidade de um e-mail de entrada ser spam ou não. Durante a inferência, suponha que o modelo preveja 0,72. Portanto, o modelo está estimando:

  • A chance de o e-mail ser spam é de 72%.
  • 28% de chance de o e-mail não ser spam.

Um modelo de regressão logística usa a seguinte arquitetura em duas etapas:

  1. O modelo gera uma previsão bruta (y') aplicando uma função linear de recursos de entrada.
  2. O modelo usa essa previsão bruta como entrada para uma função sigmoide, que converte a previsão bruta em um valor entre 0 e 1, exclusivo.

Como qualquer modelo de regressão, um modelo de regressão logística prevê um número. No entanto, esse número normalmente se torna parte de um modelo de classificação binária desta maneira:

  • Se o número previsto for maior do que o limite de classificação, o modelo de classificação binária prevê a classe positiva.
  • Se o número previsto for menor que o limite de classificação, o modelo de classificação binária prevê a classe negativa.

Log perda

#fundamentals

A função de perda usada na regressão logística binária.

log-odds

#fundamentals

O logaritmo de probabilidade de um evento.

perda

#fundamentals

Durante o treinamento de um modelo supervisionado, uma medida do quanto uma previsão de um modelo é do rótulo dele.

Uma função de perda calcula a perda.

curva de perda

#fundamentals

Um gráfico de perda em função do número de iterações de treinamento. O gráfico a seguir mostra uma curva de perda típica:

Um gráfico cartesiano de perda em comparação às iterações de treinamento, mostrando uma
          rápida queda na perda das iterações iniciais, seguidas por uma queda gradual
          e uma inclinação plana durante as iterações finais.

As curvas de perda podem ajudar a determinar quando o modelo está convergindo ou overfitting.

As curvas de perda podem traçar todos os seguintes tipos de perda:

Veja também curva de generalização.

função de perda

#fundamentals

Durante o treinamento ou o teste, uma função matemática que calcula a perda em um lote de exemplos. Uma função de perda retorna uma perda menor para modelos que fazem boas previsões do que para modelos que fazem previsões ruins.

O objetivo do treinamento é geralmente minimizar a perda que uma função de perda retorna.

Existem muitos tipos diferentes de funções de perda. Escolha a função de perda apropriada para o tipo de modelo que você está criando. Exemplo:

M

machine learning

#fundamentals

Um programa ou sistema que treina um modelo de dados de entrada. O modelo treinado pode fazer previsões úteis de novos dados (nunca vistos antes) extraídos da mesma distribuição usada para treinar o modelo.

Machine learning também se refere ao campo de estudo em questão com esses programas ou sistemas.

classe majoritária

#fundamentals

O rótulo mais comum em um conjunto de dados desequilibrado de classes. Por exemplo, considerando um conjunto de dados que contém 99% de rótulos negativos e 1% de rótulos positivos, os rótulos negativos são a classe majoritária.

Contraste com a classe de minorias.

minilote

#fundamentals

Um subconjunto pequeno e selecionado aleatoriamente de um lote processado em uma iteração. O tamanho do lote de um minilote geralmente é entre 10 e 1.000 exemplos.

Por exemplo, suponha que todo o conjunto de treinamento (o lote completo) consiste em 1.000 exemplos. Além disso, defina o tamanho do lote de cada minilote como 20. Portanto, cada iteração determina a perda em um 20 aleatório de 1.000 exemplos e, em seguida, ajusta os weights e os viés de acordo com cada um.

É muito mais eficiente calcular a perda em um minilote do que a perda em todos os exemplos no lote completo.

classe minoritária

#fundamentals

O rótulo menos comum em um conjunto de dados desequilibrado de classe. Por exemplo, considerando um conjunto de dados que contém 99% de rótulos negativos e 1% de identificadores positivos, os rótulos positivos são a classe minoritária.

Contraste com a classe de maioria.

modelo

#fundamentals

Em geral, qualquer construção matemática que processe dados de entrada e retorne a saída. Em frases diferentes, um modelo é o conjunto de parâmetros e a estrutura necessário para que um sistema faça previsões. Em machine learning supervisionado, um modelo usa um exemplo como entrada e infere uma previsão como saída. No machine learning supervisionado, os modelos são um pouco diferentes. Exemplo:

  • Um modelo de regressão linear consiste em um conjunto de pesos e um viés.
  • Um modelo de rede neural consiste em:
  • Um modelo de árvore de decisões consiste em:
    • O formato da árvore, ou seja, o padrão em que as condições e folhas são conectadas.
    • Condições e folhas.

É possível salvar, restaurar ou fazer cópias de um modelo.

O machine learning não supervisionado também gera modelos, normalmente uma função que pode mapear um exemplo de entrada para o cluster mais apropriado.

classificação multiclasse

#fundamentals

No aprendizado supervisionado, é um problema de classificação em que o conjunto de dados contém mais de duas classes de rótulos. Por exemplo, os rótulos no conjunto de dados Iris precisam ser uma das três classes a seguir:

  • Íris setosa
  • Virgínia da Íris
  • Versicolor íris

Um modelo treinado no conjunto de dados Iris que prevê o tipo de Íris em novos exemplos está realizando a classificação multiclasse.

Por outro lado, os problemas de classificação que distinguem exatamente duas classes são modelos de classificação binária. Por exemplo, um modelo de e-mail que prevê spam ou não é spam é um modelo de classificação binária.

Nos problemas de clustering, a classificação multiclasse se refere a mais de dois clusters.

N

classe negativa

#fundamentals

Na classificação binária, uma classe é chamada de positiva e a outra é chamada de negativa. A classe positiva é o item ou evento que o modelo está testando, e a classe negativa é a outra possibilidade. Exemplo:

  • A classe negativa em um teste médico pode ser "não tumor."
  • A classe negativa em um classificador de e-mail pode ser "não é spam."

Contraste com a classe positiva.

rede neural

#fundamentals

Um modelo que contém pelo menos uma camada oculta. Uma rede neural profunda é um tipo de rede neural que contém mais de uma camada escondida. Por exemplo, o diagrama a seguir mostra uma rede neural profunda com duas camadas ocultas.

Uma rede neural com uma camada de entrada, duas camadas ocultas e uma
 camada de saída.

Cada neurônio em uma rede neural se conecta a todos os nós na próxima camada. No diagrama anterior, observe que cada um dos três neurônios na primeira camada escondida se conecta separadamente aos dois neurônios na segunda camada escondida.

Redes neurais implementadas em computadores às vezes são chamadas de redes neurais artificiais para diferenciá-las das redes neurais encontradas em cérebros e outros sistemas nervosos.

Algumas redes neurais podem imitar relações não lineares extremamente complexas entre diferentes atributos e o rótulo.

Veja também rede neural convolucional e rede neural recorrente.

neurônio

#fundamentals

Em machine learning, uma unidade distinta dentro de uma camada escondida de uma rede neural. Cada neurônio realiza a seguinte ação de duas etapas:

  1. Calcula a soma ponderada dos valores de entrada multiplicado pelos pesos correspondentes.
  2. Transmite a soma ponderada como entrada para uma função de ativação.

Um neurônio na primeira camada oculta aceita entradas dos valores do recurso na camada de entrada. Um neurônio em qualquer camada escondida além da primeira aceita entradas dos neurônios na camada escondida anterior. Por exemplo, um neurônio na segunda camada escondida aceita entradas dos neurônios na primeira camada escondida.

A ilustração a seguir destaca dois neurônios e suas entradas.

Uma rede neural com uma camada de entrada, duas camadas ocultas e uma
 camada de saída. Dois neurônios estão destacados: um na primeira
          camada escondida e um na segunda camada escondida. O neurônio
          destacado na primeira camada oculta recebe entradas dos dois recursos
          na camada de entrada. O neurônio destacado na segunda camada oculta recebe entradas de cada um dos três neurônios na primeira camada escondida.

Um neurônio em uma rede neural imita o comportamento dos neurônios em cérebros e outras partes de sistemas nervosos.

nó (rede neural)

#fundamentals

Um neurônio em uma camada escondida.

não linear

#fundamentals

Uma relação entre duas ou mais variáveis que não podem ser representadas somente por adição e multiplicação. Uma relação linear pode ser representada como uma linha, e uma relação não linear não pode ser representada como uma linha. Por exemplo, considere dois modelos que relacionam um único recurso a um único rótulo. O modelo à esquerda é linear e o à direita é não linear:

Dois gráficos. Um gráfico é uma linha, portanto, essa é uma relação linear.
          O outro gráfico é uma curva, então essa é uma relação não linear.

não estabilidade

#fundamentals

É um recurso cujos valores mudam em uma ou mais dimensões, geralmente o tempo. Por exemplo, considere os seguintes exemplos de não estabilidade:

  • O número de trajes de banho vendidos em uma determinada loja varia de acordo com a estação.
  • A quantidade de uma determinada fruta coletada em uma determinada região é zero para a maior parte do ano, mas grande por um breve período.
  • Devido às mudanças climáticas, as temperaturas médias anuais estão mudando.

Contraste com stationarity.

normalização

#fundamentals

De um modo geral, o processo de conversão do intervalo real de valores de uma variável em um intervalo padrão de valores, como:

  • De -1 a +1
  • 0 a 1
  • a distribuição normal

Por exemplo, suponha que o intervalo real de valores de um determinado recurso seja 800 a 2.400. Como parte da engenharia de atributos, é possível normalizar os valores reais para um intervalo padrão, como -1 a +1.

A normalização é uma tarefa comum na engenharia de atributos. Os modelos geralmente são treinados mais rapidamente e geram previsões melhores quando cada atributo numérico no vetor de atributos tem aproximadamente o mesmo intervalo.

dados numéricos

#fundamentals

Atributos representados como números inteiros ou números com valor real. Por exemplo, um modelo de avaliação de casas provavelmente representa o tamanho de uma casa (em pés quadrados ou metros quadrados) como dados numéricos. Representar um recurso como dados numéricos indica que os valores do atributo têm uma relação matemática com o rótulo. Ou seja, o número de metros quadrados de uma casa provavelmente tem alguma relação matemática com o valor da casa.

Nem todos os dados inteiros devem ser representados como dados numéricos. Por exemplo, em alguns lugares, os códigos postais são números inteiros, mas eles não podem ser representados como dados numéricos em modelos. Isso porque um código postal de 20000 não é duas vezes ou metade do valor de um código postal de 10.000. Além disso, apesar de os diferentes códigos postais serem correlacionados a diferentes valores imobiliários, não podemos presumir que os valores dos imóveis no código postal 20000 são duas vezes mais valiosos do que aqueles com código postal 10000. Os códigos postais precisam ser representados como dados categóricos.

Os atributos numéricos às vezes são chamados de atributos contínuos.

O

offline

#fundamentals

Sinônimo de static.

inferência off-line

#fundamentals

O processo de um modelo que gera um lote de previsões e, em seguida, armazena em cache (salvando) essas previsões. Os apps podem acessar a previsão desejada do cache em vez de executar novamente o modelo.

Por exemplo, considere um modelo que gere previsões meteorológicas locais (previsões) uma vez a cada quatro horas. Após a execução de cada modelo, o sistema armazena em cache todas as previsões meteorológicas locais. Os apps de clima recuperam as previsões do cache.

A inferência off-line também é chamada de inferência estática.

Contraste com a inferência on-line.

codificação one-hot

#fundamentals

Representação de dados categóricos como um vetor em que:

  • Um elemento é definido como 1.
  • Todos os outros elementos são definidos como 0.

A codificação one-hot normalmente é usada para representar strings ou identificadores com um conjunto finito de valores possíveis. Por exemplo, suponha que um determinado atributo categórico chamado Scandinavia tenha cinco valores possíveis:

  • "Dinamarca"
  • "Suécia"
  • "Noruega"
  • "Finlândia"
  • "Islândia"

Uma codificação one-hot pode representar cada um dos cinco valores da seguinte maneira:

país Vetor
"Dinamarca" 1 0 0 0 0
"Suécia" 0 1 0 0 0
"Noruega" 0 0 1 0 0
"Finlândia" 0 0 0 1 0
"Islândia" 0 0 0 0 1

Graças à codificação one-hot, um modelo pode aprender conexões diferentes com base em cada um dos cinco países.

Representar um recurso como dados numéricos é uma alternativa à codificação one-hot. Infelizmente, representar os países escandinavos numericamente não é uma boa escolha. Por exemplo, considere a seguinte representação numérica:

  • "Denmark" é 0
  • "Suécia" é 1
  • "Noruega" é 2
  • "Finlândia" é 3
  • "Islândia" é 4

Com a codificação numérica, um modelo interpretaria os números brutos matematicamente e tentaria treinar com esses números. No entanto, a Islândia não é duas vezes mais ou menos do que a Noruega, então o modelo chegaria a algumas conclusões estranhas.

um x todos

#fundamentals

Devido a um problema de classificação com N classes, uma solução consiste em N classificadores binários separados, um classificador binário para cada resultado possível. Por exemplo, considerando um modelo que classifica exemplos como animais, vegetais ou minerais, uma solução de um para todos fornece os três classificadores binários separados a seguir:

  • animal x não animal
  • vegetal x não vegetal
  • Mineral x não mineral

on-line

#fundamentals

É sinônimo de dinâmico.

inferência on-line

#fundamentals

gerar previsões sob demanda; Por exemplo, suponha que um app transmita entrada para um modelo e emita uma solicitação de uma previsão. Um sistema que usa inferência on-line responde à solicitação executando o modelo e retornando a previsão ao app.

Contraste com a inferência off-line.

camada de saída

#fundamentals

A camada "final" de uma rede neural. A camada de saída contém a previsão.

A ilustração a seguir mostra uma pequena rede neural profunda com uma camada de entrada, duas camadas ocultas e uma camada de saída:

Uma rede neural com uma camada de entrada, duas camadas ocultas e uma
 camada de saída. A camada de entrada consiste em dois atributos. A primeira
          camada oculta consiste em três neurônios, e a segunda camada
          composta de dois neurônios. A camada de saída consiste em um único nó.

overfitting

#fundamentals

Criar um modelo que corresponda aos dados de treinamento de forma que o modelo não faça previsões corretas sobre novos dados.

A regularização pode reduzir o overfitting. Treinar em um conjunto grande e diversificado de treinamentos também pode reduzir o overfitting.

P

pandas

#fundamentals

Uma API de análise de dados orientada por colunas criada com base em numpy. Muitos frameworks de machine learning, incluindo o TensorFlow, oferecem suporte a estruturas de dados de pandas como entradas. Consulte a documentação do pandas para mais detalhes.

parameter

#fundamentals

Os pesos e vieses que um modelo aprende durante o treinamento. Por exemplo, em um modelo de regressão linear, os parâmetros consistem no viés (b) e em todos os pesos (w1, w2 e assim por diante) na seguinte fórmula:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

Por outro lado, hiperparâmetro é o valor que você (ou um serviço de conversão de hiperparâmetros) fornece ao modelo. Por exemplo, a taxa de aprendizado é um hiperparâmetro.

classe positiva

#fundamentals

A classe em que você está testando.

Por exemplo, a classe positiva em um modelo de câncer pode ser "quot;tumor"." A classe positiva em um classificador de e-mail pode ser "spam."

Contraste com a classe negativa.

pós-processamento

#fairness
#fundamentals

Ajustar a saída de um modelo após a execução do modelo. O pós-processamento pode ser usado para aplicar restrições de imparcialidade sem modificar os próprios modelos.

Por exemplo, alguém pode aplicar o pós-processamento a um classificador binário definindo um limite de classificação para que a igualdade de oportunidade seja mantida para algum atributo, verificando se a taxa de verdadeiro positivo é igual para todos os valores desse atributo.

previsão

#fundamentals

Saída de um modelo. Exemplo:

  • A previsão de um modelo de classificação binária é a classe positiva ou a classe negativa.
  • A previsão de um modelo de classificação multiclasse é de uma classe.
  • A previsão de um modelo de regressão linear é um número.

marcadores de proxy

#fundamentals

Os dados usados para aproximar os rótulos não disponíveis diretamente em um conjunto de dados.

Por exemplo, suponha que você precise treinar um modelo para prever o nível de estresse do funcionário. Seu conjunto de dados contém vários atributos preditivos, mas não contém um rótulo chamado nível de estresse. Não se preocupe, você escolherá os "acidentes do local de trabalho" como um identificador de nível de estresse. Afinal, funcionários com estresse alto sofrem mais incidentes do que funcionários calmos. Ou será que sim? Os acidentes de trabalho aumentam e caem por diversos motivos.

Como segundo exemplo, suponha que você queira que está chovendo? seja um rótulo booleano para seu conjunto de dados, mas seu conjunto de dados não contém dados de chuva. Se fotografias estiverem disponíveis, você poderá mostrar fotos de pessoas que carregam guarda-sóis como um rótulo de proxy para está chovendo? Este é um bom rótulo de proxy? Possivelmente, mas as pessoas em algumas culturas podem ter mais probabilidade de guardar guarda-sóis para se proteger do sol do que da chuva.

Os rótulos do proxy geralmente são imperfeitos. Sempre que possível, escolha os identificadores reais em vez dos rótulos de proxy. Dito isso, quando um rótulo real estiver ausente, escolha o rótulo de proxy com muita atenção, escolhendo o candidato a um rótulo de proxy menos horrível.

R

avaliador

#fundamentals

Uma pessoa que fornece marcadores para exemplos. "Annotator" é outro nome de avaliador.

Unidade Linear Retificada (ReLU)

#fundamentals

Uma função de ativação com o seguinte comportamento:

  • Se a entrada for negativa ou zero, a saída será 0.
  • Se a entrada for positiva, a saída será igual à entrada.

Exemplo:

  • Se a entrada for -3, a saída será 0.
  • Se a entrada for +3, a saída será 3.0.

Veja um gráfico de ReLU:

Um gráfico cartesiano de duas linhas. A primeira linha tem um valor constante de y igual a 0, em execução no eixo x de -infinito,0 a 0,-0.
          A segunda linha começa em 0,0. Essa linha tem uma inclinação de +1, portanto, ela é executada de 0,0 a +infinito,+infinito.

ReLU é uma função de ativação muito popular. Apesar do comportamento simples, a ReLU ainda permite que uma rede neural aprenda relações não lineares entre recursos e o rótulo.

modelo de regressão

#fundamentals

Internamente, um modelo que gera uma previsão numérica. Por outro lado, um modelo de classificação gera uma previsão de classe. Por exemplo, os seguintes são modelos de regressão:

  • Modelo que prevê o valor de uma determinada casa, como 423.000 euros.
  • Um modelo que prevê uma determinada expectativa de vida de uma árvore, como 23,2 anos.
  • Um modelo que prevê a quantidade de chuva que cairá em determinada cidade nas próximas seis horas, como 0,18 polegadas.

Dois tipos comuns de modelos de regressão são:

  • Regressão linear, que encontra a linha que melhor se adapta aos valores do rótulo para os recursos.
  • Regressão logística, que gera uma probabilidade entre 0,0 e 1,0, que um sistema normalmente mapeia para uma previsão de classe.

Nem todo modelo que gera previsões numéricas é um modelo de regressão. Em alguns casos, uma previsão numérica é, na verdade, apenas um modelo de classificação que tem nomes de classe numéricos. Por exemplo, um modelo que prevê um código postal numérico é um modelo de classificação, não um modelo de regressão.

regularização

#fundamentals

Qualquer mecanismo que reduza o overfitting, Os tipos mais comuns de regularização incluem:

A regularização também pode ser definida como uma penalidade na complexidade do modelo.

taxa de regularização

#fundamentals

Um número que especifica a importância relativa de regularização durante o treinamento. Aumentar a taxa de regularização reduz o overfitting, mas pode reduzir o poder preditivo do modelo. Por outro lado, reduzir ou omitir a taxa de regularização aumenta o overfitting.

ReLU

#fundamentals

Abreviação de Unidade Linear Retificada.

Curva ROC (característica de operação do destinatário)

#fundamentals

Um gráfico de taxa de verdadeiro positivo em comparação com a taxa de falso positivo para diferentes limites de classificação na classificação binária.

A forma de uma curva ROC sugere a capacidade de um modelo de classificação binária de separar classes positivas de classes negativas. Suponha, por exemplo, que um modelo de classificação binária separa perfeitamente as classes negativas de todas as classes positivas:

Uma linha numérica com oito exemplos positivos no lado direito e sete exemplos negativos no lado esquerdo.

A curva ROC do modelo anterior tem a seguinte aparência:

Uma curva ROC. O eixo x é a taxa de falso positivo, e o eixo y
          é a taxa de verdadeiro positivo. A curva tem um formato L invertido. A curva
          começa em (0.0,0.0) e vai diretamente para (0.0,1.0). Em seguida, a curva passa de (0,0,1,0) para (1,0,1,0).

Em contraste, a ilustração a seguir mostra os valores brutos de regressão logística de um modelo terrível que não consegue separar classes negativas das classes positivas:

uma linha numérica com exemplos positivos e classes negativas
          completamente misturadas.

A curva ROC para esse modelo tem a seguinte aparência:

Uma curva ROC, que é, na realidade, uma linha reta de (0,0,0,0) a (1,0,1,0).

Enquanto isso, no mundo real, a maioria dos modelos de classificação binária separa classes positivas e negativas até certo ponto, mas geralmente não é perfeito. Portanto, uma curva ROC típica fica em algum lugar entre os dois extremos:

Uma curva ROC. O eixo x é a taxa de falso positivo, e o eixo y
          é a taxa de verdadeiro positivo. A curva ROC se aproxima de um arco instável
          que atravessa os pontos de bússola do oeste para o norte.

O ponto em uma curva ROC mais próxima de (0,0,1,0) teoricamente identifica o limite de classificação ideal. No entanto, vários outros problemas reais influenciam a seleção do limiar de classificação ideal. Por exemplo, talvez os falsos negativos causem muito mais dor do que os falsos positivos.

Uma métrica numérica chamada AUC (link em inglês) resume a curva ROC em um único valor de ponto flutuante.

Raiz do erro quadrático médio (RMSE)

#fundamentals

A raiz quadrada do Mean Squared Error (erro quadrático médio).

S

função sigmoide

#fundamentals

Uma função matemática que "esmaia" um valor de entrada em um intervalo restrito, geralmente de 0 a 1 ou -1 a +1. Ou seja, você pode transmitir qualquer número (dois, um milhão, bilhão negativo, o que for) para um sigmoide e a saída ainda estará no intervalo restrito. Um gráfico da função de ativação sigmoide tem a seguinte aparência:

Um gráfico curvado bidimensional com valores de x que abrangem o domínio
          - infinito a +positivo, enquanto os valores de y abrangem o intervalo de quase 0 a
          quase 1. Quando x é 0, y é 0,5. A inclinação da curva é sempre positiva, com a inclinação mais alta em 0,0,5 e diminuindo gradualmente as inclinaçãos à medida que o valor absoluto de x aumenta.

O sigmoide tem várias funções no machine learning, incluindo:

softmax

#fundamentals

Uma função que determina as probabilidades de cada classe possível em um modelo de classificação multiclasse. As probabilidades totalizam 1,0. Por exemplo, a tabela a seguir mostra como a softmax distribui várias probabilidades:

A imagem é um... Probabilidade
dog 0,85
cat 0,13
cavalo ,02

Também é chamada de softmax total.

Contraste com a amostra candidato.

atributo esparso

#language
#fundamentals

Um recurso com valores predominantemente zero ou vazios. Por exemplo, um recurso que contém apenas um valor de 1 e um milhão de valores de 0 é esparso. Por outro lado, um recurso denso tem valores que dominantemente não são zero nem estão vazios.

Em machine learning, um número surpreendente de atributos é esparso. Os atributos categóricos geralmente são esparsos. Por exemplo, entre as 300 espécies de árvores possíveis em uma floresta, um único exemplo pode identificar apenas uma árvore de bordo. Ou, entre os milhões de possíveis vídeos em uma biblioteca de vídeos, um único exemplo pode identificar apenas "Casablanca."

Em um modelo, você normalmente representa atributos esparsos com codificação one-hot. Se a codificação one-hot for grande, use uma camada de embedding na parte superior da codificação one-hot para maior eficiência.

representação esparsa

#language
#fundamentals

Armazenamento apenas das posições de elementos diferentes de zero em um atributo esparso.

Por exemplo, suponha que um recurso categórico chamado species identifique as 36 espécies de árvore de uma determinada floresta. Além disso, suponha que cada exemplo identifique somente uma espécie.

Você poderia usar um vetor one-hot para representar as espécies de árvore em cada exemplo. Um vetor one-hot contém um único 1 (para representar as espécies de árvore específicas nesse exemplo) e 35 0s (para representar as 35 espécies de árvore não neste exemplo). Dessa forma, a representação one-hot do maple pode ser semelhante a esta:

Um vetor em que as posições de 0 a 23 mantêm o valor 0, a posição
          24 mantém o valor 1 e as posições de 25 a 35 mantêm o valor 0.

Já a representação esparsa simplesmente identifica a posição de espécies específicas. Se maple estiver na posição 24, a representação esparsa de maple será simplesmente:

24

A representação esparsa é muito mais compacta do que a representação one-hot.

vetor esparso

#fundamentals

Um vetor cujos valores são principalmente zeros. Veja também recurso esparso e paridade.

perda quadrada

#fundamentals

Sinônimo de L2 perda.

static

#fundamentals

Isso é feito apenas uma vez, e não continuamente. Os termos estático e off-line são sinônimos. Veja a seguir usos comuns de estático e off-line no machine learning:

  • O modelo estático (ou modelo off-line) é um modelo treinado uma vez e usado por um tempo.
  • treinamento estático (ou treinamento off-line) é o processo de treinamento de um modelo estático.
  • A inferência estática (ou inferência off-line) é um processo em que um modelo gera um lote de previsões por vez.

Contraste com dinâmico.

inferência estática

#fundamentals

É sinônimo de inferência off-line.

estacionário

#fundamentals

Um recurso cujos valores não mudam em uma ou mais dimensões, geralmente tempo. Por exemplo, um atributo com valores semelhantes em 2020 e 2022 expõe a inatividade.

No mundo real, muito poucos atributos exibem inatividade. Até mesmo recursos sinônimos de estabilidade (como o nível do mar) mudam com o tempo.

Contraste com a não estatísticaidade.

gradiente descendente estocástico (SGD)

#fundamentals

Um algoritmo de gradiente descendente em que o tamanho do lote é 1. Em outras palavras, SGD treina em um único exemplo escolhido de maneira uniforme e aleatória em um conjunto de treinamento.

machine learning supervisionado

#fundamentals

Treinamento de um modelo a partir de recursos e seus rótulos correspondentes. O aprendizado de máquina supervisionado é semelhante ao aprendizado de um assunto estudando um conjunto de perguntas e as respostas correspondentes. Após dominar o mapeamento entre perguntas e respostas, o aluno pode dar respostas para novas perguntas (nunca antes vistas) sobre o mesmo tópico.

Compare com o machine learning não supervisionado.

recurso sintético

#fundamentals

Um recurso que não está presente entre os recursos de entrada, mas montado em um ou mais deles. Os métodos para criar recursos sintéticos incluem:

  • Agrupamento por classes de um atributo contínuo em classes de intervalo.
  • Como criar um cruzamento de atributos.
  • Multiplicar (ou dividir) um valor do atributo por outros valores de atributo ou sozinhos. Por exemplo, se a e b forem recursos de entrada, estes serão exemplos de recursos sintéticos:
    • ab.
    • a2
  • Aplicar uma função transcendental a um valor de atributo. Por exemplo, se c for um recurso de entrada, os seguintes exemplos serão de recursos sintéticos:
    • sin(c)
    • ln(c)

Os recursos criados pela normalização ou escalonamento não são considerados recursos sintéticos.

T

perda de teste

#fundamentals

Uma métrica que representa a perda de um modelo em relação ao conjunto de teste. Ao criar um modelo, você tenta minimizar a perda de teste. Isso porque uma baixa perda de teste é um indicador de qualidade mais forte do que uma baixa perda de treinamento ou uma baixa perda de validação.

Uma grande lacuna entre a perda de teste e a perda do treinamento ou da validação às vezes sugere que você precisa aumentar a taxa de regularização.

Treinamento

#fundamentals

O processo para determinar os parâmetros (pesos e vieses) ideais, que incluem um modelo. Durante o treinamento, um sistema lê em exemplos e ajusta os parâmetros gradualmente. O treinamento usa cada exemplo, de algumas vezes a bilhões de vezes.

perda de treinamento

#fundamentals

Uma métrica que representa a perda de um modelo durante uma iteração de treinamento específica. Por exemplo, suponha que a função de perda seja erro quadrático médio. Talvez a perda de treinamento (o Erro quadrático médio) na 10a iteração seja 2,2 e a perda de treinamento na 100a iteração seja 1,9.

Uma curva de perda representa a perda de treinamento em comparação com o número de iterações. Uma curva de perda fornece as seguintes dicas sobre o treinamento:

  • Uma curva decrescente implica que o modelo está melhorando.
  • Uma inclinação para cima implica que o modelo está piorando.
  • Uma curva plana implica que o modelo alcançou convergência.

Por exemplo, a seguinte curva de perda otimizada mostra o seguinte:

  • Uma inclinação decrescente íngreme durante as iterações iniciais, o que implica na melhoria rápida do modelo.
  • Uma inclinação cada vez mais plana (mas ainda decrescente) até o final do treinamento, o que implica na melhoria contínua do modelo em um ritmo um pouco mais lento do que durante as iterações iniciais.
  • Uma inclinação plana em direção ao final do treinamento, o que sugere a convergência.

O gráfico de perda de treinamento em comparação com iterações. Essa curva de perda começa
     com uma inclinação decrescente. A inclinação nivela gradualmente até que ela se torne zero.

A perda de treinamento é importante, mas consulte também a generalização.

desvio de treinamento/disponibilização

#fundamentals

A diferença entre o desempenho de um modelo durante o treinamento e o desempenho desse mesmo modelo durante a exibição.

conjunto de treinamento

#fundamentals

O subconjunto do conjunto de dados usado para treinar um modelo.

Tradicionalmente, os exemplos no conjunto de dados são divididos nos três subconjuntos distintos a seguir:

O ideal é que cada exemplo no conjunto de dados pertença a um dos subconjuntos anteriores. Por exemplo, um único exemplo não deve pertencer ao conjunto de treinamento e ao conjunto de validação.

verdadeiro negativo (TN)

#fundamentals

Um exemplo em que o modelo prevê corretamente a classe negativa. Por exemplo, o modelo infere que uma mensagem de e-mail específica não é spam e essa mensagem de e-mail realmente não é spam.

verdadeiro positivo (VP)

#fundamentals

Um exemplo em que o modelo prevê corretamente a classe positiva. Por exemplo, o modelo infere que uma mensagem de e-mail específica é spam e essa mensagem de e-mail é realmente spam.

taxa de verdadeiro positivo (TPR)

#fundamentals

Sinônimo de recall. Ou seja:

$$\text{true positive rate} = \frac{\text{true positives}} {\text{true positives} + \text{false negatives}}$$

A taxa de verdadeiro positivo é o eixo y de uma curva de ROC.

U

underfitting

#fundamentals

Produzir um modelo com baixa capacidade preditiva porque ele não capturou totalmente a complexidade dos dados de treinamento. Muitos problemas podem causar underfitting, incluindo:

exemplo sem rótulo

#fundamentals

Um exemplo que contém recursos, mas não rótulo. Por exemplo, a tabela a seguir mostra três exemplos sem rótulos de um modelo de avaliação residencial, cada um com três atributos, mas sem valor de casa:

Número de quartos Número de banheiros Idade da casa
3 2 15
2 1 72
4 2 34

Em machine learning supervisionado, os modelos são treinados em exemplos rotulados e fazem previsões em exemplos não rotulados.

No aprendizado semisupervisionado e não supervisionado, exemplos não rotulados são usados durante o treinamento.

Contraste com um exemplo sem rótulo com exemplo com rótulo.

machine learning não supervisionado

#clustering
#fundamentals

Treinamento de um modelo para encontrar padrões em um conjunto de dados, normalmente um conjunto de dados sem rótulos.

O uso mais comum do aprendizado de máquina não supervisionado é para agrupar dados em grupos de exemplos semelhantes. Por exemplo, um algoritmo de machine learning não supervisionado pode agrupar músicas com base em várias propriedades da música. Os clusters resultantes podem se tornar uma entrada para outros algoritmos de machine learning (por exemplo, para um serviço de recomendação de músicas). O clustering pode ajudar quando rótulos úteis são escassos ou ausentes. Por exemplo, em domínios como antiabuso e fraude, os clusters podem ajudar as pessoas a entender melhor os dados.

Contraste com o aprendizado de máquina supervisionado.

V

validação

#fundamentals

A avaliação inicial da qualidade de um modelo. A validação verifica a qualidade das previsões de um modelo em relação ao conjunto de validação.

Como o conjunto de validação é diferente do conjunto de treinamento, a validação ajuda na proteção contra o overfitting.

Considere avaliar o modelo em relação ao conjunto de validação como a primeira rodada de testes e avaliar o modelo em relação ao conjunto de teste como a segunda rodada de testes.

perda de validação

#fundamentals

Uma métrica que representa a perda de um modelo no conjunto de validação durante uma iteração específica do treinamento.

Veja também curva de generalização.

conjunto de validação

#fundamentals

O subconjunto do conjunto de dados que realiza a avaliação inicial em relação a um modelo treinado. Normalmente, você avalia o modelo treinado com base no conjunto de validação várias vezes antes de avaliar o modelo no conjunto de teste.

Tradicionalmente, os exemplos no conjunto de dados são divididos em três subconjuntos distintos:

O ideal é que cada exemplo no conjunto de dados pertença a um dos subconjuntos anteriores. Por exemplo, um único exemplo não deve pertencer ao conjunto de treinamento e ao conjunto de validação.

W

weight

#fundamentals

Um valor que um modelo multiplica por outro valor. Treinamento é o processo para determinar os pesos ideais de um modelo. Inferência é o processo de usar os pesos aprendidos para fazer previsões.

soma dos pesos

#fundamentals

A soma de todos os valores de entrada relevantes multiplicados pelos respectivos pesos. Por exemplo, suponha que as entradas relevantes sejam as seguintes:

valor de entrada peso da entrada
2 -1,3
-1 0,6
3 0,4

Portanto, a soma ponderada é:

weighted sum = (2)(-1.3) + (-1)(0.6) + (3)(0.4) = -2.0

Uma soma ponderada é o argumento de entrada para uma função de ativação.

Z

Normalização da pontuação Z

#fundamentals

Uma técnica de escalonamento que substitui o valor bruto de feature por um ponto flutuante que representa o número de desvios padrão da média desse recurso. Por exemplo, considere um recurso com uma média de 800 e um desvio padrão como 100. A tabela a seguir mostra como a normalização da pontuação Z verifica o valor bruto dessa pontuação:

Valor bruto Pontuação Z
800 0
950 +1,5
575 -2,25

O modelo de machine learning é treinado nos Z-scores desse recurso, e não nos valores brutos.