Principais projetos de aprendizado de máquina em Python para iniciantes [2022]
Publicados: 2021-01-03Se você quiser se tornar um profissional de aprendizado de máquina, precisará ganhar experiência usando suas tecnologias. A melhor maneira de fazer isso é concluindo projetos. É por isso que, neste artigo, estamos compartilhando vários projetos de aprendizado de máquina em Python para que você possa começar a testar rapidamente suas habilidades e obter uma experiência valiosa.
No entanto, antes de começar, certifique-se de estar familiarizado com o aprendizado de máquina e seu algoritmo. Se você nunca trabalhou em um projeto antes, não se preocupe, pois também compartilhamos um tutorial detalhado sobre um projeto:
Índice
O conjunto de dados da íris: para iniciantes
O conjunto de dados Iris é facilmente um dos projetos de aprendizado de máquina mais populares em Python. É relativamente pequeno, mas sua simplicidade e tamanho compacto o tornam perfeito para iniciantes. Se você não trabalhou em nenhum projeto de aprendizado de máquina em Python, comece com ele. O conjunto de dados Iris é uma coleção de tamanhos de sépalas e pétalas de flores da flor Iris. Possui três classes, com 50 instâncias em cada uma delas.
Fornecemos código de exemplo em vários lugares, mas você deve usá-lo apenas para entender como ele funciona. Implementar o código sem entendê-lo falharia na premissa de fazer o projeto. Portanto, certifique-se de entender bem o código antes de implementá-lo.
Etapa 1: importar as bibliotecas
A primeira etapa de qualquer projeto de aprendizado de máquina é importar as bibliotecas. A principal razão pela qual o Python é tão versátil é por causa de suas bibliotecas robustas. As bibliotecas que precisaremos neste projeto são:
- Pandas
- Matplotlib
- Sklearn
- SciPy
- NumPyName
Existem vários métodos para importar bibliotecas para o seu sistema e você deve usar uma maneira específica de importar todas as bibliotecas. Isso garantiria consistência e ajudaria a evitar qualquer confusão. Observe que a instalação varia de acordo com o sistema operacional do seu dispositivo, portanto, lembre-se disso ao importar bibliotecas.

Código:
# Carrega bibliotecas
de pandas import read_csv
de pandas.plotting import scatter_matrix
do matplotlib importar pyplot
de sklearn.model_selection importar train_test_split
de sklearn.model_selection importar cross_val_score
de sklearn.model_selection importar StratifiedKFold
de sklearn.metrics importar classificação_report
de sklearn.metrics importar confusão_matrix
de sklearn.metrics importar precisão_score
de sklearn.linear_model importar LogisticRegression
de sklearn.tree importação DecisionTreeClassifier
de sklearn.neighbors importar KNeighborsClassifier
de sklearn.discriminant_analysis importar LinearDiscriminantAnalysis
de sklearn.naive_bayes importar GaussianNB
de sklearn.svm importar SVC
Leia: As 10 principais ideias de projetos de conjuntos de dados de aprendizado de máquina para iniciantes
Etapa 2: carregar o conjunto de dados
Depois de importar as bibliotecas, é hora de carregar o conjunto de dados. Conforme discutimos, usaremos o conjunto de dados Iris neste projeto. Você pode baixá-lo daqui .
Certifique-se de especificar os nomes de cada coluna ao carregar os dados, e isso o ajudará mais tarde no projeto. Recomendamos baixar o conjunto de dados, portanto, mesmo que você enfrente problemas de conexão, seu projeto permanecerá inalterado.
Código:
# Carregar conjunto de dados
url = “https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”
nomes = ['sepal-length', 'sepal-width', 'pétal-length', 'pétal-width', 'class']
dataset = read_csv(url, nomes=nomes)
Etapa 3: resumindo
Antes de começarmos a usar o conjunto de dados, devemos primeiro olhar para os dados presentes nele. Começaremos verificando a dimensão do conjunto de dados, que nos mostra que o conjunto de dados tem cinco atributos e 150 instâncias.
Depois de verificar a dimensão, você deve examinar algumas linhas e colunas do conjunto de dados para ter uma ideia geral de seu conteúdo. Então você deve olhar para o resumo estatístico do conjunto de dados e ver quais métricas são as mais prevalentes no mesmo.
Por fim, você deve verificar a distribuição de classes no conjunto de dados. Isso significa que você teria que verificar quantas instâncias se enquadram em cada classe. Aqui está o código para resumir nosso conjunto de dados:
# resume os dados
de pandas import read_csv
# Carregar conjunto de dados
url = “https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”
nomes = ['sepal-length', 'sepal-width', 'pétal-length', 'pétal-width', 'class']
dataset = read_csv(url, nomes=nomes)
# forma
print(dataset.shape)
# cabeça
print(dataset.head(20))
# descrições
print(dataset.describe())
# distribuição de classe
print(dataset.groupby('class').size())
Etapa 4: visualizar os dados
Depois de resumir o conjunto de dados, você deve visualizá-lo para melhor compreensão e análise. Você pode usar gráficos univariados para analisar cada atributo em detalhes e gráficos multivariados para estudar os relacionamentos de cada recurso. A visualização de dados é um aspecto crucial dos projetos de aprendizado de máquina, pois ajuda a encontrar informações essenciais presentes no conjunto de dados.
Etapa 5: avaliação do algoritmo
Após visualizar os dados, avaliaremos diversos algoritmos para encontrar o melhor modelo para nosso projeto. Primeiro, criaremos um conjunto de dados de validação que retiraremos do original. Em seguida, empregaremos a validação cruzada de 10 vezes e criaremos vários modelos. Como já discutido, pretendemos prever as espécies através das medidas das flores. Você deve usar diferentes tipos de algoritmos e escolher aquele que produz os melhores resultados. Você pode testar SVM (Support Vector Machines), KNN (K-Nearest Neighbors), LR (Logistic Regression) e outros.
Em nossa implementação, descobrimos que o SVM é o melhor modelo. Aqui está o código:
de pandas import read_csv
do matplotlib importar pyplot
de sklearn.model_selection importar train_test_split
de sklearn.model_selection importar cross_val_score
de sklearn.model_selection importar StratifiedKFold
de sklearn.linear_model importar LogisticRegression
de sklearn.tree importação DecisionTreeClassifier
de sklearn.neighbors importar KNeighborsClassifier
de sklearn.discriminant_analysis importar LinearDiscriminantAnalysis
de sklearn.naive_bayes importar GaussianNB
de sklearn.svm importar SVC
# Carregar conjunto de dados
url = “https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”
nomes = ['sepal-length', 'sepal-width', 'pétal-length', 'pétal-width', 'class']
dataset = read_csv(url, nomes=nomes)
# Conjunto de dados de validação dividido
array = dataset.values
X = matriz[:,0:4]
y = array[:,4]
X_train, X_validation, Y_train, Y_validation = train_test_split(X, y, test_size=0.20, random_state=1, shuffle=True)
# Algoritmos de verificação pontual
modelos = []
models.append(('LR', LogisticRegression(solver='liblinear', multi_class='ovr')))
models.append(('LDA', LinearDiscriminantAnalysis()))
models.append(('KNN', KNeighborsClassifier()))
models.append(('CART', DecisionTreeClassifier()))
models.append(('NB', GaussianNB()))
models.append(('SVM', SVC(gamma='auto')))
# avalia cada modelo por vez
resultados = []
nomes = []
para nome, modelo em modelos:
kfold = StratifiedKFold(n_splits=10, random_state=1, shuffle=True)
cv_results = cross_val_score(modelo, X_train, Y_train, cv=kfold, scoring='precisão')
resultados.append(cv_results)

nomes.append(nome)
print('%s: %f (%f)' % (nome, cv_results.mean(), cv_results.std()))
# Comparar Algoritmos
pyplot.boxplot(resultados, rótulos=nomes)
pyplot.title('Comparação de algoritmos')
pyplot.show()
Etapa 6: prever
Depois de avaliar diferentes algoritmos e escolher o melhor, é hora de prever os resultados. Usaremos nosso modelo no conjunto de dados de validação primeiro para testar sua precisão. Depois disso, vamos testá-lo em todo o conjunto de dados.
Aqui está o código para executar nosso modelo no conjunto de dados:
# fazer previsões
de pandas import read_csv
de sklearn.model_selection importar train_test_split
de sklearn.metrics importar classificação_report
de sklearn.metrics importar confusão_matrix
de sklearn.metrics importar precisão_score
de sklearn.svm importar SVC
# Carregar conjunto de dados
url = “https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”
nomes = ['sepal-length', 'sepal-width', 'pétal-length', 'pétal-width', 'class']
dataset = read_csv(url, nomes=nomes)
# Conjunto de dados de validação dividido
array = dataset.values
X = matriz[:,0:4]
y = array[:,4]
X_train, X_validation, Y_train, Y_validation = train_test_split(X, y, test_size=0,20, random_state=1)
# Faça previsões sobre o conjunto de dados de validação
modelo = SVC(gama='auto')
model.fit(X_train, Y_train)
previsões = model.predict(X_validation)
# Avaliar previsões
print(accuracy_score(Y_validation, previsões))
print(confusion_matrix(Y_validation, previsões))
print(classification_report(Y_validation, previsões))
É isso. Agora você concluiu um projeto de aprendizado de máquina em Python usando o conjunto de dados Iris.
Projetos adicionais de aprendizado de máquina em Python
O conjunto de dados Iris é principalmente para iniciantes. Se você tem alguma experiência trabalhando em projetos de aprendizado de máquina em Python, deve dar uma olhada nos projetos abaixo:
1. Use ML para prever preços de ações
Um excelente lugar para aplicar algoritmos de aprendizado de máquina é o mercado de ações. As empresas estão usando algoritmos de IA e tecnologias baseadas em ML para realizar análises técnicas há algum tempo. Você também pode criar um modelo de ML que preveja os preços das ações.
No entanto, para trabalhar neste projeto, você terá que usar várias técnicas, incluindo análise de regressão, análise preditiva, modelagem estatística e análise de ação. Você pode obter os dados necessários nos sites oficiais das bolsas de valores. Eles compartilham dados sobre os desempenhos anteriores das ações. Você pode usar esses dados para treinar e testar seu modelo.
Como iniciante, você pode se concentrar em uma empresa em particular e prever o valor de suas ações por três meses. Da mesma forma, se você deseja tornar o projeto desafiador, pode usar várias empresas e estender seus cronogramas de previsão.
O que você vai aprender com este projeto:
Este projeto o familiarizará com as aplicações de IA e ML no setor financeiro. Você também pode estudar análise preditiva por meio deste projeto e experimentar diferentes algoritmos.
2. Escreva um algoritmo de aprendizado de máquina do zero
Se você é iniciante e não trabalhou em nenhum projeto de aprendizado de máquina em Python, também pode começar com este. Neste projeto, você precisa construir um algoritmo de ML do zero. Fazer este projeto ajudará você a entender todos os conceitos básicos das funções do algoritmo, além de ensinar a converter fórmulas matemáticas em código de aprendizado de máquina.
Saber como converter conceitos matemáticos em código ML é crucial, pois você terá que implementá-lo muitas vezes no futuro. Como você enfrentará problemas mais avançados, terá que confiar nessa habilidade. Você pode escolher qualquer algoritmo de acordo com sua familiaridade com seus conceitos. Seria melhor começar com um algoritmo simples se você não tiver experiência.
O que você vai aprender com este projeto:
Você se familiarizará com os conceitos matemáticos de inteligência artificial e aprendizado de máquina.
3. Crie um leitor de manuscrito
Este é um projeto de visão computacional. A visão computacional é o setor da inteligência artificial relacionado à análise de imagens. Neste projeto, você criará um modelo de ML que pode ler manuscritos. Ler significa que o modelo deve ser capaz de reconhecer o que está escrito no papel. Você teria que usar uma rede neural neste projeto para se familiarizar com o aprendizado profundo e seus conceitos relevantes.
Primeiro você terá que pré-processar a imagem e remover seções desnecessárias; em outras palavras, execute a limpeza de dados na imagem para maior clareza. Depois disso, você terá que realizar a segmentação e o redimensionamento da imagem para que o algoritmo possa ler os caracteres corretamente. Depois de concluir o pré-processamento e a segmentação, você pode passar para a próxima etapa, a classificação. Um algoritmo de classificação distinguirá os caracteres presentes no texto e os colocará em suas respectivas categorias.
Você pode usar a ativação do log sigmoid para treinar seu algoritmo de ML para este projeto.
O que você vai aprender com este projeto:
Você estudará visão computacional e redes neurais. A conclusão deste projeto também o familiarizará com o reconhecimento e a análise de imagens.
4. Um Previsor de Vendas
O setor de varejo tem muitas aplicações para IA e aprendizado de máquina. Neste projeto, você descobrirá uma dessas aplicações, ou seja, a previsão de vendas de produtos.
Um conjunto de dados predominante entre os entusiastas do aprendizado de máquina é o conjunto de dados de vendas do BigMart. Possui mais de 1559 produtos espalhados por seus diversos pontos de venda em 10 cidades. Você pode usar o conjunto de dados para criar um modelo de regressão. De acordo com os pontos de venda, seu modelo deve prever o potencial de vendas de determinados produtos no próximo ano. Esse conjunto de dados possui atributos específicos para cada ponto de venda e produto para entender suas propriedades e a relação entre os dois rapidamente.
O que você vai aprender com este projeto:

Trabalhar neste projeto o familiarizará com modelos de regressão e análise preditiva. Você também aprenderá sobre as aplicações do aprendizado de máquina no setor de varejo.
Saiba mais sobre aprendizado de máquina e Python
Esperamos que você tenha achado útil esta lista de projetos de aprendizado de máquina em Python. Se você tiver alguma dúvida ou pensamento, por favor, deixe-nos saber através da seção de comentários. Adoraríamos responder às suas perguntas.
Aprenda cursos de ciência de dados das melhores universidades do mundo. Ganhe Programas PG Executivos, Programas de Certificado Avançado ou Programas de Mestrado para acelerar sua carreira.
Aqui estão alguns recursos adicionais para estudar aprendizado de máquina e Python.
- Tutorial Python
- Aprendizado de máquina vs. Aprendizado Profundo
- Aplicativos de aprendizado de máquina
Por outro lado, se você deseja obter uma experiência de aprendizado mais personalizada, pode fazer um curso de IA e ML. Você aprenderá com especialistas do setor por meio de vídeos, tarefas e projetos.
O aprendizado de máquina é uma boa escolha de carreira?
Se você gosta de tecnologias emergentes e notícias relacionadas, já deve ter ouvido falar sobre a quarta revolução industrial trazida pela tecnologia de aprendizado de máquina. De acordo com relatórios, espera-se que o mercado global de aprendizado de máquina atinja INR 543 bilhões em valor até 2023. No entanto, a lacuna na demanda e oferta de profissionais proficientes em aprendizado de máquina aumentou para quase 125%. Isso indica que, para um profissional de aprendizado de máquina com a combinação certa de habilidades, o mercado de trabalho tem muitas promessas. Se você deseja se tornar um engenheiro de aprendizado de máquina, engenheiro de pesquisa ou cientista de pesquisa, sem dúvida será uma carreira enriquecedora para você.
Um calouro pode conseguir um trabalho de aprendizado de máquina?
Embora a maioria dos trabalhos de aprendizado de máquina hoje exija profissionais experientes, as opções de calouros também estão aumentando, devido à enorme demanda do mercado. Pode ser difícil para iniciantes, mas certamente não é impossível conseguir um emprego de aprendizado de máquina. Se você conseguir dominar as habilidades necessárias, planejar como ter um bom desempenho e aprender rapidamente com os jogadores experientes em campo, também poderá conseguir o emprego dos sonhos. Você pode considerar opções como obter certificações relevantes para agregar mais valor, inscrever-se em cursos de aprendizado de máquina em plataformas confiáveis, experimentar alguns projetos práticos, seguir as últimas notícias e tendências de tecnologia e ingressar em comunidades online.
Quanto ganha um engenheiro de aprendizado de máquina?
O salário médio de um engenheiro de aprendizado de máquina na Índia é de cerca de INR 8,2 lakhs por ano, conforme dados do glassdoor.in. Agora, a renda média depende de vários fatores, como habilidades, certificações, experiência, localização e muito mais. Mas com mais experiência de trabalho, você pode esperar aumentar seus ganhos. Por exemplo, engenheiros seniores de aprendizado de máquina podem ganhar em média INR 13 a 15 lakhs.