Questo articolo è stato pubblicato nell'ambito del Blogathon sulla scienza dei dati
"Cosa c'è dietro le auto senza conducente?? Intelligenza artificiale o, più specificamente, apprendimento profondoApprendimento profondo, Una sottodisciplina dell'intelligenza artificiale, si affida a reti neurali artificiali per analizzare ed elaborare grandi volumi di dati. Questa tecnica consente alle macchine di apprendere modelli ed eseguire compiti complessi, come il riconoscimento vocale e la visione artificiale. La sua capacità di migliorare continuamente man mano che vengono forniti più dati lo rende uno strumento chiave in vari settori, dalla salute... "- Dave Waters quando
introduzione
entrando nel campo del Deep Learning e ti direi le tecnologie che devi imparare per ottenere una migliore comprensione del campo, per questo scopo, questo articolo non sarà troppo formale e tecnico, quindi puoi fare qualsiasi domanda nella sezione commenti, sarò molto felice di rispondere a loro.
In India, di 700 mille studenti laureati all'anno, e gli studenti che desiderano perseguire i propri sogni sul lato dello sviluppo dell'informatica devono scegliere un dominio, Il Deep Learning è uno di questi. UN misuraIl "misura" È un concetto fondamentale in diverse discipline, che si riferisce al processo di quantificazione delle caratteristiche o delle grandezze degli oggetti, fenomeni o situazioni. In matematica, Utilizzato per determinare le lunghezze, Aree e volumi, mentre nelle scienze sociali può riferirsi alla valutazione di variabili qualitative e quantitative. L'accuratezza della misurazione è fondamentale per ottenere risultati affidabili e validi in qualsiasi ricerca o applicazione pratica.... que las tecnologías crecen, interesse degli studenti per l'apprendimento automatico / aumenta anche il deep learning. Un grosso problema che tutti devono affrontare è che tutti sanno che c'è un buon campo d'azione nel campo dell'AI, ma quello che gli manca è da dove cominciare e in quale direzione dovrebbero concentrare le loro energie, testano una tecnologia e dopo pochi giorni , saltano sull'altro lasciando l'ultimo senza esercitarsi.
La maggior parte dei professionisti del deep learning teme che i grandi colossi della tecnologia stiano lavorando su alcuni algoritmi che automatizzeranno l'intero processo di deep learning e che non ci sarebbe nessun distacco come ingegnere del deep learning. Quindi mi permetta di confermare una cosa che non accadrà, non ora sono sicuro. L'automazione sta prendendo il sopravvento, ma c'è ancora molta strada da fare.
Se sai di essere bravo con i numeri e vuoi lavorare su alcune tecnologie entusiasmanti, Il Deep Learning è sicuramente per te, in questo tutorial ti dirò il percorso che puoi intraprendere per diventare un ingegnere di deep learning applicato di successo.
Cos'è l'apprendimento profondo??
Il deep learning è il sottoinsieme del machine learning che si occupa principalmente di reti neurali (NN). Fornisce soluzioni per quasi tutti i tipi di dati come le immagini, testo, Audio, eccetera. Le reti neurali tentano di imitare il cervello per produrre risultati nello stesso modo in cui fa la mente umana.. Conosci già questa parte della teoria, quindi fammi saltare direttamente alle cose su cui sei scettico. So che potresti avere dei dubbi sul fatto che tu abbia bisogno di un master o che tu debba essere di Harvard o del MIT per essere un buon candidato per il deep learning, lascia che ti risponda. Ci sono due ruoli nel Deep Learning, uno chiamato Deep Learning Researcher e uno chiamato Applied Deep Learning Engineer. Il primo si occupa di avere più statistiche e approfondimenti basati sulla matematica che possono aiutarti a comprendere i concetti di Deep Learning e alla fine portarti a scoprire nuovi algoritmi. / tecnologie, mentre l'altro si occupa di quanto già implementato dai ricercatori del Deep Learning che hanno appena utilizzato. quello e applicalo da qualche parte, dove posso ridurre lo sforzo umano.
Ora sai che se non appartieni a un'università di qualche livello 1, può ancora essere un ingegnere del deep learning, Quindi diamo un'occhiata a tutte le tecnologie di cui avrai bisogno per essere un ingegnere di deep learning di successo.
Riepilogo delle competenze necessarie:
Mentre si lavora sull'apprendimento automatico / Apprendimento profondo, non è che devi solo conoscere alcuni algoritmi e applicarli ai dati che otterrai. Si partirà dalla fase dei requisiti, vale a dire, individuerai prima il problema per il quale troverai la soluzione. Un'altra cosa importante è che non tutti i problemi richiedono soluzioni di Deep Learning., prova ad analizzare il problema e vedi se può essere risolto utilizzando algoritmi tradizionali, farà risparmiare molta energia e risorse, altrimenti, puoi scegliere una soluzione di deep learning.
1. Un linguaggio di programmazione adatto per AI / ML / DL
So che ti starai chiedendo perché te lo sto dicendo quando potresti già saperlo, ma scegliere il linguaggio di programmazione è il primo compito che ti mette nel percorso del deep learning. I linguaggi preferiti comuni per DL sono Python e R (personalmente uso Python).
Entrambe le lingue hanno le loro specialità, non è che quando ne usi uno puoi ignorare completamente l'altro, sapere entrambi è la ciliegina sulla torta. Quando inizi a imparare uno di questi linguaggi di programmazione, prova a concentrarti completamente su una lingua e una volta che l'hai padroneggiata, un altro sarà molto facile per te. Cerca di padroneggiare più librerie che puoi, una volta fatto questo, è molto facile per te lavorare su progetti del mondo reale.
Problemi affrontati:
Mentre chiunque inizia a imparare un linguaggio di programmazione, il problema principale che affronti è la conoscenza delle risorse che ridurranno il processo di apprendimento. Anche io ho riscontrato lo stesso problema mentre facevo lo stesso. Il modo in cui ho imparato il linguaggio Python è completare le lezioni primarie di learnpython.org e loro completando varie lezioni video di Udemy e Coursera. Un suggerimento importante che faresti sicuramente è di non guardare le lezioni video solo per ottenere certificati e goderti il tuo profilo collegato, guardali, ottieni informazioni che alla fine ti aiuteranno a essere uno sviluppatore migliore.
2. Fondamenti di calcolo e strutture dati
Conoscere gli algoritmi di Machine Learning / Il Deep Learning non basta, avrai anche bisogno della conoscenza delle abilità di ingegneria del software come le strutture dati, ciclo di vita dello sviluppo del software, Github, algoritmi (classificazione, ricerca e ottimizzazione).
Quando lavori a qualsiasi progetto nel mondo reale, il cliente non avrebbe bisogno di alcun modello di Machine Learning, ciò che richiederebbe è una soluzione sotto forma di servizio o applicazione per la quale è necessario avere una comprensione più profonda di questi concetti.
Problemi affrontati:
La maggior parte degli appassionati di data science pensa che se lavorerà nel campo dell'IA / ML / DL dovrà solo imparare un sacco di algoritmi che otterranno comunque in qualche pacchetto, e altri concetti non sono strutture dati spazialmente molto importanti. Quindi lascia che ti chiarisca una cosa quando lavori su qualsiasi progetto live in cui dovrai ottimizzare il tuo codice per essere più efficiente in termini di memoria e tempo., e ogni volta che si parla di efficienza, appare la struttura dei dati. Cosa c'è di più, quando si lavora su progetti live, deve lavorare sulle scadenze, in modo da consegnare i progetti ai clienti in tempo, deve avere una corretta comprensione di SDLC. Ho anche studiato questi concetti solo al college e quando lavoravo al POC (Dimostrazione dei concetti) inoltre non aveva una comprensione adeguata di questi concetti nel mondo reale, ma da quando ho fatto parte di alcuni progetti, questi concetti mi sono diventati chiari. , quindi se conosci questi concetti e hai paura di non sapere come applicarli nel mondo reale, non preoccuparti che imparerai solo quando farai parte di un progetto.
3. Matematica per l'apprendimento automatico
Se sei un ingegnere del software, può facilmente codificare qualsiasi soluzione, ma quando si tratta di machine learning, dovresti avere una comprensione dei concetti matematici e statistici che ti aiuteranno ad analizzare qualsiasi algoritmo e ad adattarlo in base alle tue esigenze.
Per lui addestramentoLa formazione è un processo sistematico volto a migliorare le competenze, conoscenze o abilità fisiche. Viene applicato in vari ambiti, come lo sport, Formazione e sviluppo professionale. Un programma di allenamento efficace include la pianificazione degli obiettivi, Pratica regolare e valutazione dei progressi. L'adattamento alle esigenze individuali e la motivazione sono fattori chiave per ottenere risultati di successo e sostenibili in qualsiasi disciplina.... y la inferencia también necesitará tener conocimiento de conceptos como Gradient Descent, Matrici della distanza, Significare, Mediana e modalità, eccetera.
Problemi affrontati:
Secondo me, Questa è la cosa importante che qualcuno deve imparare prima di entrare nel campo del Deep Learning. La maggior parte di noi pensa che quando la maggior parte degli algoritmi sono già implementati e li applicheremo a campi diversi, Perché imparare i concetti di matematica?? Quindi, come ho sperimentato ogni volta che vai a lavorare su qualsiasi algoritmo di Deep Learning, dovrai regolarlo in base al tuo caso d'uso e per questo, hai bisogno di questi concetti. Ho lavorato a vari progetti e, sinceramente, il 95% del tempo questi concetti mi sono stati utili per aggiustare l'algoritmo, l'altro 5% Ho usato gli algoritmi così com'è.
4. Servizi di distribuzione e tecnologia dell'interfaccia utente / interfaccia utente
Quando hai la tua soluzione di machine learning pronta, devi rappresentarlo agli altri sotto forma di alcuni grafici o visualizzazioni perché la persona a cui stai spiegando potrebbe non avere la conoscenza di questi algoritmi e ciò che vorrebbe è la soluzione funzionante per il tuo problema. . Quindi, ciò che può migliorare questo processo di sviluppo è la conoscenza di qualsiasi tecnologia di interfaccia utente come Django, pallone y, se richiesto, JavaScript, il tuo codice di apprendimento automatico sarebbe il backend, mentre creerai un frontend per lo stesso.
Una volta che la soluzione completa è pronta, devi implementare quella soluzione da qualche parte, quindi devi imparare tecnologie come Apache, Wamp, eccetera.
Problemi affrontati:
Questa tecnologia è essenziale per lavorare su progetti di Deep Learning, se fai parte di un'organizzazione molto grande, ci sono sviluppatori frontend e backend dedicati, quindi non preoccuparti se lavori solo nella parte di backend ma se fai parte di una piccola organizzazione. o una piccola squadra, probabilmente dovrai gestire sia lo sviluppo frontend che backend.
5. conoscenza delle piattaforme di Cloud Computing
Mentre avanziamo nella tecnologia, la quantità di dati sta aumentando enormemente, non puoi gestire quei dati sul tuo server locale, quindi dovrebbe passare alle tecnologie cloud. Queste piattaforme forniscono ottimi servizi dalla preparazione dei dati allo sviluppo del modello.
Alcune di queste piattaforme informatiche hanno alcune soluzioni basate sul Deep Learning che sono all'avanguardia. Le piattaforme più preferite sono AWS e Azure e puoi anche provare Google Cloud.
Queste sono le tecnologie che devi imparare lavorando come ingegnere del deep learning, Certo, può anche imparare altre tecnologie, ma questi sono gli elementi essenziali.
Problemi affrontati:
Lavorare nel cloud computing può essere difficile, poiché dovrai lavorare su questa tecnologia mentre lavori su altre 4 tecnologie, ma se sei interessato a imparare alcune cose aggiuntive, questo è sicuramente per Deep Learning Engineer.
Risorsa:
Puoi utilizzare le seguenti risorse per iniziare ad apprendere queste tecnologie:
Linguaggio di programmazione: https://www.learnpython.org/
Struttura dati: https://www.geeksforgeeks.org/data-structures/
Matematica per l'apprendimento automatico: https://www.coursera.org/specializations/mathematics-machine-learning
Tecnologie di frontend: https://www.djangoproject.com/start/, https://www.fullstackpython.com/flask.html
Tecnologie cloud: https://aws.amazon.com/getting-started/, https://docs.microsoft.com/en-us/learn/azure/
Grazie per aver letto questo articolo. Se hai imparato qualcosa di nuovo, sentiti libero di commentare, alla prossima volta! !!! ❤️
Il supporto mostrato in questo articolo non è di proprietà di DataPeaker e viene utilizzato a discrezione dell'autore.