Aprendizado de máquina é um tipo de programa de computador que pode aprender a executar tarefas sem instruções definidas.
Após ler este artigo, você será capaz de:
Copiar o link do artigo
Aprendizado de máquina se refere a um tipo de algoritmo estatístico que consegue aprender sem instruções definidas. Isso permite que execute por conta própria determinadas tarefas, como a identificação de padrões, ao generalizá-las a partir de exemplos. Aprendizado de máquina é uma parte da inteligência artificial (IA) que se refere à capacidade que um computador tem de reproduzir as atividades cognitivas humanas.
O aprendizado de máquina tem uma ampla gama de usos, incluindo:
Aprendizado de máquina e IA não são exatamente a mesma coisa; na verdade, como disciplina, o aprendizado de máquina está incluído no âmbito da IA, mas nem toda IA envolve aprendizado de máquina, já que a IA também pode incluir uma série de outras habilidades.
O aprendizado de máquina é baseado em entradas e saídas. Um algoritmo de aprendizado de máquina é alimentado com dados (entrada) que são usados para produzir um resultado (saída). Um modelo de aprendizado de máquina "aprende" qual tipo de resultados deve produzir e pode fazer isso por meio de três métodos principais:
Para o tipo mais básico de programa de aprendizado de máquina, o programador seleciona um conjunto de exemplos de entradas e as saídas corretas. O algoritmo de aprendizado de máquina tenta generalizar a partir desses exemplos para que, quando for alimentado com uma entrada isolada, consiga produzir a saída desejada.
Imagine um chef que recebe uma cozinha cheia de ingredientes (a entrada) e um cardápio com um grande número de exemplos de pratos prontos (o resultado). Ao combinar os ingredientes de diferentes maneiras e comparar o produto final aos exemplos de pratos, o chef conseguirá, eventualmente, desenvolver as receitas necessárias para criar os itens do cardápio. Da mesma forma, o aprendizado supervisionado permite que um algoritmo aprenda como produzir os resultados corretos sem instruções programadas (ou uma receita).
O aprendizado não supervisionado ocorre quando um algoritmo de aprendizado de máquina mais avançado é alimentado com dados brutos e, em seguida, identifica os padrões por conta própria. Pense em um chef que seja habilidoso o suficiente para simplesmente olhar um cardápio e criar as receitas para preparar esses itens.
Nesse estilo de aprendizado, o algoritmo de aprendizado de máquina é treinado por meio de feedback. Existem "saídas" boas e "saídas" ruins e com o tempo, o algoritmo aprende a evitar as saídas ruins.
O aprendizado por reforço é um processo de tentativa e erro. Imagine que o chef não tem um cardápio para começar, mas, em vez disso, tudo o que ele cozinha é avaliado por um crítico de gastronomia. Eventualmente, o chef será capaz de selecionar uma lista de pratos que o crítico de gastronomia aprecia, depois de descartar todos os itens dos quais o crítico não gosta.
Um algoritmo é um conjunto de etapas pré-programadas; um modelo de aprendizado de máquina é o resultado da aplicação de um algoritmo a uma coleção de dados. Apesar dessa distinção, os termos "modelo de aprendizado de máquina" e "algoritmo de aprendizado de máquina" são às vezes usados como sinônimos. Mas a diferença é importante: dois modelos de aprendizado de máquina podem produzir resultados diferentes mesmo que usem o mesmo algoritmo, desde que cada modelo tenha sido alimentado com dados diferentes como ponto de partida.
Aprendizado profundo é um tipo de aprendizado de máquina que usa redes neurais para aprender a reconhecer padrões e fazer associações em dados brutos e não estruturados. O aprendizado profundo não é supervisionado e pode realizar tarefas extremamente complexas, sendo frequentemente utilizado para reconhecimento de fala, dirigir carros autônomos e outros aplicativos avançados.
Uma rede neural é um método de aprendizado de máquina que imita a estrutura do cérebro humano. As redes neurais são compostas de nós que se conectam entre si. Esses nós estão distribuídos por pelo menos três camadas: uma camada de entrada, uma camada de saída e uma ou mais camadas ocultas.
Cada camada contém vários nós que se conectam entre si. Se um nó perceber que alguns dados são significativos, irá repassá-lo para o próximo nó.
Pense mais uma vez no chef preparando pratos na cozinha:
Um banco de dados vetorial é um método de armazenamento de dados que aprimora o aprendizado de máquina. Os bancos de dados vetoriais permitem pesquisas por similaridade e a identificação de itens relacionados, em vez de consultas por correspondência exata. Armazenar os dados dessa forma ajuda os modelos de aprendizado de máquina a entenderem o contexto das inserções que recebem.
Um banco de dados vetorial armazena itens em uma matriz com várias dimensões, com vetores especificando a posição de cada item de dados ao longo dessas dimensões. Isso permite que os modelos de aprendizado de máquina localizem dados relacionados a outros dados. Por exemplo, uma plataforma de streaming pode combinar o aprendizado de máquina com um banco de dados vetorial para identificar quais filmes recomendar a um espectador com base em seu histórico de exibição.
Saída de dados: mesmo os modelos de aprendizado profundo mais avançados requerem acesso a conjuntos de dados gigantescos para obter resultados precisos. O armazenamento em nuvem é ideal para salvar esses conjuntos de big data, já que a computação em nuvem pode ser ampliada quase infinitamente. No entanto, o acesso a esses dados costuma resultar em tarifas de saída, isto é, os provedores de nuvem cobram pela transferência de dados do armazenamento.
Infraestrutura e poder computacional: o aprendizado automático, especialmente o aprendizado profundo, requer muito poder computacional. Os modelos de aprendizado de máquina requerem o uso de hardware ou serviços de nuvem especializados e caros — como, por exemplo, vários servidores rápidos alimentados por GPU. (Uma GPU, ou unidade de processamento gráfico, é mais poderosa do que uma CPU tradicional.)
A Cloudflare oferece uma coleção de serviços para facilitar o uso do aprendizado de máquina por qualquer pessoa. O Cloudflare Workers AI é uma rede global de GPUs que os desenvolvedores podem usar para executar tarefas de IA generativa. O Cloudflare Vectorize permite que os desenvolvedores usem um banco de dados vetorial distribuído globalmente. Além disso, temos o Cloudflare R2, um armazenamento de objetos sem tarifas de saída, permitindo que os desenvolvedores armazenem grandes conjuntos de dados em nuvem e os transfiram gratuitamente. Saiba mais sobre a Cloudflare para IA.