Introdução ao Machine Learning

1.1 Introdução


Graças ao aprendizado de máquina, o programador não precisa escrever instruções que levem em consideração todos os problemas possíveis e contenham todas as soluções. Em vez disso, um computador (ou um programa separado) é organizado com um algoritmo para encontrar soluções de maneira independente por meio do uso integrado de dados estatísticos dos quais os padrões são derivados e com base nas previsões feitas.

A tecnologia do aprendizado de máquina baseada na análise de dados data de 1950, quando começaram a desenvolver os primeiros programas para jogar damas. Nas últimas décadas, o princípio geral não mudou. Mas, graças ao crescimento explosivo do poder computacional dos computadores, as leis e previsões criadas por eles se tornaram mais complicadas e a gama de problemas e problemas resolvidos com o aprendizado de máquina aumentou.

Para iniciar o processo de aprendizado de máquina, primeiro você precisa fazer o download do conjunto de dados (uma certa quantidade de dados de entrada) no computador, no qual o algoritmo aprenderá a processar solicitações. Por exemplo, pode haver fotografias de cães e gatos que já tenham etiquetas indicando a quem pertencem. Após o processo de treinamento, o próprio programa poderá reconhecer cães e gatos em novas imagens sem o conteúdo da tag. O processo de aprendizado continua mesmo após a emissão das previsões, quanto mais dados analisamos pelo programa, mais precisamente ele reconhecerá as imagens desejadas.

Graças ao aprendizado de máquina, os computadores aprendem a reconhecer em fotografias e desenhos não apenas rostos, mas também paisagens, objetos, texto e números. Quanto ao texto, aqui não se pode prescindir do aprendizado de máquina: a função de verificar a gramática agora está presente em qualquer editor de texto e até mesmo em telefones. Além disso, não apenas a ortografia das palavras é levada em consideração, mas também o contexto, as tonalidades de significado e outros aspectos lingüísticos sutis. Além disso, já existe um software capaz de escrever notícias (sobre economia e, por exemplo, esportes) sem intervenção humana.

1.2 Tipos de tarefas de aprendizado de máquina


Todas as tarefas resolvidas usando o ML se enquadram em uma das seguintes categorias.

1) A tarefa de regressão é uma previsão baseada em uma amostra de objetos com vários atributos. A produção deve ser um número real (2, 35, 76.454 etc.), por exemplo, o preço de um apartamento, o valor de uma garantia após seis meses, a renda esperada da loja para o próximo mês, a qualidade do vinho durante o teste às cegas.

2) A tarefa da classificação é obter uma resposta categórica com base em um conjunto de recursos. Possui um número finito de respostas (geralmente no formato “sim” ou “não”): existe um gato na fotografia, é a imagem um rosto humano, é o paciente doente com câncer.

3) A tarefa do agrupamento é a distribuição de dados em grupos: dividindo todos os clientes de uma operadora móvel por nível de solvência, atribuindo objetos espaciais a uma ou outra categoria (planeta, estrelas, buraco negro, etc.).

4) A tarefa de reduzir a dimensão é reduzir um grande número de recursos para um menor (geralmente 2-3) para facilitar a visualização subsequente (por exemplo, compactação de dados).

5) A tarefa de detectar anomalias é separar as anomalias dos casos padrão. À primeira vista, ele coincide com a tarefa de classificação, mas há uma diferença significativa: anomalias são um fenômeno raro, e os exemplos de treinamento nos quais você pode treinar um modelo de aprendizado de máquina para identificar tais objetos são muito pequenos ou simplesmente não, portanto, os métodos de classificação não funcionam aqui. . Na prática, essa tarefa é, por exemplo, identificar atividades fraudulentas com cartões bancários.

1.3 Tipos básicos de aprendizado de máquina


A maior parte das tarefas resolvidas usando métodos de aprendizado de máquina refere-se a dois tipos diferentes: aprender com um professor (aprendizado supervisionado) ou sem ele (aprendizado não supervisionado). No entanto, esse professor não é necessariamente o próprio programador, que fica acima do computador e controla todas as ações do programa. "Professor" em termos de aprendizado de máquina é a própria intervenção humana no processo de processamento de informações. Nos dois tipos de treinamento, a máquina fornece dados iniciais que serão necessários para analisar e encontrar padrões. A única diferença é que, ao aprender com um professor, há várias hipóteses que precisam ser refutadas ou confirmadas. Essa diferença é fácil de entender com exemplos.

Aprendizado de máquina com um professor

Suponha que tivéssemos informações sobre dez mil apartamentos em Moscou: área, andar, distrito, presença ou ausência de estacionamento na casa, distância do metrô, preço do apartamento etc. Precisamos criar um modelo que preveja o valor de mercado de um apartamento por seus parâmetros. Este é um exemplo ideal de aprendizado de máquina com um professor: temos os dados iniciais (o número de apartamentos e suas propriedades, chamados de sinais) e uma resposta pronta para cada um dos apartamentos é seu custo. O programa tem que resolver o problema de regressão.

Outro exemplo da prática: confirmar ou negar a presença de câncer em um paciente, conhecendo todos os seus indicadores médicos. Descubra se uma mensagem recebida é spam, analisando seu texto. Todas essas são tarefas de classificação.

Aprendizado de máquina sem professor

No caso de treinamento sem professor, quando “respostas corretas” prontas não são fornecidas ao sistema, tudo é ainda mais interessante. Por exemplo, temos informações sobre o peso e a altura de um determinado número de pessoas, e esses dados precisam ser divididos em três grupos, cada um dos quais precisará costurar camisas de tamanhos adequados. Esta é uma tarefa de armazenamento em cluster. Nesse caso, é necessário dividir todos os dados em três grupos (mas, como regra, não existe essa divisão estrita e somente possível).

Se tomarmos uma situação diferente, quando cada um dos objetos da amostra tiver centenas de recursos diferentes, a principal dificuldade será a exibição gráfica dessa amostra. Portanto, o número de sinais é reduzido para dois ou três e torna-se possível visualizá-los em um plano ou em 3D. Esta é a tarefa de reduzir a dimensão.

1.4 Algoritmos básicos de modelos de aprendizado de máquina


1. Árvore de decisão

Este é um método de suporte à decisão baseado no uso de um gráfico em árvore: um modelo de decisão que leva em consideração suas possíveis consequências (levando em consideração a probabilidade de ocorrência de um evento), eficiência e consumo de recursos.

Para processos de negócios, essa árvore consiste em um número mínimo de perguntas que requerem uma resposta definitiva - "sim" ou "não". Consistentemente, respondendo a todas essas perguntas, chegamos à escolha certa. As vantagens metodológicas da árvore de decisão são que ela estrutura e sistematiza o problema, e a decisão final é tomada com base em conclusões lógicas.

2. Classificação bayesiana ingênua

Os classificadores ingênuos de Bayes pertencem à família de classificadores probabilísticos simples e se originam do teorema de Bayes, que neste caso considera as funções independentes (isso é chamado de suposição estrita ou ingênua). Na prática, é usado nas seguintes áreas de aprendizado de máquina:

  • Detecção de e-mails de spam
  • vinculação automática de artigos de notícias a seções temáticas;
  • identificação da coloração emocional do texto;
  • reconhecimento de rostos e outros padrões nas imagens.

3. Método dos mínimos quadrados

Quem estudou estatística pelo menos um pouco está familiarizado com o conceito de regressão linear. Os mínimos quadrados também estão relacionados às suas opções de implementação. Normalmente, a regressão linear resolve o problema de ajustar uma linha reta que passa por muitos pontos. Veja como fazer isso usando o método dos mínimos quadrados: desenhe uma linha reta, meça a distância dela a cada um dos pontos (conecte os pontos e a linha com segmentos verticais), transfira o valor resultante para cima. Como resultado, a curva na qual a soma das distâncias será menor é a desejada (esta linha passará por pontos com um desvio normalmente distribuído do valor verdadeiro).

Uma função linear é geralmente usada na seleção de dados para aprendizado de máquina, e o método dos mínimos quadrados é usado para minimizar erros criando uma métrica de erro.

4. Regressão logística

A regressão logística é uma maneira de determinar o relacionamento entre variáveis, uma das quais é categoricamente dependente e as outras são independentes. Para isso, é utilizada a função logística (distribuição logística acumulativa). O significado prático da regressão logística é que é um método estatístico poderoso para prever eventos, que inclui uma ou mais variáveis ​​independentes. Isso é solicitado nas seguintes situações:

  • pontuação de crédito;
  • medir o sucesso das campanhas publicitárias em andamento;
  • previsão de lucro para um determinado produto;
  • avaliação da probabilidade de um terremoto em uma data específica.

5. Método do vetor de suporte (SVM)

Esse é todo um conjunto de algoritmos necessários para resolver problemas de classificação e análise de regressão. Com base no fato de um objeto localizado no espaço N-dimensional pertencer a uma das duas classes, o método do vetor de suporte constrói um hiperplano com dimensão (N-1) para que todos os objetos apareçam em um dos dois grupos. No papel, isso pode ser representado da seguinte forma: existem pontos de dois tipos diferentes e podem ser divididos linearmente. Além de separar pontos, esse método gera um hiperplano de forma que fique o mais longe possível do ponto mais próximo de cada grupo.

O SVM e suas modificações ajudam a resolver tarefas complexas de aprendizado de máquina, como junção de DNA, determinação do sexo de uma pessoa a partir de fotografias e exibição de banners publicitários em sites.

6. O método dos conjuntos

Ele é baseado em algoritmos de aprendizado de máquina que geram muitos classificadores e separam todos os objetos dos dados recém-recebidos com base em seus resultados de média ou votação. Inicialmente, o método ensemble era um caso especial de média bayesiana, mas depois se tornou mais complicado e foi coberto por algoritmos adicionais:

  • reforço - converte modelos fracos em fortes, formando um conjunto de classificadores (do ponto de vista matemático, essa é uma interseção melhorada);
  • ensacamento (ensacamento) - coleta classificadores sofisticados, enquanto treina simultaneamente o básico (aprimorando a associação);
  • Correção de erros na codificação de saída.

O método de conjunto é uma ferramenta mais poderosa em comparação aos modelos de previsão independentes, porque:

  • minimiza a influência de acidentes calculando a média dos erros de cada classificador de base;
  • reduz a dispersão, uma vez que vários modelos diferentes baseados em hipóteses diferentes têm maior probabilidade de chegar ao resultado correto do que um tomado separadamente;
  • exclui ir além do escopo do conjunto: se a hipótese agregada estiver fora do conjunto de hipóteses básicas, no estágio de formação da hipótese combinada ela se expandirá usando um método ou outro, e a hipótese já está incluída.

7. Algoritmos de agrupamento

O armazenamento em cluster consiste na distribuição de muitos objetos em categorias, para que em cada categoria - o cluster - sejam encontrados os elementos mais semelhantes.

Você pode agrupar objetos usando algoritmos diferentes. Os mais usados ​​são:

  • com base no centro de gravidade do triângulo;
  • com base na conexão;
  • redução dimensional;
  • densidade (com base no agrupamento espacial);
  • probabilístico;
  • aprendizado de máquina, incluindo redes neurais.

Os algoritmos de agrupamento são usados ​​em biologia (o estudo da interação de genes em um genoma com até milhares de elementos), sociologia (processamento dos resultados de estudos sociológicos usando o método Ward, produzindo agrupamentos com dispersão mínima e do mesmo tamanho) e tecnologia da informação.

8. Método do Componente Principal (PCA)

O método dos componentes principais, ou PCA, é uma operação estatística sobre transformação ortogonal, que visa traduzir observações de variáveis ​​que podem ser de alguma forma interconectadas em um conjunto de componentes principais - valores que não são linearmente correlacionados.

As tarefas práticas nas quais o PCA é aplicado são a visualização e a maioria dos procedimentos para compactar, simplificar e minimizar dados, a fim de facilitar o processo de aprendizado. No entanto, o método do componente principal não é adequado para situações em que os dados iniciais são mal ordenados (ou seja, todos os componentes do método são caracterizados por alta dispersão). Portanto, sua aplicabilidade é determinada pela forma como a área de estudo é estudada e descrita.

9. Decomposição singular

Na álgebra linear, uma decomposição singular, ou SVD, é definida como a decomposição de uma matriz retangular que consiste em números reais ou complexos. Portanto, uma matriz M de dimensão [m * n] pode ser decomposta de tal maneira que M = UΣV, onde U e V são matrizes unitárias, e Σ é diagonal.

Um dos casos especiais de decomposição singular é o método do componente principal. As primeiras tecnologias de visão computacional foram desenvolvidas com base em SVD e PCA e funcionaram da seguinte forma: primeiro, as faces (ou outros padrões encontrados) foram representadas como a soma dos componentes básicos e, em seguida, suas dimensões foram reduzidas, depois comparadas com as imagens da amostra. Os algoritmos modernos de decomposição singular no aprendizado de máquina, é claro, são muito mais complexos e sofisticados do que seus antecessores, mas sua essência mudou em geral.

10. Análise Independente de Componentes (ICA)

Este é um dos métodos estatísticos que revela fatores ocultos que afetam variáveis ​​aleatórias, sinais etc. A ACI gera um modelo generativo para bases de dados multifatoriais. Variáveis ​​no modelo contêm algumas variáveis ​​ocultas e não há informações sobre as regras para misturá-las. Essas variáveis ​​ocultas são componentes de amostra independentes e são consideradas sinais não-Gaussianos.

Em contraste com a análise dos componentes principais, associada a esse método, a análise de componentes independentes é mais eficaz, principalmente nos casos em que as abordagens clássicas são impotentes. Ele descobre as causas ocultas dos fenômenos e, devido a isso, encontrou ampla aplicação em vários campos, da astronomia e medicina ao reconhecimento de fala, testes automáticos e análise da dinâmica dos indicadores financeiros.

1.5 Exemplos da vida real


Exemplo 1. Diagnóstico de doenças

Os pacientes nesse caso são objetos e os sinais são todos os seus sintomas, histórico, resultados dos testes, medidas de tratamento já tomadas (de fato, todo o histórico médico, formalizado e dividido em critérios separados). Alguns sinais - sexo, presença ou ausência de dor de cabeça, tosse, erupção cutânea e outros - são considerados binários. A avaliação da gravidade da condição (extremamente grave, moderada etc.) é um sinal ordinal e muitos outros são quantitativos: o volume da droga, o nível de hemoglobina no sangue, a pressão arterial e a freqüência cardíaca, idade, peso. Depois de coletar informações sobre a condição do paciente, contendo muitos desses sinais, você pode baixá-las para um computador e, usando um programa capaz de aprendizado de máquina, resolver os seguintes problemas:

  • realizar diagnóstico diferencial (determinar o tipo de doença);
  • escolha a melhor estratégia de tratamento;
  • prever o desenvolvimento da doença, sua duração e resultado;
  • calcular o risco de possíveis complicações;
  • identificar síndromes - conjuntos de sintomas associados a uma determinada doença ou distúrbio.

Nenhum médico é capaz de processar instantaneamente toda a gama de informações de cada paciente, resumir um grande número de outros registros médicos semelhantes e fornecer imediatamente um resultado claro. Portanto, o aprendizado de máquina está se tornando uma ferramenta indispensável para os médicos.

Exemplo 2. A busca por depósitos minerais

No papel dos signos, aqui estão as informações obtidas usando a exploração geológica: a presença de quaisquer rochas no território (e isso será um sinal do tipo binário), suas propriedades físicas e químicas (que são decompostas em vários sinais quantitativos e qualitativos).

Para a amostra de treinamento, são tomados 2 tipos de precedentes: áreas onde depósitos minerais estão precisamente presentes e áreas com características semelhantes onde esses minerais não foram encontrados. Mas a extração de minerais raros tem suas próprias especificidades: em muitos casos, o número de sinais excede significativamente o número de objetos, e os métodos estatísticos tradicionais são pouco adequados para essas situações. Portanto, no aprendizado de máquina, a ênfase está na detecção de padrões em uma matriz de dados já coletada. Para isso, determinam-se conjuntos pequenos e mais informativos de recursos que são mais indicativos de resposta à pergunta da pesquisa - existe um fóssil específico na área indicada ou não. Pode-se fazer uma analogia com a medicina: os depósitos também podem revelar suas próprias síndromes. O valor do uso de aprendizado de máquina nessa área reside no fato de que os resultados obtidos são não apenas práticos, mas também de sério interesse científico para geólogos e geofísicos.

3.

, . , 1960–1970- , .

, , – , , . , , , . , . (, ), — (, ), ( , , , , , ) (, -, , ).

, , . , 2 – «» «», «».

, , , . , (, , ). – .

PS , Python.

Source: https://habr.com/ru/post/pt448892/


All Articles