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

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

Usando dados fornecidos pelo TSE para simular o gráfico das eleições presidenciais de 2022

Simulação dos gráficos do segundo turno das eleições presidenciais, utilizando python e ferramentas de análise de dados, pandas e jupyter.

Desenvolvendo o campo de visão de um personagem em um plano 2D

Detectando objetos que entram dentro do campo de visão do personagem. Útil para servir de "gatilho" para eventos em um jogo.

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.

Criando um sistema de mini garagem automatizada integrada com um sistema de monitoramento independente

Desenvolvimento de um sistema de monitoramento que exibi todos os eventos que acontecem na garagem automatizada, como abertura de portões ou ocupação de vagas.

Integrando Laravel com o protocolo MQTT para comunicação entre dispositivos

Projeto de comunicação entre dois dispositivos ESP8266 e Raspberrypi4. Laravel irá funcionar como servidor e receptor de dados de temperatura e umidade coletados com o DHT11.

Veja também

A maioria dos sistemas atuais usam a nuvem para o armazenamento e o acesso de dados

A nuvem pode ser uma boa alternativa de substituição da memória atual. Além de fazer a cópia de segurança dos dados, pode ser acessível de qualquer lugar.

A manutenção de softwares é o maior pesadelo de um programador quando o código parece um campo minado

Existe muitos programadores que escrevem algoritmos mal planejados. Essa falta de planejamento dificulta a manutenção do aplicativo e aumenta a probabilidade de novos bugs.

Linguagem de programação

A linguagem de programação é um conjunto de instruções que possuem um padrão de escritas, sendo um intermediário entre o programador humano e a máquina.

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.

BLE Bluetooth Low Energy

BLE é uma sigla para Bluetooth Low Energy, é um Bluetooth com baixo consumo de energia.Nos referimos ao bluetooth antes do BLE como bluetooth clássico.

Busca linear

A busca linear é um algoritmo de força bruta não muito eficiente, mas com grande simplicidade, sendo utilizada regularmente por programadores.