Sommario:
- Domande di intervista sull'apprendimento automatico
- Algoritmi
- Quadri e lingue
- Costruire reti neurali
- Valutazione dei modelli (prestazioni)
- Progetti
- Domande comportamentali
Domande di intervista sull'apprendimento automatico
Il colloquio per un ingegnere di machine learning sarà molto tecnico, ma è la tua occasione per mostrare cosa ti rende il miglior candidato.
Preparati con queste domande di intervista sull'intelligenza artificiale e sull'apprendimento automatico e su come rispondere.
Gli intervistatori possono anche utilizzare questo elenco per creare un'intervista che rivela le capacità dei candidati di machine learning. Imparerai le loro capacità tecniche e la loro capacità di pensare in modo critico.
Domande da aspettarsi in un colloquio di machine learning.
Flickr
Algoritmi
Preparati a mostrare la tua conoscenza degli algoritmi di apprendimento superficiale. A meno che tu non stia facendo domanda per una posizione rigorosa di Data Scientist, l'intervistatore non entrerà troppo nei dettagli con domande sugli algoritmi. Ma dovresti essere in grado di parlare degli input e di quali algoritmi sono meglio utilizzati per quale applicazione.
1. Quando useresti KNN (k vicini più vicini)?
KNN viene solitamente utilizzato per la classificazione. È uno degli algoritmi più semplici e utilizzati nell'apprendimento automatico.
La tua risposta potrebbe variare in base alla tua esperienza, ma considererei KNN nella maggior parte dei casi quando le classi e le funzionalità sono etichettate
2. Descrivi come funziona SVM (Support Vector Machine). Come puoi utilizzare SVM con dati non lineari?
SVM crea un iperpiano o limite decisionale per classificare i dati di input in base a quale lato del confine si trovano i nuovi dati. Sono ottimizzati aumentando il più possibile il margine tra il confine e i punti dati.
Ricorda che i kernel sono spesso impilati con SVM. I kernel trasformano i dati non lineari in dati lineari in modo che un SVM possa essere ottimizzato.
Quadri e lingue
L'intervistatore vorrà sapere quali lingue e framework hai utilizzato. Utilizzeranno anche queste domande per avere un'idea di quanto velocemente raccoglierai un nuovo framework e di quanto sei sintonizzato con quali framework sono disponibili per l'intelligenza artificiale.
3. Perché ti piace usare
Qualsiasi cosa sul tuo curriculum è un gioco leale. Soprattutto i linguaggi di programmazione che elenchi nelle tue abilità. Quindi preparati a parlare di tutti i dettagli.
Se la risposta veritiera è che hai usato quella lingua solo perché è quella che hanno usato nel tuo ultimo lavoro, va bene. Preparati a parlare dei vantaggi e degli svantaggi di un linguaggio da una prospettiva di apprendimento automatico.
4. Parlami della tua esperienza nell'utilizzo di
Se hai familiarità con il framework utilizzato dall'azienda, dovrebbe essere facile per te. Certamente, se li hai elencati nel tuo curriculum dovresti essere in grado di parlarne tutti.
Se non hai usato molto quel framework specifico, non è necessariamente un rompicapo. Qualsiasi ingegnere del software degno del suo sale dovrebbe essere in grado di adattarsi a un nuovo framework senza un'enorme curva di apprendimento. La descrizione del lavoro probabilmente elencherà alcune delle principali piattaforme utilizzate dall'azienda. Fai la tua ricerca su quelli prima dell'inizio dell'intervista.
Alcuni aspetti su cui concentrarsi durante la ricerca di un nuovo framework:
- Quali compiti gestisce meglio?
- Quali sono i punti di forza / di debolezza?
- Quali lingue si interfacciano bene con il framework?
Devi essere in grado di parlare in modo intelligente di quell'ambiente.
Se il framework è open source, provalo sul tuo personal computer. Ci sono anche alcune lezioni online convenienti che puoi seguire che ti daranno una licenza temporanea.
Costruire reti neurali
5. Cosa faresti se il tuo algoritmo non converge?
Questa è una domanda aperta che dovrebbe essere facile per chiunque lavori nel machine learning.
Diminuire il tasso di apprendimento (alfa) è un buon primo passo. In qualità di intervistatore, mi piacerebbe che il candidato descrivesse un approccio più logico per trovare l'alfa. Prova una gamma strategica di alfa e traccia la funzione di costo sul numero di iterazioni.
6. Quando useresti Discesa gradiente rispetto all'equazione normale?
Potresti chiedere i pro e i contro dei diversi metodi per ottimizzare un algoritmo.
Ricorda che l'equazione normale non può essere utilizzata con la classificazione, quindi questo confronto è importante solo per la regressione. L'equazione normale viene scelta quando il numero di elementi non è molto grande. Ha un vantaggio rispetto alla discesa del gradiente in quanto non è necessario scegliere un tasso di apprendimento o iterare.
Se ci sono molte caratteristiche, l'equazione normale è molto lenta, quindi sceglierei la discesa del gradiente.
Aspettati domande sulla costruzione di reti neurali in un'intervista per una posizione di machine learning o intelligenza artificiale.
WikimediaCommons
Valutazione dei modelli (prestazioni)
Uno dei compiti principali di un ingegnere di machine learning è ottimizzare una rete neurale e capire le sue prestazioni.
7. Perché l'overfitting è dannoso e come puoi risolverlo?
L'overfitting si verifica quando un algoritmo si adatta molto bene ai dati di addestramento ma prevede accuratamente nuove situazioni. Ovviamente questo è un male perché non è utile per le situazioni del mondo reale.
Descrivi alcuni modi in cui l'overfitting può essere migliorato. L'aggiunta di un termine di regolarizzazione e l'aumento di lambda possono avere buoni risultati. Diminuire il numero di elementi o ridurre l'ordine dei polinomi sono opzioni ma non sono le scelte giuste in ogni situazione.
8. Come fai a sapere se il tuo modello è buono?
Questo è simile alla domanda precedente in cui il candidato deve capire come valutare i modelli.
Puoi spiegare come i dati di allenamento disponibili sono suddivisi in dati di allenamento, dati di convalida e dati di test e per cosa vengono utilizzati. Vorrei sentire un candidato parlare della variazione del grado polinomiale e del lambda e del confronto dell'errore nei dati di convalida.
Progetti
Vieni al colloquio pronto a discutere dei progetti precedenti. Come in ogni intervista, qualsiasi cosa sul tuo curriculum è un gioco leale.
Tieni pronto un portfolio di progetti dal lavoro, dalla scuola o dal tuo uso personale. Potresti essere limitato in ciò che puoi dire da un accordo di non divulgazione o da un lavoro classificato, quindi sii chiaro su ciò di cui puoi discutere.
Ecco alcune domande che puoi aspettarti:
9. Qual è stato il tuo progetto di machine learning preferito su cui hai lavorato?
Per il bene di questa intervista potresti scegliere il progetto più pertinente per il lavoro come il tuo preferito. Questo ti darà la possibilità di evidenziare la tua esperienza rilevante.
Se preferisci parlare di quale era il tuo preferito per dare al responsabile delle assunzioni un'idea se ti piacerà la nuova posizione, anche questa è una buona idea.
10. Parlami di un problema difficile che hai risolto.
Scegli un problema che possa essere facilmente descritto. Parte del rispondere bene a questa domanda è mostrare che puoi descrivere problemi complessi di apprendimento automatico a un pubblico non tecnico.
Quando descrivi la tua soluzione non prendertene il merito a meno che non sia stato davvero tutto il tuo sforzo. Valorizzare i contributi della tua squadra dimostrerà che sei un buon giocatore di squadra. Se applicabile, evidenziare l'impatto di questo problema su cliente, pianificazione e budget. Mostra come i tuoi contributi aggiungono valore ai profitti, non solo al problema immediato.
Domande comportamentali
Non dimenticare che l'intervista molto probabilmente includerà domande comportamentali. E per molti ingegneri e data scientist questa è la parte più difficile! Passiamo così tanto tempo a prepararci per le domande tecniche che dimentichiamo che verranno valutate anche da come ci inseriremo nel team.
Le domande comportamentali più importanti sono riportate di seguito in modo da poterti preparare in anticipo. Per le domande che ti chiedono di descrivere un momento specifico, utilizza il modello STAR per delineare le tue risposte. Leggere