Tabela de conteúdos

Tópico feito por Gustavo Vinícius Paulino.

O que é Aprendizado de Máquina

Aprendizado de máquina, ou Machine Learning, é a área do desenvolvimento de algoritmos onde os computadores são utilizados para realizar tarefas sem instruções explícitas, sendo “ensinados” a partir do reconhecimento de padrões em muitos e diferentes dados. Tendo em vista esses aspectos, o computador pode receber diversos exemplares de dados e, então, identificar os padrões e as relações entre eles. Assim, quando a máquina receber dados desconhecidos, ela tentará definir características e antecipar comportamentos sobre eles, se baseando nos modelos e conexões que aprendeu anteriormente. Quanto maior o número de informações utilizadas para ensinar o computador - chamadas de conjunto de treinamento ou dados de treinamento (training set ou training data) - maior será a precisão do modelo criado a partir da instrução do algoritmo.

Por que o Aprendizado de Máquina é importante

A interpretação de dados é essencial para a tomada de decisões sobre um cliente para uma empresa. Por conta do grande volume de dados existentes necessários e a necessidade de obtê-los a partir de diferentes fontes, é muito difícil para uma empresa analisar essas informações e tomar integralmente decisões sem o aprendizado de máquina. O Machine Learning automatiza e otimiza esse processo. Ao usar um software que analisa grandes volumes de dados em alta velocidade, as empresas podem obter resultados mais rapidamente.

O funcionamento do Aprendizado de Máquina

Aprendizado Supervisionado

No aprendizado supervisionado, cada exemplo dos dados de treinamento é composto por uma entrada (input) e a sua saída correspondente (output). Essas entradas (também chamadas de features) podem ser vistas como variáveis ou atributos que levam a um label (rótulo), que seria a saída vinculada a aquela variável. É dito que no aprendizado supervisionado os dados de treinamento estão rotulados, já que cada entrada está vinculada a uma saída específica.

Dois algoritmos de aprendizado supervisionado são os de classificação e regressão.

No algoritmo de classificação, existe um número limitado de rótulos, ou labels, para serem vinculados as features. Um exemplo de um modelo de classificação, seria um modelo para detectar se um email deve ir para a caixa de spam ou para a caixa de entrada. Baseado no treinamento com exemplo de features que levam um email a receber a label spam ou caixa de entrada, o modelo aprende a diferenciar um tipo de email do outro e consegue classificá-lo com uma das labels existentes.

No algoritmo de regressão, o objetivo é treinar um modelo para que ele entenda a relação entre uma variável independente, uma feature, e uma variável dependente, uma saída, e então possa aplicar essa relação em novas entradas que não foram vistas durante o treinamento. Assim como no modelo de classificação, os dados de treinamentos são rotulados, então cada feature dos dados passados ao computador possuem uma label. Então, baseado nos dados de treinamento, o modelo consegue definir a relação entre as entradas e as saídas. Ao contrário do modelo de classificação, o modelo de regressão pode ter infinitas labels a partir de suas features. Um exemplo de modelo de regressão é dado abaixo:

  1. O modelo recebe como dados de treinamento o conjunto de features X = {x1: 1, x2: 2, x3: 3} e o conjunto de labels Y = {y1: 2, y2: 4, y3: 6}, onde a feature xn possui como label yn, sendo n a posição do elemento dentro do seu conjunto.
  2. Ao analisar esses dados de treinamento, o modelo aprende que a relação entre a variável independente x, a feature, e a variável dependente y, a label, é y = 2 * x.
  3. Agora, se o modelo receber como entrada o valor 5, ele atribuirá como saída correspondente o valor 10.

Aqui, o objetivo é fazer previsões sobre futuras saídas com alta precisão. No entanto, rotular as features é um processo caro, demorado e que exige um profissional, ainda mais quando se tem um grande volume de dados.

Aprendizado Não Supervisionado

No aprendizado de máquina não supervisionado, o modelo recebe como dados apenas os inputs, ou features, não rotulados. Por não serem rotuladas, essas features não possuem uma label correspondente. A ideia principal é que o modelo analise e agrupe esses conjuntos de dados para detectar padrões e grupos escondidos sem a intervenção humana.

Agrupamento, ou clustering, é uma técnica para agrupar unlabeled data (dados sem rótulos), em grupos a partir de padrões e semelhanças em suas informações. O próprio modelo decide como agrupar esses dados. Alguns métodos para agrupar unlabeled data são: Exclusive Clustering (Agrupamento Exclusivo), Overlapping Clustering (Agrupamento Sobreposto), Hierarchical Clustering (Agrupamento Hierárquico).

Associação, ou association, é uma técnica que descobre relações entre diferentes unlabeled data num conjunto de dados.

Redução de dimensionalidade, ou dimensionality reduction, é uma técnica de aprendizado de máquina não supervisionado para diminuir o volume de features num conjunto de dados quando o volume é muito alto. Essa técnica mantém a integridade dos dados.

No Aprendizado Não Supervisionado, o objetivo é extrair informações que seriam de difícil ou demorada percepção por humanos. Por lidar com unlabeled data, a taxa de precisão pode ser menor se comparada com a do Aprendizado Supervisionado se não tiver uma intervenção humana para validar os resultados.

Aprendizado de Máquina Supervisionado vs Não Supervisionado

Aprendizado Semi-Supervisionado

O aprendizado de máquina semi-supervisionado se baseia na ideia de passar uma pequena quantidade de labeled data (dados rotulados) para aumentar a precisão de um modelo não supervisionado. Inicialmente, o modelo é treinado parcialmente com os dados rotulados e depois ele mesmo rotula os dados não rotulados (esse processo é chamado de pseudo-rotulagem)

Com esse método, não é preciso que se tenha uma abundância de dados rotulados e a precisão aumenta.

Inteligência Artificial e Aprendizado de Máquina

É importante saber que o Aprendizado de Máquina se trata de uma subárea, ou método, da Inteligência Artificial, área que busca fazer computadores emularem “tarefas humanas”, que é responsável por produzir modelos capazes de aprender a partir de dados.

Vantagens do Aprendizado de Máquina

Desvantagens do Aprendizado de Máquina

Como começar no Aprendizado de Máquina?

São requisitos para aprender Aprendizado de Máquina conhecimentos matemáticos como Álgebra Linear, Cálculo com múltiplas variáveis e Estatística. Python é a linguagem mais utilizada no aprendizado de máquina. A partir disso, se deve aprender os conceitos do Machine Learning, como termos e os tipos de aprendizado de máquina.

Grandes Nomes

Arthur Lee Samuel

Arthur foi pioneiro na pesquisa em inteligência artificial, e em 1959 popularizou o termo “Aprendizagem de máquina”. Seu principal trabalho de pesquisa foi o desenvolvimento de uma IA que eventualmente em 1961, conseguiu vencer do Campeão estadual de Damas do estado americano de Connecticut. Em 1987, ganhou o prêmio de Pioneiro da Computação do Institute of Electrical and Electronics Engineers (IEEE) por Processamento não numérico adaptativo.

Fei-Fei Li

Li é Professora de Ciência da Computação pela Universidade de Stanford, na Califórnia. Já publicou cerca de 200 artigos científicos e atualmente trabalha no Campo de Pesquisa sobre sistemas inteligentes para prestação de serviços de saúde. De Janeiro de 2017 até Setembro de 2018, foi Vice-Presidente da Google e Atuou como Chief-Scientist de Inteligência Artificial/Aprendizagem de máquina na Google Cloud.


Fontes

  1. O que é machine learning?, por Amazon AWS. Disponível em: https://aws.amazon.com/pt/what-is/machine-learning/
  2. Machine Learning: O que é e qual sua importância?, por SAS. Disponível em: https://www.sas.com/pt_br/insights/analytics/machine-learning.html
  3. Os Três Tipos de Aprendizado de Máquina, por Hugo Honda, Matheus Facure e Peng Yaohao. Disponível em: https://lamfo-unb.github.io/2017/07/27/tres-tipos-am/
  4. Dicas de aprendizado supervisionado, por Afshine Amidi e Shervine Amidi. Disponível em: https://stanford.edu/~shervine/l/pt/teaching/cs-229/dicas-aprendizado-supervisionado
  5. Aprendizado Supervisionado ou Não Supervisionado, por Didática Tech. Disponível em: https://didatica.tech/aprendizado-supervisionado-ou-nao-supervisionado/
  6. How to Start Learning Machine Learning, por GeeksforGeeks. Disponível em: https://www.geeksforgeeks.org/how-to-start-learning-machine-learning/
  7. Computer Scientist Explains Machine Learning in 5 Levels of Difficulty | WIRED, por WIRED. Disponível em:https://www.youtube.com/watch?v=5q87K1WaoFI&t=1227s
  8. Tutorial 73 - What are features in machine learning?, por Apeer Micro. Disponível em: https://www.youtube.com/watch?v=40Fm-E2hITM&t=191s
  9. How Machine Learning Works, por DataRoboot. Disponível em: https://www.datarobot.com/blog/how-machine-learning-works/
  10. Supervised vs. Unsupervised Learning: What's the Difference, por Julianna Delua, SME, IBM Analytics, Data Science/Machine Learninghttps://www.ibm.com/cloud/blog/supervised-vs-unsupervised-learning
  11. Machine Learning, por Wikipedia contributors https://en.wikipedia.org/wiki/Machine_learning
  12. Biografia de Arthur Samuel, IEEE: https://www.computer.org/profiles/arthur-samuel
  13. Biografia de Fei-Fei Li, Universidade de Stanford: https://profiles.stanford.edu/fei-fei-li