Padronizzare i colloqui di lavoro NLP

'Standardize NLP job interviews'

Cos’è l’NLP e quali tipi di domande correlate all’NLP ci si può aspettare durante i colloqui di lavoro relativi all’NLP?

NLP non è qualcosa con cui tutti i data scientist necessariamente lavorano e sono tenuti a conoscere. Se lo sei o meno dipende dall’azienda che ti sta intervistando per una posizione di data science. Se non sei interessato a NLP, beh, dovrai sapere cos’è per poterlo evitare nella tua carriera, se nient’altro.

Nel caso in cui tu sia incuriosito da NLP e desideri imparare di più, ti sarà utile sapere quali domande potresti aspettarti durante un’intervista.

Cos’è NLP?

No, non è quell’approccio psicologico pseudoscientifico che ha guadagnato popolarità di recente. Lo chiamano Programmazione Neuro-Linguistica.

Il “nostro” NLP sta diventando sempre più popolare, ma si riferisce al Natural Language Processing.

Come Wikipedia mette bene in chiaro, un linguaggio naturale o un linguaggio ordinario è qualsiasi linguaggio che si è evoluto naturalmente negli esseri umani attraverso l’uso e la ripetizione senza pianificazione o premeditazione consapevole.

La parola chiave nella definizione sopra riportata è “umano”. In NLP, c’è una parola chiave aggiuntiva: computer. Da essa deriva la definizione che dice che NLP si occupa di insegnare ai computer come comprendere il linguaggio naturale. Poiché si tratta di un computer, questa comprensione significa elaborare e analizzare i dati del linguaggio naturale memorizzati in diversi formati di dati.

Per fare ciò, NLP combina conoscenze dall’intelligenza artificiale, dall’informatica e dalla linguistica.

Qual è l’uso di NLP?

NLP sta diventando una caratteristica della nostra vita quotidiana. Mentre scrivevo la frase precedente, Google Smart Compose ha suggerito la frase “vita quotidiana”. L’ho accettata. Perché era quello che volevo scrivere.

Questo è quindi uno dei suoi utilizzi: correzione automatica, completamento automatico e correzione ortografica. Il software NLP analizza il testo per errori grammaticali e di ortografia, li corregge o fornisce suggerimenti di correzione. Ci sono anche correttori ortografici che possono “capire” la sintassi, il contesto e il significato dell’intera frase. In base a ciò, suggeriscono correzioni o frasi meglio formulate in linea con l’obiettivo che si sta cercando di raggiungere con il proprio testo.

La traduzione linguistica è un altro utilizzo di NLP. Ogni volta che sei in un paese straniero, probabilmente utilizzi uno strumento di traduzione, come Google Translate. Inoltre, i traduttori sono sempre più utilizzati sui social media, come Facebook, Instagram e Youtube.

Riconoscere e generare il discorso è anche uno degli utilizzi di NLP. Pensate a Google Assistant, Windows Speech Recognition, Dragon, Siri, Alexa o Cortana; sembrano tutti capirti (più o meno) quando parli. In base a ciò che gli dici, eseguiranno un’azione specifica, come navigare in Internet, digitare le tue parole o riprodurre la tua canzone preferita. Alcuni di questi strumenti possono persino parlarti, cioè generare il discorso.

NLP può anche decifrare la “sensazione” del testo. In altre parole, possono rilevare il sentimento dietro il testo, non solo il significato letterale. Ciò significa capire le emozioni (felice, arrabbiato, turbato, neutro…), il sarcasmo, il doppio significato, le metafore e le espressioni all’interno di un contesto. Questo è chiamato analisi del sentimento. Pensate a capire i commenti sui social media e rimuovere quelli che violano i termini di servizio o ottenere la soddisfazione dei clienti analizzando i loro commenti e recensioni.

NLP è ampiamente utilizzato nel marketing online. Le parole chiave che cerchi vengono abbinati alle parole chiave delle aziende, dei loro prodotti e dei loro annunci. Quindi, quando inizi a vedere annunci per un prodotto che hai appena cercato su Google, non preoccuparti. Non sei pazzo; è il NLP e la pubblicità mirata al lavoro.

Cosa ha a che fare NLP con la data science?

I data scientist potrebbero non essere interessati ai linguaggi naturali di per sé. Aggiungendoci l’elaborazione informatica, dove i linguaggi naturali diventano dati, potresti attirare l’attenzione dei data scientist.

Forse non è sufficiente per far brillare gli occhi dei data scientist, ma questo potrebbe cambiare sapendo che l’apprendimento automatico (ML) si sovrappone e spesso viene utilizzato in NLP.

Dietro tutti gli utilizzi di NLP di cui sopra si cela di solito ML. E ML è indubbiamente un campo che è profondamente immerso nella data science.

Parlando di ML, di solito si fa una distinzione tra ML supervisionato e non supervisionato.

I modelli di ML supervisionati più comunemente usati in NLP sono:

  • Support-Vector Machines (SVMs)
  • Reti Bayesiane
  • Massima Entropia
  • Campos Casuali Condizionati
  • Reti Neurali

L’apprendimento non supervisionato non è così comune in NLP, ma comunque alcune delle tecniche vengono utilizzate:

  • Raggruppamento
  • Indicizzazione Semantica Latente (LSI)
  • Fattorizzazione di Matrici

Dietro ogni modello e algoritmo di ML, ci sono concetti di statistica sottostanti.

Queste due aree sono fortemente testate in tutte le aziende serie che cercano data scientist. Lo stesso vale per le aziende che si occupano di NLP.

Ciò che può essere specifico per NLP è una certa terminologia, che ci si aspetterà che conosciate.

Prendete tutto ciò che ho menzionato qui per formare la vostra preparazione all’intervista su tre argomenti principali.

Le Domande per un’intervista su NLP

Tutto il discorso precedente porta senza intoppi alle categorie di domande di intervista su NLP:

  1. Domande Generali e di Terminologia NLP
  2. Domande di Statistica
  3. Domande di Modellizzazione

“In questo articolo non tratterò le domande di codifica. È noto che i data scientist, in generale, devono essere abili programmatori, soprattutto in SQL e Python. Lo stesso vale per i data scientist che lavorano in NLP, quindi dovete essere pronti per la parte di codifica dell’intervista.”

1. Domande Generali e di Terminologia NLP

Queste domande di intervista su NLP riguardano la vostra conoscenza di cosa sia NLP, come funziona e i concetti tecnici specifici per NLP.

Questa è la conoscenza di data science meno ‘trasferibile’. In altre parole, se non avete ancora lavorato con NLP, la vostra conoscenza di data science precedente non vi aiuterebbe molto qui. Quindi, se non avete esperienza di lavoro con NLP, prendete queste domande molto seriamente e preparatele attentamente per l’intervista.

Ecco alcuni esempi di domande:

  1. Quali sono le fasi del ciclo di vita di un progetto di elaborazione del linguaggio naturale (NLP)?
  2. Quali sono alcune delle attività comuni di NLP?
  3. Qual è la differenza tra stemming e lemmatizzazione?
  4. Cosa si intende per estrazione di informazioni?
  5. Cosa si intende per analisi del sentiment in NLP?
  6. Elenca alcune librerie open-source per NLP.

2. Domande di Statistica

Le domande di statistica testano la vostra conoscenza dei concetti statistici che userete regolarmente come data scientist in generale e quando lavorate su progetti di NLP.

Ecco alcuni esempi:

  1. Statistiche bayesiane vs. frequentiste: Qual è la differenza tra le statistiche bayesiane e quelle frequentiste?
  2. Cosa sono i campi casuali di Markov nascosti?
  3. Coefficiente di correlazione di Pearson: Dimostra perché il coefficiente di correlazione di Pearson è compreso tra -1 e 1.
  4. Cosa si intende per perplessità in NLP?

3. Domande di Modellizzazione

La terza categoria di domande di intervista su NLP riguarda l’ML e i modelli in generale. Questo potrebbe riferirsi agli algoritmi di ML più comunemente usati in NLP (come sopra menzionato) e ad alcune altre tecniche e metodi specifici usati in NLP.

Ecco alcuni esempi:

  1. Quali sono le differenze tra GPT e GPT-2?
  2. Ti piace l’estrazione di caratteristiche o il fine-tuning? Come decidi? Useresti BERT come estrattore di caratteristiche o lo faresti il fine-tuning?
  3. Cosa si intende per modellizzazione del linguaggio mascherato?
  4. PCA e LDA/QDA: Qual è la relazione tra PCA e LDA/QDA?
  5. Classificatore Naive Bayes: Cosa c’è di “naive” in un classificatore Naive Bayes?

Sommario

Il processing del linguaggio naturale è un campo che viene sempre più utilizzato nella vita quotidiana. Gli usi attuali includono correttori ortografici, strumenti di autocompletamento, traduttori, riconoscimento e generazione del linguaggio parlato. NLP è anche ampiamente utilizzato nel monitoraggio dei social media e nel marketing online.

NLP si sovrappone all’apprendimento automatico, quindi molte conoscenze di ML si applicano anche a NLP. Ma non essere troppo compiaciuto! NLP è un campo vasto e specifico che richiede la conoscenza di termini, tecniche e metodi molto specifici comunemente utilizzati.

In generale, i tipi di domande di intervista possono essere divisi in domande generali su NLP, domande statistiche e domande di modellizzazione.

Gli esempi e le risorse che ti ho fornito sopra sono solo l’inizio. Ma anche quelli sono sufficienti per assicurarti di andare ad un colloquio di lavoro NLP senza paura.

Nate Rosidi è un data scientist e in strategia del prodotto. È anche un professore aggiunto che insegna analytics ed è il fondatore di StrataScratch, una piattaforma che aiuta i data scientist a prepararsi per i loro colloqui con domande di intervista reali dalle migliori aziende. Connettiti con lui su Twitter: StrataScratch o LinkedIn.