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: 1998

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 o esqueleto de um jogo de tiro 2D visto de cima usando P5.js

Usando lógicas matemáticas como trigonometria para criar e calcular o esqueleto de um jogo de tiro 2D em javascript

Caixa eletrônico usando arquitetura limpa

Usando JavaFX e arquitetura limpa para criar um aplicativo de caixa eletrônico extremamente simples.

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).

Tutorial de programação do jogo da serpente em javascript

Programando o clássico jogo da serpente usando o framework p5.js. Tutorial indicado para iniciantes da programação que querem aprender os conceitos básico da área criando jogos.

Veja também

Todo empreendedor deve estar consciente que cada funcionário é um humano, portanto deve reconhecer as tentações em alguns cenários

Estudar o comportamento das pessoas pode auxiliar um administrador a criar um sistema de fiscalização mais eficiente, evitando fraudes que prejudicam a imagem da empresa

Os três pilares de segurança da informação são o requerimento mínimo para um serviço seguro

A quantidade de programadores só tende a aumentar com o tempo. Porém, muitos programadores ainda não conhecem os três pilares de segurança da informação.

Algoritmo

O algoritmo é um conjunto de instruções escritas por um programador com intuito de solucionar um problema ou obter um resultado previsto.

Algoritmo A* (A-estrela)

Algoritmo que busca o caminho com o menor custo entre dois pontos. É usado em jogos e aplicativos de navegação para calcular a menor distância possível.

Web Marketing

O web marketing utiliza ferramentas disponíveis na internet para criar, explorar e entregar valor de serviços ou produtos através da internet.

Busca binária

A busca binária usa o método de divisão de conquista que visa em dividir os problemas em pequenos problemas até que eles se resolvam sozinhos.