le mie informazioni di contatto
Posta[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Sommario
1. Comprendere gli alberi decisionali
2. Processo di generazione dell'albero decisionale
2. Albero decisionale in Sklearn
1. tree.DecisionTreeClassifier (albero di classificazione)
(1) Parametri fondamentali del modello
2. tree.DecisionTreeRegressor (albero di regressione)
3. Vantaggi e svantaggi degli alberi decisionali
L'albero decisionale è unMetodi di apprendimento supervisionato non parametrico, che può selezionare da una serie di Le regole decisionali sono riepilogate dai dati con caratteristiche ed etichette e queste regole sono presentate in una struttura di diagramma ad albero per risolvere problemi di classificazione e regressione.Gli algoritmi dell'albero decisionale sono facili da comprendere, applicabili a vari dati e funzionano bene nella risoluzione di vari problemi. In particolare, vari algoritmi integrati con modelli ad albero come nucleo sono ampiamente utilizzati in vari settori e campi.
Il set di dati sopra è Dati su un elenco di specie conosciute e relative categorie .Il nostro obiettivo attuale è dividere gli animali inMammiferi e non mammiferi . Sulla base dei dati raccolti, l'algoritmo dell'albero decisionale può calcolare il seguente albero decisionale:
Se ora scopriamo una nuova specie A, che è un animale a sangue freddo con scaglie sul corpo e non è viviparo, possiamo giudicare la sua specie attraverso questo albero decisionale categoria。
Concetti chiave coinvolti: nodi
① Nodo radice : Non esiste un fronte in entrata, ma un fronte in uscita. Contiene domande iniziali focalizzate sulle funzionalità.
② Nodo intermedio : Ci sono sia archi in entrata che in uscita. C'è solo un arco in entrata, ma possono esserci molti archi in uscita. Sono tutte domande sulle caratteristiche.
③ Nodo foglia: Ci sono bordi in entrata e nessun bordo in uscita. Ogni nodo foglia è un'etichetta di categoria.
④ Nodi figli e nodi genitori: Tra due nodi connessi, quello più vicino al nodo radice è il nodo genitore e l'altro è il nodo figlio.
Moduli coinvolti: sklearn.tree
Parametri importanti:criterio
L'albero di regressione misura la qualità dei rami, sono disponibili tre standard supportati:
① Inserisci "mse" per utilizzare l'errore quadratico medio (MSE), la differenza dell'errore quadratico medio tra il nodo genitore e il nodo foglia verrà utilizzata come criterio per la selezione delle caratteristiche. Questo metodo minimizza la perdita L2 utilizzando il valore medio del nodo foglia.
② Immettere "friedman_mse" per utilizzare l'errore quadratico medio Feldman, una metrica che utilizza l'errore quadratico medio modificato di Friedman per problemi nei rami latenti.
③ Inserisci "mae" per utilizzare l'errore medio assoluto MAE (errore medio assoluto), questa metrica utilizza il valore mediano dei nodi foglia per ridurre al minimo la perdita di L1.
① Il calcolo dell'entropia dell'informazione è più lento del coefficiente bikini. , perché il calcolo del coefficiente di Gini non coinvolge i logaritmi.Inoltre, poiché l’entropia dell’informazione è più sensibile alle impurità, quindiQuando si utilizza l’entropia dell’informazione come indicatore, la crescita dell’albero decisionale sarà più “fine”, quindi per dati ad alta dimensionalità o dati con molto rumore, l'entropia dell'informazione è facile da adattare e il coefficiente di Gini spesso funziona meglio in questo caso.
② random_state viene utilizzato per impostare i parametri del modello casuale nel ramo. Il valore predefinito è None.La casualità sarà più evidente nelle dimensioni elevate. Nei dati a bassa dimensione (come il set di dati dell'iride), la casualità difficilmente apparirà. . Inserisci un numero intero qualsiasi e crescerà sempre lo stesso albero, consentendo al modello di stabilizzarsi.
③ Lo splitter viene utilizzato anche per controllare le opzioni casuali nell'albero decisionale. Sono presenti due valori di input. Immettere "best". può essere visualizzato tramite l'attributo feature_importances_),Inserisci "casuale" e l'albero decisionale sarà più casuale durante la ramificazione, l'albero sarà più profondo e più grande perché contiene più informazioni non necessarie e l'adattamento al set di addestramento sarà ridotto a causa di queste informazioni non necessarie.
④ Senza restrizioni, un albero decisionale crescerà finché l'indice che misura l'impurità non sarà ottimale o finché non saranno più disponibili funzionalità di questo tipo.Affinché l'albero decisionale abbia una migliore generalizzazione, è necessario che l'albero decisionale lo siapotatura . Le strategie di potatura hanno un enorme impatto sugli alberi decisionali.La corretta strategia di potatura è il fulcro dell'ottimizzazione dell'algoritmo dell'albero decisionale。
① Facile da capire e spiegare perché gli alberi possono essere disegnati e visti.
② Richiede poca preparazione dei dati. Molti altri algoritmi spesso richiedono la normalizzazione dei dati, la creazione di variabili fittizie e la rimozione di valori nulli, ecc.MaIl modulo dell'albero decisionale in sklearn non supporta l'elaborazione dei valori mancanti。
③ Utilizzare costo dell'albero(ad esempio, durante la previsione dei dati) è il logaritmo del numero di punti dati utilizzati per addestrare l'albero, che ha un costo molto basso rispetto ad altri algoritmi.
④ In grado di elaborare dati numerici e categorici contemporaneamente,È possibile eseguire sia la regressione che la classificazione . Altre tecniche sono spesso specializzate nell'analisi di set di dati con un solo tipo di variabile.
⑤ In grado di gestire problemi multi-output, ovvero problemi con più etichette (si noti che sono distinti dai problemi con più classificazioni di etichette in un'unica etichetta)
⑥ è un modello scatola bianca , i risultati sono facilmente interpretabili. Se una determinata situazione può essere osservata nel modello, le condizioni possono essere facilmente spiegate attraverso la logica booleana. Al contrario, nei modelli a scatola nera (ad esempio, nelle reti neurali artificiali), i risultati potrebbero essere più difficili da interpretare.
⑦ Il modello può essere verificato utilizzando test statistici, che ci consentono di considerare l'affidabilità del modello. Può funzionare bene anche se le sue ipotesi violano in una certa misura il modello reale che ha generato i dati.
① Gli studenti che apprendono sugli alberi decisionali possono creare alberi eccessivamente complessi che non generalizzano bene i dati. Questo si chiama overfitting. fesso,Meccanismi come l'impostazione del numero minimo di campioni richiesti per un nodo foglia o l'impostazione della profondità massima dell'alberoè necessario per evitare questo problema.
② Gli alberi decisionali potrebbero essere instabili e piccoli cambiamenti nei dati potrebbero portare alla generazione di alberi completamente diversi. Questo problema deve essere risolto attraverso un algoritmo integrato.
③ Si basa l'apprendimento dell'albero decisionalealgoritmo avido, si basa su Ottimizza l'ottimo locale (l'ottimale di ciascun nodo) per cercare di raggiungere l'ottimale complessivo, ma questo approccio non garantisce la restituzione dell'albero decisionale ottimale globale. Questo problema può essere risolto anche mediante algoritmi di ensemble. Nelle foreste casuali, le caratteristiche e i campioni vengono campionati in modo casuale durante il processo di ramificazione.
④ Alcuni concetti sono difficili da apprendere perché gli alberi decisionali non li esprimono facilmente, come i problemi XOR, parità o multiplexer.
⑤ Se alcune classi nelle etichette sono dominanti, lo studente dell’albero decisionale crea alberi che sono sbilanciati verso le classi dominanti.Pertanto, si consiglia di inserire un albero decisionale prima di inserirloInsieme di dati bilanciato。