Jaunākie mašīnmācīšanās projekti, kurus izmēģināt 2019. gadā



Šis raksts sniegs jums visaptverošas zināšanas par mašīnmācīšanās projektiem nozarē un sasniegumiem šajā jomā.

nepārprotami ir joma, kurā pēdējos pāris gados ir sasniegti neprātīgi sasniegumi. Šī tendence un sasniegumi šajā nozarē ir radījuši daudz darba iespēju. Nepieciešamība pēc Mašīnmācības inženieri ir ļoti pieprasīti, un šo straujo pieaugumu nosaka tehnoloģiju attīstība un milzīga datu apjoma jeb Big Data ģenerēšana. Tāpēc šajā rakstā es apspriedīšu visvairāk apbrīnojamos mašīnmācīšanās projektus, kas noteikti jāzina un ar kuriem jāstrādā, šādā secībā:

Kas ir mašīnmācīšanās?

Mašīnmācība ir jēdziens, kas ļauj mašīnai mācīties no piemēriem un pieredzes, un arī tas bez īpašas programmēšanas. Tātad, tā vietā, lai rakstītu kodu, jūs darāt datus ar vispārējo algoritmu, un algoritms / mašīna veido loģiku, pamatojoties uz dotajiem datiem.





Kas ir ML inženieris

Mašīnmācīšanās soļi

Jebkurš mašīnmācīšanās algoritms darbojas pēc kopīga modeļa vai soļiem.



Datu vākšana: Šajā posmā ir jāapkopo visi attiecīgie dati no dažādiem avotiem

Datu apkarošana: Tas ir “Raw Data” tīrīšanas un pārveidošanas process, kas ļauj ērti patērēt

Analizēt datus: Dati tiek analizēti, lai atlasītu un filtrētu datus, kas nepieciešami modeļa sagatavošanai



Vilciena algoritms: Algoritms tiek apmācīts uz apmācības datu kopas, ar kuras palīdzību algoritms saprot modeli un noteikumus, kas regulē datus

Testa modelis: Pārbaudes datu kopa nosaka mūsu modeļa precizitāti.

Izvietošana: Ja modeļa ātrums un precizitāte ir pieņemama, šis modelis jāizvieto reālajā sistēmā. Pēc modeļa izvietošanas, pamatojoties uz tā veiktspēju, modelis tiek atjaunināts un uzlabots, ja sniegumā ir kritums, modelis tiek pārkvalificēts.

Mašīnmācīšanās veidi

Mašīnmācība ir sadalīta trīs kategorijās:

Vadīta mācīšanās: Tas ir tas, kurā jums ir ievades mainīgie (x) un izvades mainīgie (Y), un jūs izmantojat algoritmu, lai uzzinātu kartēšanas funkciju no ievades līdz izejai.

Bez uzraudzības mācīšanās: Dažreiz norādītie dati ir nestrukturēti un bez etiķetēm. Tāpēc kļūst grūti tos datus klasificēt dažādās kategorijās. Bez uzraudzības mācīšanās palīdz atrisināt šo problēmu. Šo mācīšanos izmanto, lai grupētu ievades datus klasēs, pamatojoties uz to statistiskajām īpašībām.

Mācības pastiprināšanai: Tas viss ir par atbilstošu darbību veikšanu, lai maksimāli palielinātu atlīdzību konkrētā situācijā.
kad runa ir par mācīšanās pastiprināšanu, nav paredzama rezultāta. Armatūras pārstāvis izlemj, kādas darbības veikt, lai veiktu doto uzdevumu. Ja nav apmācības datu kopas, tai noteikti jāmācās no savas pieredzes.

Apskatīsim dažus reālās dzīves mašīnmācīšanās projektus, kas var palīdzēt uzņēmumiem gūt peļņu.

Nozares lietošanas gadījumi

1. KUSTĪBAS STUDIJA

Domēns: Puse

Fokuss: Optimizēt atlases procesu

max kaudzes ieviešana java

Biznesa izaicinājums: Motion Studio ir lielākā radio producēšanas māja Eiropā. Uzņēmuma ieņēmumi pārsniedz miljardus dolāru, un tā ir nolēmusi sākt jaunu realitātes šovu: RJ Zvaigzne. Atbilde uz izrādi ir bezprecedenta, un uzņēmumu pārpludina balss klipi. Jums kā ML ekspertam balss ir jāklasificē kā vīrietis / sieviete, lai pirmais filtrēšanas līmenis būtu ātrāks.

Galvenās problēmas: Balss paraugs ir akcentēts.

Biznesa ieguvums: Kopš RJ Zvaigzne ir realitātes šovs, laiks kandidātu atlasei ir ļoti īss. Visi izrādes panākumi un līdz ar to arī peļņa ir atkarīga no ātras un netraucētas izpildes

importēt pandas kā pd importēt numpy kā np importēt matplotlib.pyplot kā plt importēt jūras dzimušus kā sns% matplotlib iekļautos importa brīdinājumus.

# Pārbaudiet nr. ierakstu df.info () df.describe () df.isnull (). summa ()

drukāt ('Datu forma:', df.forma) drukāt ('Kopējais etiķešu skaits: {}'. formāts (df.forma [0])) drukāt ('Vīriešu skaits: {}'. formāts (df [ df.label == 'vīrietis']. forma [0])) print ('Sieviešu skaits: {}'. formāts (df [df.label == 'sieviete']. forma [0]))

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

no sklearn.preprocessing importēt LabelEncoder y = df.iloc [:, - 1] gender_encoder = LabelEncoder () y = gender_encoder.fit_transform (y) y no sklearn.preprocessing importēt StandardScaler scaler = StandardScaler () scaler.fit ( scaler.transform (X) no sklearn.model_selection importēt vilciena_testa_split X_train, X_test, y_train, y_test = train_test_split (X, y, test_size = 0.3, random_state = 100) no sklearn.svm importēt SVC no sklearn , confusion_matrix svc_model = SVC () svc_model.fit (X_train, y_train) y_pred = svc_model.predict (X_test) print ('Precizitātes rādītājs:') print (metrics.accuracy_score (y_test, y_pred))

drukāt (confusion_matrix (y_test, y_pred))

2. LIONIONPOWER

Domēns: Automobiļi

Fokuss: Stimulējiet draiverus

Biznesa izaicinājums: Lithionpower ir lielākais elektrisko transportlīdzekļu (e-transportlīdzekļu) akumulatoru piegādātājs. Autovadītāji parasti nomā akumulatoru uz dienu un pēc tam nomaina to ar uzņēmuma uzlādētu akumulatoru. Lithionpower ir mainīgs cenu modelis, kas balstīts uz vadītāja braukšanas vēsturi. Tā kā akumulatora darbības laiks ir atkarīgs no tādiem faktoriem kā ātruma pārsniegšana, dienā nobrauktais attālums utt. Jums kā ML ekspertam ir jāizveido kopas modelis, kurā autovadītājus var sagrupēt, pamatojoties uz braukšanas datiem.

Galvenās problēmas: Vadītājus stimulēs, pamatojoties uz kopu, tāpēc grupēšanai jābūt precīzai.

Biznesa ieguvumi: Peļņas pieaugums, līdz pat 15-20%, jo no autovadītājiem ar sliktu vēsturi tiks iekasēta lielāka maksa.

importēt pandas kā pd importēt numpy kā np importēt matplotlib.pyplot kā plt importēt jūrasdzimtu kā sns sns.set () # zemes gabala stilam% matplotlib iekļautie importa brīdinājumi brīdinājumi.filterwarnings ('ignorēt') importēt matplotlib.pyplot kā plt plt.rcParams [ 'figure.figsize'] = (12, 6) df = pd.read_csv ('draivera dati.csv') df.head ()

df.info () df.describe ()

no sklearn.cluster importēšanas KMeans # 2 klasteru ņemšana kmeans = KMeans (n_clusters = 2) df_analyze = df.drop ('id', ass = 1) kmeans.fit (df_analyze)

kmeans.cluster_centers_

drukāt (kmeans.labels_) drukāt (len (kmeans.labels_))

print (type (kmeans.labels_)) unikāls, count = np.unique (kmeans.labels_, return_counts = True) print (dict (zip (unikāls, skaits)))

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, aspekts = 1, fit_reg = nepatiesa)

# Tagad pārbaudīsim kopas, kad n = 4 kmeans_4 = KMeans (n_clusters = 4) kmeans_4.fit (df.drop ('id', ass = 1)) kmeans_4.fit (df.drop ('id', ass = 1)) print (kmeans_4.cluster_centers_) unikāls, count = np.unique (kmeans_4.labels_, return_counts = True) kmeans_4.cluster_centers_ print (dict (zip (unikāls, skaits)))

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, aspekts = 1, fit_reg = nepatiesa)

3. BluEx

Domēns: Loģistika

Fokuss: Optimālais ceļš

Biznesa izaicinājums: BluEx ir vadošais loģistikas uzņēmums Indijā. Tas ir pazīstams ar efektīvu pakešu piegādi klientiem. Tomēr BluEx saskaras ar izaicinājumu, kad tā furgonu vadītāji piegādei izvēlas neoptimālu ceļu. Tas izraisa kavēšanos un augstākas degvielas izmaksas. Jums kā ML ekspertam ir jāizveido ML modelis, izmantojot Reinforcement Learning, lai programma atrastu efektīvu ceļu.

Galvenās problēmas: Datiem ir daudz atribūtu, un klasifikācija var būt sarežģīta.

Biznesa ieguvumi: Izvēloties optimālo ceļu, var ietaupīt līdz 15% no degvielas izmaksām.

importēt numpy kā np importa pylab kā plt importa tīklsx kā nx # Punktu inicializēšana points_list = [(0,1), (1,5), (5,6), (5,4), (1,2), (2 , 3), (2,7)] mērķis = 7 kartēšana = {0: 'Sākt', 1: '1', 2: '2', 3: '3', 4: '4', 5: '5 ', 6:' 6 ', 7:' 7-galamērķis '} 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 # Sākotnējā R matrica R = np.matrica (np.ones (forma = (NO_OF_POINTS, NO_OF_POINTS))) R * = -1 punktam point_list: drukāt (punkts), ja punkts [1] == mērķis: R [punkts] = 150 cits: R [punkts] = 0, ja punkts [0] == mērķis: R [punkts [:: - 1]] = 150 cits: # punkta R aizmugure [punkts [:: - 1]] = 0

R [mērķis, mērķis] = 150 R

Q = np.matrix (np.zeros ([NO_OF_POINTS, NO_OF_POINTS])) # Mācīšanās parametrs gamma = 0,8 sākotnējā stacija = 1 def pieejamā_darbība (stāvoklis): 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 [darbība,] == np.max (Q [darbība,]])) [1], ja max_index.shape [0] & ampampampgt 1: max_index = int (np.random.choice (max_index, izmērs = 1)) cits: max_index = int (max_index) max_value = Q [darbība, max_index] Q [current_state, darbība] = R [current_state, darbība] + gamma * max_value print ('max_value', R [current_state, darbība] + gamma * max_value) if (np.max (Q) & ampampampgt 0): return (np.sum (Q / np.max (Q) * 100)) else: return (0) update (sākotnējā stacija, darbība, gamma)

rādītāji = [] i diapazonā (700): current_state = np.random.randint (0, int (Q. forma [0])) available_act = pieejamie_darbības (current_state) darbība = sample_next_action (available_act) rezultāts = update (current_state, darbība, gamma) scores.append (score) print ('Score:', str (score)) print ('Trained Q matrix:') print (Q / np.max (Q) * 100) # pašreizējās stacijas pārbaude = 0 soļu = [current_state] kamēr current_state! = 7: next_step_index = np.where (Q [current_state,] == np.max (Q [current_state,])) [1], ja 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 ('Visefektīvākais ceļš:') print (soļi) plt.plot (rādītāji) plt.show ()

Atvērtā koda mašīnmācīšanās projekti 2019. gadā

Detektrona : Detectron ir Facebook AI Research programmatūras sistēma, kas ievieš vismodernākos objektu noteikšanas algoritmus. Tas ir uzrakstīts Python un darbojas, izmantojot Caffe2 dziļo mācību sistēmu.

Detectron mērķis ir nodrošināt augstas kvalitātes, augstas veiktspējas koda bāzi objektu noteikšanas pētījumiem. Tā ir izstrādāta tā, lai tā būtu elastīga, lai atbalstītu jaunu pētījumu ātru ieviešanu un novērtēšanu. Tajā ir vairāk nekā 50 iepriekš apmācīti modeļi.

Denspose : Blīvas cilvēka pozas novērtēšanas mērķis ir visu RGB attēla cilvēka pikseļu kartēšana uz cilvēka ķermeņa 3D virsmu. DensePose-RCNN tiek ieviests Detectron sistēmā.

kas ir jašets java

TensorFlow.js : Tā ir bibliotēka ML modeļu izstrādei un apmācībai, kā arī izvietošanai pārlūkprogrammā. Tas ir kļuvis par ļoti populāru laidienu, jo tas tika izlaists šī gada sākumā un turpina pārsteigt ar savu elastību. Ar šo jūs varat

  • Izstrādājiet ML pārlūkprogrammā: Izmantojiet elastīgas un intuitīvas API, lai izveidotu modeļus no jauna, izmantojot zema līmeņa JavaScript lineārās algebras bibliotēku vai augsta līmeņa slāņu API.
  • Palaidiet esošos modeļus : Izmantojiet TensorFlow.js modeļu pārveidotājus, lai palaistu jau esošos TensorFlow modeļus tieši pārlūkprogrammā.
  • Pārkvalificēt esošos modeļus: Pārkvalificējiet jau esošos ML modeļus, izmantojot sensoru datus, kas savienoti ar pārlūkprogrammu, vai citus klienta puses datus.

Waveglow: Mašīnmācība arī veic ievērojamus uzlabojumus audio apstrādē, un tā ne tikai rada mūziku vai klasifikāciju. WaveGlow ir uz plūsmu balstīts ģeneratīvais tīkls runas sintēzei, ko nodrošina NVIDIA. Pētnieki ir arī uzskaitījuši soļus, kurus varat sekot, ja vēlaties apmācīt savu modeli no jauna.

Attēla apgleznošana : Iedomājieties, ka jums ir puse ainas attēla un vēlaties visu ainavu, un tieši to attēla apgleznošana var jums darīt. Šis projekts ir Stanforda Image Outpainting papīra Keras ieviešana. Modelis tika apmācīts 3500 nodoti metāllūžņu pludmales dati ar argumentāciju kopā līdz 10 500 attēli 25 laikmeti .

Tas ir pārsteidzošs dokuments ar detalizētu soli pa solim skaidrojumu. Jāizmēģina piemērs visiem mašīnmācīšanās entuziastiem. Personīgi tas ir mans mīļākais mašīnmācīšanās projekts.

Dziļa gleznieciska harmonizācija : Nu, runājot par attēliem, šis ir šedevrs. Tas, ko šis algoritms dara, ir attēls, kas tiek izmantots kā ievade, un tad, ja attēlam pievienojat ārēju elementu, tas sajauc šo elementu apkārtnē tā, it kā tas būtu tā sastāvdaļa.

Vai jūs varat atšķirt? Nē, vai ne? Tas mums parāda, cik tālu esam sasnieguši mašīnmācības ziņā.

DeepMimic: Tagad uzmanīgi apskatiet šeit redzamos attēlus, un jūs redzat nūju, kas veic spin-kick, backflip un ratiņu. Ka mans draugs mācās pastiprināšanu darbībā. DeepMimic ir uz fiziku balstītu rakstzīmju prasmju mācīšanās paraugs.

Magenta : Magenta ir pētniecības projekts, kurā tiek pētīta mašīnmācīšanās loma mākslas un mūzikas radīšanas procesā. Tas galvenokārt ietver jaunu dziļu mācību un pastiprināšanas mācīšanās algoritmu izstrādi dziesmu, attēlu, zīmējumu un citu materiālu ģenerēšanai.

Tas ir arī pētījums par viedo rīku un saskarņu veidošanu, kas ļauj māksliniekiem un mūziķiem paplašināties ( neaizstāj! ) to procesus, izmantojot šos modeļus. Atklājiet spārnus, izveidojiet savu unikālo saturu Instagram vai Soundcloud un kļūstiet par ietekmētāju.

Tātad, puiši, ar to mēs esam nonākuši šajā apbrīnojamajā mašīnmācīšanās projektu rakstā. Izmēģiniet šos piemērus un informējiet mūs zemāk esošajā komentāru sadaļā. Es ceru, ka jūs uzzinājāt mašīnmācīšanās praktisko ieviešanu nozarē. Edureka ļauj jums pārzināt tādas metodes kā uzraudzīta mācīšanās, bez uzraudzības un dabiskās valodas apstrāde. Tas ietver apmācību par jaunākajiem sasniegumiem un tehniskajām pieejām mākslīgā intelekta un mašīnmācīšanās jomā, piemēram, padziļināta mācīšanās, grafiskie modeļi un mācīšanās pastiprināšana