Ho pensato che potremmo essere in grado di compilare una descrizione Caffeina di alcuni metodi di esecuzione della classificazione di categorie .Classificazione di categorie multiple in Caffe
Per classificazione di più categorie, intendo: I dati di input contenenti rappresentazioni di più categorie di output del modello e/o semplicemente essere classificabili in più categorie di output del modello.
E.g. Un'immagine contenente un gatto & cane produrrebbe (idealmente) ~ 1 per entrambe le categorie di predizione cane gatto & e ~ 0 per tutti gli altri.
Sulla base di this paper, this stale and closed PR e this open PR, sembra caffe è perfettamente in grado di accettare le etichette. È corretto?
La costruzione di tale rete richiederebbe l'uso di più neuroni (prodotto interno -> relu -> prodotto interno) e strati di softmax come in page 13 of this paper; o il softmax ip di Caffe & supporta attualmente più dimensioni di etichetta?
Quando sto passando le mie etichette alla rete, che esempio potrebbe illustrare l'approccio corretto (se non entrambi) ?:
Ad es Cat eating apple Nota: sintassi Python, ma io uso il C++ source.
Colonna 0 - Classe in ingresso; Colonna 1 - Classe non è in ingresso
[[1,0], # Apple [0,1], # Baseball [1,0], # Cat [0,1]] # Dog
o
Colonna 0 - Class è in ingresso
[[1], # Apple [0], # Baseball [1], # Cat [0]] # Dog
Se qualcosa manca di chiarezza per favore fatemelo sapere e lo farò generare esempi pittorici delle domande che sto cercando di porre.
intendi un numero fisso di etichette per immagine o un numero diverso di etichette per ciascuna immagine? cioè, ti aspetteresti di ottenere sempre, diciamo, 2 etichette, o ti aspetteresti per alcune immagini 2 etichette e per altre ancora? – Shai
@Shai quest'ultimo sembra un problema davvero interessante! Ma nel mio caso le dimensioni dell'etichetta sarebbero state corrette. –