Conteúdo[Esconder][Mostrar]
O mundo está mudando rapidamente devido à inteligência artificial e ao aprendizado de máquina, que tem impacto em todos os aspectos de nossa vida cotidiana.
Desde assistentes de voz que usam PNL e aprendizado de máquina para agendar compromissos, pesquisar eventos em nosso calendário e tocar música a dispositivos tão precisos que podem antecipar nossas necessidades antes mesmo de considerá-las.
Os computadores podem jogar xadrez, fazer cirurgias e se transformar em máquinas mais inteligentes e mais parecidas com humanos com a ajuda de algoritmos de aprendizado de máquina.
Estamos em um momento de avanço tecnológico contínuo e, vendo como os computadores se desenvolveram ao longo do tempo, podemos fazer previsões sobre o que acontecerá no futuro.
A democratização das ferramentas e métodos computacionais é um dos aspectos-chave dessa revolução que se destaca. Cientistas de dados criaram poderosos computadores de processamento de dados durante os últimos cinco anos, implementando sem esforço metodologias de ponta. Os resultados são surpreendentes.
Neste post, veremos de perto aprendizado de máquina algoritmos e todas as suas variações.
Então, o que são algoritmos de aprendizado de máquina?
A abordagem usada pelo sistema de IA para realizar sua tarefa – geralmente, prever valores de saída de dados de entrada fornecidos – é conhecida como algoritmo de aprendizado de máquina.
Um algoritmo de aprendizado de máquina é um processo que utiliza dados e é usado para criar modelos de aprendizado de máquina prontos para produção. Se o aprendizado de máquina é o trem que realiza um trabalho, os algoritmos de aprendizado de máquina são as locomotivas que movem o trabalho.
A melhor abordagem de aprendizado de máquina a ser utilizada será determinada pelo problema de negócios que você está tentando resolver, o tipo de conjunto de dados que está utilizando e os recursos disponíveis.
Algoritmos de aprendizado de máquina são aqueles que transformam um conjunto de dados em um modelo. Dependendo do tipo de problema que você está tentando responder, do poder de processamento disponível e do tipo de dados que você possui, algoritmos supervisionados, não supervisionados ou de aprendizado por reforço podem ter um bom desempenho.
Então, falamos sobre aprendizado supervisionado, não supervisionado e por reforço, mas o que são eles? Vamos explorá-los.
Aprendizado supervisionado, não supervisionado e por reforço
Aprendizagem Supervisionada
No aprendizado supervisionado, o modelo de IA é desenvolvido com base na entrada fornecida e no rótulo que representa o resultado previsto. Com base nas entradas e saídas, o modelo desenvolve uma equação de mapeamento e, usando essa equação de mapeamento, prevê o rótulo das entradas no futuro.
Digamos que precisamos criar um modelo que possa distinguir entre um cachorro e um gato. Várias fotos de gatos e cachorros são inseridas no modelo com etiquetas indicando se são gatos ou cachorros para treinar o modelo.
O modelo busca estabelecer uma equação relacionando os rótulos das fotografias de entrada a essas imagens. Mesmo que o modelo nunca tenha visto a imagem antes, após o treino, ele consegue identificar se é de um gato ou de um cachorro.
Aprendizagem não supervisionada
O aprendizado não supervisionado envolve treinar um modelo de IA apenas em entradas sem rotulá-las. O modelo divide os dados de entrada em grupos com características relacionadas.
O rótulo futuro da entrada é então previsto dependendo de quão próximo seus atributos correspondem a uma das classificações. Considere a situação em que devemos dividir um grupo de bolas vermelhas e azuis em duas categorias.
Vamos supor que as outras características das bolas sejam idênticas, com exceção da cor. Com base em como pode dividir as bolas em duas classes, o modelo procura as características que são diferentes entre as bolas.
Dois aglomerados de bolas – um azul e um vermelho – são produzidos quando as bolas são divididas em dois grupos com base em sua tonalidade.
Aprendizagem por Reforço
No aprendizado por reforço, o modelo de IA procura maximizar o lucro geral agindo da melhor maneira possível em uma circunstância específica. O feedback sobre seus resultados anteriores ajuda o modelo a aprender.
Pense no cenário em que um robô é instruído a selecionar uma rota entre os pontos A e B. O robô primeiro escolhe um dos cursos porque não tem experiência anterior.
O robô recebe informações sobre a rota que toma e obtém conhecimento dela. O robô pode utilizar a entrada para corrigir o problema na próxima vez que encontrar uma circunstância semelhante.
Por exemplo, se o robô escolher a opção B e receber uma recompensa, como um feedback positivo, ele entende dessa vez que deve selecionar a forma B para aumentar sua recompensa.
Agora, finalmente, o que todos vocês estão esperando, são os algoritmos.
Principais algoritmos de aprendizado de máquina
1. Regressão Linear
A abordagem de aprendizado de máquina mais simples que se desvia do aprendizado supervisionado é a regressão linear. Com o conhecimento de variáveis independentes, é utilizado principalmente para resolver problemas de regressão e criar previsões sobre variáveis dependentes contínuas.
Encontrar a linha de melhor ajuste, que pode auxiliar na previsão do resultado para variáveis dependentes contínuas, é o objetivo da regressão linear. Os preços das casas, a idade e os salários são alguns exemplos de valores contínuos.
Um modelo conhecido como regressão linear simples usa uma linha reta para calcular a associação entre uma variável independente e uma variável dependente. Existem mais de duas variáveis independentes na regressão linear múltipla.
Um modelo de regressão linear tem quatro suposições subjacentes:
- Linearidade: Existe uma conexão linear entre X e a média de Y.
- Homocedasticidade: Para cada valor de X, a variância residual é a mesma.
- Independência: As observações são independentes umas das outras em termos de independência.
- Normalidade: Quando X é fixo, Y é normalmente distribuído.
A regressão linear tem um desempenho admirável para dados que podem ser separados ao longo de linhas. Ele pode controlar o overfitting usando técnicas de regularização, validação cruzada e redução de dimensionalidade. No entanto, há casos em que é necessária uma extensa engenharia de recursos, o que ocasionalmente pode resultar em overfitting e ruído.
2. Regressão Logística
A regressão logística é outra técnica de aprendizado de máquina que se afasta do aprendizado supervisionado. Seu principal uso é a classificação, embora também possa ser utilizado para problemas de regressão.
A regressão logística é usada para prever a variável dependente categórica usando as informações dos fatores independentes. O objetivo é classificar as saídas, que só podem cair entre 0 e 1.
O total ponderado das entradas é processado pela função sigmóide, uma função de ativação que converte valores entre 0 e 1.
A base da regressão logística é a estimativa de máxima verossimilhança, um método para calcular os parâmetros de uma distribuição de probabilidade assumida dados dados observados específicos.
3. Árvore de Decisão
Outro método de aprendizado de máquina que se separa do aprendizado supervisionado é a árvore de decisão. Para questões de classificação e regressão, a abordagem de árvore de decisão pode ser empregada.
Essa ferramenta de tomada de decisão, que se assemelha a uma árvore, utiliza representações visuais para mostrar os resultados prospectivos, custos e repercussões das ações. Ao dividir os dados em partes separadas, a ideia é análoga à mente humana.
Os dados foram divididos em partes distintas, tanto quanto pudemos granular. O objetivo principal de uma Árvore de Decisão é construir um modelo de treinamento que possa ser usado para prever a classe da variável alvo. Os valores omissos podem ser tratados automaticamente usando a Árvore de Decisão.
Não há necessidade de codificação única, variáveis fictícias ou outras etapas de pré-tratamento de dados. É rígido no sentido de que é difícil adicionar novos dados a ele. Se você tiver dados rotulados adicionais, deverá treinar novamente a árvore em todo o conjunto de dados.
Como resultado, as árvores de decisão são uma escolha ruim para qualquer aplicativo que exija mudança dinâmica do modelo.
Com base no tipo de variável de destino, as árvores de decisão são classificadas em dois tipos:
- Variável Categórica: Uma Árvore de Decisão na qual a variável objetivo é Categórica.
- Variável Contínua: Uma Árvore de Decisão na qual a variável de objetivo é Contínua.
4. Floresta Aleatória
O Random Forest Method é a próxima técnica de aprendizado de máquina e é um algoritmo de aprendizado de máquina supervisionado usado extensivamente em problemas de classificação e regressão. É também um método baseado em árvore, semelhante a uma árvore de decisão.
Uma floresta de árvores, ou muitas árvores de decisão, é usada pelo método de floresta aleatória para fazer julgamentos. Ao lidar com tarefas de classificação, o método de floresta aleatória empregou variáveis categóricas ao lidar com tarefas de regressão com conjuntos de dados que contêm variáveis contínuas.
Um conjunto, ou mistura de muitos modelos, é o que o método de floresta aleatória faz, o que significa que as previsões são feitas usando um grupo de modelos em vez de apenas um.
A capacidade de ser usada para problemas de classificação e regressão, que compõem a maioria dos sistemas modernos de aprendizado de máquina, é um benefício importante da floresta aleatória.
Duas estratégias diferentes são usadas pelo Ensemble:
- Bagging: Ao fazer isso, mais dados são produzidos para o conjunto de dados de treinamento. Para diminuir a variação nas previsões, isso é feito.
- Boosting é o processo de combinar alunos fracos com alunos fortes, construindo modelos sucessivos, resultando no modelo final com a máxima precisão.
5. Bayes ingênuo
Um problema de classificação binária (duas classes) e multiclasse pode ser resolvido usando a técnica Naive Bayes. Quando o método é explicado usando valores de entrada binários ou de categoria, é mais simples de entender. Uma suposição feita por um classificador Naive Bayes é que a existência de uma característica em uma classe não tem relação com a presença de quaisquer outras características.
A fórmula acima indica:
- P(H): A probabilidade de que a hipótese H esteja correta. A probabilidade anterior é chamada de this.
- P(E): A probabilidade da evidência
- P(E|H): A probabilidade de que a hipótese seja apoiada pela evidência.
- P(H|E): A probabilidade de que a hipótese seja verdadeira, dada a evidência.
Um classificador Naive Bayes levaria em conta cada uma dessas características individualmente ao determinar a probabilidade de um determinado resultado, mesmo que esses atributos estejam conectados entre si. Um modelo Naive Bayesiano é simples de construir e eficaz para grandes conjuntos de dados.
É conhecido por ter um desempenho melhor do que até mesmo as técnicas de categorização mais complexas, embora seja básico. É uma coleção de algoritmos que são todos baseados no Teorema de Bayes, em vez de um único método.
6. K-vizinhos mais próximos
A técnica K-nearest neighbors (kNN) é um subconjunto de aprendizado de máquina supervisionado que pode ser usado para resolver problemas de classificação e regressão. O algoritmo KNN presume que objetos comparáveis podem ser encontrados nas proximidades.
Lembro-me de uma reunião de indivíduos com ideias semelhantes. O kNN aproveita a ideia de semelhança entre outros pontos de dados utilizando proximidade, proximidade ou distância. Para rotular os dados não vistos com base nos pontos de dados observáveis rotulados mais próximos, um método matemático é empregado para determinar a separação entre os pontos em um gráfico.
Você deve determinar a distância entre os pontos de dados para identificar os pontos comparáveis mais próximos. Medições de distância como a distância euclidiana, distância de Hamming, distância de Manhattan e distância de Minkowski podem ser usadas para isso. O K é conhecido como o número do vizinho mais próximo e geralmente é um número ímpar.
O KNN pode ser aplicado a problemas de classificação e regressão. A previsão feita quando KNN é usado para problemas de regressão é baseada na média ou mediana das ocorrências K mais semelhantes.
O resultado de um algoritmo de classificação baseado em KNN pode ser determinado como a classe com maior frequência entre as K ocorrências mais semelhantes. Cada instância essencialmente lança um voto para sua classe, e a previsão pertence à classe que recebe mais votos.
7. K-médias
É uma técnica para aprendizado não supervisionado que aborda problemas de agrupamento. Os conjuntos de dados são divididos em um certo número de clusters - chamemos de K - de tal forma que os pontos de dados de cada cluster sejam homogêneos e distintos daqueles nos outros clusters.
Metodologia de agrupamento K-means:
- Para cada cluster, o algoritmo K-means seleciona k centroides, ou pontos.
- Com os centróides mais próximos ou K clusters, cada ponto de dados forma um cluster.
- Agora, novos centroides são produzidos dependendo dos membros do cluster já presentes.
- A distância mais próxima para cada ponto de dados é calculada usando esses centroides atualizados. Até que os centróides não mudem, esse processo é repetido.
É mais rápido, mais confiável e mais simples de compreender. Se houver problemas, a adaptabilidade do k-means simplifica os ajustes. Quando os conjuntos de dados são distintos ou bem isolados uns dos outros, os resultados são melhores. Ele não pode gerenciar dados erráticos ou discrepantes.
8. Suporte a Máquinas de Vetor
Ao usar a técnica SVM para classificar dados, os dados brutos são mostrados como pontos em um espaço n-dimensional (onde n é o número de recursos que você possui). Os dados podem então ser facilmente classificados porque o valor de cada recurso é então conectado a uma coordenada específica.
Para separar os dados e colocá-los em um gráfico, use linhas conhecidas como classificadores. Essa abordagem plota cada ponto de dados como um ponto em um espaço n-dimensional, onde n é o número de recursos que você tem e o valor de cada recurso é um valor de coordenada específico.
Vamos agora localizar uma linha que divide os dados em dois conjuntos de dados que foram categorizados de forma diferente. As distâncias dos pontos mais próximos em cada um dos dois grupos serão as mais afastadas ao longo desta linha.
Como os dois pontos mais próximos são os que estão mais distantes da linha do exemplo acima, a linha que divide os dados nos dois grupos que foram categorizados de forma diferente é a linha do meio. Nosso classificador é esta linha.
9. Redução de Dimensionalidade
Usando a abordagem de redução de dimensionalidade, os dados de treinamento podem ter menos variáveis de entrada. Em termos simples, refere-se ao processo de redução do tamanho do seu conjunto de recursos. Vamos imaginar que seu conjunto de dados tenha 100 colunas; a redução de dimensionalidade diminuirá esse valor para 20 colunas.
O modelo fica automaticamente mais sofisticado e tem um risco maior de overfitting à medida que o número de recursos aumenta. O maior problema de trabalhar com dados em dimensões maiores é o que é conhecido como “maldição da dimensionalidade”, que ocorre quando seus dados contêm um número excessivo de características.
Os seguintes elementos podem ser usados para realizar a redução de dimensionalidade:
- Para encontrar e escolher características pertinentes, a seleção de recursos é empregada.
- Usando recursos já existentes, a engenharia de recursos cria manualmente novos recursos.
Conclusão
O aprendizado de máquina não supervisionado ou supervisionado é possível. Escolha o aprendizado supervisionado se seus dados forem menos abundantes e bem marcados para treinamento.
Grandes conjuntos de dados geralmente executam e produzem melhores resultados usando aprendizado não supervisionado. Aprendizado profundo métodos são melhores se você tiver uma coleção de dados considerável que esteja prontamente disponível.
Aprendizagem de reforço e aprendizado profundo por reforço são alguns tópicos que você estudou. As características, usos e restrições das redes neurais agora estão claros para você. Por último, mas não menos importante, você considerou as opções para diferentes linguagens de programação, IDEs e plataformas ao criar seu próprio modelos de aprendizado de máquina.
A próxima coisa que você precisa fazer é começar a estudar e usar cada aprendizado de máquina abordagem. Mesmo que o assunto seja amplo, qualquer tópico pode ser entendido em poucas horas se você focar em sua profundidade. Cada sujeito se destaca dos outros.
Você deve pensar em um problema de cada vez, estudá-lo, colocá-lo em prática e usar uma linguagem de sua escolha para implementar o(s) algoritmo(s) nele.
Deixe um comentário