Ferramentas do usuário

Ferramentas do site


a:aprendizagem_de_maquina

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anteriorRevisão anterior
Próxima revisão
Revisão anterior
a:aprendizagem_de_maquina [2022/08/28 00:33] Gustavo Vinícius Paulinoa:aprendizagem_de_maquina [2022/09/05 14:42] (atual) Samuel Machado Gama
Linha 1: Linha 1:
 +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:
 +
 +  - 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.
 +  - 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. 
 +  - 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 =====
 +
 +  * No aprendizado supervisionado, o objetivo principal é fazer previsões precisas sobre as saídas para os dados. Já no não supervisionado, o objetivo é extrair informações sobre o conjunto de dados e o próprio modelo decide como ele fará isso. 
 +  * Aprendizado supervisionado possui menor complexidade. Aprendizado não supervisionado são mais complexos porque necessitam de um grande conjunto de dados de treinamento para chegar a previsões desejadas e precisam de ferramentas poderosas para lidar com o alto volume de dados
 +  * As //labels// para o aprendizado supervisionado devem ser escolhidas corretamente, exigem tempo e o modelo exige tempo para ser treinado. Por outro lado, aprendizado não supervisionado pode gerar resultados sem precisão se não tiverem intervenção humana. 
 +
 +===== 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 ======
 +  * Identificam tendências e padrões de dados que os humanos podem perder
 +  * Conseguem trabalhar sem intervenção humana constante após serem configurados
 +  * É escalável já que quanto maior a quantidade de dados disponíveis, maior será a precisão. 
 +
 +====== Desvantagens do Aprendizado de Máquina ======
 +  * O treinamento inicial é caro e demorado. É preciso uma grande quantidade de dados
 +  * Pode ser difícil interpretar os resultados corretamente e eliminar a incerteza sem a ajuda de um especialista.
 +
 +====== 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 ======
 +
 +{{:a:arthur_l_samuel.jpg?200|}}
 +
 +** 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.
 +
 +{{:a:fei-fei-li_profilephoto_1_.jpg?200|}}
 +
 +** 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 ======
 +
 +
 + 
 +  
 +  - **O que é machine learning?**, por Amazon AWS. Disponível em: [[https://aws.amazon.com/pt/what-is/machine-learning/]]
 +  - **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]] 
 +  - **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/]] 
 +  - **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]]
 +  - **Aprendizado Supervisionado ou Não Supervisionado**, por Didática Tech. Disponível em: [[https://didatica.tech/aprendizado-supervisionado-ou-nao-supervisionado/]] 
 +  - **How to Start Learning Machine Learning**, por GeeksforGeeks. Disponível em: [[https://www.geeksforgeeks.org/how-to-start-learning-machine-learning/]] 
 +  - **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]] 
 +  - **Tutorial 73 - What are features in machine learning?**, por Apeer Micro. Disponível em: [[https://www.youtube.com/watch?v=40Fm-E2hITM&t=191s]] 
 +  - **How Machine Learning Works**, por DataRoboot. Disponível em: [[https://www.datarobot.com/blog/how-machine-learning-works/]] 
 +  - **Unsupervised Learning**, por IBM Cloud Education[[https://www.ibm.com/cloud/learn/unsupervised-learning#toc-applicatio-omDVIJIs]] .
 +  - **Supervised vs. Unsupervised Learning: What's the Difference**, por Julianna Delua, SME, IBM Analytics, Data Science/Machine Learning[[https://www.ibm.com/cloud/blog/supervised-vs-unsupervised-learning]] 
 +  - **Machine Learning**, por Wikipedia contributors [[https://en.wikipedia.org/wiki/Machine_learning]] 
 +  - **Biografia de Arthur Samuel, IEEE:** https://www.computer.org/profiles/arthur-samuel
 +  - **Biografia de Fei-Fei Li, Universidade de Stanford:** https://profiles.stanford.edu/fei-fei-li