Ultimi progetti di machine learning da provare nel 2019



Questo articolo ti fornirà una conoscenza completa dei progetti di machine learning nel settore e delle scoperte fatte in quest'area.

è chiaramente un campo che ha visto progressi folli negli ultimi due anni. Questa tendenza e i progressi hanno creato molte opportunità di lavoro nel settore. Il bisogno di Ingegneri di machine learning sono molto richiesti e questo aumento è dovuto all'evoluzione della tecnologia e alla generazione di enormi quantità di dati, noti anche come Big Data. Quindi, in questo articolo, parlerò dei progetti di machine learning più sorprendenti che dovresti assolutamente conoscere e lavorare, nel seguente ordine:

Cos'è l'apprendimento automatico?

L'apprendimento automatico è un concetto che consente alla macchina di apprendere da esempi ed esperienze, e anche questo senza essere programmato esplicitamente. Quindi, invece di scrivere il codice, ciò che fai è fornire dati all'algoritmo generico e l'algoritmo / macchina costruisce la logica in base ai dati forniti.





Chi è un ingegnere ML

Passaggi di machine learning

Qualsiasi algoritmo di apprendimento automatico segue uno o più passaggi comuni.



Raccolta dati: Questa fase prevede la raccolta di tutti i dati rilevanti da varie fonti

Data Wrangling: È il processo di pulizia e conversione dei 'dati grezzi' in un formato che consente un consumo conveniente

Analizzare i dati: I dati vengono analizzati per selezionare e filtrare i dati necessari per preparare il modello



Algoritmo del treno: L'algoritmo viene addestrato sul set di dati di addestramento, attraverso il quale l'algoritmo comprende il pattern e le regole che governano i dati

Modello di prova: Il set di dati di test determina l'accuratezza del nostro modello.

Distribuzione: Se la velocità e la precisione del modello sono accettabili, allora quel modello dovrebbe essere distribuito nel sistema reale. Dopo che il modello è stato distribuito in base alle sue prestazioni, il modello viene aggiornato e migliorato se si verifica un calo delle prestazioni, il modello viene riqualificato.

Tipi di machine learning

L'apprendimento automatico è suddiviso in tre categorie:

Apprendimento supervisionato: È quello in cui hai variabili di input (x) e una variabile di output (Y) e usi un algoritmo per apprendere la funzione di mappatura dall'input all'output.

Apprendimento senza supervisione: A volte i dati forniti sono non strutturati e senza etichetta. Quindi diventa difficile classificare quei dati in diverse categorie. L'apprendimento senza supervisione aiuta a risolvere questo problema. Questo apprendimento viene utilizzato per raggruppare i dati di input nelle classi sulla base delle loro proprietà statistiche.

Insegnamento rafforzativo: Si tratta di intraprendere azioni appropriate per massimizzare la ricompensa in una situazione particolare.
quando si tratta di apprendimento per rinforzo, non ci sono risultati attesi. L'agente di rinforzo decide quali azioni intraprendere per eseguire un determinato compito. In assenza di un set di dati di addestramento, è destinato a imparare dalla sua esperienza.

Diamo ora uno sguardo ad alcuni progetti di machine learning nella vita reale che possono aiutare le aziende a generare profitti.

Casi d'uso del settore

1. MOTION STUDIO

Dominio: Metà

Messa a fuoco: Ottimizza il processo di selezione

la clausola sindacale è usata per

Sfida aziendale: Motion Studio è la più grande casa di produzione radiofonica in Europa. Con un fatturato di oltre un miliardo di dollari, l'azienda ha deciso di lanciare un nuovo reality show: RJ Star. La risposta allo spettacolo è senza precedenti e la compagnia è inondata di clip vocali. Come esperto di ML devi classificare la voce come maschio / femmina in modo che il primo livello di filtraggio sia più veloce.

Problemi chiave: Il campione vocale è attraverso gli accenti.

Vantaggio aziendale: Da RJ Star è un reality show, il tempo per selezionare i candidati è molto breve. L'intero successo dello spettacolo e quindi i profitti dipendono da un'esecuzione rapida e regolare

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

# Controlla il no. di record df.info () df.describe () df.isnull (). sum ()

print ('Shape of Data:', df.shape) print ('Numero totale di etichette: {}'. format (df.shape [0])) print ('Number of male: {}'. format (df [ df.label == 'male']. shape [0])) print ('Number of female: {}'. format (df [df.label == 'female']. shape [0]))

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

da sklearn.preprocessing import LabelEncoder y = df.iloc [:, - 1] gender_encoder = LabelEncoder () y = gender_encoder.fit_transform (y) y da sklearn.preprocessing import StandardScaler scaler = StandardScaler () scaler.fit (X) X = scaler.transform (X) da 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) da sklearn.svm importa SVC da sklearn importa metriche da sklearn_reportmetr. , confusion_matrix svc_model = SVC () svc_model.fit (X_train, y_train) y_pred = svc_model.predict (X_test) print ('Punteggio di precisione:') print (metrics.accuracy_score (y_test, y_pred))

print (confusion_matrix (y_test, y_pred))

2. LITHIONPOWER

Dominio: Settore automobilistico

Messa a fuoco: Incentivare i conducenti

Sfida aziendale: Lithionpower è il più grande fornitore di batterie per veicoli elettrici (veicoli elettrici). I conducenti noleggiano la batteria in genere per un giorno e poi la sostituiscono con una batteria carica dell'azienda. Lithionpower ha un modello di prezzo variabile basato sulla cronologia di guida del conducente. Poiché la durata di una batteria dipende da fattori quali velocità eccessiva, distanza percorsa al giorno, ecc. In qualità di esperto di machine learning, devi creare un modello a grappolo in cui i conducenti possono essere raggruppati in base ai dati di guida.

Problemi chiave: I conducenti saranno incentivati ​​in base al cluster, quindi il raggruppamento deve essere accurato.

Vantaggi aziendali: Aumento dei profitti, fino al 15-20% poiché i conducenti con una storia scadente verranno addebitati di più.

importa panda come pd importa numpy come np importa matplotlib.pyplot come plt importa seaborn come sns sns.set () # per lo stile di trama% matplotlib inline import warnings warnings.filterwarnings ('ignore') importa matplotlib.pyplot come plt plt.rcParams [ 'figure.figsize'] = (12, 6) df = pd.read_csv ('driver-data.csv') df.head ()

df.info () df.describe ()

da sklearn.cluster import KMeans #Assumere 2 cluster kmeans = KMeans (n_clusters = 2) df_analyze = df.drop ('id', axis = 1) kmeans.fit (df_analyze)

webdriver selenio con cetriolo esempio in eclipse
kmeans.cluster_centers_

print (kmeans.labels_) print (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, aspect = 1, fit_reg = False)

#Ora, controlliamo i cluster, quando 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, aspect = 1, fit_reg = False)

3. BluEx

Dominio: la logistica

Messa a fuoco: Percorso ottimale

Sfida aziendale: BluEx è una società di logistica leader in India. È noto per la consegna efficiente dei pacchetti ai clienti. Tuttavia, BluEx sta affrontando una sfida in cui i suoi conducenti di furgoni stanno prendendo un percorso non ottimale per la consegna. Ciò sta causando ritardi e un aumento del costo del carburante. In qualità di esperto di ML, devi creare un modello ML utilizzando l'apprendimento per rinforzo in modo da trovare un percorso efficiente attraverso il programma.

Problemi chiave: I dati hanno molti attributi e la classificazione potrebbe essere complicata.

Vantaggi aziendali: È possibile risparmiare fino al 15% del costo del carburante prendendo il percorso ottimale.

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)] obiettivo = 7 mappatura = {0: 'Inizio', 1: '1', 2: '2', 3: '3', 4: '4', 5: '5 ', 6:' 6 ', 7:' 7-Destination '} 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 per punto in points_list: print (point) if point [1] == goal: R [punto] = 150 altro: R [punto] = 0 se punto [0] == obiettivo: R [punto [:: - 1]] = 150 altro: # inverso del punto R [punto [:: - 1]] = 0

R [obiettivo, obiettivo] = 150 R

Q = np.matrix (np.zeros ([NO_OF_POINTS, NO_OF_POINTS])) # Il parametro di apprendimento 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)

punteggi = [] per i nell'intervallo (700): current_state = np.random.randint (0, int (Q.shape [0])) available_act = available_actions (current_state) action = sample_next_action (available_act) punteggio = update (current_state, action, gamma) score.append (score) print ('Score:', str (score)) print ('Matrice Q addestrata:') print (Q / np.max (Q) * 100) # Testing current_state = 0 passi = [stato_attuale] mentre stato_attuale! = 7: indice_successivo = np.where (Q [stato_attuale,] == np.max (Q [stato_attuale,])) [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

print ('Percorso più efficiente:') print (passaggi) plt.plot (punteggi) plt.show ()

Progetti di machine learning open source nel 2019

Detectron : Detectron è il sistema software di Facebook AI Research che implementa algoritmi di rilevamento degli oggetti all'avanguardia. È scritto in Python e alimentato dal framework di deep learning Caffe2.

L'obiettivo di Detectron è fornire una base di codice di alta qualità e ad alte prestazioni per la ricerca sul rilevamento di oggetti. È progettato per essere flessibile al fine di supportare una rapida implementazione e valutazione di nuove ricerche. Contiene più di 50 modelli pre-addestrati.

Denspose : La stima della posa umana densa mira a mappare tutti i pixel umani di un'immagine RGB sulla superficie 3D del corpo umano. DensePose-RCNN è implementato nel framework Detectron.

TensorFlow.js : È una libreria per lo sviluppo e l'addestramento di modelli ML e per la distribuzione nel browser. È diventata una versione molto popolare da quando è stata rilasciata all'inizio di quest'anno e continua a stupire per la sua flessibilità. Con questo puoi

  • Sviluppa ML nel browser: Utilizza API flessibili e intuitive per creare modelli da zero utilizzando la libreria di algebra lineare JavaScript di basso livello o l'API dei livelli di alto livello.
  • Esegui modelli esistenti : Utilizza i convertitori di modelli TensorFlow.js per eseguire modelli TensorFlow preesistenti direttamente nel browser.
  • Addestra nuovamente i modelli esistenti: Riqualifica i modelli ML preesistenti utilizzando i dati dei sensori collegati al browser o altri dati lato client.

Waveglow: L'apprendimento automatico sta anche facendo importanti progressi nell'elaborazione audio e non si tratta solo di generare musica o classificazioni. WaveGlow è una rete generativa basata sul flusso per la sintesi vocale di NVIDIA. I ricercatori hanno anche elencato i passaggi che puoi seguire se desideri addestrare il tuo modello da zero.

Outpainting dell'immagine : Immagina di avere una mezza immagine di una scena e di volere lo scenario completo, beh, questo è ciò che la sovra pittura può fare per te. Questo progetto è un'implementazione Keras della carta Image Outpainting di Stanford. Il modello è stato addestrato con 3500 dati sulla spiaggia scartati con argomentazioni per un totale fino a 10.500 immagini per 25 epoche .

Questo è un documento straordinario con una spiegazione dettagliata passo dopo passo. Un esempio da provare per tutti gli appassionati di machine learning. Personalmente, questo è il mio progetto di Machine Learning preferito.

Profonda armonizzazione pittorica : Ebbene, parlando di immagini, questo è un capolavoro. Ciò che fa questo algoritmo è che prende un'immagine come input e quindi se aggiungi un elemento esterno all'immagine, esso fonde quell'elemento con l'ambiente circostante come se fosse una parte di esso.

Puoi dire la differenza? Nessun diritto? Bene, questo ci mostra fino a che punto siamo arrivati ​​in termini di Machine Learning.

DeepMimic: Ora, dai un'occhiata da vicino alle immagini qui, vedi una figura stilizzata che fa spin-kick, backflip e ruota di carro. Che il mio amico sta imparando per rinforzo in azione. DeepMimic è un esempio di apprendimento con rinforzo profondo guidato di abilità caratteriali basate sulla fisica.

Magenta : Magenta è un progetto di ricerca che esplora il ruolo dell'apprendimento automatico nel processo di creazione di arte e musica. Principalmente questo implica lo sviluppo di nuovi algoritmi di apprendimento profondo e di rinforzo per la generazione di canzoni, immagini, disegni e altri materiali.

È anche un'esplorazione nella costruzione di strumenti e interfacce intelligenti che consentono ad artisti e musicisti di estendere ( non sostituire! ) i loro processi utilizzando questi modelli. Apri le ali, crea i tuoi contenuti unici per Instagram o Soundcloud e diventa un influencer.

Quindi ragazzi, con questo arriviamo alla fine di questo fantastico articolo sui progetti di machine learning. Prova questi esempi e faccelo sapere nella sezione commenti qui sotto. Spero che tu abbia conosciuto l'implementazione pratica del Machine Learning nel settore. Edureka's ti rende esperto in tecniche come l'apprendimento supervisionato, l'apprendimento non supervisionato e l'elaborazione del linguaggio naturale. Include la formazione sugli ultimi progressi e approcci tecnici in Intelligenza Artificiale e Machine Learning come Deep Learning, Modelli grafici e Reinforcement Learning