Principales proyectos de aprendizaje automático en Python para principiantes [2022]
Publicado: 2021-01-03Si desea convertirse en un profesional del aprendizaje automático, debe adquirir experiencia en el uso de sus tecnologías. La mejor manera de hacerlo es completando proyectos. Es por eso que en este artículo, compartimos varios proyectos de aprendizaje automático en Python para que pueda comenzar a probar rápidamente sus habilidades y obtener una experiencia valiosa.
Sin embargo, antes de comenzar, asegúrese de estar familiarizado con el aprendizaje automático y su algoritmo. Si no ha trabajado en un proyecto antes, no se preocupe porque también hemos compartido un tutorial detallado sobre un proyecto:
Tabla de contenido
El conjunto de datos de Iris: para principiantes
El conjunto de datos de Iris es fácilmente uno de los proyectos de aprendizaje automático más populares en Python. Es relativamente pequeño, pero su simplicidad y tamaño compacto lo hacen perfecto para principiantes. Si no ha trabajado en ningún proyecto de aprendizaje automático en Python, debe comenzar con él. El conjunto de datos Iris es una colección de tamaños de pétalos y sépalos de flores de la flor Iris. Tiene tres clases, con 50 instancias en cada una de ellas.
Hemos proporcionado código de muestra en varios lugares, pero solo debe usarlo para comprender cómo funciona. Implementar el código sin entenderlo fallaría en la premisa de hacer el proyecto. Así que asegúrese de entender bien el código antes de implementarlo.
Paso 1: importa las bibliotecas
El primer paso de cualquier proyecto de aprendizaje automático es importar las bibliotecas. Una razón principal por la que Python es tan versátil es por sus sólidas bibliotecas. Las bibliotecas que necesitaremos en este proyecto son:
- pandas
- matplotlib
- aprender
- SciPy
- NumPy
Existen múltiples métodos para importar bibliotecas a su sistema, y debe usar una forma particular para importar todas las bibliotecas. Aseguraría la consistencia y lo ayudaría a evitar cualquier confusión. Tenga en cuenta que la instalación varía según el sistema operativo de su dispositivo, así que téngalo en cuenta al importar bibliotecas.

Código:
# Cargar bibliotecas
de pandas importar read_csv
de pandas.plotting import scatter_matrix
desde matplotlib importar pyplot
de sklearn.model_selection import train_test_split
de sklearn.model_selection importar cross_val_score
de sklearn.model_selection importar StratifiedKFold
de sklearn.metrics importar clasificación_informe
de sklearn.metrics importar confusion_matrix
de sklearn.metrics importar precision_score
de sklearn.linear_model import LogisticRegression
de sklearn.tree importar DecisionTreeClassifier
de sklearn.neighbors importar KNeighborsClassifier
de sklearn.discriminant_analysis import LinearDiscriminantAnalysis
de sklearn.naive_bayes importar GaussianNB
desde sklearn.svm importar SVC
Leer: Las 10 mejores ideas de proyectos de conjuntos de datos de aprendizaje automático para principiantes
Paso 2: Cargue el conjunto de datos
Después de importar las bibliotecas, es hora de cargar el conjunto de datos. Como comentamos, usaremos el conjunto de datos Iris en este proyecto. Puedes descargarlo desde aquí .
Asegúrese de especificar los nombres de cada columna mientras carga los datos, y le ayudará más adelante en el proyecto. Recomendamos descargar el conjunto de datos, por lo que incluso si tiene problemas de conexión, su proyecto no se verá afectado.
Código:
# Cargar conjunto de datos
url = "https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv"
nombres = ['longitud del sépalo', 'ancho del sépalo', 'longitud del pétalo', 'ancho del pétalo', 'clase']
conjunto de datos = read_csv (url, nombres = nombres)
Paso 3: Resumiendo
Antes de comenzar a usar el conjunto de datos, primero debemos observar los datos presentes en él. Comenzaremos comprobando la dimensión del conjunto de datos, lo que nos muestra que el conjunto de datos tiene cinco atributos y 150 instancias.
Después de verificar la dimensión, debe mirar algunas filas y columnas del conjunto de datos para tener una idea general de su contenido. Luego, debe mirar el resumen estadístico del conjunto de datos y ver qué métricas son las más frecuentes en el mismo.
Finalmente, debe verificar la distribución de clases en el conjunto de datos. Eso significa que tendría que comprobar cuántas instancias se incluyen en cada clase. Aquí hay un código para resumir nuestro conjunto de datos:
# resumir los datos
de pandas importar read_csv
# Cargar conjunto de datos
url = "https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv"
nombres = ['longitud del sépalo', 'ancho del sépalo', 'longitud del pétalo', 'ancho del pétalo', 'clase']
conjunto de datos = read_csv (url, nombres = nombres)
# forma
imprimir (conjunto de datos.forma)
# cabeza
imprimir (conjunto de datos. cabeza (20))
# descripciones
imprimir (conjunto de datos. describir ())
# distribución de clases
imprimir (conjunto de datos.groupby('clase').tamaño())
Paso 4: visualizar los datos
Después de resumir el conjunto de datos, debe visualizarlo para una mejor comprensión y análisis. Puede usar gráficos univariados para analizar cada atributo en detalle y gráficos multivariados para estudiar las relaciones de cada característica. La visualización de datos es un aspecto crucial de los proyectos de aprendizaje automático, ya que ayuda a encontrar información esencial presente en el conjunto de datos.
Paso 5: Evaluación del Algoritmo
Después de visualizar los datos, evaluaremos varios algoritmos para encontrar el mejor modelo para nuestro proyecto. Primero, crearemos un conjunto de datos de validación que tomaremos del original. Luego emplearemos una validación cruzada de 10 veces y crearemos varios modelos. Como ya se discutió, nuestro objetivo es predecir la especie a través de las medidas de las flores. Debe usar diferentes tipos de algoritmos y elegir el que produzca los mejores resultados. Puede probar SVM (máquinas de vectores de soporte), KNN (K-vecinos más cercanos), LR (regresión logística) y otros.
En nuestra implementación, encontramos que SVM es el mejor modelo. Aquí está el código:
de pandas importar read_csv
desde matplotlib importar pyplot
de sklearn.model_selection import train_test_split
de sklearn.model_selection importar cross_val_score
de sklearn.model_selection importar StratifiedKFold
de sklearn.linear_model import LogisticRegression
de sklearn.tree importar DecisionTreeClassifier
de sklearn.neighbors importar KNeighborsClassifier
de sklearn.discriminant_analysis import LinearDiscriminantAnalysis
de sklearn.naive_bayes importar GaussianNB
desde sklearn.svm importar SVC
# Cargar conjunto de datos
url = "https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv"
nombres = ['longitud del sépalo', 'ancho del sépalo', 'longitud del pétalo', 'ancho del pétalo', 'clase']
conjunto de datos = read_csv (url, nombres = nombres)
# Conjunto de datos de validación dividido
matriz = conjunto de datos.valores
X = matriz[:,0:4]
y = matriz[:,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 verificación puntual
modelos = []
modelos.append(('LR', LogisticRegression(solver='liblinear', multi_class='ovr')))
modelos.append(('LDA', Análisis Discriminante Lineal()))
modelos.append(('KNN', KNeighborsClassifier()))
modelos.append(('CARRITO', DecisionTreeClassifier()))
modelos.append(('NB', GaussianNB()))
modelos.append(('SVM', SVC(gamma='auto')))
# evaluar cada modelo a su vez
resultados = []
nombres = []
para nombre, modelo en modelos:
kfold = StratifiedKFold(n_splits=10, random_state=1, shuffle=True)
cv_results = cross_val_score(modelo, X_tren, Y_tren, cv=kfold, puntuación='precisión')
resultados.append(cv_resultados)
nombres.append(nombre)

imprimir('%s: %f (%f)' % (nombre, cv_results.mean(), cv_results.std()))
# Comparar algoritmos
pyplot.boxplot(resultados, etiquetas=nombres)
pyplot.title('Comparación de algoritmos')
pyplot.mostrar()
Paso 6: Predecir
Después de haber evaluado diferentes algoritmos y haber elegido el mejor, es hora de predecir los resultados. Primero usaremos nuestro modelo en el conjunto de datos de validación para probar su precisión. Después de eso, lo probaremos en todo el conjunto de datos.
Aquí está el código para ejecutar nuestro modelo en el conjunto de datos:
# hacer predicciones
de pandas importar read_csv
de sklearn.model_selection import train_test_split
de sklearn.metrics importar clasificación_informe
de sklearn.metrics importar confusion_matrix
de sklearn.metrics importar precision_score
desde sklearn.svm importar SVC
# Cargar conjunto de datos
url = "https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv"
nombres = ['longitud del sépalo', 'ancho del sépalo', 'longitud del pétalo', 'ancho del pétalo', 'clase']
conjunto de datos = read_csv (url, nombres = nombres)
# Conjunto de datos de validación dividido
matriz = conjunto de datos.valores
X = matriz[:,0:4]
y = matriz[:,4]
X_train, X_validation, Y_train, Y_validation = train_test_split(X, y, test_size=0.20, random_state=1)
# Hacer predicciones sobre el conjunto de datos de validación
modelo = SVC(gamma='auto')
modelo.fit(tren_X, tren_Y)
predicciones = model.predict(X_validation)
# Evaluar predicciones
imprimir (puntuación de precisión (Y_validación, predicciones))
imprimir (confusion_matrix (Y_validation, predicciones))
imprimir (clasificación_informe (Y_validación, predicciones))
Eso es todo. Ahora ha completado un proyecto de aprendizaje automático en Python utilizando el conjunto de datos de Iris.
Proyectos adicionales de aprendizaje automático en Python
El conjunto de datos de Iris es principalmente para principiantes. Si tiene algo de experiencia trabajando en proyectos de aprendizaje automático en Python, debe consultar los siguientes proyectos:
1. Use ML para predecir precios de acciones
Un excelente lugar para aplicar algoritmos de aprendizaje automático es el mercado de acciones. Las empresas están utilizando algoritmos de IA y tecnologías basadas en ML para realizar análisis técnicos desde hace bastante tiempo. También puede crear un modelo ML que prediga los precios de las acciones.
Sin embargo, para trabajar en este proyecto, deberá usar varias técnicas, incluido el análisis de regresión, el análisis predictivo, el modelado estadístico y el análisis de acción. Puede obtener los datos necesarios de los sitios web oficiales de las bolsas de valores. Comparten datos sobre el rendimiento pasado de las acciones. Puede usar esos datos para entrenar y probar su modelo.
Como principiante, puede concentrarse en una empresa en particular y predecir el valor de sus acciones durante tres meses. Del mismo modo, si desea que el proyecto sea un desafío, puede utilizar varias empresas y ampliar sus plazos de predicción.
Lo que aprenderá de este proyecto:
Este proyecto lo familiarizará con las aplicaciones de AI y ML en la industria financiera. También puede estudiar el análisis predictivo a través de este proyecto y probar diferentes algoritmos.
2. Escriba un algoritmo de aprendizaje automático desde cero
Si es un principiante y no ha trabajado en ningún proyecto de aprendizaje automático en Python, también puede comenzar con este. En este proyecto, debe crear un algoritmo ML desde cero. Hacer este proyecto lo ayudará a comprender todos los conceptos básicos de las funciones del algoritmo y, al mismo tiempo, le enseñará a convertir fórmulas matemáticas en código de aprendizaje automático.
Saber cómo convertir conceptos matemáticos en código ML es crucial, ya que tendrás que implementarlo muchas veces en el futuro. A medida que aborde problemas más avanzados, deberá confiar en esta habilidad. Puede elegir cualquier algoritmo de acuerdo con su familiaridad con sus conceptos. Sería mejor comenzar con un algoritmo simple si no tiene experiencia.
Lo que aprenderá de este proyecto:
Te familiarizarás con los conceptos matemáticos de la inteligencia artificial y el aprendizaje automático.
3. Crear un lector de escritura a mano
Este es un proyecto de visión artificial. La visión artificial es el sector de la inteligencia artificial relacionado con el análisis de imágenes. En este proyecto, creará un modelo ML que puede leer escritura a mano. Leer significa que el modelo debe ser capaz de reconocer lo que está escrito en el papel. Tendría que usar una red neuronal en este proyecto para familiarizarse con el aprendizaje profundo y sus conceptos relevantes.
Primero deberá procesar previamente la imagen y eliminar las secciones innecesarias; en otras palabras, realice una limpieza de datos en la imagen para mayor claridad. Después de eso, deberá realizar la segmentación y el cambio de tamaño de la imagen para que el algoritmo pueda leer los caracteres correctamente. Una vez que haya completado el preprocesamiento y la segmentación, puede pasar al siguiente paso, la clasificación. Un algoritmo de clasificación distinguirá los caracteres presentes en el texto y los ubicará en sus respectivas categorías.
Puede usar la activación de log sigmoid para entrenar su algoritmo ML para este proyecto.
Lo que aprenderá de este proyecto:
Podrás estudiar visión artificial y redes neuronales. Completar este proyecto también lo familiarizará con el reconocimiento y análisis de imágenes.
4. Un predictor de ventas
El sector minorista tiene muchas aplicaciones para la IA y el aprendizaje automático. En este proyecto, descubrirá una de esas aplicaciones, es decir, predecir las ventas de productos.
Un conjunto de datos frecuente entre los entusiastas del aprendizaje automático es el conjunto de datos de ventas de BigMart. Cuenta con más de 1559 productos repartidos en sus distintos puntos de venta en 10 ciudades. Puede usar el conjunto de datos para construir un modelo de regresión. Según los puntos de venta, su modelo tiene que predecir las ventas potenciales de productos particulares en el próximo año. Este conjunto de datos tiene atributos específicos para cada punto de venta y producto para comprender sus propiedades y la relación entre los dos rápidamente.
Lo que aprenderá de este proyecto:

Trabajar en este proyecto lo familiarizará con los modelos de regresión y el análisis predictivo. También conocerás las aplicaciones del aprendizaje automático en el sector retail.
Obtenga más información sobre el aprendizaje automático y Python
Esperamos que haya encontrado útil esta lista de proyectos de aprendizaje automático en Python. Si tiene alguna pregunta o comentario, háganoslo saber a través de la sección de comentarios. Nos encantaría responder a sus consultas.
Aprenda cursos de ciencia de datos de las mejores universidades del mundo. Obtenga programas Executive PG, programas de certificados avanzados o programas de maestría para acelerar su carrera.
Aquí hay algunos recursos adicionales para estudiar el aprendizaje automático y Python.
- Tutorial de Python
- Aprendizaje automático vs. Aprendizaje profundo
- Aplicaciones de aprendizaje automático
Por otro lado, si desea obtener una experiencia de aprendizaje más personalizada, puede tomar un curso de AI y ML. Podrás aprender de expertos de la industria a través de videos, tareas y proyectos.
¿Es el aprendizaje automático una buena elección de carrera?
Si está interesado en las tecnologías emergentes y las noticias relacionadas, ya debe haber oído hablar de la cuarta revolución industrial provocada por la tecnología de aprendizaje automático. Según los informes, se espera que el mercado mundial de aprendizaje automático alcance un valor de 543 000 millones INR para 2023. Sin embargo, la brecha entre la demanda y la oferta de profesionales competentes en aprendizaje automático ha aumentado a casi un 125 %. Esto indica que para un profesional de aprendizaje automático con la combinación correcta de habilidades, el mercado laboral tiene muchas promesas. Ya sea que aspire a convertirse en ingeniero de aprendizaje automático, ingeniero de investigación o científico de investigación, sin duda será una carrera enriquecedora para usted.
¿Puede una bolsa más fresca un trabajo de aprendizaje automático?
Si bien la mayoría de los trabajos de aprendizaje automático en la actualidad requieren profesionales experimentados, las opciones para los principiantes también están aumentando debido a la enorme demanda en el mercado. Puede ser difícil para los principiantes, pero ciertamente no es imposible conseguir un trabajo de aprendizaje automático. Si puede dominar las habilidades requeridas, planificar cómo desempeñarse bien y aprender rápidamente de los jugadores experimentados en el campo, también puede obtener el trabajo de sus sueños. Puede considerar opciones como obtener certificaciones relevantes para agregar más valor, inscribirse en cursos de aprendizaje automático en plataformas confiables, probar algunos proyectos prácticos, seguir las últimas noticias y tendencias tecnológicas y unirse a comunidades en línea.
¿Cuánto gana un ingeniero de aprendizaje automático?
El salario promedio de un ingeniero de aprendizaje automático en India es de alrededor de INR 8,2 lakhs por año, según datos de glassdoor.in. Ahora, el ingreso promedio depende de varios factores como habilidades, certificaciones, experiencia, ubicación y más. Pero con más experiencia laboral, puede esperar aumentar sus ganancias. Por ejemplo, los ingenieros senior de aprendizaje automático pueden ganar en el rango de INR 13 a 15 lakhs en promedio.