Nejnovější projekty strojového učení k vyzkoušení v roce 2019



Tento článek vám poskytne komplexní znalost projektů strojového učení v průmyslu a průlomů v této oblasti.

je jednoznačně obor, který za posledních pár let zaznamenal šílený pokrok. Tento trend a pokrok vytvořil v tomto odvětví mnoho pracovních příležitostí. Potřeba Inženýři strojového učení jsou velmi žádané a tento nárůst je způsoben vyvíjející se technologií a generováním velkého množství dat aka Big Data. V tomto článku tedy budu diskutovat o nejúžasnějších projektech strojového učení, které byste určitě měli znát a pracovat s nimi, v následujícím pořadí:

Co je to strojové učení?

Machine Learning je koncept, který umožňuje stroji učit se z příkladů a zkušeností, a to i bez výslovného programování. Takže místo toho, že píšete kód, co děláte je to, že vkládáte data do obecného algoritmu a algoritmus / stroj vytváří logiku na základě daných dat.





Kdo je inženýr ML

Kroky strojového učení

Libovolný algoritmus strojového učení se řídí běžným vzorem nebo kroky.



Sbírat data: Tato fáze zahrnuje sběr všech příslušných údajů z různých zdrojů

Datové hádky: Jedná se o proces čištění a převodu „Nezpracovaných dat“ do formátu, který umožňuje pohodlnou spotřebu

Analyzovat data: Data se analyzují za účelem výběru a filtrování dat potřebných k přípravě modelu



Algoritmus vlaku: Algoritmus je trénován na datové sadě tréninku, díky níž algoritmus chápe vzorec a pravidla, kterými se řídí data

Testovací model: Testovací datová sada určuje přesnost našeho modelu.

Rozvinutí: Pokud jsou rychlost a přesnost modelu přijatelné, měl by být tento model nasazen v reálném systému. Po nasazení modelu na základě jeho výkonu je model aktualizován a vylepšen, pokud dojde k poklesu výkonu, model je přeškolen.

Druhy strojového učení

Machine Learning se dále dělí na tři typy:

Kontrolované učení: Jedná se o tu, kde máte vstupní proměnné (x) a výstupní proměnnou (Y) a pomocí algoritmu se naučíte funkci mapování ze vstupu na výstup.

Neřízené učení: Někdy jsou daná data nestrukturovaná a neoznačená. Je tedy obtížné tato data zařadit do různých kategorií. Neřízené učení pomáhá tento problém vyřešit. Toto učení se používá ke shlukování vstupních dat ve třídách na základě jejich statistických vlastností.

Učení výztuže: Jde o to podniknout příslušné kroky k maximalizaci odměny v konkrétní situaci.
pokud jde o posilování učení, neočekává se žádný výstup. Agent vyztužení rozhodne, jaké akce má provést, aby provedl daný úkol. Při absenci tréninkové datové sady se musí poučit ze svých zkušeností.

Nyní se podívejme na několik projektů strojového učení v reálném životě, které mohou společnostem pomoci vytvářet zisk.

Průmyslové případy použití

1. POHYBOVÉ STUDIO

Doména: Polovina

Soustředit se: Optimalizujte proces výběru

co je charat v javě

Obchodní výzva: Motion Studio je největší rozhlasový produkční dům v Evropě. S tržbami přesahujícími miliardu dolarů se společnost rozhodla spustit novou reality show: RJ Star. Odezva na show je bezprecedentní a společnost je zaplavena hlasovými klipy. Jako odborník na ML musíte hlas klasifikovat jako mužský / ženský, aby byla první úroveň filtrace rychlejší.

Klíčové problémy: Ukázka hlasu má různé akcenty.

Obchodní výhoda: Od té doby RJ Star je reality show, čas na výběr kandidátů je velmi krátký. Celý úspěch show a tedy i zisky závisí na rychlém a plynulém provedení

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

# Zkontrolujte č. záznamů df.info () df.describe () df.isnull (). sum ()

print ('Shape of Data:', df.shape) print ('Celkový počet štítků: {}'. 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] tisk (df.shape) tisk (X.shape)

ze sklearn.preprocessing import LabelEncoder y = df.iloc [:, - 1] gender_encoder = LabelEncoder () y = gender_encoder.fit_transform (y) y ze sklearn.preprocessing import StandardScaler scaler = StandardScaler () scaler.fit (X) X = scaler.transform (X) z 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) z sklearn.svm import SVC z sklearn import metrics z sklearn import metrics z sklearn , 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))

tisk (confusion_matrix (y_test, y_pred))

2. LITHIONPOWER

Doména: Automobilový průmysl

Soustředit se: Motivujte řidiče

Obchodní výzva: Lithionpower je největším poskytovatelem baterií pro elektrická vozidla (e-vozidla). Řidiči si baterii pronajmou obvykle na jeden den a poté ji vymění za nabitou baterii od společnosti. Lithionpower má variabilní cenový model založený na historii jízdy řidiče. Protože životnost baterie závisí na faktorech, jako je překročení rychlosti, ujetá vzdálenost za den atd. Jako odborník na ML musíte vytvořit model klastru, kde lze řidiče seskupit na základě údajů o jízdě.

Klíčové problémy: Řidiči budou motivováni na základě klastru, takže seskupování musí být přesné.

Obchodní výhody: Zvýšení zisku až o 15–20%, protože řidičům se špatnou historií bude účtováno více.

import pand jako pd import numpy jako np import matplotlib.pyplot jako plt import seaborn jako sns sns.set () # pro vykreslování stylů% matplotlib inline import upozornění warnings.filterwarnings ('ignore') import matplotlib.pyplot jako plt plt.rcParams [ 'figure.figsize'] = (12, 6) df = pd.read_csv ('driver-data.csv') df.head ()

df.info () df.describe ()

z sklearn.cluster import KMeans #Taking 2 clustery 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 (type (kmeans.labels_)) unique, countts = np.unique (kmeans.labels_, return_counts = True) print (dict (zip (unique, count)))

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)

# Nyní zkontrolujme shluky, když 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, count)))

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

Doména: Logistika

Soustředit se: Optimální cesta

Obchodní výzva: BluEx je přední logistická společnost v Indii. Je známý pro efektivní doručování paketů zákazníkům. Společnost BluEx však čelí výzvě, kde se její řidiči dodávek vydávají neoptimální cestou k dodání. To způsobuje zpoždění a vyšší náklady na palivo. Vy, jako odborník na ML, musíte vytvořit model ML pomocí Reinforcement Learning, abyste v programu našli efektivní cestu.

Klíčové problémy: Data mají spoustu atributů a klasifikace může být složitá.

Obchodní výhody: Optimální cestou lze ušetřit až 15% nákladů na palivo.

import numpy jako np import pylab jako plt import networkx jako nx #Initializing points points_list = [(0,1), (1,5), (5,6), (5,4), (1,2), (2 , 3), (2,7)] cíl = 7 mapování = {0: 'Start', 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 pro bod v points_list: print (point) if point [1] == cíl: R [point] = 150 else: R [point] = 0 if point [0] == cíl: R [point [:: - 1]] = 150 else: # zadní strana bodu R [point [:: - 1]] = 0

R [cíl, cíl] = 150 R

Q = np.matrix (np.zeros ([NO_OF_POINTS, NO_OF_POINTS])) # Učební parametr 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] návrat 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)

skóre = [] pro i v rozsahu (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, akce, gama) score.append (score) print ('Score:', str (score)) print ('Trained Q matrix:') print (Q / np.max (Q) * 100) # Testování current_state = 0 kroků = [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, size = 1)) else: next_step_index = int (next_step_index) steps.append (next_step_index) current_state = next_step_index

print ('Nejefektivnější cesta:') print (kroky) plt.plot (skóre) plt.show ()

Projekty strojového učení s otevřeným zdrojovým kódem v roce 2019

Detectron : Detectron je softwarový systém Facebooku AI Research, který implementuje nejmodernější algoritmy detekce objektů. Je napsán v Pythonu a je poháněn rámcem hlubokého učení Caffe2.

Cílem Detectronu je poskytnout vysoce kvalitní a vysoce výkonnou základnu kódů pro výzkum detekce objektů. Je navržen tak, aby byl flexibilní, aby podporoval rychlou implementaci a hodnocení nového výzkumu. Obsahuje více než 50 předem vyškolených modelů.

Denspose : Cílem odhadu husté lidské pozice je mapování všech lidských pixelů obrazu RGB na 3D povrch lidského těla. DensePose-RCNN je implementován v rámci Detectron.

TensorFlow.js : Je to knihovna pro vývoj a školení modelů ML a nasazení v prohlížeči. Stalo se velmi oblíbeným vydáním od vydání počátkem tohoto roku a nadále udivuje svou flexibilitou. S tímto můžete

  • Vývoj ML v prohlížeči: Pomocí flexibilních a intuitivních rozhraní API můžete vytvářet modely od nuly pomocí nízkoúrovňové knihovny lineární algebry v jazyce JavaScript nebo rozhraní API na vysoké úrovni.
  • Spusťte existující modely : Pomocí převaděče modelů TensorFlow.js můžete spouštět již existující modely TensorFlow přímo v prohlížeči.
  • Přeškolit stávající modely: Přeformátujte již existující modely ML pomocí dat ze senzorů připojených k prohlížeči nebo jiných dat na straně klienta.

Waveglow: Machine Learning také dělá zásadní pokroky ve zpracování zvuku a nejde jen o generování hudby nebo klasifikaci. WaveGlow je toková generativní síť pro syntézu řeči od společnosti NVIDIA. Vědci také uvedli kroky, které můžete použít, pokud chcete trénovat svůj vlastní model od nuly.

tableau desktop 9 kvalifikovaný spolupracovník

Image outpainting : Představte si, že máte poloviční obraz scény a chtěli jste celou scenérii, to je to, co pro vás může udělat outpainting obrazu. Tento projekt je implementací protokolu Keras Stanford's Image Outpainting paper. Model byl trénován s 3500 sešrotovaná plážová data s argumentací celkem až 10 500 obrázky pro 25 epoch .

Toto je úžasný článek s podrobným vysvětlením krok za krokem. Je třeba vyzkoušet příklad pro všechny nadšence strojového učení. Osobně se jedná o můj oblíbený projekt Machine Learning.

Hluboká malířská harmonizace : Když už mluvíme o obrazech, tenhle je mistrovské dílo. Tento algoritmus dělá to, že vezme obraz jako vstup a poté, co do obrázku přidáte externí prvek, vmíchá tento prvek do okolí, jako by byl jeho součástí.

Rozeznáš rozdíl? Ne, že? To nám ukazuje, jak daleko jsme se dostali ve smyslu strojového učení.

DeepMimic: Nyní se podrobně podívejte na obrázky zde, uvidíte panáka, který dělá spin-kick, backflip a cartwheel. Že můj přítel posiluje učení v akci. DeepMimic je příkladem řízeného hlubokého posílení výuky dovedností postav založených na fyzice.

Purpurová : Magenta je výzkumný projekt zkoumající roli strojového učení v procesu tvorby umění a hudby. Primárně se jedná o vývoj nových algoritmů hlubokého učení a posilování učení pro generování písní, obrázků, kreseb a dalších materiálů.

Jedná se také o průzkum v budování inteligentních nástrojů a rozhraní, která umožňují umělcům a hudebníkům rozšiřovat ( nenahradit! ) jejich procesy využívající tyto modely. Roztáhněte křídla, vytvořte svůj jedinečný obsah pro Instagram nebo Soundcloud a staňte se ovlivňovatelem.

Takže, chlapci, tímto se dostáváme ke konci tohoto úžasného článku Projekty strojového učení. Vyzkoušejte tyto příklady a dejte nám vědět v sekci komentářů níže. Doufám, že jste poznali praktickou implementaci Machine Learning v průmyslu. Edureka vám umožní ovládat techniky, jako je supervidované učení, nekontrolované učení a zpracování přirozeného jazyka. Zahrnuje školení o nejnovějších pokrokech a technických přístupech v oblasti umělé inteligence a strojového učení, jako je hluboké učení, grafické modely a učení výztuže