Machine Learning (Aprendizado de máquina)

Conjunto de algoritmos e técnicas que permitem que a máquina aprenda baseando-se em dados para realizar tarefas específicas.

Categoria de Tecnologia

Postado em 04 abril 2022

Atualizado em 18 janeiro 2023

Palavras-chave: machine,learning,aprendizado,máquina,algoritmo,ai,inteligência,artificial

Visualizações: 2010

Computadores precisam de instruções para poder operar e realizar tarefas como reconhecer a tecla pressionada pelo usuário, organizar a ordem das instruções e realizar o armazenamento de dados de forma estruturada.

A informática é principalmente utilizada pela conveniência que ela traz em relação a digitalização de informação e a automatização de processos. Além da automatização, a automação de processos tornou a informática um ramo ainda mais atraente para os utilizadores.

Tecnologias modernas como a inteligência artificial trouxeram novidades como machine learning.

O que é machine learning?

Machine learning, em português, aprendizado da máquina, é um campo de inteligência artificial. Através de técnicas e algoritmos, a máquina pode aprender a fazer diversas tarefas que substituem o trabalho humano, como distinguir informações, reconhecer padrões e criar relatórios analíticos.

machine_learning

Qualquer máquina que utiliza inteligência artificial precisa passar pela etapa de treinamento. O tipo de treinamento dependerá do tipo de tarefa que a máquina irá realizar. Os tipos de aprendizado da máquina são:

  • Aprendizado supervisionado: Uso de dados rotulados na fase de treinamento
  • Aprendizado não supervisionado: Uso de dados não rotulados na fase de treinamento
  • Aprendizado por reforço: A máquina aprende com os próprios erros e acertos

O aprendizado da máquina é um processo contínuo, por isso mesmo após a fase de treinamento, a máquina é capaz de aprender com as suas experiências e se adaptar à cada situação sem a presença de um humano. Ela já está presente em diversas tecnologias como assistentes virtuais, aplicativos de transmissão e sistemas de previsão. Algumas atividades que o aprendizado da máquina permite a máquina aprender são:

  • Reconhecimento de voz
  • Tradução
  • Detecção de fraude
  • Condução automatizada
  • Análise de dados

O aprendizado da máquina permite que a máquina imite perfeitamente o cérebro humano no aprendizado?

Por mais que o aprendizado da máquina seja eficiente e semelhante ao cérebro humano ao aprender, ainda está longe de ter os mesmo resultados. Isso acontece porque os algoritmos de aprendizado da máquina são programados para processar grande quantidade de dados de forma rápida e precisa. Assim sendo usado apenas para tarefas específicas como reconhecimento de fala, identificação de imagens e previsão de tendências.

Por outros lado, o cérebro humano é bem mais complexo, possuindo mais adaptabilidade e flexibilidade. Além disso, os humanos possuem consciência, algo que a máquina não tem.

Como a máquina aprende a reconhecer padrões em dados?

No caso de um aprendizado supervisionado, na etapa de treinamento, são fornecidos o algoritmo de aprendizagem e os dados necessários para o aprendizado. Esses dados possuem valores de entrada e saída. Os valores de entrada podem ser imagens, sons ou dados coletados de algum sensor. Os valores de saída possuem rótulos ou classificações. Esses valores são essenciais e serão estudados pela máquina que irá avaliar cada relação de cada valor. Alguns exemplos de algoritmos são:

  • Redes neurais
  • Árvores de decisão
  • Support Vector Machine

No caso do aprendizado não supervisionado, os dados de treinamento não possuem rótulo, pois não há uma saída esperada. Assim, a máquina aprende de modo independente a explorar e entender os dados. Exemplos de algoritmos não supervisionados são:

  • K-Mean
  • Análise de Componentes Principais
  • Clustering Hierárquico

Qual é o objetivo do aprendizado da máquina?

Dependendo do objetivo da máquina, a técnica de aprendizado é diferente. No caso do aprendizado supervisionado, a máquina aprende a compreender sobre novos dados baseando-se nos dados usados no treinamento. Assim ela é capaz de fazer classificações e previsões de dados. Como por exemplo identificar a imagem de um cachorro ou reconhecer a voz de uma pessoa.

O aprendizado da máquina não supervisionado não usa dados rotulados, por isso a máquina aprende de modo independente a compreensão de dados. Em geral, o objetivo dessa técnica é encontrar padrões, fazer agrupamento e detectar anomalias em dados. Pode ser usado em equipamentos industriais para detecção de falhas e identificar transições fraudulentas em sistemas financeiros.

O aprendizado da máquina de reforço aprende com os erros e acertos. Esse modo é baseado no princípio do reforço. Ao receber uma recompensa, a máquina muda a sua estratégia de modo que possa maximizar o tempo de duração do processo. Esse tipo de aprendizado é usado em jogos de computador e automação de processos em robôs industriais e drones.

Por que usar machine learning?

A quantidade de dados que pode ser gerada e armazenada na memória de servidores é extremamente grande. Essa grande quantidade de dados pode proporcionar informações valiosas se analisados e aproveitados da melhor forma. Aos olhos de humanos, podem não representar valor, mas se processados e compreendidos pela máquina pode gerar análises valiosos, previsões de tendências e detecção de falhas.

<stages>
    <_>
	    <maxWeakCount>9</maxWeakCount>
	    <stageThreshold>-5.0425500869750977e+00</stageThreshold>
	    <weakClassifiers>
		    <_>
			    <internalNodes>0 -1 0 -3.1511999666690826e-02</internalNodes>
			    <leafValues>2.0875380039215088e+00 -2.2172100543975830e+00</leafValues>
		    </_>
	    </weakClassifiers>
    </_>
</stages>

Os dados acima são um exemplo de uma porção de dados utilizados para o aprendizado da máquina para o reconhecimento de faces frontais. Ao examinar esses dados de forma isolada, não apresentam grande importância, porém ao juntar grande quantidade desses dados, a máquina pode fazer descobertas e trazer informações estratégicas.

Isso traz muitas vantagens para grandes empresas, pois análises feitos por robôs são extremamente precisos. Um grande exemplo na prática é a relevância das sugestões que aparecem no youtube, facebook e instagram. Machine learning se baseia nos dados visualizados no passado para então trazer recomendações de informações que tendemos a ter interesse.

Conclusão

O aprendizado da máquina tem diversas técnicas de aprendizado. Dependendo da tarefa que a máquina exercer, seu modo de aprendizado irá ser diferente. Além disso, é um processo contínuo. Por isso a máquina pode aprender e se adaptar conforme as necessidades.

Projetos práticos

Criando um sistema de integração contínua (CI/CD)

Fazendo a integração contínua de Jenkins, Sonatype Nexus, Sonatype, JUnit e Gradle para automatizar processos repetitivos. Prática bastante usada em tecnologias de DevOps.

Criando um jogo de pacman usando javascript e pixi.js (parte 1)

Desenvolvimento dos conceitos mais básicos do clássico pacman, como: mapa, animação, deslocamento e detector de colisões.

Integrando o PHP com Elasticsearch no desenvolvimento de um sistema de busca

Projeto de criação de um sistema de busca usando o framework Symfony e Elasticsearch. A integração com Kibana também é feito de modo remoto com um raspberrypi.

Implementando um algoritmo de pathfinding

Implementando um programa que encontra a menor distância entre dois pontos dentro de um labirinto usando o algoritmo A* (a-estrela).

Criando um jogo de guerra nas estrelas em javascript usando a biblioteca p5.js

Jogo simples de guerra espacial desenvolvido em javascript. Esse jogo usa cálculos de física para simular efeitos de atrito e inércia.

Veja também

O usuário malicioso joga a isca e espera a vítima pacientemente

Phishing tem esse nome pois a vítima se torna só mais um peixe na rede. Ter conhecimento de phishing é o melhor jeito de evitar ser um desses peixes

O DNS torna a interface do navegador mais amigável aos usuários

Antes de podermos visualizar o site, o endereço que digitamos na barra de endereço do nosso navegador passa por várias etapas, para só então podermos visualizar o site pela primeira vez...

Variáveis na programação

As variáveis são elementos responsáveis por armazenar informações temporariamente ou perpetuamente durante a execução de um programa ou algoritmo.

HR Tech

HR Tech é um software que auxilia na gestão de pessoas, tornando-se possível o gerenciamento centralizado na área de recursos humanos.

Deep Learning (Aprendizagem profunda)

Subcampo da inteligência artificial inspirado no sistema de neurônios de seres inteligentes como o dos humanos, permitindo com que as máquinas aprendam.

Indústria 4.0

Também conhecida como quarta revolução industrial, utiliza tecnologias modernas para automatizar processos. Iniciou-se em 2011, na Alemanha.