Il clustering è un compito di apprendimento non supervisionato che raggruppa un insieme di oggetti in modo che gli oggetti in un gruppo condividano più somiglianze tra di loro rispetto a quelli degli altri gruppi. È un compito ampiamente studiato poiché le sue applicazioni includono, ma non si limitano, all’uso nell’analisi e visualizzazione dei dati, rilevamento delle anomalie, analisi delle sequenze e elaborazione del linguaggio naturale.
Come altri metodi di apprendimento automatico, gli algoritmi di clustering si basano fortemente sulla scelta della rappresentazione delle caratteristiche. Nel nostro lavoro, miglioriamo la qualità della rappresentazione delle caratteristiche attraverso la disentanglement.
Definiamo la disentanglement come la distanza tra i punti dati appartenenti a classi diverse, rispetto ai punti dati appartenenti a classi simili. Questo è simile al modo in cui il termine menzionato in precedenza è stato trattato da Frosst et al. (2019). Pertanto, massimizzare la disentanglement durante l’apprendimento della rappresentazione significa che la distanza tra i punti dati appartenenti a classi simili viene minimizzata.
In questo modo, si preserverebbero le appartenenze alle classi degli esempi del dataset, ovvero come i punti dati risiedono nello spazio delle caratteristiche in funzione delle loro classi o etichette. Se le appartenenze alle classi vengono preservate, avremmo uno spazio di rappresentazione delle caratteristiche in cui un classificatore del vicinato più vicino o un algoritmo di clustering funzionerebbero bene.
Clustering
Il clustering è un compito di apprendimento automatico che trova il raggruppamento dei punti dati in cui i punti in un gruppo condividono più somiglianze tra di loro rispetto ai punti in un gruppo diverso.
Come altri algoritmi di apprendimento automatico, il successo degli algoritmi di clustering dipende dalla scelta della rappresentazione delle caratteristiche. Una rappresentazione può essere migliore di un’altra rispetto al dataset utilizzato. Tuttavia, nell’apprendimento profondo, questo non è il caso poiché le rappresentazioni delle caratteristiche vengono apprese come compito implicito di una rete neurale.
Non discuteremo in dettaglio questi lavori in questo articolo, ma l’idea fondamentale tra questi lavori è essenzialmente la stessa, ovvero apprendere contemporaneamente le rappresentazioni delle caratteristiche e gli assegnamenti dei cluster utilizzando una rete neurale profonda. Questo approccio è noto come clustering profondo.
Motivazione
Possiamo preservare le appartenenze alle classi dei punti dati nel dataset prima del clustering?
Anche se i metodi di clustering profondo imparano l’assegnazione dei clustering insieme alle rappresentazioni delle caratteristiche, ciò che non fanno esplicitamente è preservare la struttura del vicinato di classe dell’insieme di dati. Questo serve da motivazione per la nostra ricerca, ovvero se possiamo preservare la struttura del vicinato di classe dell’insieme di dati e quindi eseguire il clustering sulla rappresentazione appresa di una rete profonda.
Nel 2019 è stato proposto il metodo di clustering Not Too Deep o N2D, in cui è stata appresa una rappresentazione del codice latente di un insieme di dati, in cui si è in seguito cercato una varietà sottostante utilizzando tecniche come t-SNE, Isomap e UMAP. La varietà risultante è una rappresentazione adatta al clustering dell’insieme di dati. Quindi, dopo l’apprendimento della varietà, è stata utilizzata come caratteristica dell’insieme di dati per il clustering. Utilizzando questo approccio, è stato possibile ottenere una buona prestazione di clustering. L’approccio N2D è relativamente più semplice rispetto agli algoritmi di clustering profondo, e noi proponiamo un approccio simile.
Apprendimento delle Rappresentazioni Slegate
Utilizziamo anche una rete di autoencoder per apprendere la rappresentazione del codice latente di un insieme di dati, e quindi utilizziamo la rappresentazione per il clustering. Tracciamo la linea di differenza su come apprendiamo una rappresentazione più adatta al clustering. Invece di utilizzare tecniche di apprendimento della varietà, proponiamo di slegare le rappresentazioni apprese di una rete di autoencoder.
Per slegare le rappresentazioni apprese, utilizziamo la perdita del vicino più vicino morbido o SNNL che misura l’intreccio dei punti dati simili di classe. Ciò che fa questa funzione di perdita è ridurre al minimo le distanze tra i punti dati simili di classe in ogni livello nascosto di una rete neurale. Il lavoro di Frosst, Papernot e Hinton su questa funzione di perdita utilizza un valore di temperatura fisso indicato da T. Il fattore di temperatura determina come controllare l’importanza data alle distanze tra coppie di punti, ad esempio, a basse temperature, la perdita è dominata da distanze ridotte mentre le distanze effettive tra rappresentazioni ampiamente separate diventano meno rilevanti. Hanno utilizzato SNNL per compiti discriminativi e generativi nel loro articolo del 2019.
Nel nostro lavoro, abbiamo utilizzato SNNL per il clustering e introduciamo l’uso di una temperatura di annealing invece di una temperatura fissa. La nostra temperatura di annealing è una funzione inversa rispetto al numero di epoche di addestramento indicato da τ.