Últimos proyectos de aprendizaje automático para probar en 2019



Este artículo le proporcionará un conocimiento integral de los proyectos de aprendizaje automático en la industria y los avances logrados en esta área.

es claramente un campo que ha experimentado avances locos en los últimos años. Esta tendencia y los avances han creado muchas oportunidades laborales en la industria. La necesidad de Ingenieros de aprendizaje automático tienen una gran demanda y este aumento se debe a la tecnología en evolución y la generación de grandes cantidades de datos, también conocidos como Big Data. Entonces, en este artículo, discutiré los proyectos de aprendizaje automático más asombrosos que uno definitivamente debe conocer y con los que uno debe trabajar, en el siguiente orden:

¿Qué es el aprendizaje automático?

El aprendizaje automático es un concepto que permite a la máquina aprender de los ejemplos y la experiencia, y eso también sin estar programado explícitamente. Entonces, en lugar de escribir el código, lo que hace es alimentar datos al algoritmo genérico, y el algoritmo / máquina construye la lógica basada en los datos dados.





¿Quién es un ingeniero de ML?

Pasos de aprendizaje automático

Cualquier algoritmo de aprendizaje automático sigue un patrón o pasos comunes.



Recolectando datos: Esta etapa implica la recopilación de todos los datos relevantes de diversas fuentes.

Negociación de datos: Es el proceso de limpieza y conversión de “Raw Data” a un formato que permita un consumo conveniente

Analizar datos: Los datos se analizan para seleccionar y filtrar los datos necesarios para preparar el modelo.



Algoritmo de tren: El algoritmo se entrena en el conjunto de datos de entrenamiento, a través del cual el algoritmo comprende el patrón y las reglas que gobiernan los datos.

Modelo de prueba: El conjunto de datos de prueba determina la precisión de nuestro modelo.

Despliegue: Si la velocidad y precisión del modelo son aceptables, entonces ese modelo debería implementarse en el sistema real. Después de implementar el modelo en función de su rendimiento, el modelo se actualiza y mejora si hay una caída en el rendimiento, el modelo se vuelve a entrenar.

Tipos de aprendizaje automático

El aprendizaje automático se subdivide en tres tipos:

Aprendizaje supervisado: Es aquel en el que tiene variables de entrada (x) y una variable de salida (Y) y usa un algoritmo para aprender la función de mapeo desde la entrada hasta la salida.

Aprendizaje sin supervisión: A veces, los datos proporcionados no están estructurados ni etiquetados. Por eso se vuelve difícil clasificar esos datos en diferentes categorías. El aprendizaje no supervisado ayuda a resolver este problema. Este aprendizaje se utiliza para agrupar los datos de entrada en clases sobre la base de sus propiedades estadísticas.

Aprendizaje reforzado: Se trata de tomar las medidas adecuadas para maximizar la recompensa en una situación particular.
cuando se trata de aprendizaje por refuerzo, no se espera ningún resultado. El agente de refuerzo decide qué acciones tomar para realizar una tarea determinada. En ausencia de un conjunto de datos de entrenamiento, seguramente aprenderá de su experiencia.

Ahora, echemos un vistazo a algunos proyectos de aprendizaje automático de la vida real que pueden ayudar a las empresas a generar ganancias.

Casos de uso de la industria

1. ESTUDIO DE MOVIMIENTO

Dominio: Media

Atención: Optimizar el proceso de selección

cómo instalar php 7 en windows 10

Desafío de negocio: Motion Studio es la productora de radio más grande de Europa. Con unos ingresos de más de mil millones de dólares, la empresa ha decidido lanzar un nuevo reality show: RJ Star. La respuesta al programa no tiene precedentes y la compañía está inundada de clips de voz. Usted, como experto en ML, debe clasificar la voz como masculina / femenina para que el primer nivel de filtración sea más rápido.

Cuestiones clave: Las muestras de voz están a través de acentos.

Beneficio comercial: Ya que Estrella RJ es un reality show, el tiempo para seleccionar candidatos es muy corto. Todo el éxito del espectáculo y, por tanto, los beneficios, depende de una ejecución rápida y sin problemas.

import pandas como pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns% matplotlib inline import warnings warnings.filterwarnings ('ignore') df = pd.read_csv ('voice-class.csv') df.head ()

# Marque el no. de registros df.info () df.describe () df.isnull (). sum ()

print ('Forma de los datos:', df.shape) print ('Número total de etiquetas: {}'. format (df.shape [0])) print ('Número de hombres: {}'. format (df [ df.label == 'male']. shape [0])) print ('Number of female: {}'. format (df [df.label == 'female']. shape [0]))

X = df.iloc [:,: -1] imprimir (df.shape) imprimir (X.shape)

desde sklearn.preprocessing import LabelEncoder y = df.iloc [:, - 1] gender_encoder = LabelEncoder () y = gender_encoder.fit_transform (y) y desde sklearn.preprocessing import StandardScaler scaler = StandardScaler () scaler.fit (X) X = scaler.transform (X) de sklearn.model_selection importar train_test_split X_train, X_test, y_train, y_test = train_test_split (X, y, test_size = 0.3, random_state = 100) de sklearn.svm importar SVC de sklearn importar métricas de import classlearn.metrics , confusion_matrix svc_model = SVC () svc_model.fit (X_train, y_train) y_pred = svc_model.predict (X_test) print ('Accuracy Score:') print (metrics.accuracy_score (y_test, y_pred))

print(confusion_matrix(y_test,y_pred))

2. LITHIONPOWER

Dominio: Automotor

Atención: Incentivar a los conductores

Desafío de negocio: Lithionpower es el mayor proveedor de baterías para vehículos eléctricos (e-vehicle). Los conductores alquilan la batería por lo general durante un día y luego la reemplazan por una batería cargada de la empresa. Lithionpower tiene un modelo de precios variable basado en el historial de conducción del conductor. Como la vida útil de una batería depende de factores como el exceso de velocidad, la distancia recorrida por día, etc. Usted, como experto en ML, debe crear un modelo de grupo en el que los conductores puedan agruparse en función de los datos de conducción.

Cuestiones clave: Los conductores se incentivarán en función del grupo, por lo que la agrupación debe ser precisa.

Beneficios de negocio: Aumento de las ganancias, hasta un 15-20%, ya que a los conductores con un historial deficiente se les cobrará más.

import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns sns.set () # para el estilo de trazado% matplotlib inline import warnings warnings.filterwarnings ('ignore') import matplotlib.pyplot as plt plt.rcParams [ 'figure.figsize'] = (12, 6) df = pd.read_csv ('driver-data.csv') df.head ()

df.info() df.describe()

from sklearn.cluster import KMeans #Tomando 2 clústeres kmeans = KMeans (n_clusters = 2) df_analyze = df.drop ('id', axis = 1) kmeans.fit (df_analyze)

kmeans.cluster_centers_

print (kmeans.labels_) print (len (kmeans.labels_))

print (tipo (kmeans.labels_)) único, cuenta = np.unique (kmeans.labels_, return_counts = True) print (dict (zip (único, cuenta)))

df_analyze ['cluster'] = kmeans.labels_ sns.set_style ('whitegrid') sns.lmplot ('mean_dist_day', 'mean_over_speed_perc', data = df_analyze, hue = 'cluster', palette = 'coolwarm', size = 6, aspecto = 1, fit_reg = False)

#Ahora, revisemos los clústeres, cuando n = 4 kmeans_4 = KMeans (n_clusters = 4) kmeans_4.fit (df.drop ('id', axis = 1)) kmeans_4.fit (df.drop ('id', axis = 1)) print (kmeans_4.cluster_centers_) único, cuenta = np.unique (kmeans_4.labels_, return_counts = True) kmeans_4.cluster_centers_ print (dict (zip (único, cuenta)))

df_analyze ['cluster'] = kmeans_4.labels_ sns.set_style ('whitegrid') sns.lmplot ('mean_dist_day', 'mean_over_speed_perc', data = df_analyze, hue = 'cluster', palette = 'coolwarm', size = 6, aspecto = 1, fit_reg = False)

3. BluEx

Dominio: Logística

Atención: Ruta óptima

Desafío de negocio: BluEx es una empresa de logística líder en India. Es conocido por la entrega eficiente de paquetes a los clientes. Sin embargo, BluEx se enfrenta a un desafío en el que sus conductores de furgonetas están tomando un camino subóptimo para la entrega. Esto está provocando retrasos y un mayor coste del combustible. Usted, como experto en ML, debe crear un modelo de ML utilizando el aprendizaje por refuerzo para que se encuentre una ruta eficiente a través del programa.

Cuestiones clave: Los datos tienen muchos atributos y la clasificación puede ser complicada.

Beneficios de negocio: Se puede ahorrar hasta un 15% del costo de combustible tomando el camino óptimo.

import numpy as np import pylab as plt import networkx as nx # Inicializando puntos points_list = [(0,1), (1,5), (5,6), (5,4), (1,2), (2 , 3), (2,7)] objetivo = 7 mapeo = {0: 'Inicio', 1: '1', 2: '2', 3: '3', 4: '4', 5: '5 ', 6:' 6 ', 7:' 7-Destino '} G = nx.Graph () G.add_edges_from (points_list) pos = nx.spring_layout (G, k = .5, center = points_list [2]) nx .draw_networkx_nodes (G, pos, node_color = 'g') nx.draw_networkx_edges (G, pos, edge_color = 'b') nx.draw_networkx_labels (G, pos) plt.show ()

NO_OF_POINTS = 8 #Inititlaizing R Matrix R = np.matrix (np.ones (shape = (NO_OF_POINTS, NO_OF_POINTS))) R * = -1 para point in points_list: print (point) if point [1] == goal: R [punto] = 150 más: R [punto] = 0 si punto [0] == objetivo: R [punto [:: - 1]] = 150 más: # reverso del punto R [punto [:: - 1]] = 0

R [gol, gol] = 150 R

Q = np.matrix (np.zeros ([NO_OF_POINTS, NO_OF_POINTS])) # El parámetro de aprendizaje gamma = 0.8 initial_state = 1 def available_actions (state): current_state_row = R [state,] av_act = np.where (current_state_row & ampampampgt = 0 ) [1] return av_act available_act = available_actions (initial_state) def sample_next_action (available_actions_range): next_action = int (np.random.choice (available_act, 1)) return next_action action = sample_next_action (available_act) def update (current_state, action, gamma) : max_index = np.where (Q [action,] == np.max (Q [action,])) [1] if max_index.shape [0] & ampampampgt 1: max_index = int (np.random.choice (max_index, size = 1)) else: max_index = int (max_index) max_value = Q [action, max_index] Q [current_state, action] = R [current_state, action] + gamma * max_value print ('max_value', R [current_state, action] + gamma * max_value) if (np.max (Q) & ampampampgt 0): return (np.sum (Q / np.max (Q) * 100)) else: return (0) update (initial_state, action, gamma)

puntuaciones = [] para i en el rango (700): current_state = np.random.randint (0, int (Q.shape [0])) available_act = available_actions (current_state) action = sample_next_action (available_act) score = update (current_state, action, gamma) score.append (score) print ('Score:', str (score)) print ('Matriz de Q entrenado:') print (Q / np.max (Q) * 100) # Prueba current_state = 0 pasos = [current_state] while current_state! = 7: next_step_index = np.where (Q [current_state,] == np.max (Q [current_state,])) [1] if next_step_index.shape [0] & ampampampgt 1: next_step_index = int (np.random.choice (next_step_index, tamaño = 1)) else: next_step_index = int (next_step_index) steps.append (next_step_index) current_state = next_step_index

print ('Ruta más eficiente:') print (pasos) plt.plot (puntuaciones) plt.show ()

Proyectos de aprendizaje automático de código abierto en 2019

Detectron : Detectron es el sistema de software de Facebook AI Research que implementa algoritmos de detección de objetos de última generación. Está escrito en Python y funciona con el marco de aprendizaje profundo de Caffe2.

El objetivo de Detectron es proporcionar una base de código de alta calidad y alto rendimiento para la investigación de detección de objetos. Está diseñado para ser flexible con el fin de respaldar la rápida implementación y evaluación de nuevas investigaciones. Contiene más de 50 modelos pre-entrenados.

Densificar : La estimación de la pose humana densa tiene como objetivo mapear todos los píxeles humanos de una imagen RGB a la superficie 3D del cuerpo humano. DensePose-RCNN se implementa en el marco de Detectron.

TensorFlow.js : Es una biblioteca para desarrollar y entrenar modelos de aprendizaje automático y para implementarlos en el navegador. Se ha convertido en un lanzamiento muy popular desde su lanzamiento a principios de este año y sigue asombrando por su flexibilidad. Con esto puedes

  • Desarrolle ML en el navegador: Utilice API flexibles e intuitivas para crear modelos desde cero utilizando la biblioteca de álgebra lineal de JavaScript de bajo nivel o la API de capas de alto nivel.
  • Ejecutar modelos existentes : Use los convertidores de modelos de TensorFlow.js para ejecutar modelos de TensorFlow preexistentes directamente en el navegador.
  • Volver a entrenar modelos existentes: Vuelva a entrenar los modelos de aprendizaje automático preexistentes utilizando datos de sensores conectados al navegador u otros datos del lado del cliente.

Resplandor de onda: El aprendizaje automático también está logrando importantes avances en el procesamiento de audio y no solo genera música o clasificación. WaveGlow es una red generativa basada en flujo para síntesis de voz de NVIDIA. Los investigadores también han enumerado los pasos que puede seguir si desea entrenar su propio modelo desde cero.

Pintura de imagen : Imagina que tienes la mitad de la imagen de una escena y quieres el escenario completo, bueno, eso es lo que la pintura puede hacer por ti. Este proyecto es una implementación de Keras del papel Image Outpainting de Stanford. El modelo fue entrenado con 3500 datos de playa desechados con argumentos que suman hasta 10500 imagenes para 25 épocas .

Este es un artículo increíble con una explicación detallada paso a paso. Un ejemplo imprescindible para todos los entusiastas del aprendizaje automático. Personalmente, este es mi proyecto de aprendizaje automático favorito.

Armonización pictórica profunda : Bueno, hablando de imágenes, esta es una obra maestra. Lo que hace este algoritmo es tomar una imagen como entrada y luego, si agrega un elemento externo a la imagen, combina ese elemento con el entorno como si fuera parte de él.

¿Puedes decir la diferencia? No, verdad? Bueno, esto nos muestra lo lejos que hemos llegado en términos de aprendizaje automático.

DeepMimic: Ahora, mire de cerca las imágenes aquí, verá una figura de palo haciendo patada giratoria, voltereta hacia atrás y voltereta lateral. Que mi amigo está aprendiendo por refuerzo en acción. DeepMimic es un aprendizaje de refuerzo profundo guiado por ejemplo de habilidades de carácter basadas en la física.

Magenta : Magenta es un proyecto de investigación que explora el papel del aprendizaje automático en el proceso de creación de arte y música. Principalmente, esto implica el desarrollo de nuevos algoritmos de aprendizaje profundo y aprendizaje por refuerzo para generar canciones, imágenes, dibujos y otros materiales.

tutorial de amazon ec2 para principiantes

También es una exploración en la construcción de herramientas e interfaces inteligentes que permiten a los artistas y músicos extender ( no reemplazar! ) sus procesos utilizando estos modelos. Abre tus alas, crea tu contenido único para Instagram o Soundcloud y conviértete en un influencer.

Entonces, chicos, con esto llegamos al final de este increíble artículo sobre proyectos de aprendizaje automático. Pruebe estos ejemplos y háganoslo saber en la sección de comentarios a continuación. Espero que conozcas la implementación práctica del aprendizaje automático en la industria. Edureka's lo hace competente en técnicas como el aprendizaje supervisado, el aprendizaje no supervisado y el procesamiento del lenguaje natural. Incluye capacitación sobre los últimos avances y enfoques técnicos en inteligencia artificial y aprendizaje automático, como aprendizaje profundo, modelos gráficos y aprendizaje por refuerzo.