Apprendimento non supervisionato, supervisionato e semi-supervisionato


27

Nel contesto dell'apprendimento automatico, qual è la differenza tra

  • apprendimento senza supervisione
  • apprendimento supervisionato e
  • apprendimento semi-supervisionato?

E quali sono alcuni dei principali approcci algoritmici da considerare?


8
Innanzitutto, due righe dal wiki: "Nell'informatica, l'apprendimento semi supervisionato è una classe di tecniche di apprendimento automatico che fanno uso di dati etichettati e non etichettati per la formazione, in genere una piccola quantità di dati etichettati con una grande quantità di dati non etichettati. L'apprendimento semi-supervisionato rientra tra l'apprendimento senza supervisione (senza dati di formazione etichettati) e l'apprendimento supervisionato (con dati di formazione completamente etichettati). " Questo aiuta?

Cosa hai in mente con "Approcci algoritmici"? Ho dato alcuni esempi di domande nella mia risposta, è quello che stai cercando?
Peter Smit,

Risposte:


20

In generale, i problemi dell'apprendimento automatico possono essere considerati variazioni nella stima delle funzioni per classificazione, previsione o modellizzazione.

Nell'apprendimento supervisionato uno è dotato di input ( x1 , x2 , ...,) e output ( y1 , y2 , ...,) e sono sfidati a trovare una funzione che approssima questo comportamento in modo generalizzabile. L'output potrebbe essere un'etichetta di classe (in classificazione) o un numero reale (in regressione): si tratta della "supervisione" dell'apprendimento supervisionato.

Nel caso di apprendimento senza supervisione , nel caso di base, ricevi input x1 , x2 , ..., ma non vengono forniti output di destinazione, né ricompense dal suo ambiente. In base al problema (classificare o prevedere) e alla conoscenza di base dello spazio campionato, è possibile utilizzare vari metodi: stima della densità (stima di alcuni PDF sottostanti per la previsione), k-clustering di cluster (classificazione dei dati con valori reali senza etichetta), k- raggruppamento delle modalità (classificazione dei dati categorici senza etichetta), ecc.

L'apprendimento semi supervisionato comporta la stima delle funzioni su dati etichettati e non etichettati. Questo approccio è motivato dal fatto che i dati etichettati sono spesso costosi da generare, mentre i dati senza etichetta generalmente non lo sono. La sfida qui riguarda principalmente la questione tecnica di come trattare i dati mescolati in questo modo. Vedi questo sondaggio sulla letteratura di apprendimento semi-supervisionato per maggiori dettagli sui metodi di apprendimento semi-supervisionato.

Oltre a questo tipo di apprendimento, ce ne sono altri, come l' apprendimento per rinforzo in base al quale il metodo di apprendimento interagisce con il suo ambiente producendo azioni a1 , a2 ,. . .. che producono ricompense o punizioni r1 , r2 , ...


1
La tua risposta implica che l'apprendimento supervisionato è preferibile all'apprendimento semi-supervisionato, ove possibile. È corretto? In caso contrario, quando l'apprendimento semi-supervisionato potrebbe essere migliore?
naught101,

@ naught101 Come lo leggi dalla sua risposta? Sono d'accordo con quello che dice John, ma direi il contrario di quello che dici, vale a dire che l'apprendimento semi-supervisionato è preferibile all'apprendimento supervisionato, ove possibile. Cioè, se si dispone di alcuni dati etichettati e di alcuni dati senza etichetta (di solito molto più della quantità di dati etichettati), si farebbe meglio se si potesse utilizzare tutti i dati piuttosto che se si potesse utilizzare solo i dati etichettati. Il punto centrale dell'utilizzo dell'apprendimento semi-supervisionato è quello di superare le prestazioni ottenute mediante l'apprendimento supervisionato o l'apprendimento non supervisionato.
Ciao Arrivederci,

@HelloGoodbye: perché l'unico vantaggio specificato per l'apprendimento semi-supervisionato è che in alcuni casi è più economico, ma ha l'inconveniente aggiunto di essere più impegnativo. Mi sembra ragionevole che un apprendimento completamente supervisionato sia più facile e più accurato (a parità di tutte le altre cose), dato che vengono forniti più dati di verità fondamentali. Quindi stavo solo chiedendo esempi in cui, data la scelta tra i due, sarebbe stata preferita la semi supervisione. Il tuo commento ha un senso, ma c'è un caso in cui tutti i dati sono etichettati e preferisci comunque semi-supervisionato?
naught101

@ naught101 Immagino che se tutti i dati sono etichettati, non vinci molto usando l'apprendimento semi-supervisionato invece di usare l'apprendimento supervisionato normale. Quando hai molti dati senza etichetta e fai un apprendimento semi-supervisionato, il motivo principale per cui vedi prestazioni migliori è perché trasferisci l'apprendimento e sei in grado di trarre esperienza anche dai dati senza etichetta.
Ciao

@ naught101 Tuttavia, assegnando alla rete il compito di riprodurre i dati di input nel miglior modo possibile dai dati di output (ovvero implementando un codificatore automatico, che è una sorta di apprendimento non supervisionato), la rete è costretta ad apprendere buone rappresentazioni dei dati. Questo può agire come una sorta di regolarizzazione, che a sua volta può rivelarsi utile. Quindi potrebbe esserci una piccola vittoria nell'usare l'apprendimento semi-supervisionato invece del normale apprendimento supervisionato, anche se tutti i dati vengano etichettati. Quanto sia grande questo effetto, però, non lo so.
Ciao

13

Apprendimento senza supervisione

L'apprendimento non supervisionato si verifica quando non sono disponibili dati etichettati per la formazione. Esempi di questo sono spesso metodi di clustering.

Apprendimento supervisionato

In questo caso i dati di allenamento esistono al di fuori dei dati etichettati. Il problema che risolvi qui è spesso la previsione delle etichette per i punti dati senza etichetta.

Apprendimento semi supervisionato

In questo caso vengono utilizzati sia i dati etichettati che quelli senza etichetta. Questo ad esempio può essere utilizzato nelle reti di credenze profonde, in cui alcuni livelli apprendono la struttura dei dati (senza supervisione) e un livello viene utilizzato per effettuare la classificazione (addestrato con dati supervisionati)


7

Non penso che supervisionato / non supervisionato sia il modo migliore per pensarci. Per il data mining di base, è meglio pensare a cosa stai cercando di fare. Esistono quattro attività principali:

  1. predizione. se si prevede un numero reale, si chiama regressione. se si prevede un numero intero o una classe, si chiama classificazione.

  2. modellazione. la modellazione è la stessa della previsione, ma il modello è comprensibile per l'uomo. Le reti neurali e le macchine vettoriali di supporto funzionano alla grande, ma non producono modelli comprensibili [1]. gli alberi decisionali e la regressione lineare classica sono esempi di modelli di facile comprensione.

  3. somiglianza. se stai cercando di trovare gruppi naturali di attributi, si chiama analisi dei fattori. se stai cercando di trovare gruppi naturali di osservazioni, si chiama clustering.

  4. associazione. è molto simile alla correlazione, ma per enormi set di dati binari.

[1] Apparentemente Goldman Sachs ha creato tonnellate di grandi reti neurali per la previsione, ma poi nessuno le ha comprese, quindi hanno dovuto scrivere altri programmi per cercare di spiegare le reti neurali.


puoi fornire maggiori informazioni sulla storia di GS? (non so perché non posso commentare direttamente il tuo commento)
AA

non ricordo esattamente dove l'ho letto, ma ecco alcune altre informazioni su AI @ GS: hplusmagazine.com/2009/08/06/…
Neil McGuigan

Ho la sensazione che 1,2 descrivano l'apprendimento in un ambiente supervisionato e 3,4 risiedano in un ambiente non supervisionato. Inoltre: cosa succede se cerchi somiglianze per prevedere? È considerato un modello?
Tsjolder,
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.