Últims projectes d’aprenentatge automàtic per provar el 2019



Aquest article us proporcionarà un coneixement exhaustiu dels projectes d’aprenentatge automàtic de la indústria i els avenços realitzats en aquesta àrea.

és clarament un camp que ha vist bojos avenços en els darrers dos anys. Aquesta tendència i els avenços han creat moltes oportunitats laborals a la indústria. La necessitat de Enginyers d’aprenentatge automàtic tenen una gran demanda i aquest augment es deu a l’evolució de la tecnologia i la generació de grans quantitats de dades, també conegudes com Big Data. Per tant, en aquest article, parlaré dels projectes d’aprenentatge automàtic més increïbles que definitivament hauríeu de conèixer i treballar, en l’ordre següent:

Què és l'aprenentatge automàtic?

L’aprenentatge automàtic és un concepte que permet a la màquina aprendre d’exemples i experiències, i això també sense haver-lo programat explícitament. Per tant, en lloc d’escriure el codi, el que feu és alimentar dades a l’algorisme genèric, i l’algoritme / màquina construeix la lògica en funció de les dades donades.





Qui és enginyer de ML

Passos d'aprenentatge automàtic

Qualsevol algorisme d'aprenentatge automàtic segueix un patró o passos comuns.



Recopilació de dades: Aquesta etapa implica la recopilació de totes les dades rellevants de diverses fonts

Problemes de dades: És el procés de neteja i conversió de 'Raw Data' en un format que permet un consum convenient

Analitzar dades: Les dades s’analitzen per seleccionar i filtrar les dades necessàries per preparar el model



Algorisme del tren: L'algorisme s'entren en el conjunt de dades d'entrenament, mitjançant el qual l'algorisme comprèn el patró i les regles que regeixen les dades

Model de prova: El conjunt de dades de proves determina la precisió del nostre model.

Desplegament: Si la velocitat i la precisió del model són acceptables, aquest model s'hauria de desplegar al sistema real. Després de desplegar el model en funció del seu rendiment, el model s'actualitza i millora si hi ha un descens en el rendiment, el model es torna a entrenar.

Tipus d’aprenentatge automàtic

L’aprenentatge automàtic es classifica en tres tipus:

Aprenentatge supervisat: És aquella en què teniu variables d'entrada (x) i una variable de sortida (Y) i utilitzeu un algorisme per aprendre la funció de mapatge des de l'entrada fins a la sortida.

Aprenentatge sense supervisió: De vegades, les dades proporcionades no estan estructurades ni estan etiquetades. Per tant, es fa difícil classificar aquestes dades en diferents categories. L’aprenentatge sense supervisió ajuda a resoldre aquest problema. Aquest aprenentatge s’utilitza per agrupar les dades d’entrada en classes en funció de les seves propietats estadístiques.

Aprenentatge de reforç: Es tracta de prendre les mesures adequades per maximitzar la recompensa en una situació particular.
pel que fa a l’aprenentatge de reforç, no s’espera cap resultat. L’agent de reforç decideix quines accions cal fer per tal de realitzar una tasca determinada. En absència d’un conjunt de dades d’entrenament, estarà obligat a aprendre de la seva experiència.

Ara fem una ullada a alguns projectes d’aprenentatge automàtic de la vida real que poden ajudar les empreses a generar beneficis.

Casos d’ús de la indústria

1. ESTUDI DE MOCIÓ

Domini: Mitjana

Enfocament: Optimitzar el procés de selecció

diferència entre git i github

Repte empresarial: Motion Studio és la casa de producció de ràdio més gran d’Europa. Amb una facturació superior als mil milions de dòlars, la companyia ha decidit llançar un nou reality show: RJ Star. La resposta al programa no té precedents i la companyia està inundada de clips de veu. Com a expert en ML, heu de classificar la veu com a home o dona per tal que el primer nivell de filtració sigui més ràpid.

Temes clau: Les mostres de veu tenen diferents accents.

Avantatge empresarial: Des de RJ Star és un reality show, el temps per seleccionar candidats és molt curt. Tot l’èxit de l’espectacle i, per tant, els beneficis depèn d’una execució ràpida i fluida

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

# Marqueu el núm. de registres df.info () df.describe () df.isnull (). sum ()

print ('Forma de dades:', df.shape) print ('Nombre total d'etiquetes: {}'. format (df.shape [0])) print ('Nombre de mascles: {}'. format (df [ df.label == 'masculí']. forma [0])) print ('Nombre de dones: {}'. format (df [df.label == 'femení']. forma [0]))

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

d'importació sklearn.preprocessing LabelEncoder y = df.iloc [:, - 1] gender_encoder = LabelEncoder () y = gender_encoder.fit_transform (y) y d'importació sklearn.preprocessing StandardScaler scaler = StandardScaler () scaler.fit (X) X = scaler.transform (X) from sklearn.model_selection import train_test_split X_train, X_test, y_train, y_test = train_test_split (X, y, test_size = 0.3, random_state = 100) from sklearn.svm import SVC from sklearn import metrics from sklearn , confusion_matrix svc_model = SVC () svc_model.fit (X_train, y_train) y_pred = svc_model.predict (X_test) print ('Puntuació de precisió:') print (metrics.accuracy_score (y_test, y_pred))

print (confusion_matrix (y_test, y_pred))

2. PODER LITIONARI

Domini: Automoció

Enfocament: Incentivar els conductors

Repte empresarial: Lithionpower és el proveïdor més gran de bateries per a vehicles elèctrics (vehicles electrònics). Els conductors solen llogar la bateria durant un dia i després la substitueixen per una bateria carregada de l’empresa. Lithionpower té un model de preus variable basat en l’historial de conducció del conductor. Com que la vida útil de la bateria depèn de factors com ara la velocitat excessiva, la distància recorreguda per dia, etc. Vostè, com a expert en ML, ha de crear un model de clúster on els conductors es puguin agrupar en funció de les dades de conducció.

Temes clau: Els conductors s’incentivaran en funció del clúster, de manera que l’agrupament ha de ser precís.

Avantatges empresarials: Increment dels beneficis, fins a un 15-20%, ja que els conductors amb poc historial cobraran més.

import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns sns.set () # for plot styling% 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 ()

des de la importació de sklearn.cluster KMeans #Taking 2 clusters kmeans = KMeans (n_clusters = 2) df_analyze = df.drop ('id', axis = 1) kmeans.fit (df_analyze)

kmeans.cluster_centers_

imprimir (kmeans.labels_) imprimir (len (kmeans.labels_))

print (type (kmeans.labels_)) unique, counts = np.unique (kmeans.labels_, return_counts = True) print (dict (zip (unique, counts)))

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, aspecte = 1, fit_reg = fals)

#Ara, comprovem els clústers quan 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_) unique, counts = np.unique (kmeans_4.labels_, return_counts = True) kmeans_4.cluster_centers_ print (dict (zip (unique, counts)))

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, aspecte = 1, fit_reg = fals)

3. BluEx

Domini: Logística

Enfocament: Camí òptim

Repte empresarial: BluEx és una empresa logística líder a l'Índia. És conegut pel lliurament eficient de paquets als clients. Tot i això, BluEx s’enfronta a un repte en què els seus conductors de camionetes prenen un camí poc òptim per al lliurament. Això està provocant retards i un major cost del combustible. Com a expert en ML, heu de crear un model de ML mitjançant l’aprenentatge de reforç per trobar un camí eficient a través del programa.

Temes clau: Les dades tenen molts atributs i la classificació pot ser complicada.

Avantatges empresarials: Es pot estalviar fins a un 15% del cost del combustible prenent el camí òptim.

import numpy as np import pylab as plt import networkx as nx #Initializing points points_list = [(0,1), (1,5), (5,6), (5,4), (1,2), (2) , 3), (2,7)] objectiu = 7 assignació = {0: 'Inici', 1: '1', 2: '2', 3: '3', 4: '4', 5: '5 ', 6:' 6 ', 7:' 7-Destination '} G = nx.Graph () G.add_edges_from (llista_punts) pos = nx.spring_layout (G, k = .5, centre = llista_punts [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 for point in points_list: print (point) if point [1] == objectiu: R [punt] = 150 més: R [punt] = 0 si el punt [0] == objectiu: R [punt [:: - 1]] = 150 més: # revers del punt R [punt [:: - 1]] = 0

R [objectiu, meta] = 150 R

Q = np.matrix (np.zeros ([NO_OF_POINTS, NO_OF_POINTS])) # El paràmetre d'aprenentatge 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)

puntuacions = [] per a l’interval (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) scores.append (score) print ('Score:', str (score)) print ('Matriu Q entrenada:') print (Q / np.max (Q) * 100) # Testing current_state = 0 steps = [estat_actual] mentre estat_actual! = 7: next_step_index = np.where (Q [current_state,] == np.max (Q [state_ current,])) [1] if next_step_index.shape [0] & ampampampgt 1: next_step_index = int (np.random.choice (next_step_index, size = 1)) else: next_step_index = int (next_step_index) steps.append (next_step_index) current_state = next_step_index

java crea una matriu d'objectes
print ('Camí més eficient:') print (passos) plt.plot (puntuacions) plt.show ()

Projectes d’aprenentatge automàtic de codi obert el 2019

Detectron : Detectron és el sistema de programari de Facebook AI Research que implementa algoritmes de detecció d’objectes d’última generació. Està escrit en Python i funciona amb el marc d'aprenentatge profund Caffe2.

L'objectiu de Detectron és proporcionar una base de codis d'alta qualitat i alt rendiment per a la investigació de la detecció d'objectes. Està dissenyat per ser flexible per tal de donar suport a la ràpida implementació i avaluació de noves investigacions. Conté més de 50 models prèviament entrenats.

Densar : L’estimació de postures humanes denses té com a objectiu mapar tots els píxels humans d’una imatge RGB a la superfície 3D del cos humà. DensePose-RCNN s’implementa al marc Detectron.

TensorFlow.js : És una biblioteca per desenvolupar i formar models de ML i desplegar-los al navegador. S’ha convertit en una versió molt popular, ja que es va publicar a principis d’aquest any i continua sorprenent amb la seva flexibilitat. Amb això es pot

  • Desenvolupeu ML al navegador: Utilitzeu API flexibles i intuïtives per crear models des de zero mitjançant la biblioteca d’àlgebra lineal JavaScript de baix nivell o l’API de capes d’alt nivell.
  • Executeu els models existents : Utilitzeu convertidors de models TensorFlow.js per executar models TensorFlow preexistents directament al navegador.
  • Reciclar els models existents: Torneu a entrenar models de ML preexistents mitjançant dades de sensor connectades al navegador o altres dades del client.

Waveglow: L’aprenentatge automàtic també fa grans avenços en el processament d’àudio i no només genera música ni classificació. WaveGlow és una xarxa generativa de síntesi de parla basada en Flow de NVIDIA. Els investigadors també han detallat els passos que podeu seguir si voleu formar el vostre propi model des de zero.

Pintura de la imatge : Imagineu-vos que teniu una mitja imatge d’una escena i volíeu l’escenografia completa, bé, això és el que pot fer per vosaltres la pintura de la imatge. Aquest projecte és una implementació de Keras del paper Image Outpainting de Stanford. El model es va formar amb 3500 dades de platja desballestades amb un total de fins a argumentacions 10500 imatges per 25 èpoques .

Es tracta d’un article increïble amb una explicació detallada pas a pas. Un exemple imprescindible per a tots els entusiastes de l'aprenentatge automàtic. Personalment, aquest és el meu projecte d’aprenentatge automàtic preferit.

Harmonització Painterly Profunda : Bé, parlant d’imatges, aquesta és una obra mestra. El que fa aquest algoritme és que prengui una imatge com a entrada i, després, si afegiu un element extern a la imatge, combina aquest element amb l’entorn com si en formés part.

Es pot diferenciar? No, no? Bé, això ens mostra fins a quin punt hem arribat en termes d’aprenentatge automàtic.

DeepMimic: Ara, mireu de prop les imatges aquí, veieu una figura de pal fent rotacions, retrocés i volant. Que el meu amic aprengui reforç en acció. DeepMimic és un exemple d'aprenentatge de reforç profund de les habilitats de caràcter basades en la física.

magenta : Magenta és un projecte de recerca que explora el paper de l’aprenentatge automàtic en el procés de creació d’art i música. Es tracta principalment de desenvolupar nous algorismes d'aprenentatge profund i reforç per generar cançons, imatges, dibuixos i altres materials.

També és una exploració per construir eines i interfícies intel·ligents que permetin ampliar artistes i músics ( no substituir! ) els seus processos mitjançant aquests models. Aneu a obrir les ales, creeu el vostre contingut únic per a Instagram o Soundcloud i convertiu-vos en un influencer.

Doncs nois, amb això arribem al final d’aquest increïble article sobre Projectes d’aprenentatge automàtic. Proveu aquests exemples i feu-nos-ho saber a la secció de comentaris següent. Espero que hàgiu conegut la implementació pràctica de l'aprenentatge automàtic a la indústria. D’Edureka us permet dominar tècniques com l'aprenentatge supervisat, l'aprenentatge sense supervisió i el processament del llenguatge natural. Inclou formació sobre els darrers avenços i enfocaments tècnics en intel·ligència artificial i aprenentatge automàtic, com ara aprenentatge profund, models gràfics i aprenentatge de reforç.