top of page

Risultati Ricerca Intelligenza Artificiale Italia

452 risultati trovati per "intelligenza-artificlae"

  • Esempio pratico deep learng (DL) : le previsioni del ristorante Collatz, con Python e Pytorch (LSTM)

    che python aveva diverse librerie e moduli, che si rendevano necessari per lavorare sui modelli di intelligenza artificiale, e che si dovevano installare anche queste librerie., come indicato dal sito intelligenzaartificialeitalia.net Lo guardai, sorrisi e gli dissi: anche l’intelligenza artificiale allora si basa su dei “pregiudizi”!

  • Tecniche per gestire dati e dataset sbilanciati

    pratica ciò che stiamo facendo è adattare il nostro modello a uno specifico risultato di bootstrapping artificiale

  • La Tua STARTUP deve assumere un DATA SCIENTIST ?

    Ma se tutte le tue soluzioni coinvolgono servizi di intelligenza artificiale, hai bisogno di un data scientist maturo che sia consapevole di cosa si può e non si può fare con le soluzioni di intelligenza Non saltare nell'implementazione di soluzioni di intelligenza artificiale sfumate a questo punto. Quando si passa alla fase di scalabilità e si desidera ricevere assistenza dai servizi di intelligenza Detto questo, avrai comunque bisogno di una buona comprensione di quali servizi di intelligenza artificiale

  • I migliori Prompt per Chat GPT : 700 prompt per sfruttare ChatGPT al massimo

    Siete pronti a scoprire come sfruttare al meglio uno dei modelli di intelligenza artificiale più sofisticati non è solo una questione di algoritmi e matematica: ChatGPT è in grado di sorprendere grazie alla sua intelligenza Utilizzando la sua intelligenza artificiale avanzata, ChatGPT può generare contenuti conformi alle best ChatGPT è un modello di intelligenza artificiale in grado di generare codice HTML per diverse sezioni un’azienda che vuole espandersi all’estero” Saggi: “Scrivi un saggio sull’impatto delle tecnologie dell

  • Deepfake e Etica: Esplorazione degli Impatti e dei Dilemmi

    Questa forma di intelligenza artificiale, chiamata apprendimento profondo, sta rivoluzionando il modo Panoramica generale sui deepfake I deepfake sono una forma avanzata di intelligenza artificiale che consente L'apprendimento profondo è una forma di intelligenza artificiale che utilizza reti neurali artificiali Questa forma avanzata di intelligenza artificiale ha suscitato preoccupazioni riguardo alle sue possibili L'uso di intelligenza artificiale per creare immagini false ha il potenziale di alimentare pregiudizi

  • Utilizzare il Machine Learning per Prevedere Le Vendite e Anticipare la Domanda dei tuoi Clienti IA

    Per sfruttare il progresso tecnico del machine learning e dell'intelligenza artificiale per informare

  • Come funzionano i Large Language Models LLM , una spiegazione semplice

    Grazie ai Large Language Models (o LLMs per abbreviare), l'Intelligenza Artificiale ha ora catturato Ma prima, cerchiamo di capire dove si collocano i LLMs nel mondo dell'Intelligenza Artificiale. Il Campo dell'Intelligenza Artificiale a Strati Il campo dell'Intelligenza Artificiale è spesso visualizzato a strati: Intelligenza Artificiale (AI): Termine molto ampio, ma in generale si occupa di macchine intelligenti Ecco perché i LLM sono un esempio di ciò che chiamiamo Intelligenza Artificiale Generativa.

  • Il tuo Primo Programma di Machine Learning con Python e Google Colab

    Indice Perchè è importante saper creare un programma di Machine Learning ? Perchè hai difficoltà a seguire i tutorial degli altri ? Cosa Utilizzeremo per creare un programma con solo il browser? Passaggio 1. Creazione di un taccuino python con Google Colab Passaggio 2. Importare le librerie su Google colab Passaggio 3. Come importare Dataset su Google Colab Passaggio 4. Addestrare un Modello di Machine Learning su Google Colab Passaggio 5. Fare previsioni con Python utilizzando Google Colab Conclusioni Perchè è importante saper creare un programma di Machine Learning ? L'apprendimento automatico (ML) è di tendenza e ogni azienda vuole sfruttare il machine learning per aiutarla a migliorare i propri prodotti o servizi. Pertanto, abbiamo osservato una crescente domanda di ingegneri ML e tale richiesta ha attirato l'attenzione di molte persone. Tuttavia, il machine learning può sembrare scoraggiante per molti, specialmente per coloro che hanno poca esperienza di programmazione o di lavoro relativa ai dati. Perchè hai difficoltà a seguire i tutorial degli altri ? Una ragione probabile è che ci vuole una grande quantità di sforzi per impostare il computer, permettendo loro di sviluppare tutti i modelli ML. Ci Pensiamo noi...Ti faremo creare il tuo primo script di machine learning con python, utilizzando solo un browser Cosa Utilizzeremo ? In questo articolo vorrei presentare Google Colab, uno strumento gratuito (con opzioni di aggiornamento a pagamento, però) per l'apprendimento e la creazione di modelli ML. Ancora più importante, come scoprirai, non ha alcuna configurazione per te - è pronto per l'uso ora - con l'unico requisito di avere un account Google. Se non ne hai uno, registrati in modo da poter seguire il tutorial. Suppongo che tu non sappia molto di ML, ma sei molto entusiasta di apprendere il ML. Non importa quanto Python conosci. Spiegherò i passaggi principali usando il più possibile termini comprensibili anche per chi è alle prime armi. Senza ulteriori indugi, iniziamo. Se vuoi vedere il codice sorgente, puoi accedere al Notebook passando nell'area progetti . Troverai il Link alla fine dell articolo. Passaggio 1. Creazione di un taccuino in Colab In Colab, lavori con i taccuini (*.ipynb), proprio come lavori con i documenti (*.docx) in Microsoft Word. Quindi, il primo passo per usare Colab è creare un nuovo Notebook andando su: https://colab.research.google.com/ . Dopo aver fatto clic sul pulsante "New notebook", vedrai che Colab crea un nuovo taccuino con un nome predefinito di Untitled1.ipynb. Per il bene dell'attuale tutorial, chiamiamolo first_ml_model.ipynb o come vuoi. D'ora in poi lavoreremo su questo file. Passaggio 2. Importare le librerie su Google colab Quando creiamo il nostro modello, abbiamo bisogno di librerie di codici sviluppate da sviluppatori esperti di machine learning. In sostanza, queste librerie fungono da set di strumenti fornendo funzionalità predefinite per l'elaborazione dei dati e la costruzione del modello. In questo tutorial, utilizzeremo principalmente le seguenti librerie. scikit-learn : una libreria ML che consiste in una varietà di funzioni di elaborazione dati e algoritmi ML (ad es. regressione, classificazione e clustering). Questa libreria è anche conosciuta come sklearn. pandas : una libreria di data science specializzata principalmente nella pre-elaborazione di dati simili a fogli di calcolo prima di creare modelli ML. Nel taccuino di Google Colab, ogni unità di lavoro è nota come cella e usiamo una serie di celle per svolgere i nostri lavori di machine learning. In ogni cella, di solito svolgiamo un compito specifico. Per aggiungere una cella, fai semplicemente clic + Code su in alto, come mostrato di seguito. Puoi aggiungere le tue note sul codice facendo clic su + Text. Con il codice creato, eseguendo la cella seguente, puoi importare le librerie necessarie per il presente tutorial. Una piccola Nota, se stai cercando di configurare un computer per il ML, devi installare tutte queste librerie oltre alla configurazione di Python. Mentre su Google Colab per creare il tuo primo programma di Machine learning avrai solo bisogno del nostro semplice tutorial. Passaggio 3. Come importare Dataset su Colab Per l'attuale tutorial, utilizzeremo il set di dati sulla qualità del vino rosso. Puoi trovare maggiori informazioni su questo set di dati su kaggle.com , un popolare sito Web di data science e ML che presenta una serie di concorsi. Puoi anche trovare le informazioni del set di dati su UCI , che è il principale repository di dati ML. Tranquillo il Dataset sarà incluso nella cartella file del relativo progetto Il dataset del vino è spesso usato come esempio per mostrare i modelli ML e, quindi, è comodamente disponibile nella libreria sklearn. Tieni presente che il set di dati in sklearn è stato modificato per servire meglio come set di dati giocattolo per l'addestramento e l'apprendimento ML. I dati sono riportati di seguito. Lo screenshot sopra mostra le caratteristiche dei dati. In ML, utilizziamo le " caratteristiche " per studiare quali fattori possono essere importanti per la previsione corretta. Come puoi vedere, ci sono 12 funzioni disponibili e sono potenzialmente importanti per la qualità del vino rosso, come l'alcol e l'acido malico. Un ML specifico è preoccupato per la classificazione. Ogni record di dati ha un'etichetta che mostra la sua classe e le classi di tutti i record sono conosciute come "destinazione" del set di dati. Nel set di dati del vino rosso, ci sono tre classi per le etichette e possiamo controllare le etichette, come mostrato di seguito: Tieni presente che in una tipica pipeline, di solito è necessario dedicare un sacco di tempo alla preparazione del set di dati. Alcune preparazioni comuni includono l'identificazione e la rimozione/ricodifica di valori anomali, la gestione dei dati mancanti, la ricodifica one-hot (necessaria per alcuni modelli), la riduzione della dimensionalità, la selezione delle funzionalità, il ridimensionamento e molti altri. Poiché il set di dati è stato ripulito come un set di dati giocattolo in sklearn , non dobbiamo preoccuparci di questi preparativi. Passaggio 4. Addestrare un Modello di Machine Learning su Google Colab Il passaggio successivo consiste nell'addestrare il modello ML. Forse ti starai chiedendo qual è il punto di addestrare un modello ML. Bene, per diversi casi d'uso, ci sono scopi diversi. Ma in generale, lo scopo dell'addestramento di un modello ML è più o meno quello di fare previsioni su cose che non hanno mai visto. Il modello riguarda come fare buone previsioni. Il modo per creare un modello si chiama training, utilizzando i dati esistenti per identificare un modo corretto per fare previsioni. Esistono molti modi diversi per costruire un modello, come K-nearest neighbors, SVC, random forest, e gradient boosting, solo per citarne alcuni. Ai fini del presente tutorial che mostra come creare un modello ML utilizzando Google Colab, utilizziamo un modello prontamente disponibile in sklearn: il classificatore di foreste casuali. Una cosa da notare è che abbiamo un solo set di dati. Per testare le prestazioni del modello, divideremo il set di dati in due parti, una per l'addestramento e l'altra per il test. Possiamo semplicemente usare il train_test_split , come mostrato di seguito. Il set di dati di addestramento ha 142 record, mentre il set di dati di test ha 36 record, approssimativamente in un rapporto di 4:1 (si noti che test_size=0.2 per i test viene utilizzato il 20% con arrotondamenti se necessario del set di dati originale). La cosa bella di sklearn è che fa un sacco di lavoro pesante per noi rendendo molti classificatori preconfigurati in modo tale da poterli usare con poche righe di codice. Nello screenshot qui sotto, creiamo prima un classificatore forestale casuale. In sostanza, crea il framework in cui inserire i nostri dati per costruire il modello. Utilizzando classifier.fit, stiamo addestrando il modello per generare i parametri del modello, in modo tale che il modello possa essere utilizzato per previsioni future. Passaggio 5. Fare previsioni con Python utilizzando Google Colab Con il modello addestrato di sklearn, possiamo testare le prestazioni del modello sul set di dati di test che abbiamo creato in precedenza. Come mostrato di seguito, abbiamo ottenuto una previsione di accuratezza del 97,2%. Tieni presente che raggiungere un livello elevato come questo in un set di dati giocattolo non è atipico, ma è considerato molto alto nei progetti reali. Se vuoi dare un'occhiata più da vicino alla previsione del nostro modello, questo è il link al progetto. All'interno troverai una cartella.zip contenente il file .ipynb per aprirlo con Colab, il file python per farlo girare in locale, il set di dati in formato csv e il pdf del progetto. Conclusioni creazione primo programma di machine learning con Python e Google Colab In questo articolo, abbiamo utilizzato Google Colab come editor di codice per mostrarti come creare un modello ML per fare previsioni su un set di dati giocattolo. Tuttavia, ti mostra che Google Colab è uno strumento facile da usare che richiede configurazioni minime per iniziare il tuo percorso di apprendimento del machine learning. Quando ti senti a tuo agio con le terminologie e i concetti relativi a Google Colab, Python e ML. Puoi esplorare altri IDE Python, come PyCharm, per un lavoro ML più avanzato con una migliore esperienza di codifica.

  • Guida Completa Algoritmi di Machine Learning

    algoritmo di quantizzazione del vettore di apprendimento (o LVQ in breve) è un algoritmo di rete neurale artificiale

  • Tipi di modelli di regressione nel Machine Learning

    La parola regressione deriva dal vocabolo latino "regressus" che significa tornare indietro o tornare. Quando applicata alla statistica, l'analisi di regressione è una tecnica statistica utilizzata per descrivere come una variabile è correlata a un'altra. Il termine modello di regressione viene utilizzato anche per riferirsi a una funzione matematica che mette in relazione i valori di due variabili. I modelli di regressione possono essere applicati a vari campi come l'economia, la genetica, l'astronomia e la psicologia. In questo articolo esploreremo diversi tipi di modelli di regressione e le basi dell'analisi di regressione. Introduzione sui diversi tipi di modelli di regressione nel Machine Learning I problemi di regressione sono prevalenti nell'apprendimento automatico e l'analisi di regressione è la tecnica più utilizzata per risolverli. Si basa sulla modellazione dei dati e comporta la determinazione della linea di adattamento migliore che passa attraverso tutti i punti dati con la distanza più breve possibile tra la linea e ciascun punto dati. Sebbene esistano altre tecniche per l'analisi di regressione, la regressione lineare e logistica sono le più utilizzate. In definitiva, il tipo di modello di analisi di regressione che adottiamo sarà determinato dalla natura dei dati. Impariamo di più sull'analisi di regressione e sulle varie forme di modelli di regressione. Sommario sui diversi tipi di modelli di regressione nel Machine Learning In questo articolo vedremo : Che cos'è l'analisi di regressione? Qual è lo scopo di un modello di regressione? Tipi di modelli di regressione : Regressione lineare Regressione logistica Regressione polinomiale Regressione ridge Regressione lazo Regressione quantilica Regressione lineare bayesiana Regressione delle componenti principali Regressione dei minimi quadrati parziali Regressione della rete elastica Che cos'è l'analisi di regressione? Le tecniche di modellazione predittiva come l'analisi di regressione possono essere utilizzate per determinare la relazione tra le variabili dipendenti (obiettivo) e indipendenti di un set di dati. È ampiamente utilizzato quando le variabili dipendenti e indipendenti sono collegate in modo lineare o non lineare e la variabile target ha un insieme di valori continui. Pertanto, gli approcci dell'analisi di regressione aiutano a stabilire relazioni causali tra variabili, modellazione di serie temporali e previsioni. L'analisi di regressione, ad esempio, è il modo migliore per esaminare la relazione tra le vendite e le spese pubblicitarie per un'azienda. Qual è lo scopo di un modello di regressione? L'analisi di regressione viene utilizzata per uno dei due scopi: prevedere il valore della variabile dipendente quando le informazioni sulle variabili indipendenti sono note o prevedere l'effetto di una variabile indipendente sulla variabile dipendente. Applicazioni principali di un un modello di regressione I modelli di regressione sono un modo per approssimare la relazione tra due insiemi di variabili, come x e y, utilizzando modelli lineari. I modelli di regressione sono molto utili in molte aree, dalla determinazione del costo di un farmaco da prescrizione alla ricerca della soluzione migliore per il modello di reddito di un'azienda. Ad esempio, puoi utilizzare i modelli di regressione per determinare in che modo i diversi tipi di campagne di marketing influiscono sulle entrate della tua azienda. I modelli di regressione vengono utilizzati anche a scopo di previsione. Un modello di regressione può essere utilizzato per determinare la linea di adattamento migliore per un determinato insieme di dati. Esistono molti tipi diversi di modelli di regressione, ma i più comuni includono la regressione lineare e la regressione logistica. Tipi di modelli di regressione Sono disponibili numerosi approcci di analisi di regressione per fare previsioni. Inoltre, la scelta della tecnica è determinata da vari parametri, tra cui il numero di variabili indipendenti, la forma della retta di regressione e il tipo di variabile dipendente. Esaminiamo alcune delle tecniche di analisi di regressione più utilizzate: 1. Regressione lineare La tecnica di modellazione più ampiamente utilizzata è la regressione lineare, che presuppone una connessione lineare tra una variabile dipendente (Y) e una variabile indipendente (X). Impiega una linea di regressione, nota anche come linea di adattamento. La connessione lineare è definita come Y = c+m*X + e, dove 'c' denota l'intercetta, 'm' denota la pendenza della linea e 'e' è il termine di errore. Il modello di regressione lineare può essere semplice (con una sola variabile dipendente e una indipendente) o complesso (con numerose variabili dipendenti e indipendenti) (con una variabile dipendente e più di una variabile indipendente). 2. Regressione logistica Quando la variabile dipendente è discreta, è applicabile la tecnica di regressione logistica. In altre parole, questa tecnica viene utilizzata per calcolare la probabilità di occorrenze mutuamente esclusive come pass/fail, true/false, 0/1 e così via. Pertanto, la variabile target può assumere solo uno dei due valori e una curva sigmoidea rappresenta la sua connessione alla variabile indipendente e la probabilità ha un valore compreso tra 0 e 1. 3. Regressione polinomiale La tecnica dell'analisi di regressione polinomiale viene utilizzata per rappresentare una relazione non lineare tra variabili dipendenti e indipendenti. È una variante del modello di regressione lineare multipla, tranne per il fatto che la linea di adattamento migliore è curva anziché diritta. 4. Regressione Ridge Quando i dati mostrano multicollinearità, cioè la tecnica di regressione della cresta viene applicata quando le variabili indipendenti sono altamente correlate. Sebbene le stime dei minimi quadrati siano imparziali nella multicollinearità, le loro varianze sono sufficientemente significative da far divergere il valore osservato dal valore effettivo. La regressione di cresta riduce gli errori standard distorcendo le stime di regressione. La variabile lambda (λ) nell'equazione di regressione della cresta risolve il problema della multicollinearità. 5. Regressione Lazo Come per la regressione ridge, la tecnica del lazo (Least Absolute Shrinkage and Selection Operator) penalizza l'entità assoluta del coefficiente di regressione. Inoltre, la tecnica di regressione con lazo impiega la selezione variabile, che porta alla contrazione dei valori dei coefficienti allo zero assoluto. 6. Regressione quantilica L'approccio della regressione quantile è un sottoinsieme della tecnica della regressione lineare. Viene utilizzato quando i requisiti di regressione lineare non sono soddisfatti o quando i dati contengono valori anomali. In statistica viene utilizzata la regressione quantile. 7. Regressione lineare bayesiana La regressione lineare bayesiana è una forma di tecnica di analisi di regressione utilizzata nell'apprendimento automatico che utilizza il teorema di Bayes per calcolare i valori dei coefficienti di regressione. Piuttosto che determinare i minimi quadrati, questa tecnica determina la distribuzione a posteriori delle caratteristiche. Di conseguenza, l'approccio supera la normale regressione lineare in termini di stabilità. 8. Regressione delle componenti principali I dati di regressione multicollineare vengono spesso valutati utilizzando l'approccio di regressione delle componenti principali. L'approccio della regressione delle componenti significative, come la regressione della cresta, riduce gli errori standard distorcendo le stime di regressione. L'analisi delle componenti principali (PCA) viene utilizzata prima per modificare i dati di addestramento, quindi i campioni trasformati risultanti vengono utilizzati per addestrare i regressori. 9. Regressione dei minimi quadrati parziali La tecnica di regressione dei minimi quadrati parziali è una tecnica di analisi di regressione basata sulla covarianza veloce ed efficiente. È vantaggioso per problemi di regressione con molte variabili indipendenti con un'elevata probabilità di multicollinearità tra le variabili. Il metodo riduce il numero di variabili a un numero gestibile di predittori, quindi viene utilizzato in una regressione. 10. Regressione della rete elastica La regressione della rete elastica combina tecniche di regressione con cresta e lazo che sono particolarmente utili quando si tratta di dati fortemente correlati. Regolarizza i modelli di regressione utilizzando le penalità associate ai metodi di regressione con ridge e lazo. I limiti dei modelli di regressione I modelli di regressione vengono utilizzati nell'apprendimento automatico per trovare la linea di adattamento migliore che passa attraverso tutti i punti dati con la distanza più breve possibile tra la linea e ciascun punto dati. Tuttavia, i modelli di regressione hanno dei limiti. Esistono molti tipi diversi di modelli di regressione, ma i più comuni sono la regressione lineare e la regressione logistica. Ognuno di questi modelli ha i propri vantaggi e svantaggi. Il principale vantaggio della regressione lineare è che non è limitato a due sole dimensioni. La regressione logistica è limitata a due dimensioni, ma viene spesso utilizzata nei casi in cui i dati sono linearmente correlati. Riepilogo sui tipi di modelli di regressione nel Machine Learning L'apprendimento automatico utilizza una varietà di altri modelli di regressione, come la la regressione graduale, la regressione multipla e la regressione robusta, oltre a quelli discussi sopra. Per ciascuna di queste varie tecniche di regressione, sapere quanta precisione si può ottenere dai dati forniti. In generale, l'analisi di regressione offre due vantaggi significativi, che sono i seguenti: Denota la relazione tra due variabili, una dipendente e una indipendente. Dimostra l'entità dell'effetto di una variabile indipendente su una variabile dipendente. Spero che ti sia piaciuto leggere questo articolo sui modelli di regressione.

  • Reti neurali Transformer: una guida per principianti

    Le reti neurali Transformer sono una delle tecnologie più promettenti nell'ambito dell'intelligenza artificiale una rete neurale Transformer e perché è considerata una delle tecnologie più promettenti nell'ambito dell'intelligenza trattati nell'articolo e considerazioni sull'importanza delle reti neurali Transformer nell'ambito dell'intelligenza Inoltre, la loro capacità di apprendere autonomamente potrebbe permettere di sviluppare sistemi di intelligenza Ti ringraziamo per averci scelto per informarti sull'intelligenza artificiale.

  • Manipolazione Dati con Python e Pandas

    Introduzione Python sta rapidamente diventando il linguaggio preferito nella scienza dei dati e per buone ragioni. Tra le sue librerie di calcolo scientifico, abbiamo trovato Pandas come la più utile per le operazioni di manipolazioni sui dati. Pandas, insieme a Scikit-learn, fornisce quasi l'intero stack necessario a un data scientist. Questo articolo si concentra su 10 modi per la manipolazione dei dati in Python. Abbiamo anche condiviso alcuni suggerimenti e trucchi che ti permetteranno di lavorare più velocemente . Per aiutarti a capire meglio, abbiamo preso un set di dati da esempio per eseguire queste operazioni e manipolazioni. Per ogni metodo, dei 10 troverai il codice python e sotto una finestra interattiva per provare il codice. Iniziamo Inizieremo importando il modulo Pandas e caricando il set di dati nell'ambiente Python come Pandas Dataframe: #importiamo le librerie necessarie import pandas as pd import numpy as np data = pd.read_csv("file dati prestiti.csv", index_col="Loan_ID") #incolla nell'editor qui sotto #sotto la riga di commento print(data) Manipolare Dataset con Python : Filtrare i dataset con pandas Cosa fare se si desidera filtrare i valori di una colonna in base alle condizioni di un altro insieme di colonne di un Pandas Dataframe? Ad esempio, vogliamo un elenco di tutte le donne che non sono laureate e che hanno ottenuto un prestito. L'indicizzazione booleana può aiutare qui. È possibile utilizzare il seguente codice: query = data.loc[(data["Gender"]=="Female") & (data["Education"]=="Not Graduate") & (data["Loan_Status"]=="Y"), ["Gender","Education","Loan_Status"]] print(query) Leggi di più sull'indicizzazione booleana nei panda qui: Selezione e indicizzazione dei panda Manipolare Dataset con Python : APPLY la funzione di pandas È una delle funzioni Pandas comunemente utilizzate per manipolare un dataframe panda e creare nuove variabili. La funzione Pandas Apply restituisce un valore dopo aver passato ogni riga/colonna di un frame di dati con qualche funzione. La funzione può essere predefinita o definita dall'utente. Ad esempio, qui può essere utilizzato per trovare i valori #mancanti in ogni riga e colonna. #Crea una nuova funzione: def num_missing(x): return sum(x.isnull()) #Applicazione per colonna: print("Valori mancanti per colonna:") print(data.apply(num_missing, axis=0)) #asse=0 definisce quella funzione deve essere applicata su ciascuna colonna #Applicazione per riga: print("\nValori mancanti per riga:") print (data.apply(num_missing, axis=1).head()) #asse=1 definisce quella funzione da applicare su ogni riga Manipolare Dataset con Python : Immissione di valori mancanti usando Panda 'fillna()' lo fa in una volta sola. Viene utilizzato per aggiornare i valori mancanti con la media/modalità/mediana complessiva della colonna. Assumiamo le colonne 'Sesso', 'Coniugato' e 'Self_Employed' con le rispettive modalità. #Per prima cosa importiamo la funzione scipy per determinare la modalità from scipy.stats import mode print(mode(data['Gender'])) Ciò restituisce sia la modalità che il conteggio. Ricorda che la modalità può essere un array in quanto possono esserci più valori con alta frequenza. Prenderemo il primo di default usando sempre: mode(data['Gender']).mode[0] Ora possiamo riempire i valori mancanti nei dati Pandas Dataframe e verificare usando la tecnica n. 2. #Importa i valori: data['Gender'].fillna(mode(data['Gender']).mode[0], inplace=True) data['Married'].fillna(mode(data['Married']).mode[0], inplace=True) data['Self_Employed'].fillna(mode(data['Self_Employed']).mode[0], inplace=True) #Ora controlla di nuovo i valori #mancanti per confermare: print(data.apply(num_missing, axis=0)) Pertanto, viene confermato che i valori mancanti nel dataframe di Pandas vengono imputati. Si noti che questa è la forma più primitiva di imputazione. Altre tecniche sofisticate includono la modellazione dei valori mancanti, utilizzando medie raggruppate (media/modalità/mediana). Tratteremo quella parte nei prossimi articoli. Maggiori informazioni sull'imputazione dei valori mancanti nel dataframe Pandas qui: Riferimento Pandas (fillna) Manipolare Dataset con Python : Tabella pivot in Pandas I panda possono essere utilizzati per creare tabelle pivot in stile MS Excel. Ad esempio, in questo caso, una colonna chiave è "LoanAmount" che ha valori mancanti. Possiamo attribuirlo utilizzando la quantità media di ciascun gruppo "Sesso", "Coniugato" e "Self_Employed". Il "LoanAmount" medio di ciascun gruppo nel dataframe Pandas può essere determinato come: #Determina tabella pivot impute_grps = data.pivot_table(values=["LoanAmount"], index=["Gender","Married","Self_Employed"], aggfunc=np.mean) print(impute_grps) Maggiori informazioni sulla tabella pivot Pandas qui: Riferimento Pandas (tabella pivot) Manipolare Dataset con Python : Indicizzazione multipla in Pandas Dataframe Se noti l'output del passaggio n. 3, ha una strana proprietà. Ogni indice Pandas è composto da una combinazione di 3 valori. Questo è chiamato Multi-indicizzazione. Aiuta a eseguire operazioni molto velocemente. Continuando l'esempio dal n. 3, abbiamo i valori per ogni gruppo ma non sono stati imputati. Questo può essere fatto usando le varie tecniche apprese dai panda fino ad ora. #itera solo le righe con ImportoLoanAmount mancante for i,row in data.loc[data['LoanAmount'].isnull(),:].iterrows(): ind = tuple([row['Gender'],row['Married'],row['Self_Employed']]) data.loc[i,'LoanAmount'] = impute_grps.loc[ind].values[0] #Ora controlla di nuovo i #valori mancanti per confermare: print(data.apply( num_mancante, asse=0)) Nota: Il multi-indice richiede la tupla per definire gruppi di indici nell'istruzione panda loc. Questa è una tupla usata in funzione. Il suffisso .values[0] è richiesto perché, per impostazione predefinita, viene restituito un elemento series che ha un indice non corrispondente a quello del dataframe pandas. In questo caso, un'assegnazione diretta dà un errore. Manipolare Dataset con Python : Tabella incrociata con Pandas Questa funzione viene utilizzata per ottenere una "sensazione" (visualizzazione) iniziale dei dati. Qui, possiamo convalidare alcune ipotesi di base. Ad esempio, in questo caso, si prevede che "Credit_History" influisca in modo significativo sullo stato del prestito. Questo può essere testato utilizzando la tabella incrociata come mostrato di seguito: print(pd.crosstab(data["Credit_History"],data["Loan_Status"],margins=True)) Questi sono numeri assoluti. Ma le percentuali possono essere più intuitive nel fare alcune rapide intuizioni. Possiamo farlo usando la funzione di applicazione di Pandas: def percConvert(ser): return ser/float(ser[-1]) pd.crosstab(data["Credit_History"],data["Loan_Status"],margins=True).apply(percConvert, axis=1) Ora, è evidente che le persone con una storia creditizia hanno possibilità molto più elevate di ottenere un prestito poiché l'80% delle persone con una storia di credito ha ottenuto un prestito rispetto al solo 9% senza storia di credito. Ma non è questo. Racconta una storia interessante. Dal momento che so che avere una storia creditizia è estremamente importante, cosa succede se prevedo che lo stato del prestito sarà Y per quelli con storia creditizia e N altrimenti. Sorprendentemente, avremo ragione 82+378=460 volte su 614, che è un enorme 75%! Non ti biasimerò se ti stai chiedendo perché diavolo abbiamo bisogno di modelli statistici. Ma fidati di me, aumentare la precisione anche dello 0,001% oltre questo segno è un compito impegnativo. Nota: il 75% è sul train. Il set di test sarà leggermente diverso ma vicino. Inoltre, spero che questo dia un'idea del perché anche un aumento dello 0,05% della precisione può comportare un salto di 500 gradi nella classifica di Kaggle. Manipolare Dataset con Python : Unire DataFrame con Pandas L'unione dei dataframe di Panda diventa essenziale quando abbiamo informazioni provenienti da diverse fonti da raccogliere. Si consideri un caso ipotetico in cui le tariffe immobiliari medie (INR per mq) sono disponibili per diversi tipi di proprietà. Definiamo un dataframe Pandas come: prop_rates = pd.DataFrame([1000, 5000, 12000], index=['Rural','Semiurban','Urban'],columns=['rates']) print(prop_rates) Ora possiamo unire queste informazioni con il dataframe Pandas originale come: data_merged = data.merge(right=prop_rates, how='inner',left_on='Property_Area',right_index=True, sort=False) print(data_merged.pivot_table(values='Credit_History',index=['Property_Area','rates'], aggfunc=len)) La tabella pivot convalida l'operazione di unione riuscita. Si noti che l'argomento "valori" è irrilevante qui perché stiamo semplicemente contando i valori. Leggi di più: Riferimento Pandas (unisci) Manipolare Dataset con Python : Ordinamento dei DataFrame di Pandas I panda consentono un facile ordinamento basato su più colonne. Questo può essere fatto come: data_sorted = data.sort_values(['ApplicantIncome','CoapplicantIncome'], ascending=False) print(data_sorted[['ApplicantIncome','CoapplicantIncome']].head(10)) Nota: la funzione "ordina" di Panda è ora deprecata. Dovremmo invece usare "sort_values". Altro: Riferimento Pandas (sort_values) Manipolare Dataset con Python : Funzione di taglio per il binning A volte i valori numerici hanno più senso se raggruppati insieme. Ad esempio, se stiamo cercando di modellare il traffico (#auto su strada) con l'ora del giorno (minuti). Il minuto esatto di un'ora potrebbe non essere rilevante per la previsione del traffico rispetto al periodo effettivo della giornata come "Mattino", "Pomeriggio", "Sera", "Notte", "Late Night". Modellare il traffico in questo modo sarà più intuitivo ed eviterà l'overfitting. Qui definiamo una semplice funzione che può essere riutilizzata per il binning di qualsiasi variabile abbastanza facilmente. #Binning: def binning(col, cut_points, labels=None): #Definisci valori min e max: minval = col.min() maxval = col.max() #crea una lista aggiungendo min e max a cut_points break_points = [minval ] + cut_points + [maxval] #se non vengono fornite etichette, usa le etichette predefinite 0 ... (n-1) if not labels: labels = range(len(cut_points)+1) #Binning usando la funzione di taglio di panda colBin = pd.cut(col,bins=break_points,labels=labels,include_lowest=True) return colBin #Binning age: cut_points = [90,140,190] labels = ["low","medium","high","very high"] data["LoanAmount_Bin"] = binning(data["LoanAmount"], cut_points, labels) print (pd.value_counts(data["LoanAmount_Bin"], sort=False)) Per saperne di più sulla funzione di taglio Pandas qui: Riferimento Pandas (taglio) Manipolare Dataset con Python : Codifica dei dati categorici utilizzando Pandas Spesso troviamo un caso in cui dobbiamo modificare le categorie di una variabile nominale. Ciò può essere dovuto a vari motivi: Alcuni algoritmi (come la regressione logistica) richiedono che tutti gli input siano numerici. Quindi le variabili nominali sono per lo più codificate come 0, 1….(n-1) A volte una categoria può essere rappresentata in 2 modi. Ad esempio, la temperatura potrebbe essere registrata come “Alta”, “Media”, “Bassa”, “H”, “bassa”. Qui, sia "Alto" che "H" si riferiscono alla stessa categoria. Allo stesso modo, in "Basso" e "basso" c'è solo una differenza di maiuscolo. Ma Python li leggerebbe come livelli diversi. Alcune categorie potrebbero avere frequenze molto basse ed è generalmente una buona idea combinarle. Qui ho definito una funzione generica che accetta input come dizionario e codifica i valori usando la funzione "sostituisci" in Pandas. #Definisci una funzione generica usando Pandas sostituisci la funzione def coding(col, codeDict): colCoded = pd.Series(col, copy=True) for key, value in codeDict.items(): colCoded.replace(key, value, inplace=True) return colCoded # LoanStatus come Y=1, N=0: print 'Prima:' print pd.value_counts(data["Loan_Status"]) data["Loan_Status_Coded"] = coding(data["Loan_Status"], {'N':0,'Y':1}) print ('\nDopo la codifica:' ) print (pd.value_counts(data["Loan_Status_Coded"])) Maggiori informazioni sulla funzione di sostituzione di Panda qui: Riferimento Panda (sostituire) Note finali In questo articolo, abbiamo trattato varie funzioni di Pandas che possono semplificarci la vita mentre eseguiamo l'esplorazione dei dati e l'ingegneria delle funzionalità. Inoltre, abbiamo definito alcune funzioni generiche che possono essere riutilizzate per raggiungere obiettivi simili su diversi dataset. Grazie per la lettura condividi l'articolo

  • Tutorial di Regressione Logistica per l'apprendimento automatico

    La regressione logistica è uno degli algoritmi di machine learning più popolari per la classificazione binaria. Questo perché è un semplice algoritmo che funziona molto bene su un'ampia gamma di problemi. In questo post scoprirai passo passo l'algoritmo di regressione logistica per la classificazione binaria. Dopo aver letto questo post saprai: Come calcolare la funzione logistica. Come apprendere i coefficienti per un modello di regressione logistica utilizzando la discesa del gradiente stocastico. Come fare previsioni usando un modello di regressione logistica. Questo post è stato scritto per gli sviluppatori e non presuppone un background in statistiche o probabilità. Set di dati dell'esercitazione sulla Regressione Logistica In questo tutorial useremo un set di dati inventato. Questo set di dati ha due variabili di input (X1 e X2) e una variabile di output (Y). Nelle variabili di input sono numeri casuali con valori reali estratti da una distribuzione gaussiana. La variabile di output ha due valori, rendendo il problema un problema di classificazione binaria. I dati grezzi sono elencati di seguito. X1 X2 Y 2.7810836 2.550537003 0 1.465489372 2.362125076 0 3.396561688 4.400293529 0 1.38807019 1.850220317 0 3.06407232 3.005305973 0 7.627531214 2.759262235 1 5.332441248 2.088626775 1 6.922596716 1.77106367 1 8.675418651 -0.2420686549 1 7.673756466 3.508563011 1 Di seguito è riportato un grafico del set di dati. Puoi vedere che è completamente artificioso e che possiamo facilmente tracciare una linea per separare le classi. Questo è esattamente ciò che faremo con il modello di regressione logistica. Funzione logistica Prima di addentrarci nella regressione logistica, diamo un'occhiata alla funzione logistica, il cuore della tecnica di regressione logistica. La funzione logistica è definita come: funzione = 1 / (1 + e^-x) Dove e è la costante numerica del numero di Eulero e x è un input che inseriamo nella funzione. Inseriamo una serie di numeri da -5 a +5 e vediamo come la funzione logistica li trasforma: X Transformed -5 0.006692850924 -4 0.01798620996 -3 0.04742587318 -2 0.119202922 -1 0.2689414214 0 0.5 1 0.7310585786 2 0.880797078 3 0.9525741268 4 0.98201379 5 0.9933071491 Puoi vedere che tutti gli input sono stati trasformati nell'intervallo [0, 1] e che i numeri negativi più piccoli hanno prodotto valori vicini a zero e i numeri positivi più grandi hanno prodotto valori vicini a uno. Puoi anche vedere quello 0 trasformato in 0,5 o nel punto medio del nuovo intervallo. Da ciò possiamo vedere che finché il nostro valore medio è zero, possiamo inserire valori positivi e negativi nella funzione e ottenere sempre una trasformazione coerente nel nuovo intervallo. Modello di regressione logistica Il modello di regressione logistica prende input a valori reali e fa una previsione sulla probabilità che l'input appartenga alla classe di default (classe 0). Se la probabilità è > 0,5 possiamo prendere l'output come una previsione per la classe predefinita (classe 0), altrimenti la previsione è per l'altra classe (classe 1). Per questo set di dati, la regressione logistica ha tre coefficienti proprio come la regressione lineare, ad esempio: uscita = b0 + b1*x1 + b2*x2 Il compito dell'algoritmo di apprendimento sarà quello di scoprire i valori migliori per i coefficienti (b0, b1 e b2) in base ai dati di addestramento. A differenza della regressione lineare, l'output viene trasformato in una probabilità utilizzando la funzione logistica: p(classe=0) = 1 / (1 + e^(-output)) Nel tuo foglio di lavoro questo sarebbe scritto come: p(classe=0) = 1 / (1 + EXP(-uscita)) Regressione logistica per discesa stocastica a gradiente Possiamo stimare i valori dei coefficienti usando la discesa del gradiente stocastico. Questa è una procedura semplice che può essere utilizzata da molti algoritmi nell'apprendimento automatico. Funziona utilizzando il modello per calcolare una previsione per ogni istanza nel set di addestramento e calcolando l'errore per ogni previsione. Possiamo applicare la discesa stocastica del gradiente al problema di trovare i coefficienti per il modello di regressione logistica come segue: Data ogni istanza di formazione: Calcola una previsione utilizzando i valori correnti dei coefficienti. Calcola nuovi valori di coefficiente in base all'errore nella previsione. Il processo viene ripetuto finché il modello non è sufficientemente accurato (ad es. l'errore scende a un livello desiderabile) o per iterazioni di un numero fisso. Continui ad aggiornare il modello per le istanze di addestramento e la correzione degli errori fino a quando il modello non è sufficientemente accurato. Orc non può essere reso più accurato. Spesso è una buona idea randomizzare l'ordine delle istanze di addestramento mostrate al modello per confondere le correzioni apportate. Aggiornando il modello per ogni modello di formazione, chiamiamo questo apprendimento online. È anche possibile raccogliere tutte le modifiche al modello su tutte le istanze di addestramento ed effettuare un aggiornamento di grandi dimensioni. Questa variazione è chiamata apprendimento in batch e potrebbe essere una bella estensione a questo tutorial se ti senti avventuroso. Regressione logistica per discesa stocastica a gradiente Iniziamo assegnando 0,0 a ciascun coefficiente e calcolando la probabilità della prima istanza di addestramento che appartiene alla classe 0. B0 = 0,0 B1 = 0,0 B2 = 0,0 La prima istanza di addestramento è: x1=2,7810836, x2=2,550537003, Y=0 Usando l'equazione sopra possiamo inserire tutti questi numeri e calcolare una previsione: previsione = 1 / (1 + e^(-(b0 + b1*x1 + b2*x2))) previsione = 1 / (1 + e^(-(0.0 + 0.0*2.7810836 + 0.0*2.550537003))) previsione = 0,5 Calcola nuovi coefficienti Possiamo calcolare i nuovi valori dei coefficienti usando una semplice equazione di aggiornamento. b = b + alfa * (y – previsione) * previsione * (1 – previsione) * x Dove b è il coefficiente che stiamo aggiornando e la previsione è l'output di una previsione utilizzando il modello. Alpha è il parametro che è necessario specificare all'inizio dell'esecuzione dell'addestramento. Questo è il tasso di apprendimento e controlla quanto i coefficienti (e quindi il modello) cambiano o apprendono ogni volta che viene aggiornato. Tassi di apprendimento più elevati vengono utilizzati nell'apprendimento online (quando aggiorniamo il modello per ogni istanza di formazione). I buoni valori potrebbero essere compresi tra 0,1 e 0,3. Usiamo un valore di 0,3. Noterai che l'ultimo termine nell'equazione è x, questo è il valore di input per il coefficiente. Noterai che il B0 non ha un input. Questo coefficiente è spesso chiamato bias o intercetta e possiamo presumere che abbia sempre un valore di input di 1,0. Questa ipotesi può aiutare quando si implementa l'algoritmo utilizzando vettori o array. Aggiorniamo i coefficienti utilizzando i valori di previsione (0,5) e coefficiente (0,0) della sezione precedente. b0 = b0 + 0,3 * (0 – 0,5) * 0,5 * (1 – 0,5) * 1,0 b1 = b1 + 0,3 * (0 – 0,5) * 0,5 * (1 – 0,5) * 2,7810836 b2 = b2 + 0,3 * (0 – 0,5) * 0,5 * (1 – 0,5) * 2,550537003 Quindi b0 = -0,0375 b1 = -0,104290635 b2 = -0,09564513761 Ripetere il processo Possiamo ripetere questo processo e aggiornare il modello per ogni istanza di training nel set di dati. Una singola iterazione del set di dati di addestramento è chiamata epoch. È comune ripetere la procedura di discesa del gradiente stocastico per un numero fisso di epoche. Alla fine dell'epoca è possibile calcolare i valori di errore per il modello. Poiché si tratta di un problema di classificazione, sarebbe utile avere un'idea di quanto sia accurato il modello ad ogni iterazione. Il grafico sottostante mostra un grafico della precisione del modello su 10 epoche. Puoi vedere che il modello raggiunge molto rapidamente una precisione del 100% sul set di dati di addestramento. I coefficienti calcolati dopo 10 epoch di discesa stocastica del gradiente sono: b0 = -0,4066054641 b1 = 0,8525733164 b2 = -1.104746259 Fare previsioni Ora che abbiamo addestrato il modello, possiamo usarlo per fare previsioni. Possiamo fare previsioni sul set di dati di addestramento, ma potrebbero benissimo trattarsi di nuovi dati. Utilizzando i coefficienti sopra appresi dopo 10 epoche, possiamo calcolare i valori di output per ciascuna istanza di addestramento: 0.2987569857 0.145951056 0.08533326531 0.2197373144 0.2470590002 0.9547021348 0.8620341908 0.9717729051 0.9992954521 0.905489323 Queste sono le probabilità di ogni istanza appartenente a class=0. Possiamo convertirli in valori di classe nitidi usando: previsione = SE (uscita < 0,5) Allora 0 Altrimenti 1 Con questa semplice procedura possiamo convertire tutti gli output in valori di classe: 0 0 0 0 0 1 1 1 1 1 Infine, possiamo calcolare l'accuratezza per il modello sul set di dati di addestramento: accuratezza = (previsioni corrette / num previsioni effettuate) * 100 precisione = (10/10) * 100 precisione = 100% Riepilogo In questo post hai scoperto come implementare la regressione logistica da zero, passo dopo passo. Hai imparato: Come calcolare la funzione logistica. Come apprendere i coefficienti per un modello di regressione logistica utilizzando la discesa del gradiente stocastico. Come fare previsioni usando un modello di regressione logistica. Hai domande su questo post o sulla regressione logistica? Lascia un commento e fai la tua domanda, faremo del nostro meglio per rispondere.

  • Creare e Automatizzare Documenti Aziendali con Make.com e Zapier - 5 Casi Studio

    riga di codice, integrandosi perfettamente con una vasta gamma di applicazioni, inclusi servizi di intelligenza Integrazioni con l'Intelligenza Artificiale L'integrazione con OpenAI è uno degli aspetti più interessanti Questo tipo di integrazione rende possibile automatizzare compiti complessi che richiederebbero un'intelligenza La piattaforma supporta oltre 3.000 applicazioni, inclusi strumenti di intelligenza artificiale come Prenota una Consulenza Gratuita e inizia il tuo percorso verso l'innovazione e il successo con Intelligenza

  • Come Distribuire un Modello di Machine Learning usando Flask

    Nella moderna era digitale, l'intelligenza artificiale e il machine learning stanno rivoluzionando innumerevoli questi vantaggi, non sorprende che Flask sia diventato uno strumento favorito tra gli sviluppatori di intelligenza Tieniti forte, perché stiamo per intraprendere un emozionante viaggio nell'unire il potere dell'intelligenza caratteristiche vantaggiose, non sorprende che Flask sia diventato uno strumento favorito tra gli sviluppatori di intelligenza Il campo dell'intelligenza artificiale è in costante evoluzione, e padroneggiare le tecniche di distribuzione

bottom of page