Altoparlante
|
Trascrizione
|
| Michele Crotti |
Ciao. Grazie per esserti sintonizzato |
| |
il nostro discorso sull'aggiunta di classificazione sbilanciata che consente di confrontare tecniche e modelli di campionamento in JMP Pro. |
| |
Sono Michael Crotty. Sono uno di questi scrittori statistici nel team di documentazione di JMP e il mio co-presentatore oggi è Colleen McKendry, anche lei nel team di stat doc. E questo è un lavoro su cui abbiamo collaborato con Marie Gaudard. |
| |
Quindi ecco un breve riassunto del nostro discorso di oggi. Esamineremo lo scopo dell'aggiunta che abbiamo creato, alcuni retroscena sul problema della classificazione squilibrata e come si ottiene un modello di classificazione in tale situazione. |
| |
Esamineremo alcuni metodi di campionamento che abbiamo incluso nel componente aggiuntivo e che sono popolari per il problema della classificazione sbilanciata. |
| |
Esamineremo le opzioni disponibili nel componente aggiuntivo |
| |
e parleremo di come ottenere il componente aggiuntivo, quindi Colleen mostrerà un esempio e una demo del componente aggiuntivo. |
| |
Nelle diapositive disponibili nella Community sono presenti anche riferimenti e un'appendice con ulteriori informazioni di base. |
| |
Quindi lo scopo del nostro componente aggiuntivo, il componente aggiuntivo per la classificazione sbilanciata, consente di applicare una varietà di tecniche di campionamento progettate per dati sbilanciati. |
| |
È possibile confrontare i risultati dell'applicazione di queste tecniche, insieme a vari modelli predittivi disponibili in JMP Pro. |
| |
E puoi confrontare questi modelli e gli adattamenti della tecnica di campionamento utilizzando le curve di richiamo di precisione, le curve ROC e le curve dei guadagni, oltre ad altre misure. |
| |
Ciò consente di scegliere una soglia per la classificazione utilizzando le curve. |
| |
E puoi anche applicare le tecniche di campionamento Tomek, SMOTE e SMOTE plus Tomek direttamente ai tuoi dati, il che ti consente di utilizzare le piattaforme JMP esistenti e |
| |
su quei dati appena campionati e perfezionare le opzioni di modellazione, se non ti piacciono le opzioni del metodo per lo più predefinite che abbiamo scelto. |
| |
E solo una nota, le tecniche di campionamento Tomek, SMOTE e SMOTE plus Tomek possono essere utilizzate con variabili predittive nominali e ordinali, nonché continue. |
| |
Quindi alcuni retroscena sul problema dei dati sbilanciati. |
| |
Quindi, in generale, potresti avere una risposta multinomiale, ma ci concentreremo sul fatto che la variabile di risposta è binaria, e il punto chiave è che il numero di osservazioni a un livello di risposta è molto maggiore del numero di osservazioni avuto all'altro livello di risposta. |
| |
E chiameremo questi livelli di risposta rispettivamente livelli di classe di maggioranza e di minoranza. Quindi il livello di minoranza, il più delle volte, è il livello di interesse che sei interessato a prevedere e rilevare. Potrebbe essere come rilevare una frode o la presenza di una malattia o di un rischio di credito. |
| |
E vogliamo prevedere l'appartenenza alla classe in base alle variabili di regressione. |
| |
Quindi, per fare ciò, abbiamo sviluppato un modello predittivo che assegna le probabilità di appartenenza alla classe di minoranza e quindi scegliamo un valore soglia che ottimizzi |
| |
vari criteri. Questo potrebbe essere il tasso di classificazione errata, il tasso di veri positivi, il tasso di falsi positivi, lo chiami. E poi classifichiamo un'osservazione, chi è nella classe di minoranza, se la probabilità prevista di appartenenza alla classe di minoranza supera il valore soglia scelto. |
| |
Allora come otteniamo un modello di classificazione? |
| |
Abbiamo molte piattaforme diverse in JMP che possono fare una previsione per una variabile binaria, un risultato binario |
| |
in presenza di variabili di regressione, e abbiamo bisogno di un modo per confrontare quei modelli. Bene, ci sono alcune misure tradizionali, come l'accuratezza della classificazione, non sono poi così appropriate per dati squilibrati. E proprio come esempio estremo, potresti considerare il caso di una classe di minoranza del 2%. |
| |
Potrei darti una precisione del 98%, semplicemente classificando tutte le osservazioni come casi di maggioranza. Ora questo non sarebbe un modello utile e non vorresti usarlo, |
| |
perché non stai prevedendo ... non stai prevedendo correttamente nessuno dei tuoi casi target per i casi di minoranza ma solo l'accuratezza complessiva, saresti al 98%, il che suona abbastanza bene. |
| |
Quindi questo ha portato le persone a esplorare altri modi per misurare l'accuratezza della classificazione in un modello di classificazione squilibrato. Uno di questi è la curva di richiamo di precisione. |
| |
Vengono spesso utilizzati con dati sbilanciati e tracciano il valore predittivo positivo o la precisione rispetto al vero tasso di richiamo positivo. |
| |
E poiché la precisione tiene conto delle istanze di maggioranza, la curva PR è più sensibile allo squilibrio di classe rispetto a una curva ROC. |
| |
Pertanto, una curva PR è maggiormente in grado di evidenziare le differenze nei modelli per i dati sbilanciati. Quindi la curva PR è ciò che appare per primo nel nostro rapporto per il nostro componente aggiuntivo. |
| |
Un altro modo per gestire i dati di classificazione sbilanciati consiste nell'utilizzare metodi di campionamento che aiutano a modellare la classe di minoranza. |
| |
E in generale, questi sono solo modi diversi per imporre un maggiore equilibrio nella distribuzione della risposta e, a sua volta, ciò aiuta a delineare meglio i confini tra le osservazioni di classe maggioritaria e minoritaria. Quindi nel nostro componente aggiuntivo abbiamo sette diverse tecniche di campionamento. |
| |
Non parleremo troppo dei primi quattro e ci concentreremo sugli ultimi tre, ma molto rapidamente, nessuna ponderazione significa quello che sembra. Non faremo niente... non faremo nessun cambiamento e basta |
| |
essenzialmente lì per fornire una linea di base a ciò che faresti se non facessi alcun tipo di metodo di campionamento per tenere conto dello squilibrio. |
| |
La ponderazione sovrappeserà i casi di minoranza in modo che la somma dei pesi della classe di maggioranza e della classe di minoranza sia la stessa. |
| |
Il sottocampionamento casuale escluderà casualmente i casi di maggioranza per arrivare a un caso bilanciato e il sovracampionamento casuale si replicherà casualmente |
| |
casi di minoranza per raggiungere uno stato di equilibrio. |
| |
E poi parleremo di più dei prossimi tre metodi più avanzati nelle diapositive seguenti. |
| |
Quindi il primo dei metodi avanzati è SMOTE, che sta per tecnica di oversampling di minoranza sintetica. |
| |
E questa è fondamentalmente una forma più sofisticata di sovracampionamento, perché stiamo aggiungendo più casi di minoranza ai nostri dati. |
| |
Lo facciamo generando nuove osservazioni che sono simili alle osservazioni della classe di minoranza esistenti, ma non le stiamo semplicemente replicando come nel sovracampionamento. |
| |
Quindi usiamo la funzione di distanza di Gower ed eseguiamo K vicini più vicini su ogni osservazione di classe di minoranza e quindi vengono generate osservazioni per riempire lo spazio definito da quei vicini. |
| |
E in questo grafico, puoi vedere se abbiamo questo caso di minoranza qui in rosso. Abbiamo scelto i tre vicini più prossimi. |
| |
E ne sceglieremo uno a caso. Capita che sia questo quaggiù, e poi generiamo un caso, un altro caso di minoranza che si trova da qualche parte in questa piccola scatola ombreggiata. E questo è in due dimensioni. Se tu avessi |
| |
n dimensioni dei tuoi predittori, allora quell'area ombreggiata sarebbe uno spazio n dimensionale. |
| |
Ma una cosa fondamentale da sottolineare è che puoi scegliere il numero di vicini più vicini che tu |
| |
scegli casualmente tra, e puoi anche scegliere quante volte lo eseguirai |
| |
questo algoritmo per caso di minoranza. |
| |
Il prossimo metodo di campionamento sono i collegamenti Tomek. E quello che fa questo metodo è cercare di definire meglio il confine tra le classi minoritarie e maggioritarie. Per fare ciò, rimuove le osservazioni dalla classe maggioritaria che sono vicine alle osservazioni della classe minoritaria. |
| |
Ancora una volta, usiamo la distanza di Gower per trovare i collegamenti Tomek e il collegamento Tomek è una coppia di vicini più vicini che rientrano in classi diverse. Quindi una maggioranza e una minoranza che sono vicinissime l'una all'altra. |
| |
E per ridurre la sovrapposizione di queste istanze, è possibile rimuovere uno o entrambi i membri della coppia. Nell'opzione principale del nostro componente aggiuntivo, l'opzione di valutazione dei modelli, rimuoviamo solo l'istanza di maggioranza. Tuttavia, nell'opzione Tomek, puoi utilizzare entrambe le forme di rimozione. |
| |
E infine, l'ultimo metodo di campionamento è SMOTE plus Tomek. Questo combina i due metodi di campionamento precedenti. |
| |
E il modo in cui li combina è che applica questo algoritmo di modalità per generare nuove osservazioni di minoranza e poi una volta che hai i tuoi dati originali, oltre a un mucchio di nuovi casi di minoranza generati, |
| |
tt si applica all'algoritmo Tomek per trovare coppie di vicini più vicini che rientrano in classi diverse. E in questo metodo vengono rimosse entrambe le osservazioni nella coppia Tomek. |
| |
Quindi il componente aggiuntivo di classificazione sbilanciato ha quattro opzioni quando lo installi che vengono visualizzate tutte come voci di sottomenu nel menu dei componenti aggiuntivi. |
| |
La prima è l'opzione di valutazione dei modelli, che consente di adattare una varietà di modelli utilizzando una varietà di tecniche di campionamento. I prossimi tre sono solo dialoghi autonomi per eseguire solo quelle tre tecniche di campionamento di cui abbiamo appena parlato. |
| |
Pertanto, nell'opzione di valutazione dei modelli del componente aggiuntivo, fornisce un rapporto di classificazione sbilanciato che facilita il confronto delle combinazioni di tecniche di campionamento e modello. |
| |
Mostra la curva PR e le curve ROC, così come le curve Guadagno, e per le curve PR e ROC, mostra l'area sotto la curva, che generalmente, maggiore è l'area sotto ciascuna di queste curve, migliore è l'adattamento di un modello . |
| |
Fornisce il grafico delle probabilità previste per classe che ti aiuta a ottenere un'immagine di come ogni modello si adatta. |
| |
E fornisce anche una tabella di dati di tecniche e soglie, e quella tabella contiene uno script che consente di riprodurre il rapporto |
| |
che viene prodotto la prima volta che si esegue il componente aggiuntivo. E vogliamo sottolineare che se esegui questo e vuoi salvare i tuoi risultati senza riscrivere l'intero |
| |
algoritmo dei metodi di modellazione e campionamento, è possibile salvare questa tabella delle tecniche e delle soglie e ciò consentirà di salvare i risultati e riprodurre il rapporto. |
| |
Quindi ora esamineremo il dialogo per l'opzione dei modelli di valutazione. Consente di scegliere tra una serie di modelli e tecniche di campionamento. |
| |
Puoi inserire qual è la tua variabile di classe binaria e tutti i tuoi predittori X, e poi |
| |
noi, al fine di adattare tutti i modelli e e |
| |
valutarli su un set di test, dividiamo casualmente i dati in set di test e validazione dell'addestramento. Puoi rinunciare ... puoi impostare le proporzioni che andranno in ciascuno di questi set. |
| |
C'è un'opzione seme casuale se desideri riprodurre i risultati. E poi ci sono le opzioni SMOTE |
| |
a cui ho accennato prima, dove puoi scegliere il numero di vicini più vicini, da cui ne selezioni uno per essere il vicino più vicino utilizzato per generare un nuovo caso, e la replica di ogni caso di minoranza è quante volte ripeti l'algoritmo per ogni minoranza osservazione. |
| |
Ancora una volta, ci sono altre tre opzioni di campionamento |
| |
opzioni nel componente aggiuntivo e quelle corrispondono a Tomek, SMOTE e SMOTE plus Tomek. Nell'opzione di campionamento Tomek, aggiungerà due colonne alla tabella dei dati che possono essere utilizzate come pesi per la previsione... per qualsiasi modello predittivo che si desidera eseguire. |
| |
La prima colonna rimuove solo il vicino più vicino di maggioranza nel collegamento e l'altra rimuove entrambi i membri del collegamento Tomek, quindi hai questa opzione. |
| |
Le osservazioni SMOTE aggiungeranno osservazioni sintetiche alla tabella dei dati. |
| |
E fornirà anche una colonna di origine in modo che tu possa identificare quale |
| |
sono state aggiunte osservazioni. E SMOTE più Tomek aggiungono osservazioni sintetiche e la colonna di ponderazione che rimuove entrambi i membri del collegamento Tomek. |
| |
E la colonna di ponderazione del campionamento Tomek e SMOTE più Tomek, |
| |
è solo una colonna indicatrice che puoi utilizzare come peso in una piattaforma di modellazione JMP. È solo un 1 se è incluso e uno 0 se deve essere escluso. |
| |
La maggior parte delle altre tre finestre di dialogo delle opzioni di campionamento hanno sostanzialmente lo stesso aspetto. |
| |
Un'opzione che è su di loro e non sulla finestra di dialogo delle opzioni di valutazione dei modelli è mostra le tabelle intermedie. Questa opzione viene visualizzata per SMOTE e SMOTE plus Tomek. |
| |
E fondamentalmente, ti permette di vedere le tabelle di dati che sono state utilizzate nella costruzione delle osservazioni SMOTE. In generale, non è necessario vederlo, ma se vuoi capire meglio come vengono generate queste osservazioni, puoi dare un'occhiata a quelle tabelle intermedie. |
| |
E sono tutti spiegati nella documentazione. |
| |
Ancora una volta, puoi ottenere il componente aggiuntivo tramite la Community, |
| |
attraverso questo la pagina per questo discorso sul Discovery Summit Americas 2020 |
| |
parte della Comunità. E come ho detto solo un secondo fa, c'è la documentazione disponibile all'interno del componente aggiuntivo. Basta fare clic sul pulsante Aiuto. |
| |
E ora è il momento per Colleen di mostrare un esempio in una demo del componente aggiuntivo. |
| Colleen McKendry |
Grazie Michele. Ora farò una demo del componente aggiuntivo e per fare la demo userò questi dati demo mammografici. |
| |
E così il set di dati mammografici si basa su una serie di mammografie su pellicola digitalizzate utilizzate in uno studio sulle microcalcificazioni nelle immagini mammografiche. |
| |
E in questi dati, ogni record è classificato come 1 o 0. 1 rappresenta che c'è calcificazione vista nell'immagine, e uno 0 rappresenta che non c'è. |
| |
In questo set di dati, le immagini in cui vedi la calcificazione, quelle sono quelle che ti interessa prevedere e quindi il livello di classe è il livello di classe che ti interessa. |
| |
Nel set di dati completo, ci sono sei predittori continui e circa 11.000 osservazioni. |
| |
Ma per ridurre il tempo di esecuzione in questa demo, utilizzeremo solo un sottoinsieme del set di dati completo. E quindi sarà circa la metà delle osservazioni. Quindi circa 5500 osservazioni. |
| |
E le osservazioni classificate come 1, le cose che ti interessano, rappresentano circa il 2,31% delle osservazioni totali, sia nel set di dati completo che nel set di dati demo che stiamo usando. E così abbiamo una percentuale di minoranza di circa il 2%. |
| |
E ora passerò a JMP |
| |
A |
| |
Quindi ho i dati dimostrativi della mammografia. |
| |
E stiamo per aprire e ho già installato il componente aggiuntivo. Quindi ho aggiunto la classificazione sbilanciata nel mio menu a discesa e userò l'opzione di valutazione dei modelli. |
| |
E quindi qui abbiamo la finestra di lancio, e specificheremo la variabile di classe binaria, le tue variabili predittive, selezioneremo tutti i modelli e tutte le tecniche e specificheremo |
| |
un seme casuale |
| |
E fai clic su OK. |
| |
E così mentre questo è in esecuzione, spiegherò cosa sta realmente accadendo in background. Quindi la prima cosa che fa il componente aggiuntivo è dividere la tabella dei dati in un set di dati di addestramento e un set di dati di test. |
| |
E così hai due tabelle di dati separate e quindi all'interno della tabella dei dati di addestramento quelle osservazioni vengono ulteriormente suddivise in osservazioni di addestramento e convalida e la convalida viene utilizzata nell'adattamento del modello. |
| |
Quindi, una volta che hai questi due set di dati, |
| |
ci sono variabili indicatore...colonne indicatore che vengono aggiunte alla tabella dei dati di addestramento per ciascuna delle tecniche di campionamento specificate, ad eccezione di quelle che coinvolgono SMOTE. |
| |
E quindi quelle colonne vengono aggiunte e utilizzate come colonne di ponderazione e specificano semplicemente se l'osservazione deve essere inclusa o meno nell'analisi. |
| |
Se specifichi una tecnica di campionamento con SMOTE, vengono aggiunte ulteriori righe alla tabella di dati. Quelle sono le osservazioni generate. |
| |
Quindi, una volta che le tue colonne e le tue righe sono state generate, per ogni modello, ogni modello è adatto a ogni tecnica di campionamento. E così se li selezioni tutti |
| |
come abbiamo appena fatto qui, ci sono un totale di 42 diversi modelli adatti. E quindi, questo è tutto ciò che sta accadendo in questo momento. In |
| |
Nella demo attuale, abbiamo 42 modelli in forma e una volta che i modelli sono in forma, le informazioni pertinenti vengono raccolte e messe insieme in un rapporto sui risultati. E quel rapporto, |
| |
che si spera venga presto visualizzato, eccolo qui, quel rapporto è mostrato qui. E ottieni anche una tabella delle tecniche e delle soglie e una tabella di riepilogo. |
| |
E quindi daremo un'occhiata a ciò che ottieni quando esegui il componente aggiuntivo. Quindi prima abbiamo il set di allenamento. E puoi vedere che qui ci sono le colonne di peso, le colonne di peso che vengono aggiunte. E queste sono le colonne che vengono aggiunte per le probabilità previste per quelle osservazioni. |
| |
Quindi abbiamo il set di test. Questo non contiene nessuna di quelle colonne di ponderazione, ma ha le probabilità previste per le osservazioni del set di test. |
| |
Abbiamo il rapporto sui risultati |
| |
e la tabella dei dati delle tecniche e delle soglie. E così Michael ne ha parlato |
| |
il discorso precedente, ma questo è importante perché questa è la cosa che vorresti salvare se vuoi salvare i tuoi risultati e visualizzarli di nuovo |
| |
senza dover eseguire nuovamente l'intero script. E quindi questa tabella di dati è ciò che salveresti e contiene script che verranno riprodotti |
| |
il report dei risultati e la tabella riassuntiva, che è l'ultima cosa che devo mostrare. E quindi questo contiene solo riepiloghi per ogni tecnica di campionamento e combinazione di modelli e i loro valori AUC. |
| |
Quindi ora per guardare la finestra dei risultati effettivi, in alto abbiamo le specifiche del dialogo. E quindi questo contiene le informazioni che hai specificato nella finestra di avvio. |
| |
Quindi, se dimentichi qualcosa che hai specificato, come il tuo seme casuale o le proporzioni che assegni, puoi semplicemente aprirlo e dare un'occhiata. |
| |
E abbiamo anche la distribuzione binaria delle classi. Quindi, la distribuzione della variabile di classe tra l'addestramento e il set di test. E questo è progettato in modo che la proporzione sia la stessa, che in questo caso è 2,3. |
| |
E poi abbiamo anche la soglia mancante. Quindi questo non è molto importante, ma dà solo |
| |
un'indicazione di se un valore della variabile di classe ha un valore di previsione mancante, allora questo è mostrato qui. |
| |
Per i risultati effettivi, abbiamo questi grafici a schede. E così abbiamo le curve di richiamo di precisione, le curve ROC e le curve dei guadagni cumulativi. E per le curve PR e le curve ROC, abbiamo anche i corrispondenti valori AUC. |
| |
Abbiamo anche questi grafici delle probabilità previste per classe. E quelli sono più utili quando ne visualizzi solo alcuni alla volta, cosa che faremo in seguito. |
| |
E poi abbiamo un filtro dati che collega insieme tutti questi grafici e risultati. |
| |
Quindi per i nostri risultati effettivi per l'analisi, possiamo dare un'occhiata ora. Quindi prima li seleziono. |
| |
Quindi puoi già vedere che la curva ROC e la curva PR, c'è molta più differenziazione tra le curve nella curva PR che nella curva ROC. |
| |
E se selezioniamo i primi, diciamo, cinque, questi hanno tutti un AUC di 0,97. |
| |
E puoi vedere che sono tutti molto vicini l'uno all'altro. Sono praticamente uno sopra l'altro. Sarebbe davvero difficile determinare quale modello sia effettivamente migliore, quale dovresti scegliere |
| |
Ed è qui che, in particolare con dati sbilanciati, le curve di richiamo di precisione sono davvero importanti. Quindi, se torniamo indietro, possiamo vedere che questi modelli che avevano i valori AUC più alti per le curve ROC, |
| |
sono davvero sparsi nella curva di richiamo di precisione. E in realtà non lo sono... non hanno i valori AUC più alti per la curva PR. |
| |
Quindi forse quello lì... forse c'è un modello migliore che possiamo scegliere. |
| |
Quindi ora guarderò e mi concentrerò sui primi due, che sono l'albero potenziato Tomek e SVM Tomek, e lo farò usando il filtro dati. |
| |
E poi vogliamo solo guardare quelli che mostreranno e includeranno. |
| |
Quindi ora abbiamo le curve solo per questi due modelli e la curva blu è l'albero potenziato e la curva rossa è SVM. |
| |
E quindi puoi vedere in queste curve che si sovrappongono l'una all'altra su diversi valori del tasso di veri positivi. E quindi potresti usare queste curve |
| |
per scegliere quale modello si desidera utilizzare nella propria analisi, basandosi forse su quale sarebbe un tasso di vero positivo accettabile. Quindi possiamo vederlo se aggiungo alcune linee di riferimento. Scusa le mie mani che vedrai mentre scrivo questo. |
| |
Ok, quindi dì che questi sono alcuni diversi tassi di vero positivo a cui potresti essere interessato. Quindi, se, ad esempio, per qualsiasi set di dati di cui disponi, desideri un vero tasso positivo di 0,55. |
| |
Potresti scegliere la tua soglia per renderlo il vero tasso positivo. E poi in questo caso, |
| |
per quel tasso di vero positivo, il modello Tomek ad albero potenziato ha una precisione maggiore. E così potresti scegliere quel modello. |
| |
Tuttavia, se desideri che il tuo tasso di veri positivi sia qualcosa come 0,85, allora il modello SVM potrebbe essere una scelta migliore perché ha una precisione maggiore per quello specifico tasso di veri positivi. |
| |
E poi se avessi un tasso di veri positivi più alto di 0,95, capovolgeresti di nuovo e forse vorresti scegliere il modello ad albero potenziato. |
| |
Ecco come puoi utilizzare queste curve per scegliere il modello migliore per i tuoi dati. |
| |
E ora guarderemo di nuovo questi grafici, ora che ce ne sono solo alcuni. E questo mostra solo la distribuzione delle probabilità previste per ogni classe per i modelli che abbiamo selezionato. Quindi, in questo caso particolare, puoi vedere che in SVM c'è la maggioranza |
| |
probabilità in tutto il tipo dell'intera gamma di probabilità previste, dove l'albero potenziato fa un lavoro migliore nel mantenerle all'estremità inferiore. |
| |
E così è tutto per questa particolare demo, ma prima che abbiamo finito, volevo solo mostrare un'altra cosa. E quindi quello era un esempio di come avresti usato la valutazione |
| |
opzione modelli. Ma diciamo che volevi solo usare una particolare tecnica di campionamento. E puoi farlo qui. Quindi la finestra di lancio sembra più o meno la stessa. E puoi assegnare la tua classe binaria, i tuoi predittori e fare clic su OK. |
| |
E questo genera una nuova tabella di dati e tu hai il tuo |
| |
colonna indicatore. |
| |
La colonna dell'indicatore, che mostra solo se l'osservazione deve essere inclusa o meno nell'analisi. |
| |
E poi, poiché era SMOTE più Tomek, hai anche tutte queste osservazioni generate da SMOTE. |
| |
Quindi ora hai questa nuova tabella di dati e puoi utilizzare qualsiasi tipo di modello con qualsiasi tipo di opzioni che potresti desiderare e utilizzare semplicemente questa colonna come colonna del peso o della frequenza e andare da lì. E questa è la fine della nostra demo per l'aggiunta della classificazione sbilanciata. Grazie per la visione. |