Algoritmo delle macchine di fattorizzazione - Amazon SageMaker

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Algoritmo delle macchine di fattorizzazione

L’algoritmo delle macchine di fattorizzazione è un algoritmo di apprendimento supervisionato a scopi generici che puoi utilizzare per le attività di classificazione e regressione. Si tratta di un'estensione di un modello lineare che è stato progettato per acquisire le interazioni tra le caratteristiche all'interno di set di dati a densità bassa altamente dimensionali. Ad esempio, in un sistema di stima dei clic, il modello della macchina di fattorizzazione è in grado di acquisire i modelli di percentuale dei clic osservati quando nelle pagine di una determinata categoria vengono aggiunti annunci pubblicitari di una data categoria. Le macchine di fattorizzazione sono un'ottima scelta per le attività che riguardano i set di dati a densità bassa altamente dimensionali, come stima dei clic e raccomandazione degli item.

Nota

L' SageMaker implementazione Amazon dell'algoritmo Factorization Machines considera solo le interazioni a coppie (secondo ordine) tra le funzionalità.

Interfaccia di input/output per l'algoritmo delle macchine di fattorizzazione

L'algoritmo delle macchine di fattorizzazione può essere eseguito in modalità di classificazione binaria o in modalità di regressione. In ogni modalità, insieme al set di dati del canale di addestramento puoi fornire un set di dati al canale di test. Il punteggio dipende dalla modalità utilizzata. Nella modalità di regressione, il set di dati di test viene valutato tramite l'RMSE (Root Mean Square Error, radice dell'errore quadratico medio). Nella modalità di classificazione binaria, il set di dati di test viene valutato tramite entropia incrociata binaria (perdita di log), accuratezza (soglia = 0,5) e punteggio F1 (soglia = 0,5).

Per l’addestramento, l'algoritmo delle macchine di fattorizzazione supporta solo il formato recordIO-protobuf con i tensori Float32. Poiché il loro caso d'uso è prevalentemente sui dati a densità bassa, CSV non rappresenta una buona scelta. È supportato l’addestramento in entrambe le modalità (File e Pipe) per il protobuf con wrapping di recordIO.

Per l'inferenza, l’algoritmo delle macchine di fattorizzazione supporta i formati application/json e x-recordio-protobuf.

  • Per il problema della classificazione binaria, l'algoritmo prevede un punteggio e un'etichetta. L'etichetta è un numero che può essere 0 o 1. Il punteggio è un numero che indica il grado di certezza con cui l'algoritmo ritiene che l'etichetta sia 1. L'algoritmo calcola prima il punteggio e poi ricava l'etichetta dal valore del punteggio. Se il punteggio è maggiore o uguale a 0,5, l'etichetta è 1.

  • Per il problema della regressione, viene restituito solo un punteggio e corrisponde al valore previsto. Ad esempio, se viene utilizzato Macchine di fattorizzazione per prevedere la classificazione dei film, il punteggio è il valore di classificazione previsto.

Consulta Notebooks di esempio delle macchine di fattorizzazione per maggiori dettagli sui formati dei file di addestramento e inferenza.

Raccomandazione istanza EC2 per l'algoritmo delle macchine di fattorizzazione

L'algoritmo Amazon SageMaker Factorization Machines è altamente scalabile e può essere addestrato su istanze distribuite. Ti consigliamo di eseguire l’addestramento e l'interferenza con istanze di CPU per entrambi i set di dati a densità bassa e alta. In alcuni casi, può risultare vantaggioso eseguire l’addestramento con una o più GPU su dati a densità alta. L’addestramento con le GPU è disponibile solo sui dati a densità alta, per i dati a densità bassa utilizza le istanze di CPU. L'algoritmo delle macchine di fattorizzazione supporta istanze P2, P3, G4dn e G5 per l'addestramento e l'inferenza.

Notebooks di esempio delle macchine di fattorizzazione

Per un taccuino di esempio che utilizza l'algoritmo SageMaker Factorization Machines per analizzare le immagini di cifre scritte a mano da zero a nove nel set di dati MNIST, consulta An Introduction to Factorization Machines with MNIST. Per istruzioni su come creare e accedere alle istanze del notebook Jupyter che è possibile utilizzare per eseguire l'esempio, vedere. SageMaker Istanze Amazon SageMaker Notebook Dopo aver creato un'istanza di notebook e averla aperta, seleziona la scheda SageMaker Esempi per visualizzare un elenco di tutti gli esempi. SageMaker I notebook di esempio utilizzano l’algoritmo delle macchine di fattorizzazione sono disponibili nella sezione Introduzione agli algoritmi di Amazon. Per aprire un notebook, fai clic sulla relativa scheda Use (Utilizza) e seleziona Create copy (Crea copia).