Perché i modelli di Machine Learning sono chiamati scatole nere?


40

Stavo leggendo questo post del blog dal titolo: Il mondo finanziario vuole aprire le scatole nere di AI , in cui l'autore fa ripetutamente riferimento ai modelli ML come "scatole nere".

Una terminologia simile è stata utilizzata in diversi punti quando si fa riferimento ai modelli ML. Perché è così?

Non è che gli ingegneri ML non sappiano cosa succede all'interno di una rete neurale. Ogni layer viene selezionato dall'ingegnere ML che sa quale funzione di attivazione utilizzare, cosa fa quel tipo di layer, come viene propagato l'errore, ecc.


4
Qualcosa di un po 'sottile: l'ingegnere ML conosce tutta la struttura - quanti strati, le funzioni di attivazione, ecc. Ciò che non sanno sono i pesi stessi. Ma un modello ML è così determinato dai suoi pesi che la valutazione del modello con una serie specifica di pesi non può (attualmente) essere interpretata, spiegata o compresa dagli umani, nemmeno da esperti esperti che comprendono appieno la struttura.
isaacg,


3
@isaacg - Un ingegnere ML può facilmente scoprire quali sono i pesi. La scatola nera ha più a che fare con il non sapere perché i pesi sono ciò che sono e a cosa si riferiscono questi pesi nel mondo reale. Pertanto, è ancora più sottile.
Gios

Risposte:


51

La cosa della scatola nera non ha nulla a che fare con il livello di competenza del pubblico (purché il pubblico sia umano), ma con la spiegabilità della funzione modellata dall'algoritmo di machine learning.

Nella regressione logistica, esiste una relazione molto semplice tra input e output. A volte puoi capire perché un certo campione è stato catalogato in modo errato (ad es. Perché il valore di un determinato componente del vettore di input era troppo basso).

Lo stesso vale per gli alberi decisionali: è possibile seguire la logica applicata dall'albero e capire perché un determinato elemento è stato assegnato a una classe o all'altra.

Tuttavia, le reti neurali profonde sono l'esempio paradigmatico di algoritmi black box. Nessuno, nemmeno la persona più esperta al mondo, afferra la funzione che è in realtà modellata allenando una rete neurale. Un'intuizione su questo può essere fornita da esempi contraddittori : alcuni lievi (e impercettibili cambiamenti da parte di un essere umano) in un campione di addestramento possono indurre la rete a pensare che appartenga a un'etichetta totalmente diversa. Esistono alcune tecniche per creare esempi contraddittori e alcune tecniche per migliorare la loro resistenza. Ma dato che nessuno conosce effettivamente tutte le proprietà rilevanti della funzione modellata dalla rete, è sempre possibile trovare un modo nuovo di crearle.

Gli umani sono anche scatole nere e siamo anche sensibili agli esempi contraddittori .


2
La logica degli alberi delle decisioni potrebbe essere seguita in teoria , ma spesso non è pratica. Non vedo dove sia la differenza fondamentale con le NN.
Miguel,

A proposito, ho usato e visto la scatola nera usata in termini di mancanza di competenza / interesse nell'apprendimento anche delle basi dello strumento usato.
Miguel,

4
"Ma dato che nessuno conosce realmente la funzione modellata dalla rete". Questo è sbagliato / espresso male. Se non sapessimo esattamente quale funzione è stata modellata, non potremmo né addestrarli né usarli per la previsione. Sappiamo esattamente quale funzione è modellata. Non ne conosciamo (tutte) le proprietà rilevanti. E la funzione è complicata. Ma questa è un'affermazione molto diversa.
Martin Thoma,

1
@MartinThoma concordato e aggiornato.
ncasas,

1
(+1) Ma un nitpick. La regressione logistica non effettua assegnazioni di classe, cerca solo di stimare le probabilità condizionate. Idem con un albero di classificazione usato correttamente. Gli incarichi di classe sono imposti dagli umani che devono prendere decisioni, non dagli stessi algoritmi ML.
Matthew Drury,

18

Mentre sono d'accordo sulla risposta di ncasas nella maggior parte dei punti (+1), mi permetto di differire su alcuni:

  • Gli alberi decisionali possono essere utilizzati anche come modelli di scatole nere. In effetti, direi che nella maggior parte dei casi vengono utilizzati come modelli di scatola nera. Se hai 10.000 caratteristiche e un albero di profondità di 50 non puoi ragionevolmente aspettarti che un umano lo capisca.
  • Le reti neurali possono essere comprese. Esistono molte tecniche di analisi (vedere il capitolo 2.5 della mia tesi di laurea per alcune che mirano a migliorare il modello). Soprattutto analisi dell'occlusione (Figura 2.10), Visualizzazione del filtro (Figura 2.11). Anche perché dovrei fidarmi di te? carta (i miei appunti ).

Spiegare la previsione di un modello di scatola nera mediante un'analisi dell'occlusione fantasia (da "Perché dovrei fidarmi di te?"): inserisci qui la descrizione dell'immagine

Vorrei sottolineare The Mythos of Model Interpretability . Formula alcune idee sull'interpretazione in modo conciso.

La tua domanda

Perché i modelli di Machine Learning sono chiamati scatole nere?

Come le persone lo usano : perché non modellano il problema in un modo che consenta agli umani di dire direttamente cosa succede per ogni dato input.

Pensieri personali

Non credo che questa nozione di "modello di scatola nera" abbia molto senso. Ad esempio, pensa alle previsioni del tempo. Non puoi aspettarti che nessun essere umano dica quale tempo sarà previsto se gli vengono dati solo i dati. Eppure la maggior parte delle persone non direbbe che i modelli meteorologici fisici sono modelli a scatola nera. Allora, dov'è la differenza? È solo il fatto che un modello è stato generato utilizzando i dati e l'altro è stato generato utilizzando approfondimenti sulla fisica?

Quando le persone parlano di modelli di scatole nere di solito lo dicono come se fosse una brutta cosa. Ma anche gli umani sono modelli di scatole nere. La differenza fondamentale che vedo qui è che la classe di errori che gli umani commettono è più facile da prevedere per gli umani. Quindi è un problema di formazione (esempi avversi sul lato NN) e un problema di istruzione (insegnare agli umani come funzionano le NN).

Come dovrebbe essere usato il termine "modello scatola nera" : un approccio che per me ha più senso è definire il problema un "problema scatola nera", simile a quello che scrive user144410 (+1). Quindi qualsiasi modello che tratta il problema solo come una scatola nera - quindi qualcosa che puoi inserire e ottenere in uscita - è un modello di scatola nera. I modelli che hanno intuizioni (non solo assumono!) Sul problema non sono modelli in scatola nera. La parte dell'intuizione è complicata. Ogni modello pone delle restrizioni sulla possibile funzione che può modellare (sì, lo so del problema di approssimazione universale. Fintanto che usi un NN di dimensioni fisse non si applica). Direi che qualcosa è una visione del problema se sai qualcosa sulla relazione di input e output senza cercare il problema (senza guardare i dati).

Ciò che segue da questo:

  • Le reti neurali possono essere non-blackbox (whitebox?)
  • La regressione logistica può essere un modello a scatola nera.
  • Si tratta più del problema e delle tue intuizioni al riguardo, meno del modello.

1
Grazie. Le tue risposte sono sempre un piacere leggere :)
Dawny33

1
Prego :-) E grazie per le belle parole :-) Per favore, prendi la mia risposta alla tua domanda con un granello di sale. Non ne sono nemmeno sicuro. Non penso che ci sia una risposta definitiva perché le persone usano la parola senza avere una definizione per essa. Quindi, da un lato, l'uso tra le persone è probabilmente diverso e, dall'altro, anche una singola persona potrebbe non usarlo sempre allo stesso modo.
Martin Thoma,

7

Dipende dal modello interpretabilità e spiegabilità. Dato l'output di un modello più semplice, è possibile identificare esattamente come ciascun input contribuisce all'output del modello, ma ciò diventa più difficile man mano che i modelli diventano più complessi. Ad esempio con la regressione è possibile indicare i coefficienti, con un albero decisionale è possibile identificare le divisioni. E con queste informazioni, è possibile ricavare regole per spiegare il comportamento del modello.

Tuttavia, con l'aumentare del numero di parametri del modello, diventa sempre più difficile spiegare con esattezza quali combinazioni di input conducono all'output del modello finale o derivare regole dal comportamento del modello. Di 'nel settore finanziario quando arriva il COO e chiede' quindi, perché il tuo algo commerciale ad alta frequenza ha rotto l'economia ', non vuole sentire come è stato costruito, proprio perché lo ha fatto fallire. Sarà possibile indicare come è stato costruito il modello, ma potrebbe non essere possibile spiegare quali combinazioni di fattori che il modello ha ricevuto come input hanno portato all'output, ed è per questo che le persone parlano di scatole nere.


5

I modelli di scatole nere si riferiscono a tutti i modelli matematici le cui equazioni sono scelte per essere il più generale e flessibile possibile senza fare affidamento su leggi fisiche / scientifiche.

I modelli di scatole grigie sono modelli matematici in cui parte delle equazioni (funzione matematica) proviene da leggi fisiche note ma la parte rimanente è considerata funzione generale per compensare la parte inspiegabile.

I modelli a scatola bianca sono modelli matematici completamente basati su leggi fisiche e comprensione del sistema, come ad esempio le leggi sul movimento meccanico (modello di velivoli ecc.)

Vedi: https://en.wikipedia.org/wiki/Mathematical_model#A_priori_information


Definizione interessante! Facciamo alcuni esempi: regressione logistica, SVM, NN, alberi delle decioni sono tutti modelli di scatole nere. A seconda del contesto, i modelli bayesiani possono essere in tutte e tre le categorie. I modelli meteorologici sono modelli a scatola bianca o grigia.
Martin Thoma,

Non sono d'accordo con questa risposta. Stai facendo la distinzione tra modelli empirici e modelli basati sulla teoria fisica. Tuttavia, entrambi i tipi di modello possono essere box bianchi o neri a seconda di come sono confezionati.
Brian Borchers,

Il termine scatola nera si riferisce al sistema "vero" sottostante ed è correlato al problema di selezione della struttura del modello.
user144410

"Il termine moderno" scatola nera "sembra essere entrato in lingua inglese intorno al 1945. Nella teoria dei circuiti elettronici il processo di sintesi di rete da funzioni di trasferimento, che ha portato a considerare i circuiti elettronici come" scatole nere "caratterizzati dalla loro risposta ai segnali applicati ai loro porti, può essere rintracciato a Wilhelm Cauer che ha pubblicato le sue idee nella loro forma più sviluppata nel 1941 ... "Fonte: en.wikipedia.org/wiki/Black_box#History
user144410

4

Una scatola nera, come forse saprai, si riferisce a una funzione in cui conosci la firma degli ingressi e delle uscite, ma non puoi sapere come determina le uscite dagli ingressi.

In questo caso l'uso del termine è stato erroneamente formulato in modo errato. Può essere al di là della volontà o della capacità dello scrittore / autore di conoscere e comprendere i modelli ML, ma ciò non significa che sia al di là della volontà o delle capacità degli altri. Gli ingegneri che creano ogni modello ML sanno esattamente come funziona e possono tirare su l'albero delle decisioni a piacimento e percorrerlo. Solo perché qualcuno potrebbe essere troppo pigro o potrebbe volerci del tempo per farlo, ciò non significa che le informazioni non siano prontamente disponibili per il consumo.

I modelli ML non sono scatole nere, sono scatole trasparenti che sono semplicemente molto grandi.


3

Gli ingegneri ML non sanno cosa succede all'interno di una rete neurale

Mi dispiace contraddirti, ma è vero. Sanno come apprendono le reti neurali, ma non sanno cosa abbia appreso una determinata rete neurale. La logica appresa dalle reti neurali è notoriamente imperscrutabile.

Il punto di usare l'apprendimento automatico è di solito apprendere le regole che un programmatore o un esperto di dominio non penserebbe. Questo è intrinsecamente difficile da capire.

È analogo a un programma per computer convenzionale scritto con nomi di variabili di una lettera, nessun commento, nessuna struttura ovvia, che usa matematica oscura e tutto da qualcuno che ora è morto. Puoi esaminarlo in un debugger, ma è ancora tutt'altro che chiaro come funzioni.

Raramente, qualcuno si prende la briga di capire cosa fa una rete neurale. Ad esempio, l' algoritmo dei conflitti minimi è stato scoperto analizzando una rete neurale addestrata sul problema delle N-regine . Ma è un sacco di lavoro.


Lo stesso si potrebbe dire su alcuni metodi lineari, ad esempio PCA, solo la formula in DL è più complicata.
Miguel,

3

Nel post del blog citato nella domanda, la discussione riguarda il fatto che gli esperti che sviluppano modelli di machine learning in finanza non possono spiegare ai loro clienti (finanziatori senza formazione in machine learning) come il modello prende le decisioni che prende .

Ciò evidenzia una distinzione tra modelli che sono scatole nere a causa di informazioni che sono veramente segrete (ad esempio i coefficienti sono codificati in un FPGA a prova di manomissione) e modelli che sono aperti (nel senso che i coefficienti sono noti) ma non comprensibili a un pubblico particolare .

Quest'ultimo tipo di "scatola nera" è problematico perché i clienti vogliono rassicurarsi sul fatto che il modello che hai costruito abbia "validità faccia". Con altri tipi di modelli come la regressione logistica, è relativamente facile osservare i coefficienti e verificare che abbiano i segni più o meno attesi, anche un MBA matematicamente analfabeta può capirlo.


2

L'apprendimento automatico può essere giustamente considerato Black box, le soluzioni per il problema XOR che utilizzano le reti neurali possono essere modellate, ma con l'aumentare del numero di input, anche la complessità e le dimensioni. Se è troppo complesso per capire e spiegare, allora è una scatola nera, se possiamo o no calcolare i risultati

Possiamo percepirli solo fino a 3 dimensioni, ma questo è sufficiente perché possiamo estrapolarlo a dimensioni superiori utilizzando il modello 3d come punto di riferimento. Possiamo immaginare minimi locali, nonché parti di set di dati parzialmente appresi.

Ho giocato con l'idea per un po 'e quindi ho prodotto animazioni di reti neurali al lavoro e migliorato la mia comprensione delle reti neurali. Ho prodotto animazioni con 1 e 2 livelli nascosti (il 3 ° è fatto principalmente) e come apprendono i dati.

L'animazione è lenta e vale la pena guardare l'animazione in alto a destra che mostra gli strati superiori, puoi accelerare le animazioni su Youtube se vuoi, cambiamenti significativi possono essere visti nell'animazione in alto a destra con la maglia blu e rossa alle 3:20 arancione e Maglia rossa a 6 minuti e maglia blu, arancione e rossa alle 8:20. Le direzioni delle variazioni di peso sono ovviamente nell'animazione in basso a sinistra

https://www.youtube.com/watch?v=UhQJbFDtcoc


1

Penso che il concetto di scatola nera usato in questo modo abbia origine dai test della scatola nera nel controllo della qualità del software e dell'hardware. È quando si sceglie di non / o addirittura non si può guardare e vedere il funzionamento interno di ciò che si sta testando. Potrebbe essere per una ragione che sarebbe

  1. impraticabile o impossibile da sbirciare (è in un ambiente sigillato e semplicemente non possiamo esaminarlo) - Ma potrebbe anche essere

  2. perché c'è una maggiore possibilità di scrivere test scadenti se si vede l'interno. Maggiore rischio di (con o senza intenzione) "scrivere test progettati per passare".

Scrivere il test per adattarlo alla cosa che si sta testando, riducendo le possibilità di trovare effettivamente qualcosa.

Sarebbe perfettamente possibile per un abile ingegnere del segnale dare una sbirciatina al funzionamento interno di una rete neurale e verificare per quali caratteristiche vengono selezionate in una particolare sequenza di addestramento.


-1

I metodi della scatola nera sono difficili da spiegare ai "non iniziati". Chiunque in ambito finanziario o in altri campi può comprendere le basi della regressione o persino degli alberi decisionali. Inizia a parlare degli iperplani di macchine vettoriali di supporto e delle funzioni sigmoid della rete neurale e perderai la maggior parte del pubblico

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.