Risultati Ricerca Intelligenza Artificiale Italia
475 elementi trovati per ""
- Intelligenza Artificiale e Italia è stata lancia la strategia nazionale
Ventiquattro politiche per accelerare, nei prossimi tre anni, l’innovazione e le potenzialità dell’IA nel tessuto economico e sociale del Paese Scarica Gratuitamente le Comunicazioni Ufficiali La promessa dell'Italia sull'Intelligenza Artificiale L'Italia ha adottato il Piano Strategico 2022-2024 per l'Intelligenza Artificiale (IA), adottato dal nuovo Consiglio dei ministri, che è il risultato del lavoro congiunto dell'Università e del Ministero della Ricerca, del Ministero dello Sviluppo Economico e del Ministro della Tecnologia. Innovazione e trasformazione digitale, grazie al supporto del National Artificial Intelligence Strategy Working Group. Secondo la strategia europea, il piano delinea ventiquattro politiche da attuare nei prossimi tre anni per potenziare il sistema di intelligenza artificiale italiano attraverso la creazione e il potenziamento di competenze, programmi di ricerca, sviluppo e applicazioni di intelligenza artificiale. Queste politiche mirano a rendere l'Italia un centro di intelligenza artificiale competitivo a livello globale rafforzando la ricerca e incoraggiando il trasferimento tecnologico. Per far fronte a queste sfide, sono state individuate le fonti di investimento, europee e nazionali per sostenere ciascuna politica. Aree prioritarie e politiche di intervento Tra le iniziative dedicate ai talenti e alle competenze, si prevede di intervenire per aumentare il numero dei dottorati di ricerca e attirare in Italia i migliori ricercatori nel campo della ricerca di base e applicata. Allo stesso tempo, il piano include anche politiche per promuovere il curriculum delle materie STEM e lo sviluppo della carriera e per rafforzare le competenze digitali e di intelligenza artificiale. Il piano strategico comprende anche le politiche necessarie per rafforzare la struttura dell'ecosistema italiano della ricerca sull'intelligenza artificiale e promuovere la cooperazione tra le comunità accademiche e di ricerca, l'industria, le istituzioni pubbliche e la società. L'obiettivo è, tra l'altro, istituire una nuova cattedra di ricerca sull'intelligenza artificiale, promuovere progetti che incoraggino i professionisti del settore a tornare in Italia e fornire finanziamenti per piattaforme per condividere dati e software a livello nazionale. L'ultimo ambito, infine, riguarda le politiche volte ad ampliare l'applicazione dell'intelligenza artificiale nell'industria e nella PA. Le misure a sostegno delle imprese sono finalizzate a sostenere la trasformazione 4.0, sostenere la nascita e la crescita di imprese innovative di intelligenza artificiale, e supportare la sperimentazione e la certificazione dei prodotti di intelligenza artificiale. Gli interventi della pubblica amministrazione mirano a creare un'infrastruttura dati per utilizzare in sicurezza il potenziale dei big data che genera servizi pubblici, semplificare e personalizzare l'erogazione dei servizi pubblici e l'innovazione amministrativa, rafforzando l'ecosistema. GovTech in Italia. Quest'ultima misura, ad esempio, prevede l'introduzione di telefonate periodiche per identificare e supportare le start-up che forniscono soluzioni basate sull'intelligenza artificiale in grado di risolvere problemi critici nel settore pubblico. Per garantire una governance efficace e monitorare lo stato di attuazione della strategia, e per coordinare tutte le iniziative di governo sul tema, nasce anche il gruppo di lavoro permanente sull'IA in seno al Comitato Interministeriale per la Transizione Digitale. INTELLIGENZA ARTIFICIALE ITALIA Il Comunicato Stampa Ufficiale Intelligenza Artificiale: l’Italia lancia la strategia nazionale Ventiquattro politiche per accelerare, nei prossimi tre anni, l’innovazione e le potenzialità dell’IA nel tessuto economico e sociale del Paese Messa: “Il sistema italiano della ricerca e della formazione è in prima fila. Investiamo sui giovani, soprattutto donne, e creiamo le condizioni perché arrivino sempre più ricercatori dall’estero”. Giorgetti: “Con il Programma Strategico puntiamo a colmare il ritardo nello sviluppo e nell'adozione di soluzioni innovative dando nuovo impulso alla transizione digitale del nostro sistema produttivo”. Colao: “Nella strategia previsti programmi di accelerazione per start-up con soluzioni innovative per la PA e investimenti dedicati anche tramite il Fondo innovazione”. Roma 24 novembre 2021 - L’Italia ha adottato, con l’approvazione in Consiglio dei ministri, il Programma Strategico per l’Intelligenza Artificiale (IA) 2022-2024, frutto del lavoro congiunto del Ministero dell’Università e della Ricerca, del Ministero dello Sviluppo Economico e del Ministro per l’innovazione tecnologica e la transizione digitale. In linea con la Strategia Europea, il Programma delinea ventiquattro politiche da implementare nei prossimi tre anni per potenziare il sistema IA in Italia, attraverso creazione e potenziamento di competenze, ricerca, programmi di sviluppo e applicazioni dell’IA. Queste politiche hanno l’obiettivo di rendere l’Italia un centro sull’intelligenza artificiale competitivo a livello globale, rafforzando la ricerca e incentivando il trasferimento tecnologico. Per rispondere a queste sfide sono state individuate le fonti di investimento europee e nazionali per sostenere ciascuna politica. “Il sistema italiano della ricerca e della formazione è pronto a guidare il potenziamento di questo settore” ha dichiarato il Ministro dell’Università e della Ricerca Maria Cristina Messa. “La strategia è una straordinaria occasione di crescita competitiva: creiamo le condizioni per i giovani italiani, soprattutto donne, che decidono di investire in corsi di studio e nella ricerca sull’intelligenza artificiale di poterlo fare, ai massimi livelli, rimanendo nel nostro Paese. E stimoliamo scambi e incontri anche con tanti ricercatori provenienti da tutto il mondo”. "Con il Programma Strategico per l'Intelligenza Artificiale puntiamo a colmare il ritardo nello sviluppo e nell'adozione di soluzioni innovative in questo ambito tecnologico, dando nuovo impulso alla transizione digitale del nostro sistema produttivo”, dichiara Giancarlo Giorgetti, Ministro dello Sviluppo economico. “L’intelligenza Artificiale è lo strumento con cui il nostro Paese nei prossimi anni - aggiunge - vuole rafforzare l'interazione tra centri di ricerca e impresa, in modo da creare le premesse per uno sviluppo basato sulla capacità di innovazione." “La strategia è la base per lanciare programmi e investimenti concreti per rendere l’Italia competitiva a livello internazionale e con un sistema pubblico più efficiente” commenta Vittorio Colao, Ministro per l’innovazione tecnologica e la transizione digitale. “Prevediamo programmi di accelerazione per le start-up che propongono soluzioni innovative per le PA e iniziative ad hoc per alzare notevolmente la qualità di processi e servizi pubblici e migliorare il rapporto cittadini-Stato. Su questo punto lavoreremo di concerto con il Ministro per la Pubblica Amministrazione utilizzando anche investimenti presenti nel Fondo Innovazione”. Le aree prioritarie e le politiche di intervento All’interno delle iniziative dedicate a talenti e competenze sono previsti interventi per aumentare il numero di dottorati e attrarre in Italia i migliori ricercatori, sia in ambito di ricerca fondamentale sia applicata. Al contempo, il programma include politiche per promuovere corsi e carriere nelle materie STEM e per rafforzare le competenze digitali e in Intelligenza Artificiale. Il programma strategico, inoltre, racchiude le politiche necessarie a rafforzare la struttura dell’ecosistema di ricerca italiano nell’IA, favorendo le collaborazioni tra il mondo accademico e della ricerca, l'industria, gli enti pubblici e la società. Si punta, tra l’altro, alla creazione di nuove cattedre di ricerca sull’IA, a promuovere progetti per incentivare il rientro in Italia di professionisti del settore, a finanziare piattaforme per la condivisione di dati e software a livello nazionale. Infine, l’ultima area riguarda le politiche volte ad ampliare l'applicazione dell'IA nelle industrie e nella PA. Le misure a favore delle imprese hanno lo scopo di supportare la Transizione 4.0, favorire la nascita e la crescita di imprese innovative dell'IA e supportarle nella sperimentazione e certificazione dei prodotti di IA. Gli interventi per la Pubblica Amministrazione sono volti alla creazione di infrastrutture dati per sfruttare in sicurezza il potenziale dei big data che genera la PA, alla semplificazione e personalizzazione dell’offerta dei servizi pubblici e all’innovazione delle amministrazioni, tramite il rafforzamento dell’ecosistema GovTech in Italia. Quest’ultima misura, per esempio, prevede l’introduzione di bandi periodici per identificare e supportare le start-up che offrono soluzioni basate sull'IA che possono risolvere problemi critici del settore pubblico. Per garantire un’efficace governance, per monitorare lo stato di attuazione della strategia, e per coordinare tutte le iniziative di governo sul tema, nasce anche il gruppo di lavoro permanente sull'IA in seno al Comitato Interministeriale per la Transizione Digitale. Si ringraziano per la collaborazione i componenti del gruppo di lavoro sulla Strategia Nazionale per l’Intelligenza Artificiale, composto da Barbara Caputo, Isabella Castiglioni, Marco Conti, Rita Cucchiara, Juan Carlos de Martin, Fosca Giannotti, Giuseppe Magnifico, Michela Milano, Giovanni Miragliotta.
- Tutorial Pratico Tensorflow , TensorBoard e Python, per capire come funzionano le reti neurali
Diciamoci la verità, capire cosa accade durante la fase di apprendimento automatico è complicato. Ci sono innumerevoli parametri, iperparametri, variabili, layer, etc.. disponibili e molto da monitorare. Fortunatamente, c'è TensorBoard, che semplifica il processo. Quando si sviluppano modelli di apprendimento automatico, ci sono molti fattori: quante epoche per l'addestramento, la metrica di perdita o persino la struttura del modello. Ora non vogliamo dirti che grazie a TensorBoard aumenterai la precisione dei tuoi modelli del 10% o 30%, ma ti assicuriamo che riuscirai a capire esattamente cosa porta all'errore il tuo modello per poi sistemare i tuoi dati. Questo articolo discuterà alcune funzionalità di TensorBoard e come puoi configurare TensorBoard per il tuo prossimo progetto di machine learning o deep learning. In particolare, l'attenzione sarà focalizzata sull'utilizzo di TensorBoard con modelli basati su TensorFlow e Keras. Per determine una configurazione ottimale del modello, è necessario eseguire esperimenti. E come tutti i data scientist sanno, è necessario monitorare e valutare questi esperimenti in modo efficace. Fortunatamente, TensorBoard ha molte funzionalità integrate che puoi utilizzare per capire rapidamente cosa sta succedendo all'interno del tuo modello. Come Configuare TensorBoard sul tuo Pc La configurazione di TensorBoard è un processo semplice. Con solo poche righe di codice, puoi tenere traccia delle metriche chiave del tuo modello di machine learning. Se vuoi seguirci passo passo, la prima cosa da fare è aprire un notebook e caricare l'estensione Tensorboard, con 1 semplicissima riga di codice : %load_ext tensorboard Caricata l'estensione TensorBoard successivamente, avrai bisogno di alcuni dati. Qui sto usando il set di dati MNIST integrato in TensorFlow. I dati vengono rimodellati per consentire l'uso di livelli convoluzionali 2D. Dopo che i dati sono stati preparati, è necessario creare il modello. Qui ho esagerato un po' e ho parametrizzato ogni variabile. Questa scelta viene fatta per cambiare rapidamente diversi aspetti del modello senza troppi problemi. Questa struttura evita anche di avere valori in cui non è chiaro cosa sta cambiando il valore. La struttura è semplice. Ma questa struttura di base mostra una varietà di livelli diversi, che puoi analizzare in TensorBoard. Il modello contiene uno strato convoluzionale 2D seguito da uno strato di pooling, uno strato dropout, un appiattimento dell'output e uno strato denso. C'è anche un adeguamento al tasso di apprendimento. A differenza dell'impostazione di un tasso di apprendimento fisso, lo scheduler rende il tasso di apprendimento flessibile e aiuta con la convergenza. Per aggiungere la funzionalità TensorBoard al modello TensorBoard esistente basato su Keras, è necessario aggiungere un callback durante la fase di addestramento del modello di adattamento. Il calcolo dell'istogramma dovrebbe essere abilitato per tenere traccia dei progressi in modo efficace, e questo viene fatto impostando il parametro historgram_freq su 1. La funzione di callback richiede una directory di log per memorizzare i risultati dell'addestramento del modello. Pertanto, è utile includere alcuni ordini strutturati nei registri per riferimento futuro. L'ora corrente viene utilizzata qui. Una volta che il modello è stato creato, compilato e adattato, i registri dovrebbero essere compressi. Pieno di tutti i dettagli del tuo modello durante l'allenamento. Pronto per essere analizzato. Per visualizzare i risultati del processo di formazione all'interno di TensorBoard, non resta che eseguire l'estensione. Componenti di TensorBoard TensorBoard è suddiviso in diversi componenti. Questi componenti consentono di tenere traccia di diverse metriche come accuratezza, errore quadratico medio o perdita di registro. Consentono inoltre la visualizzazione del modello come grafico e molto altro ancora. Sto mostrando le schede scalari, grafici, distribuzioni, istogrammi e serie temporali in questo post. Ma un elenco delle altre visualizzazioni disponibili si trova nel menu a discesa inattivo. TensorBoard ha anche alcune opzioni di stile. Ho usato la modalità oscura per alcune delle immagini qui. Valori Scalari Gli scalari sono la prima scheda che vedrai all'apertura di TensorBoard. L'attenzione qui è sulle prestazioni del modello in più epoche. Qui vengono mostrati sia la funzione di perdita dei modelli che tutte le metriche che hai monitorato. Una caratteristica essenziale di questa scheda è la funzione di levigatura. Quando si ha a che fare con molte epoche o con un modello precario, la tendenza generale può andare persa. Pertanto, vuoi assicurarti che il tuo modello stia migliorando durante l'allenamento e non ristagni. Aumentando il livellamento, è possibile visualizzare le tendenze complessive del modello durante il processo di addestramento. La scheda scalari è fondamentale per identificare quando un modello è overfitting. Ad esempio, quando la tua metrica di allenamento continua a migliorare ma non c'è un aumento nel grafico di convalida, potresti essere in overfitting sul set di convalida. Grafici La scheda dei grafici ti consente di visualizzare la struttura del modello che hai creato. In sostanza, mostra cosa sta succedendo dietro le quinte. Questi dettagli sono utili quando è necessario condividere la struttura dei grafici con altri. Inoltre, è disponibile la possibilità di caricare o scaricare grafici. Oltre alla struttura del modello di base, il grafico mostra anche come vengono utilizzate le diverse metriche e l'ottimizzatore. Qui ho selezionato il nodo sequenziale con il grafico. Una volta selezionato, viene mostrata la struttura dei modelli. I dettagli sono visibili all'interno del riquadro rosso nell'immagine sottostante. Distribuzioni e istogrammi Le schede distribuzioni e istogrammi sono piuttosto simili. Tuttavia, consentono di visualizzare le stesse informazioni attraverso visualizzazioni diverse. La scheda delle distribuzioni offre una buona panoramica delle modifiche dei pesi del modello nel tempo. Questa prospettiva serve come indicatore iniziale per vedere se qualcosa è andato storto. La visualizzazione degli istogrammi fornisce una suddivisione più dettagliata dei valori esatti appresi dal modello. Queste due visualizzazioni vengono utilizzate per determinare quando il modello si basa eccessivamente su un piccolo insieme di pesi. O se i pesi convergono su molte epoche. Serie temporali L'ultima scheda mostrata qui in TensorBoard è la scheda delle serie temporali. Questa vista è abbastanza simile alla vista scalare. Tuttavia, una distinzione sono le osservazioni della metrica di destinazione per ogni iterazione dell'addestramento anziché per ogni epoca. L'osservazione del training del modello in questo modo è molto più granulare. Questo tipo di analisi è migliore quando il modello non converge e l'andamento delle epoche non rivela alcuna risposta. Conclusioni TensorBoard è uno strumento potente. Attraverso diversi componenti e visualizzazioni, puoi analizzare rapidamente i tuoi modelli di machine learning e deep learning. Lo strumento è facile da configurare e fornisce preziose informazioni su come addestrare meglio il tuo modello. Qui ti ho mostrato solo un esempio di ciò che è possibile con TensorBoard. Sentiti libero di copiare il codice ed esplorare lo strumento da solo.
- 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.
- Chatbot una Guida Completa, che cosa sono, come funzionano e come creare il tuo
Da qualche anno, sono arrivati sul mercato nuovi strumenti progettati per semplificare l'interazione tra uomo e computer: Chatbot o Assistenti virtuali . Nel settore bancario, i chatbot e gli assistenti virtuali sono alcuni degli strumenti più recenti del settore progettati per semplificare l'interazione tra uomo e computer. Che cos'è un chatbot? Un chatbot è un software di intelligenza artificiale (AI) in grado di simulare una conversazione (o una chat) con un utente mediante il linguaggio naturale utilizzando come interfaccia applicazioni di messaggistica, siti Web, app mobili o tramite smartwatch. Perché i chatbot sono importanti? Un chatbot è spesso descritto come una delle espressioni più avanzate e promettenti di interazione tra uomo e macchina. Tuttavia, da un punto di vista tecnologico, un chatbot rappresenta solo la naturale evoluzione di un sistema di Question Answering che sfrutta il Natural Language Processing (NLP). Formulare risposte alle domande in linguaggio naturale è uno degli esempi più tipici di elaborazione del linguaggio naturale applicato nelle applicazioni finali di varie aziende. Come funzionano i Chatbot I chatbot funzionano analizzando e identificando l'intento della richiesta dell'utente di estrarre entità rilevanti, che è il compito più importante di un chatbot. Una volta eseguita l'analisi, all'utente viene fornita una risposta appropriata. I chatbot funzionano adottando tre metodi di classificazione. Chat bot a Corrispondenza I bot utilizzano le corrispondenze di pattern per raggruppare il testo e producono una risposta appropriata da parte dei client. Artificial Intelligence Markup Language (AIML) è un modello strutturato standard di questi modelli. Un bot è in grado di ottenere la risposta giusta nel pattern correlato. I bot reagiscono a qualsiasi cosa relativa ai modelli correlati. Chat bot a Comprensione del linguaggio naturale (NLU) La comprensione del linguaggio naturale (NLU) è la capacità del chatbot di comprendere un essere umano. È il processo di conversione del testo in dati strutturati che una macchina può comprendere. NLU segue tre concetti specifici : entità, contesto e aspettative Chat bot a Elaborazione del linguaggio naturale (PNL) I bot di elaborazione del linguaggio naturale (NLP) sono progettati per convertire il testo o gli input vocali dell'utente in dati strutturati. I dati vengono ulteriormente utilizzati per scegliere una risposta pertinente. NLP include i passaggi importanti come tokenization, analisi chatbot sentiment , il riconoscimento dell'entità, e la dipendenza analisi. Principali Tipi di chatbot I chatbot elaborano i dati per fornire risposte rapide a tutti i tipi di richieste degli utenti con regole predefinite e chatbot basati sull'intelligenza artificiale. Esistono due tipi di chatbot. Chatbot basati su regole I chatbot basati su regole, detti anche bot decision-tree, utilizzano una serie di regole definite. Queste regole sono la base per i tipi di problemi con cui il chatbot ha familiarità e per i quali può fornire soluzioni. Alcuni punti da ricordare sui chatbot basati su regole: Questi bot seguono regole predeterminate. Quindi diventa facile usare il bot per scenari più semplici. Le interazioni con i chatbot basati su regole sono altamente strutturate e sono più applicabili alle funzioni di assistenza clienti. I bot basati su regole sono ideali per rispondere a domande comuni come domande sull'orario di lavoro, sullo stato della consegna o sui dettagli di tracciamento. Chatbot con intelligenza artificiale conversazionale I chatbot conversazionali combinano la potenza dell'apprendimento automatico e della PNL per comprendere il contesto e l'intento di una domanda prima di formulare una risposta. Sono guidati da script di chatbot e generano le proprie risposte a domande più complicate utilizzando risposte in linguaggio naturale. Più usi e addestri questi bot, più apprendono e meglio operano con l'utente. Le capacità di comunicazione conversazionale della tecnologia chatbot consentono loro di fornire ciò che i clienti stanno cercando. Differenze tra chatbot basati su regole e chatbot conversazionali : I chatbot conversazionali possono comprendere il contesto e l'intento di conversazioni complesse e cercare di fornire risposte più pertinenti. I chatbot conversazionali applicano l'intelligenza predittiva e l'analisi del sentiment per comprendere da vicino le emozioni dei clienti. I chatbot di conversazionali imparano dal comportamento degli utenti e forniscono conversazioni più personalizzate. Perché i chatbot sono importanti per la tua azienda? L'80% dei marketer prevede di iniziare a utilizzare un chatbot in un modo o nell'altro. È un motivo significativo per cui i marchi stanno investendo nel miglioramento dell'esperienza del cliente. I chatbot basati sull'intelligenza artificiale aumentano l'efficienza operativa e riducono i costi alle aziende, offrendo allo stesso tempo comodità per i clienti. Le aziende possono automatizzare le domande frequenti e ridurre la necessità di interazione umana. Di seguito sono riportati i motivi principali per cui sempre più aziende stanno adottando la strategia chatbot e in che modo sono una formula vincente per acquisire e fidelizzare i clienti. Quali Vantaggi porta ad un'Azienda l'utilizzo dei Chatbot : Riduci i tempi di attesa dei clienti : il 21% dei consumatori considera i chatbot il modo più semplice per contattare un'azienda . I bot sono un modo più intelligente per garantire che i clienti ricevano la risposta immediata che stanno cercando senza farli aspettare in coda. Disponibilità 24×7 : i bot sono sempre disponibili per coinvolgere i clienti con risposte immediate alle domande più comuni da loro poste. Il principale vantaggio potenziale dell'utilizzo dei chatbot è il servizio clienti 24 ore su 24. Migliore coinvolgimento dei clienti : i bot conversazionali possono coinvolgere i clienti 24 ore su 24 avviando una conservazione proattiva e offrendo consigli personalizzati che migliorano l'esperienza del cliente. Risparmia sui costi del servizio clienti : i chatbot aiuteranno le aziende a risparmiare più di 8 miliardi € all'anno. I bot possono essere facilmente ridimensionati, il che consente di risparmiare sui costi dell'assistenza clienti per l'assunzione di più risorse, sui costi dell'infrastruttura, ecc. Automatizza la qualificazione e le vendite dei lead : puoi automatizzare il tuo funnel di vendita con i chatbot per prequalificare i lead e indirizzarli al team giusto per un ulteriore nutrimento. Essere in grado di coinvolgere i clienti istantaneamente aumenta il numero di lead e i tassi di conversione. Come costruire un chatbot? I chatbot o gli assistenti virtuali aiutano ad automatizzare le principali funzioni aziendali come vendite, supporto e marketing. Ecco le sei fasi principali che ti aiuteranno a creare il tuo primo chatbot per fornire supporto conversazionale ai tuoi clienti. Definisci i tuoi obiettivi aziendali : devi delineare le funzioni aziendali che devono essere automatizzate. Cosa farà esattamente il tuo chatbot? Scegli il canale giusto per interagire con i tuoi clienti : identifica i canali che i tuoi clienti preferiscono per comunicare con te attraverso il tuo sito web, app mobile, Facebook Messenger, Telegram o altre piattaforme di messaggistica. Addestra il tuo bot per dare la risposta giusta : puoi addestrare il tuo bot con domande frequenti complete a seconda delle tue esigenze aziendali. Ciò aiuterà il bot a fornire risposte pertinenti ai tuoi clienti o visitatori. Dai al tuo chatbot una voce e una personalità : puoi migliorare la personalità del tuo bot dando un nome e un'immagine che integrino il messaggio del tuo marchio. Crea un approccio equilibrato : la maggior parte dei chatbot potrebbe non essere così efficace e i clienti a un certo punto cercano supporto via chat. Puoi definire in quale fase particolare i tuoi clienti possono avere la possibilità di connettersi con l'agente umano. Test, avvio e iterazione : dopo aver definito il flusso del bot, è possibile verificare se soddisfa correttamente o meno il caso d'uso. Una volta avviato il bot, devi misurare le prestazioni del bot ed eseguire le iterazioni richieste di volta in volta. Puoi scegliere uno dei due modi per creare chatbot. Sono i seguenti: #1. Usa una piattaforma chatbot Le piattaforme di chatbot sono un vantaggio per le aziende che vogliono costruire il proprio chatbot senza troppi sforzi e tempo. Ecco i criteri per selezionare una piattaforma bot. Facile da usare : una piattaforma per chatbot già pronta per l'uso comprende il modello predefinito e semplifica la creazione del bot secondo le tue esigenze e la sua distribuzione su più canali. Nessuna codifica : con zero codifica, puoi creare un chatbot con uno sviluppo minimo con meno sforzo e tempo e per un migliore coinvolgimento dei clienti. Analytics : l'analisi dei bot aiuta a misurare la soddisfazione del cliente, quali sono le ricerche riuscite e quelle fallite per le risposte dei bot. Misurando queste metriche, puoi identificare le query chiave richieste dai tuoi clienti e addestrare il tuo bot di conseguenza. Chat dal vivo : puoi cercare una piattaforma bot che supporti sia la chat dal vivo che il chatbot. I bot possono gestire le query più semplici e quelle complesse possono essere trasferite per il supporto umano. #2. Costruisci da zero il tuo chatbot È consigliabile creare un bot completamente da zero se i requisiti aziendali sono unici o molto complessi. In tali scenari, è molto probabile che le piattaforme bot pronte per l'uso non siano in grado di eliminare la soluzione specifica di cui la tua azienda ha bisogno. Linee guida da seguire: identifica i tuoi requisiti aziendali e costruisci il bot per il tuo caso d'uso chiave. Utilizza la piattaforma giusta che copre il bot e la chat dal vivo come un toolkit completo, in modo che il tuo team possa comprendere meglio il percorso del cliente e avere un controllo migliore sulle conversazioni dei clienti. Iscriviti al nostro sito, presto arriverà il tutorial... Esempi di casi d'uso di chatbot I chatbot fungono da catalizzatore per migliorare le prestazioni quando vengono distribuiti in diverse funzioni aziendali e settori. Ecco i casi d'uso chiave di come i clienti ottengono il massimo dai chatbot conversazionali. Utilizzare chatbot per l'Assistenza clienti I rapporti di Business Insider affermano che il 67% dei consumatori in tutto il mondo ha utilizzato un chatbot per l'assistenza clienti . Il servizio clienti è una delle funzioni aziendali chiave in cui i chatbot hanno un grande impatto. Con i chatbot AI, le aziende possono risparmiare sui costi dell'assistenza clienti e migliorare le metriche chiave della produttività che migliorano l' esperienza del servizio clienti . Alcuni casi d'uso chiave del servizio clienti sono i seguenti: Supporto del sito Web : i clienti di oggi si aspettano una risposta in tempo reale. Le aziende stanno adottando la tecnologia chatbot per offrire un tempestivo coinvolgimento dei clienti. Helpdesk IT : i chatbot possono aiutare il tuo helpdesk IT ad aumentare la produttività del tuo team e aumentare l'efficienza. Supporto in-app : avere un bot per gestire le domande frequenti all'interno delle applicazioni migliora il coinvolgimento degli utenti. Consente alle aziende di inviare notifiche per mantenere aggiornati i clienti. Il chatbot bancario HDFC Eva per il servizio clienti è un ottimo esempio Il settore finanziario e il chatbot creano un'ottima partnership. Ne beneficiano sia le banche che i loro clienti. Eva è il primo chatbot bancario conversazionale abilitato all'intelligenza artificiale dell'India. Eva utilizza il più recente Natural Language Processing (NLP) per comprendere le richieste degli utenti e fornisce informazioni rilevanti in tempi di attesa pari a zero. Utilizzare chatbot per creare Saldi La lead generation è la funzione più importante di ogni azienda. Con i chatbot, puoi prequalificare i tuoi lead e automatizzare il tuo funnel di vendita. Puoi farlo inviando i lead direttamente al tuo CRM o trasferirli ai rappresentanti di vendita per assisterli ulteriormente. I principali casi d'uso dei bot di vendita sono: Segmenta il tuo pubblico : i bot ti consentono di identificare gli interessi sui prodotti di visitatori e clienti. In base a ciò puoi segmentare il tuo pubblico di destinazione. Lead pre-qualificazione : i bot, programmati con un questionario di vendita predefinito, convertono i visitatori del tuo sito Web in potenziali clienti. Quindi vengono indirizzati al livello successivo del funnel di vendita. Prenotazioni: i robot aiutano a pianificare gli appuntamenti per l'ospitalità o l'assistenza sanitaria e anche a effettuare prenotazioni per servizi personali. Esempio di bot di lead generation – VainuBot La compilazione dei moduli è una parte vitale della generazione di lead che può essere automatizzata con i chatbot. Quando unisci chatbot e lead generation, la tua azienda può accogliere un buon numero di lead. Vainu , un noto servizio di analisi dei dati ha creato VainuBot per i lead di prequalifica. Utilizzare chatbot per il Marketing I bot possono imparare dall'interazione dell'utente e condividere informazioni rilevanti sul tuo marchio, prodotti e servizi. In sostanza, è in grado di effettuare upselling e cross-selling in modo personalizzato, colloquiale e coinvolgente. Il 57% delle aziende concorda sul fatto che i chatbot forniscano un ROI elevato con il minimo sforzo. I casi d'uso di marketing per un migliore coinvolgimento del cliente sono: Consigli sui prodotti : con i bot, puoi consigliare prodotti o offerte combinate in base al percorso del cliente. Avvia una conversazione proattiva : il bot può avviare una conversazione proattiva mentre il cliente è bloccato all'interno del prodotto e guidarlo nella giusta direzione. Notifiche personalizzate : puoi conoscere il comportamento dei tuoi clienti e migliorare le tue conversazioni personalizzandole. Un ottimo esempio di chatbot di marketing: Spotify Il bot di Facebook Messenger di Spotify semplifica la ricerca, l'ascolto e la condivisione di musica per i suoi clienti. Una volta iniziato, riceverai consigli sulle playlist in base al tuo umore, a ciò che stai facendo o al genere musicale che desideri. Il Futuro dei chatbot Ora, poiché sai cos'è un chatbot e quanto sia importante la tecnologia dei bot per la tua azienda. Sarai sicuramente d'accordo sul fatto che i bot hanno cambiato drasticamente il modo in cui le aziende interagiscono con i propri clienti. Le tecnologie chatbot diventeranno una parte vitale della strategia di coinvolgimento dei clienti in futuro. Nel prossimo futuro, i robot avanzeranno per migliorare le capacità umane e gli agenti umani per essere più innovativi nella gestione delle attività strategiche.
- Machine Learning Esempi di Utilizzo nella Vita di tutti i Giorni - Esempi Pratici Machine Learning
Il machine learning è un'innovazione moderna che ha aiutato l'uomo a migliorare non solo molti processi industriali e professionali, ma anche a far progredire la vita di tutti i giorni. Ma cos'è l'apprendimento automatico? È un sottoinsieme dell'intelligenza artificiale, che si concentra sull'utilizzo di tecniche statistiche per costruire sistemi informatici intelligenti al fine di apprendere dai database a sua disposizione. Attualmente, l'apprendimento automatico è stato utilizzato in più campi e settori. Ad esempio, diagnosi medica, elaborazione di immagini, previsione, classificazione, associazione di apprendimento, regressione, ecc. I sistemi intelligenti basati su algoritmi di apprendimento automatico hanno la capacità di apprendere dall'esperienza passata o dai dati storici. Le applicazioni di machine learning forniscono risultati sulla base dell'esperienza passata. In questo articolo, discuteremo 10 esempi di vita reale di come l'apprendimento automatico sta aiutando a creare una tecnologia migliore per alimentare le idee di oggi. Esempio di Machine Learning 1) Riconoscimento delle immagini Il riconoscimento delle immagini è uno degli usi più comuni del machine learning. Esistono molte situazioni in cui è possibile classificare l'oggetto come immagine digitale . Ad esempio, nel caso di un'immagine in bianco e nero, l'intensità di ciascun pixel viene utilizzata come una delle misurazioni. Nelle immagini a colori, ogni pixel fornisce 3 misurazioni di intensità in tre diversi colori: rosso, verde e blu (RGB). L'apprendimento automatico può essere utilizzato anche per il rilevamento dei volti in un'immagine . C'è una categoria separata per ogni persona in un database di più persone. L'apprendimento automatico viene utilizzato anche per il riconoscimento dei caratteri per distinguere le lettere scritte a mano e quelle stampate. Possiamo segmentare un pezzo di scrittura in immagini più piccole, ciascuna contenente un singolo carattere. Esempio di Machine Learning 2) Riconoscimento vocale Il riconoscimento vocale è la traduzione delle parole pronunciate nel testo. È anche noto come riconoscimento vocale del computer o riconoscimento vocale automatico. Qui, un'applicazione software può riconoscere le parole pronunciate in una clip o file audio e quindi convertire l'audio in un file di testo. La misura in questa applicazione può essere un insieme di numeri che rappresentano il segnale vocale. Possiamo anche segmentare il segnale vocale per intensità in diverse bande tempo-frequenza. Il riconoscimento vocale viene utilizzato in applicazioni come l'interfaccia utente vocale, le ricerche vocali e altro ancora. Le interfacce utente vocali includono la composizione vocale, l'instradamento delle chiamate e il controllo dell'appliance. Può essere utilizzato anche un semplice inserimento dati e la preparazione di documenti strutturati. Esempio di Machine Learning 3) Diagnosi medica L'apprendimento automatico può essere utilizzato nelle tecniche e negli strumenti che possono aiutare nella diagnosi delle malattie . Viene utilizzato per l'analisi dei parametri clinici e la loro combinazione per la previsione di esempio della prognosi della progressione della malattia per l'estrazione di conoscenze mediche per la ricerca dell'esito, per la pianificazione della terapia e il monitoraggio del paziente. Queste sono le implementazioni di successo dei metodi di apprendimento automatico. Può aiutare nell'integrazione di sistemi informatici nel settore sanitario. Esempio di Machine Learning 4) Arbitraggio statistico In finanza, l'arbitraggio si riferisce alle strategie di trading automatizzato che sono a breve termine e coinvolgono un gran numero di titoli. In queste strategie, l'utente si concentra sull'implementazione dell'algoritmo di negoziazione per un insieme di titoli sulla base di quantità come le correlazioni storiche e le variabili economiche generali. I metodi di apprendimento automatico vengono applicati per ottenere una strategia di arbitraggio dell'indice. Applichiamo la regressione lineare e la Support Vector Machine ai prezzi di un flusso di azioni. Esempio di Machine Learning 5) Associazioni di apprendimento Le associazioni di apprendimento sono il processo di sviluppo di intuizioni sulle varie associazioni tra i prodotti. Un buon esempio è come i prodotti non correlati possono essere associati tra loro. Una delle applicazioni del machine learning è studiare le associazioni tra i prodotti che le persone acquistano. Se una persona acquista un prodotto, gli verranno mostrati prodotti simili perché c'è una relazione tra i due prodotti. Quando nuovi prodotti vengono lanciati sul mercato, vengono associati a quelli vecchi per aumentarne le vendite. Esempio di Machine Learning 6) Classificazione Una classificazione è un processo di collocamento di ogni individuo sotto studio in molte classi. La classificazione aiuta ad analizzare le misurazioni di un oggetto per identificare la categoria a cui appartiene quell'oggetto. Per stabilire una relazione efficiente, gli analisti utilizzano i dati. Ad esempio, prima che una banca decida di erogare prestiti, valuta i clienti sulla loro capacità di pagare i prestiti. Considerando fattori come i guadagni, i risparmi e la storia finanziaria del cliente, possiamo farlo. Queste informazioni sono tratte dai dati passati sul prestito. Esempio di Machine Learning 7) Predizione L'apprendimento automatico può essere utilizzato anche nei sistemi di previsione. Considerando l'esempio del prestito, per calcolare la probabilità di un guasto, il sistema dovrà classificare i dati disponibili in gruppi. È definito da un insieme di regole prescritte dagli analisti. Una volta effettuata la classificazione, possiamo calcolare la probabilità del guasto. Questi calcoli possono essere eseguiti in tutti i settori per vari scopi. Fare previsioni è una delle migliori applicazioni di machine learning. Esempio di Machine Learning 8) Estrazione L'estrazione di informazioni è una delle migliori applicazioni del machine learning . È il processo di estrazione di informazioni strutturate dai dati non strutturati. Ad esempio, le pagine Web, gli articoli, i blog, i rapporti aziendali e le e-mail. Il database relazionale mantiene l'output prodotto dall'estrazione delle informazioni. Il processo di estrazione prende un insieme di documenti come input ed emette i dati strutturati. Esempio di Machine Learning 9) Regressione Possiamo anche implementare l'apprendimento automatico anche nella regressione. Nella regressione, possiamo utilizzare il principio dell'apprendimento automatico per ottimizzare i parametri. Può anche essere usato per diminuire l'errore di approssimazione e calcolare il risultato più vicino possibile. Possiamo anche utilizzare l'apprendimento automatico per l'ottimizzazione della funzione. Possiamo anche scegliere di modificare gli input per ottenere il risultato più vicino possibile. Esempio di Machine Learning 10) Servizi finanziari L'apprendimento automatico ha un grande potenziale nel settore finanziario e bancario . È la forza trainante della popolarità dei servizi finanziari. L'apprendimento automatico può aiutare le banche e gli istituti finanziari a prendere decisioni più intelligenti. L'apprendimento automatico può aiutare i servizi finanziari a individuare la chiusura di un conto prima che si verifichi. Può anche monitorare il modello di spesa dei clienti. L'apprendimento automatico può anche eseguire l'analisi di mercato. Le macchine intelligenti possono essere addestrate per monitorare i modelli di spesa. Gli algoritmi possono identificare facilmente le tende e possono reagire in tempo reale. Conclusione In poche parole, possiamo dire che l'apprendimento automatico è un'incredibile svolta nel campo dell'intelligenza artificiale. E mentre l'apprendimento automatico ha alcune implicazioni spaventose, queste applicazioni di apprendimento automatico sono uno dei modi attraverso i quali la tecnologia può migliorare le nostre vite.
- Analisi esplorativa dati con Python. Analisi esplorativa dei dati (EDA) - Esempio Pratico
Che cosa è l'analisi esplorativa dei dati ? L'analisi esplorativa dei dati si riferisce al processo critico di eseguire indagini iniziali sui dati in modo da scoprire modelli, individuare anomalie, testare ipotesi e verificare ipotesi con l'aiuto di statistiche riassuntive e rappresentazioni grafiche. È una buona pratica comprendere prima i dati e cercare di raccogliere il maggior numero di informazioni da essi. L'EDA consiste nel dare un senso ai dati in mano, prima di partire con l'implementare mille modelli predittivi e milioni di layer . Analisi esplorativa dei dati EDA - Un esempio pratico step by step Per condividere la mia conoscenza del concetto e delle tecniche che conosco, prenderò un esempio di variante del set di dati sulla qualità del vino disponibile su UCI Machine Learning Repository e cercherò di acquisire il maggior numero di informazioni dal set di dati utilizzando EDA. Siccome ci teniamo a condividere con voi tutto il materiale che usiamo per scrivere gli articoli vi lasciamo qui tutti i file che potrebbero servirvi per seguirci mentre programmate. Per cominciare, ho importato le librerie necessarie (per questo esempio pandas, numpy, matplotlib e seaborn) e caricato il set di dati. Nota: qualsiasi deduzione che ho potuto estrarre, l'ho menzionata con punti elenco. I dati originali sono separati dal delimitatore “ ; “ in un dato set di dati. Per dare un'occhiata più da vicino ai dati ci si è avvalso della funzione “ .head()” della libreria pandas che restituisce le prime cinque osservazioni del set di dati. Analogamente “.tail()” restituisce le ultime cinque osservazioni del set di dati. Ho scoperto il numero totale di righe e colonne nel set di dati utilizzando ".shape". Il set di dati comprende 4898 osservazioni(righe) e 12 caratteristiche(colonne). Di cui una è variabile dipendente e il resto 11 sono variabili indipendenti - caratteristiche fisico-chimiche. È anche una buona pratica conoscere le colonne e i loro tipi di dati corrispondenti, oltre a scoprire se contengono valori null o meno. I dati hanno solo valori float e interi. Nessuna colonna variabile ha valori nulli/mancanti. La funzione description() in pandas è molto utile per ottenere varie statistiche di riepilogo. Questa funzione restituisce il conteggio, la media, la deviazione standard, i valori minimo e massimo e i quantili dei dati. Qui, come puoi notare, il valore medio è inferiore al valore mediano di ciascuna colonna che è rappresentato dal 50% (50° percentile) nella colonna dell'indice. C'è in particolare una grande differenza tra il 75% e i valori massimi dei predittori "zucchero residuo", "anidride solforosa libera", "anidride solforosa totale". Quindi le osservazioni 1 e 2 suggeriscono che ci sono valori estremi-Outlier nel nostro set di dati. Alcune informazioni chiave semplicemente guardando alla variabile dipendente sono le seguenti: La variabile target/Variabile dipendente è di natura discreta e categorica. La scala del punteggio di "qualità" varia da 1 a 10; dove 1 è scarso e 10 è il migliore. 1,2 e 10 Le valutazioni di qualità non sono fornite da alcuna osservazione. Solo i punteggi ottenuti sono compresi tra 3 e 9. Questo ci dice il conteggio dei voti di ogni punteggio di qualità in ordine decrescente. la “qualità” ha la maggior parte dei valori concentrati nelle categorie 5, 6 e 7. Solo poche osservazioni fatte per le categorie 3 e 9. Ho avuto una buona visione dei dati. Ma questa è la cosa con Data Science più ti coinvolgi più è difficile per te smettere di esplorare. Ora esploriamo i dati con bellissimi grafici. Python ha una libreria di visualizzazione, Seaborn , che si basa su matplotlib. Fornisce grafici statistici molto interessanti per eseguire analisi sia univariate che multivariate . Per utilizzare la regressione lineare per la modellazione, è necessario rimuovere le variabili correlate per migliorare il modello. È possibile trovare le correlazioni utilizzando la funzione ".corr()" e visualizzare la matrice di correlazione utilizzando una mappa di calore in seaborn. Analisi esplorativa dati con la Mappa di calore e Correlazione Le tonalità scure rappresentano una correlazione positiva mentre le tonalità più chiare rappresentano una correlazione negativa. Se imposti annot=True, otterrai i valori in base ai quali le caratteristiche sono correlate tra loro nelle celle della griglia. È buona norma rimuovere le variabili correlate durante la selezione delle funzioni. Qui possiamo dedurre che "densità" ha una forte correlazione positiva con "zucchero residuo" mentre ha una forte correlazione negativa con "alcol". "anidride solforosa libera" e "acido citrico" non hanno quasi alcuna correlazione con la "qualità". Poiché la correlazione è zero, possiamo dedurre che non esiste una relazione lineare tra questi due predittori. Tuttavia, è sicuro eliminare queste funzionalità nel caso in cui si applichi il modello di regressione lineare al set di dati. Un diagramma a scatola (o diagramma a scatola e baffi) mostra la distribuzione dei dati quantitativi in un modo che facilita i confronti tra le variabili. Il riquadro mostra i quartili del set di dati mentre i baffi si estendono per mostrare il resto della distribuzione. Il diagramma a scatola (noto anche come diagramma a scatola e baffi) è un modo standardizzato di visualizzare la distribuzione dei dati in base al riepilogo di cinque numeri: Minimo Primo quartile Mediano Terzo quartile Massimo. Nel box plot più semplice il rettangolo centrale si estende dal primo quartile al terzo quartile (l'intervallo interquartile o IQR). Un segmento all'interno del rettangolo mostra la mediana e i "baffi" sopra e sotto la casella mostrano le posizioni del minimo e del massimo. Gli outlier sono 3×IQR o più al di sopra del terzo quartile o 3×IQR o più al di sotto del primo quartile. Nel nostro set di dati, ad eccezione di "alcol", tutte le altre colonne delle caratteristiche mostrano valori anomali. Ora per verificare la linearità delle variabili è una buona pratica tracciare il grafico della distribuzione e cercare l'asimmetria delle caratteristiche. La stima della densità del kernel (kde) è uno strumento molto utile per tracciare la forma di una distribuzione. La colonna "pH" sembra essere distribuita normalmente rimanenti tutte le variabili indipendenti sono asimmetriche a destra/asimmetriche positivamente. Infine, per riassumere tutta l'analisi esplorativa dei dati è un approccio filosofico e artistico per valutare ogni sfumatura dai dati al primo incontro. Puoi dare un'occhiata all'intero progetto qui e provare con approcci diversi, ad es. prova un grafico a coppie e condividi tutte le inferenze che potresti trarre da esso o se non sono riuscito a catturare alcuna informazione utile nel mio approccio, condividi anche questo nei commenti.
- Come Iniziare a Utilizzare l'Intelligenza Artificiale (I.A.) Nella Tua Azienda o Nel Tuo Progetto
La maggior parte delle aziende sta nuotando nei dati in questo momento, ma meno dell'1% dei dati della maggior parte delle organizzazioni viene utilizzato e molto meno viene analizzato per prendere decisioni significative. Non c'è dubbio che la tua azienda avrà bisogno di diventare più intelligente. L'innovazione e il cambiamento sono la nuova norma e le aziende che non riescono ad adattarsi alla rivoluzione dell'intelligence rischiano di essere lasciate indietro. È tempo di ripensare al modo in cui tutti facciamo affari. Individuare le tendenze nei dati prima di iniziare Ogni azienda è unica e le tue priorità di intelligenza artificiale potrebbero essere molto diverse dai tuoi concorrenti. Inizia esaminando prima i tuoi dati e vedi se riesci a individuare le tendenze, quindi usa queste informazioni per vedere dove l'intelligenza artificiale potrebbe davvero aggiungere valore alla tua attività. Hai la possibilità di raccogliere enormi quantità di dati sulle abitudini e le preferenze dei tuoi clienti: quanto spesso usano i tuoi prodotti e servizi quando li usano e altro ancora. Prima di ripensare ai tuoi prodotti, servizi e processi, usa i tuoi dati per creare un quadro dettagliato dei comportamenti dei tuoi clienti. Esistono tre modi tipici di utilizzare l'intelligenza artificiale : prodotti, servizi e processi, ma rientrano in due prospettive. La prospettiva esterna significa che guardi la tua attività dal punto di vista del tuo cliente e trovi modi per semplificargli la vita risolvendo i suoi problemi e anticipando le sue esigenze. La prospettiva interna è comune nelle aziende di maggior successo, oggi non sono solo incentrate sul cliente, sono incentrate sui dipendenti. I processi interni ottimizzati, alimentati da informazioni sull'intelligenza artificiale, aiutano ad attrarre e trattenere i migliori talenti e a mantenere i dipendenti felici e impegnati nel loro lavoro. Fai come Netflix: Implementa un Intelligenza Artificiale in Grado di offrire prodotti/servizi personalizzati Migliori informazioni sui clienti ti aiutano a fornire servizi più intelligenti e altamente personalizzati. Aziende come Amazon utilizzano i dati che raccolgono automaticamente dai propri clienti per creare uno dei motori di raccomandazione dei prodotti più efficaci al mondo. Il servizio di streaming di Netlfix fa la stessa cosa. L'intelligenza artificiale di Netflix non si limita a fornire consigli generali per film o programmi televisivi, ma offre suggerimenti altamente personalizzati in base all'ora del giorno che guardi, agli attori che ti piacciono e ad altri comportamenti di visualizzazione. Se hai visto diversi film che includono Robert De Niro nel cast, Netflix può consigliarti un altro film di De Niro, anche un film in cui interpreta un piccolo ruolo. Se De Niro non appare nell'immagine di anteprima del film normalmente utilizzata da Netflix, l'intelligenza artificiale può attirare la tua attenzione con un'immagine diversa che lo include. Quell'immagine personalizzata renderà il film più allettante per te e renderà più probabile che continuerai a guardarlo. L'obiettivo di Netflix è quello di mettere davanti a te il film giusto al momento giusto. In che modo la tua azienda può personalizzare i tuoi servizi in modo che presentino le opzioni perfette ai tuoi clienti nel punto preciso in cui sono necessari? La massiccia espansione dei prodotti intelligenti L'IoT significa che molti prodotti di uso quotidiano stanno diventando più intelligenti. Ora possiamo integrare una maggiore potenza di calcolo e sensori piccoli ed economici nei prodotti, darci la possibilità di creare smart TV, smartphone, dispositivi di monitoraggio della salute e altro ancora. Prevedo che molto presto avremo l'intelligenza artificiale in quasi tutti i prodotti. Suona inverosimile? Pensa a questo: esiste già un "pannolino intelligente" abilitato all'intelligenza artificiale che utilizza un sensore di umidità integrato per inviare un avviso al telefono o guardare quando è necessario cambiare un pannolino. C'è anche uno spazzolino intelligente sul mercato che rileva quanto bene ti sei lavato i denti. Puoi utilizzare un'app sul telefono per vedere se ci sono aree che devi pulire meglio. Prodotti più intelligenti come questi non solo migliorano la vita dei clienti, ma offrono anche enormi vantaggi aziendali in termini di fidelizzazione e soddisfazione dei clienti, recensioni più positive e aumento delle entrate. Semplificare i processi aziendali con l'Intelligenza Artificiale Le aziende di maggior successo al mondo utilizzano anche l'intelligenza artificiale per ottimizzare, semplificare e automatizzare i propri processi aziendali lungo l'intera catena di approvvigionamento. Puoi incorporare l'intelligenza artificiale praticamente in qualsiasi funzione aziendale, tra cui risorse umane, produzione, marketing, vendite, controllo qualità, IT e finanze. Inizia identificando quali aree sono le maggiori priorità per la tua attività e dove l'intelligenza artificiale può potenzialmente aggiungere il maggior valore. Non aggiungere l'intelligenza artificiale solo per il gusto di farlo: guarda cosa vuole ottenere la tua azienda, quindi determina come l'intelligenza artificiale può aiutarti a raggiungerlo. Trasforma il tuo business con l'intelligenza artificiale Le aziende possono utilizzare l'intelligenza artificiale per migliorare i propri risultati di business in tre modi principali: fornire servizi più intelligenti, creare prodotti intelligenti e migliorare i processi aziendali con l'intelligenza artificiale. Raccomando che ogni azienda esamini tutti e tre gli aspetti, poiché stanno sviluppando una strategia di intelligenza artificiale. Le aziende basate sui prodotti possono trarre vantaggio dal pensare ai servizi abilitati all'intelligenza artificiale e viceversa. Tutte le aziende dovrebbero considerare le possibilità di migliorare i propri processi aziendali con l'IA.
- Le Attività Percettive
Questa Spiegazione è appartenente ad una Serie di Articoli. Prima di iniziare a leggere ti consigliamo di guardare gli articoli precedenti : Lo Strumento "mente" Il servomeccanismo mentale Gli Engrammi : Le Immagini della Mente Che cosa è un concetto Gli stati Attenzionali Le funzioni attenzionali Il concetto di variabile La sovrapposizione degli effetti La Curiosità Come secondo esempio riprenderei in considerazione le “attività percettive” per vedere quale possa essere la differenza fra la percezione semplice e quella complessa: la percezione semplice si compone di varie funzioni attenzionali elementari, queste sono date da dei concetti "funzione" che servono per definire il ritmo attenzionale e le correlazioni che si possono effettuare sull’oggetto in esame, per poter comprendere bene questo tipo di percezione si dovrebbe far riferimento alla metodologia percettiva dei bambini che in sostanza comporta l’utilizzo del maggior numero possibile degli organi sensori per poter ottenere le varie sequenze di stati attenzionali che daranno luogo alla acquisizione mentale dell’oggetto preso in esame attenzionalmente, il bambino piccolo in altre parole mette in rapporto le sue azioni con le reazioni dell’oggetto di gioco e lo fa in tutti i modi possibili poiché non può ancora avere dei sistemi di associazione o categoriali più complessi che sono alla base della percezione che invece ha l’adulto, ovvero anche un bambino che sta ormai apprendendo l’associazione del pensiero con le azioni che svolge; la percezione semplice quindi non fa riferimento alla attività cognitiva tramite il sistema associativo, basti pensare che quando noi vediamo un qualsiasi oggetto siamo in grado di dichiararne la pesantezza o la ruvidità ed altre caratteristiche, poiché associamo quelli che potrebbero essere i ritmi degli stati attenzionali dati dal toccarlo, senza per questo provare a toccarlo e né riproducendo questi ritmi a livello mentale ma soltanto associando il costrutto attenzionale che abbiamo in memoria relativo alla pesantezza o alla ruvidità o ad altre categorizzazioni, in altri casi siamo in grado di associare ad una musica, un paesaggio o delle scene, o possiamo fare anche il contrario, gli esempi più classici derivano dal condizionamento pubblicitario, a me succede spesso di associare una musica che mi piace ad un prodotto che è stato pubblicizzato con questa musica, devo dire mio malgrado, in quanto preferirei associare delle altre cose; comunque alla fine di questo ragionamento è necessario chiarire che la percezione semplice si ha qualora tutte le attività mentali elementari di correlazione siano rivolte espressamente a ciò che è oggetto di attenzione e questo significa che i nostri limiti sono dati dalle possibilità di intervento degli organi preposti all’acquisizione dei dati che possono farci assumere determinati ritmi attenzionali e le attività correlative siano effettuate sui rapporti fra le varie "pluralità" che compongono l’oggetto e sulle relazioni che questo è in grado di assumere con il contesto delle cose osservate o il mondo esterno, mentre per la percezione complessa dobbiamo far riferimento alla “sovrapposizione degli effetti” chiamata in causa dalle attività associative che introducono nel complesso sistema di acquisizione delle informazioni il nostro campo di conoscenza attraverso l’attività cognitiva. Un’altra cosa che dobbiamo osservare è che le attività associative sono il frutto della variazione della controreazione che noi facciamo per operare l’analisi percettiva e quindi bisogna richiamare in causa l’immaginazione in quanto ricordo che è proprio questa la grandezza che combinando i vari concetti funzione elementari in ’B(i)’ dà la possibilità di associare attraverso per esempio variazioni di questo genere: B(i)="uguale", B(i) = “equivalente”, B(i)="e" oppure B(i)="o", altrimenti B(i)="anche" o B(i)="simile" ecc.; è ovvio che ogniqualvolta noi facciamo un processo mentale di questo genere creiamo per così dire dei “percorsi preferenziali” delle informazioni elaborate e questi percorsi daranno vita ai vari engrammi che avremmo a disposizione per favorire la ricerca in memoria dei dati che abbiamo analizzato per il passato, come ripeto questi engrammi saranno dati dalle “associazioni delle operazioni che avremmo svolto per appropriarci di nuovi costrutti”. (nota: con le conoscenze odierne potremmo affermare che è il frutto del processo di “training” della rete neurale) Nel prossimo articolo della serie parleremo di Cognizione, vi lascio una piccola immagine spoiler ....
- Generare Video Dalla Musica ARTificial - L'intelligenza Artificiale che trasforma Musica in Video
Trasformare la musica in immagini capaci di muoversi in totale autonomia in base alle note eseguite: questo è ARTificial, un insieme di tecniche di intelligenza artificiale, machine learning e grafica che è in grado di far dialogare pittura e musica in un modo unico al mondo estendendo le potenzialità dei due linguaggi. Lo spettatore viene proiettato in uno spazio latente, nascosto, di forme, colori e pattern sconosciuti che in nessun altro modo potrebbero essere percepiti. Un universo governato dai numeri, in cui la matematica, razionalità per eccellenza, perde la sua rigidità, fredda e distaccata, rivelando un insospettabile lato umano: la capacità di emozionare. Ad ispirarmi è stata la bellezza della mia terra, il Salento, durante l’osservazione dei suoi panorami,soffermandomi nell’ascoltare musica e immaginare un modo per dare forma a ciò che percepivo. Purtroppo la digital art deve ancora guadagnarsi l’accettazione e il riguardo concessi a forme d’arte storicamente consolidate come scultura, pittura e disegno, forse a causa dell’erronea impressione da parte di molti che "a farla è il computer". Ad ogni modo, gli artisti digitali dispongono di un’ampia gamma di tecniche per esprimere creativamente loro stessi. È possibile che l’accettazione generale del valore della digital art aumenterà allo stesso modo in cui è aumentata l’accettazione della musica prodotta con l’elettronica durante gli ultimi tre decenni. Arte digitale è un termine che fa immaginare qualcosa a metà tra il fisico e l’etereo, tra il realizzato e il non realizzato, tra l’antico e il nuovo, è una vasta gamma di lavori e pratiche artistiche che utilizzano la tecnologia digitale, in parte o in toto, nel loro processo di creazione. Nell’era dell’automazione si suppone ci sia un solo lavoro che algoritmi e macchine non siano in grado di fare: l’artista. Ma negli ultimi anni questa idea è stata stravolta e si è cominciato ad usare tecniche di intelligenza artificiale e machine learning per creare qualsiasi tipo di opera d’arte: musica, film, sculture, dipinti ecc, con una possibilità infinita e ancora inesplorata di combinazioni. Infatti chi crea l’algoritmo non ha alcun controllo su ciò che la macchina genererà. E’ lei a scegliere lo stile, il soggetto, la composizione, i colori e la texture. Il programmatore imposta la struttura, ma l’algoritmo è completamente al timone quando si tratta di elementi e principi dell’arte che genera. Potremmo paragonare l’arte dell’intelligenza artificiale alla fotografia. Quando la fotografia fu inventata all’inizio del ventesimo secolo, non era considerata arte, dopo tutto, una macchina stava facendo gran parte del lavoro. Gli scettici resistettero, ma alla fine cedettero: un secolo dopo, la fotografia divenne un genere artistico consolidato. Oggi le fotografie sono esposte nei musei e messe all’asta a prezzi astronomici. Non ho dubbi che l’arte prodotta dall’intelligenza artificiale seguirà la stessa strada. Per far si che, una volta generata l’immagine, si muovesse come se fosse dotata di vita propria si è ricorsi all’uso di più modelli neurali. Una volta addestrati, per quanto possano essere corretti dal punto di vista matematico non è detto che siano visivamente suggestivi: gli unici a poter dare un significato al prodotto finale sono i nostri sensi, vista, udito, e se vogliamo anche una nostra parte latente intrinseca all’essere umano che associa il movimento delle immagini alla musica, anche in modo non consapevole, cogliendone così la bellezza. Utilizzando diversi modelli si sono ottenuti effetti inaspettati. Sostituendo la rete neurale generativa con un video si è avuto un bel salto di qualità nella resa grafica. Il risultato finale auspicabile sarebbe simile a quello in figura sottostante. In conclusione possiamo affermare che in questo lavoro si è visto come sia possibile trovare un punto di collegamento, una connessione, tra arte e sviluppo di un software, mettendo in relazione due linguaggi, apparentemente separati, che l’essere umano utilizza per comunicare stati d’animo. Soprattutto si è andati oltre la semplice analisi matematica dei dati fornendo una rappresentazione degli stessi in modo innovativo, che non si limita a razionalizzare ogni singolo comportamento del codice implementato, ma che consente di stupirci ad ogni sua esecuzione. Questo perchè per quanto l’uomo si sforzi di voler comprendere ogni singola cosa e volerla controllare in modo deterministico e razionale, finisce per meravigliarsi quando compare l’inaspettato, il nuovo. L’uso di questi modelli neurali ha permesso di ignorare completamente la natura del fenomeno che si voleva manipolare: varianza, frequenza,ritmo, intenzione. L’algoritmo non sa assolutamente niente di musica, di immagini né di emozioni umane; riesce però a codificarne i pattern presenti attraverso l’uso di funzioni matematiche: una volta decisa la codifica dei parametri e delle prestazioni da controllare, sono utilizzabili per qualunque insieme di musiche o immagini. Essendo questa una versione base del software, alcune funzionalità sono limitate ma la fantasia umana non ha limiti, quindi in futuro potremmo permettere l’esecuzione del software dal vivo con un musicista, band o addirittura, perchè no, orchestre. E’ solo l’inizio di un viaggio alla scoperta di un universo tutto da esplorare. Vi lascio degli estratti di alcune simulazioni generati dal mio algoritmo qui sotto se qui sotto non vedi i video clicca qui Fatemi sapere nei commenti quale vi piace di più, e magari possibili idee per estendere le funzionalità di questo progetto. Grazie per la lettura.
- Intelligenza Artificiale (IA) e Python Come si Relazionano?
Python è uno dei linguaggi di programmazione più popolari utilizzati dagli sviluppatori oggi. Guido Van Rossum lo ha creato nel 1991 e sin dal suo inizio è stato uno dei linguaggi più utilizzati insieme a C++, Java, ecc. Nel nostro tentativo di identificare quale sia il miglior linguaggio di programmazione per l'intelligenza artificiale e la rete neurale, Python ha preso un grande vantaggio. Caratteristiche e vantaggi di Python per l'intelligenza artificiale Python è un linguaggio interpretato che in parole povere significa che non ha bisogno di essere compilato in istruzioni in linguaggio macchina prima dell'esecuzione e può essere utilizzato direttamente dallo sviluppatore per eseguire il programma. Ciò lo rende abbastanza completo da consentire l'interpretazione del linguaggio da parte di un emulatore o di una macchina virtuale oltre al linguaggio macchina nativo, che è ciò che l'hardware comprende. È un linguaggio di programmazione di alto livello e può essere utilizzato per scenari complicati. I linguaggi di alto livello trattano variabili, array, oggetti, complesse espressioni aritmetiche o booleane e altri concetti astratti di informatica per renderlo più completo, aumentando così in modo esponenziale la sua usabilità. Python è anche un linguaggio di programmazione generico, il che significa che può essere utilizzato in più domini e tecnologie. Python dispone anche di un sistema di tipi dinamici e di una gestione automatica della memoria che supporta un'ampia varietà di paradigmi di programmazione, inclusi quelli orientati agli oggetti, imperativi, funzionali e procedurali, per citarne alcuni. Python è disponibile per tutti i sistemi operativi e ha anche un'offerta open source intitolata CPython che sta ottenendo una popolarità diffusa. Diamo ora un'occhiata a come l'uso di Python per l'intelligenza Artificiale ci offre un vantaggio rispetto ad altri linguaggi di programmazione popolari. Intelligenza Artificiale e Python Perché? L'ovvia domanda che dobbiamo affrontare a questo punto è perché dovremmo scegliere Python per l'intelligenza artificiale rispetto ad altri . Python offre maggior risultato con minor codice, infatti è stimato che serva solo 1/5 del codice per eseguire stesse operazioni rispetto ad altri linguaggi OOP. Non c'è da stupirsi che sia uno dei più popolari oggi sul mercato. Python ha librerie predefinite come Numpy per il calcolo scientifico, Scipy per il calcolo avanzato e Pybrain per l'apprendimento automatico (Python Machine Learning) che lo rendono uno dei migliori linguaggi per l'intelligenza artificiale. Gli sviluppatori Python di tutto il mondo forniscono supporto e assistenza completi tramite forum e tutorial, rendendo il lavoro del programmatore più semplice di qualsiasi altro linguaggio popolare. Python è indipendente dalla piattaforma ed è quindi una delle scelte più flessibili e popolari per l'utilizzo su diverse piattaforme e tecnologie con il minimo ritocco nella codifica di base. Python è il più flessibile di tutti gli altri con opzioni per scegliere tra l'approccio OOP e lo scripting. Puoi anche utilizzare l'IDE stesso per verificare la maggior parte dei codici ed è un vantaggio per gli sviluppatori alle prese con algoritmi diversi. Python insieme all'intelligenza Artificiale Python insieme a pacchetti come NumPy, scikit-learn, iPython Notebook e matplotlib costituiscono la base per avviare il tuo progetto di intelligenza artificiale. NumPy viene utilizzato come contenitore per dati generici comprendenti un oggetto array N-dimensionale, strumenti per l'integrazione di codice C/C++, trasformata di Fourier, capacità di numeri casuali e altre funzioni. Un'altra libreria utile è pandas, una libreria open source che fornisce agli utenti strutture dati di facile utilizzo e strumenti analitici per Python. Matplotlib è un altro servizio che è una libreria di plottaggio 2D che crea figure di qualità di pubblicazione. È possibile utilizzare matplotlib fino a 6 toolkit di interfaccia utente grafica, server di applicazioni Web e script Python. Il tuo prossimo passo sarà esplorare il clustering di k-means e anche raccogliere conoscenze su alberi decisionali, previsione numerica continua, regressione logistica, ecc. Alcune delle librerie AI Python più comunemente utilizzate sono AIMA, pyDatalog, SimpleAI, EasyAi, ecc. Esistono anche librerie Python per l'apprendimento automatico come PyBrain, MDP, scikit, PyML. Diamo un'occhiata un po' più in dettaglio alle varie librerie Python nell'IA e perché questo linguaggio di programmazione viene utilizzato per l'IA. Librerie Python per l' Intelligenza Artificiale AIMA – Implementazione in Python di algoritmi da "Artificial Intelligence: A Modern Approach" di Russell e Norvig. pyDatalog – Motore di programmazione logica in Python SimpleAI – Implementazione in Python di molti degli algoritmi di intelligenza artificiale descritti nel libro “Artificial Intelligence, a Modern Approach”. Si concentra sulla fornitura di una libreria facile da usare, ben documentata e testata. EasyAI – Semplice motore Python per giochi a due giocatori con AI (Negamax, tabelle di trasposizione, risoluzione di giochi). Python per l' Apprendimento Automatico (ML) Diamo un'occhiata al motivo per cui Python viene utilizzato per l'apprendimento automatico e le varie librerie che offre allo scopo. PyBrain : un algoritmo flessibile, semplice ma efficace per le attività di machine learning . È anche una libreria modulare di Machine Learning per Python che fornisce una varietà di ambienti predefiniti per testare e confrontare algoritmi. PyML – Un framework bilaterale scritto in Python che si concentra su SVM e altri metodi del kernel. È supportato su Linux e Mac OS X. Scikit-learn – Scikit-learn è uno strumento efficiente per l'analisi dei dati durante l'utilizzo di Python. È open source e la libreria di machine learning generica più popolare. MDP-Toolkit – Un altro framework di elaborazione dati Python che può essere facilmente ampliato, ha anche una raccolta di algoritmi di apprendimento supervisionati e non supervisionati e altre unità di elaborazione dati che possono essere combinate in sequenze di elaborazione dati e architetture di rete feed-forward più complesse. L'implementazione di nuovi algoritmi è facile ed intuitiva. La base di algoritmi disponibili è in costante aumento e include metodi di elaborazione del segnale (analisi dei componenti principali, analisi dei componenti indipendenti e analisi delle caratteristiche lente), metodi di apprendimento multipli ([Hessian] Locally Linear Embedding), diversi classificatori, metodi probabilistici (analisi fattoriale, RBM ), metodi di pre-trattamento dei dati e molti altri. Librerie Python per il linguaggio naturale e l'elaborazione del testo NLTK – Moduli Python open source, dati linguistici e documentazione per ricerca e sviluppo nell'elaborazione del linguaggio naturale e analisi del testo con distribuzioni per Windows, Mac OSX e Linux. Python contro altri linguaggi popolari Vediamo ora dove si trova Python con un altro linguaggio informatico per l'intelligenza artificiale come C++ e Java. Python contro C++ per l'intelligenza Artificiale Python è un linguaggio più popolare rispetto a C++ per l'intelligenza artificiale e guida con un voto del 57% tra gli sviluppatori. Questo perché Python è facile da imparare e implementare. Con le sue numerose librerie, possono essere utilizzati anche per l'analisi dei dati. Per quanto riguarda le prestazioni, il C++ supera Python. Questo perché C++ ha il vantaggio di essere un linguaggio tipizzato staticamente e quindi non ci sono errori di digitazione durante il runtime. C++ crea anche codice runtime più compatto e veloce. Python è un linguaggio dinamico (al contrario di statico) e riduce la complessità quando si tratta di collaborare, il che significa che è possibile implementare funzionalità con meno codice. A differenza di C++, dove tutti i compilatori significativi tendono a eseguire ottimizzazioni specifiche e possono essere specifici della piattaforma, il codice Python può essere eseguito praticamente su qualsiasi piattaforma senza perdere tempo su configurazioni specifiche. Con l'aumento delle capacità di offerta di elaborazione accelerata da GPU per il parallelismo che ha portato alla creazione di librerie come CUDA Python e cuDNN, Python ha il vantaggio su C++. Ciò significa che una parte sempre maggiore del calcolo effettivo per i carichi di lavoro di machine learning viene scaricato sulle GPU e il risultato è che qualsiasi vantaggio prestazionale che il C++ può avere sta diventando sempre più irrilevante. Python vince su C++ per quanto riguarda la semplicità del codice, specialmente tra i nuovi sviluppatori. Il C++ essendo un linguaggio di livello inferiore richiede più esperienza e abilità da padroneggiare. La semplice sintassi di Python consente anche un processo ETL (Estrai, Trasforma, Carica) più naturale e intuitivo e significa che è più veloce per lo sviluppo rispetto a C++, consentendo agli sviluppatori di testare algoritmi di apprendimento automatico senza doverli implementare rapidamente. Tra C++ e Python, quest'ultimo ha più margine ed è più adatto per l'IA. Con la sua semplice sintassi e leggibilità che promuovono il test rapido di complessi algoritmi di apprendimento automatico e una fiorente comunità supportata da strumenti collaborativi come Jupyter Notebooks e Google Colab, Python vince la corona. Usare Java per programmare IA Per capire come programmare l'intelligenza artificiale in Java, è essenziale sapere dove si trova rispetto a Python. Java è un linguaggio compilato mentre Python è un linguaggio interpretato. Le due lingue sono anche scritte in modo diverso. Una struttura in Java è racchiusa tra parentesi graffe. Python usa il rientro per eseguire le stesse attività. Java è anche più lento dal punto di vista delle prestazioni e per lo sviluppo di applicazioni di fascia alta in AI, Python è più preferito dagli sviluppatori. Java Artificial Intelligence Library è la risposta di Java a Python, ma è ancora meno accessibile agli sviluppatori per evidenti ragioni. L'approccio moderno all'IA di Java Norvig Russell ha spianato la strada a molti per sedersi e notare perché potrebbe essere il linguaggio migliore per una rete neurale. Piccolo Caso Studio È stato condotto un esperimento per utilizzare l'intelligenza artificiale con un Internet of Things per creare un'applicazione IoT per l'analisi comportamentale dei dipendenti. Il software fornisce feedback utili ai dipendenti attraverso le emozioni dei dipendenti e l'analisi del comportamento, migliorando così i cambiamenti positivi nella gestione e nelle abitudini di lavoro. Utilizzando le librerie di apprendimento automatico Python, opencv e haarcascading per la formazione delle applicazioni, è stato creato un POC di esempio per rilevare emozioni di base come felicità, rabbia, tristezza, disgusto, sospetto, disprezzo, sarcasmo e sorpresa attraverso telecamere wireless collegate in vari punti della baia. I dati raccolti sono stati inviati a un database di cloud computing centralizzato in cui è possibile recuperare il quoziente emotivo giornaliero all'interno della baia o anche l'intero ufficio con un clic di un pulsante tramite un dispositivo Android o desktop. Gli sviluppatori stanno facendo progressi graduali nell'analisi di ulteriori punti complessi sulle emozioni facciali e estrae maggiori dettagli con l'aiuto di algoritmi di deep learning e apprendimento automatico che possono aiutare ad analizzare le prestazioni dei singoli dipendenti e supportare il corretto feedback dei dipendenti/team. Conclusione Python svolge un ruolo fondamentale nel linguaggio di codifica AI fornendogli buoni framework come scikit-learn: machine learning in Python, che soddisfa quasi tutte le esigenze in questo campo e D3.js – Data-Driven Documents in JS, che è uno dei strumenti di visualizzazione più potenti e facili da usare. Oltre ai framework, la sua rapida prototipazione lo rende un linguaggio importante da non ignorare. L'intelligenza artificiale ha bisogno di molte ricerche, e quindi è necessario non richiedere un codice standard di 500 KB in Java per testare una nuova ipotesi, che non porterà mai a termine il progetto. In Python, quasi ogni idea può essere rapidamente convalidata attraverso 20-30 righe di codice (lo stesso per JS con librerie). Pertanto, è un linguaggio piuttosto utile per il bene dell'intelligenza artificiale. Quindi è abbastanza evidente che Python è il miglior linguaggio di programmazione per l'intelligenza Artificiale. Oltre ad essere il miglior linguaggio per l'intelligenza artificiale, Python è utile per molti altri obiettivi.
- Come utilizza Google l'intelligenza artificiale? Google RankBrain e le nuove frontiere dell'I.A.
Quando Google utilizza l'Intelligenza Artificiale ? Ogni volta che cerchi qualcosa su Google, l'intelligenza artificiale lavora dietro le quinte per generare risposte alla tua query. Come si chiama l'Intelligenza Artificiale di Google ? Un sistema di deep learning chiamato RankBrain ha cambiato il modo in cui funziona il motore di ricerca. In molti casi, RankBrain gestisce le query di ricerca meglio delle tradizionali regole algoritmiche che sono state codificate a mano da ingegneri umani e Google ha capito molto tempo fa che l'intelligenza artificiale è il futuro della loro piattaforma di ricerca. L'intelligenza artificiale cercherà di capire esattamente cosa stiamo cercando e quindi ci fornirà risultati personalizzati, in base a ciò che sa di noi. Potresti non rendertene conto, ma l'intelligenza artificiale è già profondamente integrata in molti dei prodotti Google che stai utilizzando oggi. Ecco alcuni esempi: "Ehi, Google..." Google Assistant è un assistente vocale basato sull'intelligenza artificiale per smartphone, dispositivi domestici intelligenti, auto, televisori e dispositivi indossabili. Proprio come altri assistenti virtuali, l'Assistente Google può gestire il tuo calendario, controllare il meteo, riprodurre la tua musica preferita e trovare ristoranti nelle vicinanze per soddisfare le tue voglie culinarie. Gran parte della tecnologia degli assistenti virtuali dipende dalla capacità dell'assistente di capire cosa stai dicendo, quindi Google sta utilizzando l'apprendimento automatico per ridurre i singhiozzi linguistici che possono essere frustranti per gli utenti. Ad esempio, il tuo Assistente Google può imparare a pronunciare con precisione i nomi dei tuoi contatti senza dover registrare la tua voce. L'intelligenza artificiale aiuta anche l'assistente a comprendere il contesto ed elaborare le parole in relazione a tutte le altre parole in una frase, in modo che possa rispondere con una precisione quasi del 100% a cose come comandi di sveglia e timer. L'intelligenza artificiale e l'apprendimento automatico stanno anche aiutando Google a migliorare la qualità delle tue conversazioni che puoi avere con il tuo fidato compagno. L'Assistente Google utilizza le tue interazioni precedenti per comprendere il contesto e rispondere con domande di follow-up appropriate, in modo da poter avere conversazioni più naturali, avanti e indietro. Google Maps e la sua Intelligenza Artificiale ? Anche la navigazione è stata trasformata dall'intelligenza artificiale. Utilizzando i dati sulla posizione storica e le query di ricerca recenti, la modalità di guida di Google Maps anticipa già la tua destinazione e ti aiuta a raggiungerla utilizzando il percorso più veloce possibile. Di recente, Google ha annunciato che sta lanciando una nuova serie di aggiornamenti basati sull'intelligenza artificiale per Google Maps, tra cui Live View, una funzionalità che integra la realtà aumentata per aiutare le persone ad andare nella giusta direzione. Questa funzione utilizza miliardi di immagini di Street View per capire dove ti trovi in relazione agli edifici e ai punti di riferimento intorno a te, così può indicarti la strada giusta. Molto presto, Google sarà anche in grado di aiutarti a ridurre l' impronta di carbonio fornendo indicazioni più rispettose dell'ambiente in base alla congestione stradale e alla pendenza o mostrandoti come raggiungere la tua destinazione in bicicletta o utilizzando i mezzi pubblici. Quali sono le prossime Intelligenze Artificiali di Google? Google ha recentemente annunciato che il suo sistema di rilevamento dei terremoti basato su Android sarà ora disponibile in Nuova Zelanda e Grecia. Google utilizza l'intelligenza artificiale per analizzare le onde generate dai terremoti, quindi invia avvisi agli utenti nelle aree colpite. Il sistema è stato originariamente lanciato in California ed è attualmente disponibile anche in Oregon e Washington negli Stati Uniti Tutti i telefoni Android sono dotati di sensori di movimento del suolo che possono fungere da "mini sismometri" in grado di rilevare quando stanno per verificarsi i terremoti e avvisare le persone della zona, dando loro il tempo di mettersi al riparo. Mettere l'intelligenza artificiale al centro di Google Google afferma: “La nostra missione è organizzare le informazioni mondiali e renderle universalmente accessibili e utili. L'intelligenza artificiale ci sta aiutando a farlo in modi nuovi ed entusiasmanti, risolvendo i problemi per i nostri utenti, i nostri clienti e il mondo". Nella nostra vita di tutti i giorni, i prodotti Google basati sull'intelligenza artificiale ci rendono più facile fare cose come cercare foto e trovare gli orari dei nostri ristoranti preferiti e Google continuerà a utilizzare l'intelligenza artificiale per rimanere all'avanguardia della tecnologia odierna. Commenta sotto l'articolo i tuoi pareri su google e le sue Intelligenze Artificiali, grazie per la lettura
- Strumenti e Tool Di Visualizzazione Dati usati nella Data Science
Cosa è la visualizzazione dei dati ? La visualizzazione dei dati è la rappresentazione grafica di informazioni e dati. Grazie a elementi visivi come diagrammi, grafici e mappe, gli strumenti per la visualizzazione dei dati creano una soluzione accessibile per osservare e comprendere tendenze, valori anomali e ricorrenze presenti nei dati. Nel mondo dei big data, gli strumenti e le tecnologie per la visualizzazione dei dati sono indispensabili per analizzare enormi quantità di informazioni e prendere decisioni basate sui dati. I vantaggi e i benefici di un'efficace visualizzazione dei dati Il nostro sguardo è attratto dai colori e dalle ricorrenze. Possiamo distinguere rapidamente il rosso dal blu, i quadrati dai cerchi. La nostra cultura è di tipo visivo da tutti i punti di vista: dall'arte alla pubblicità, dalla TV al cinema. La visualizzazione dei dati è un'altra forma di arte visiva che attira la nostra attenzione e mantiene il nostro sguardo sul messaggio. Quando vediamo un diagramma sappiamo individuare rapidamente le tendenze e i valori anomali. Quando vediamo una cosa, la interiorizziamo rapidamente. È una sorta di narrazione con uno scopo preciso. Se ti è capitato di osservare un enorme foglio di dati senza riuscire a individuare una tendenza, potrai apprezzare ancor di più l'efficacia di una visualizzazione. I Big Data e l'accesso sempre crescente che abbiamo a più informazioni sono la forza trainante dell'intelligenza artificiale e l'ondata di cambiamento tecnologico che sta investendo tutti i settori. Ma tutti i dati del mondo sono inutili – anzi possono diventare una responsabilità – se non riesci a capirli. La visualizzazione dei dati riguarda il modo in cui presentare i tuoi dati alle persone giuste, al momento giusto, per consentire loro di ottenere informazioni in modo più efficace. I migliori Strumenti Di Visualizzazione Dati Fortunatamente le soluzioni di visualizzazione si stanno evolvendo rapidamente come il resto dello stack tecnologico. Grafici, video, infografiche e all'avanguardia anche presentazioni in realtà virtuale e realtà aumentata (VR & AR) offrono canali di comunicazione sempre più coinvolgenti e intuitivi. Ecco la nostra carrellata di alcuni dei migliori, più popolari o più innovativi strumenti di visualizzazione dei dati disponibili oggi. Questi sono tutti a pagamento (anche se tutti offrono prove gratuite o licenze per uso personale). Visualizzazione Dati Con tableau Tableau è spesso considerato il grande maestro dei software di visualizzazione dei dati e per una buona ragione. Tableau ha una base clienti molto ampia di oltre 57.000 account in molti settori grazie alla sua semplicità d'uso e alla capacità di produrre visualizzazioni interattive ben oltre quelle fornite dalle soluzioni di BI generali. È particolarmente adatto per gestire gli enormi set di dati in rapida evoluzione utilizzati nelle operazioni di Big Data, comprese le applicazioni di intelligenza artificiale e di apprendimento automatico, grazie all'integrazione con un gran numero di soluzioni di database avanzate tra cui Hadoop, Amazon AWS, My SQL , SAP e Teradata. Sono state effettuate ricerche e test approfonditi per consentire a Tableau di creare grafici e visualizzazioni nel modo più efficiente possibile e renderli facili da capire per gli umani. Visualizzazione Dati Con QlikSense Qlik con il suo strumento QlikSense è l'altro attore principale in questo spazio e il più grande concorrente di Tableau. Il fornitore ha oltre 40.000 account cliente in oltre 100 paesi e coloro che lo utilizzano spesso citano la sua configurazione altamente personalizzabile e l'ampia gamma di funzionalità come un vantaggio chiave. Tuttavia, ciò può significare che ci vuole più tempo per affrontarlo e usarlo al massimo delle sue potenzialità. Oltre alle funzionalità di visualizzazione e esplorazione dei dati, Qlik offre potenti funzionalità di business intelligence, analisi e reporting aziendale e mi piace particolarmente l'interfaccia utente pulita e ordinata. C'è anche una forte comunità e ci sono molte risorse di terze parti disponibili online per aiutare i nuovi utenti a capire come integrarlo nei loro progetti. Visualizzazione Dati Con Microsoft Power BI Microsoft compete fortemente anche in questo spazio con il suo strumento Power BI. Power BI è una potente suite di strumenti di analisi aziendale con ottime capacità di visualizzazione dei dati. Un grande vantaggio offerto da Power BI è l'interfaccia utente intuitiva con cui gli utenti di qualsiasi prodotto Microsoft avranno familiarità. Power BI include anche un ampio ecosistema di supporto e una miriade di origini dati supportate. In termini di visualizzazione dei dati, Power BI offre un'ampia gamma di formati standard di visualizzazione dei dati che chiunque si aspetterebbe, nonché la possibilità di creare visualizzazioni personalizzate e definite dall'utente, nonché sofisticate mappe 3D. Infine, ha un prezzo molto competitivo. Visualizzazione Dati Con FusionChart Si tratta di un pacchetto di grafici e visualizzazione molto diffuso, basato su JavaScript, che si è affermato come uno dei leader nel mercato a pagamento. Può produrre 90 diversi tipi di grafici e si integra con un gran numero di piattaforme e framework offrendo una grande flessibilità. Una caratteristica che ha contribuito a rendere FusionCharts molto popolare è che invece di dover iniziare ogni nuova visualizzazione da zero, gli utenti possono scegliere tra una gamma di modelli di esempio "live", semplicemente collegando le proprie origini dati secondo necessità. Visualizzazione Dati Con Highchart Come FusionCharts, anche questo richiede una licenza per uso commerciale, sebbene possa essere utilizzato liberamente come prova, non commerciale o per uso personale. Il suo sito Web afferma che è utilizzato da 72 delle 100 più grandi aziende del mondo ed è spesso scelto quando è necessario implementare una soluzione rapida e flessibile, con una minima necessità di formazione specialistica sulla visualizzazione dei dati prima che possa essere messa in funzione. Una chiave del suo successo è stata la sua attenzione al supporto cross-browser, il che significa che chiunque può visualizzare ed eseguire le sue visualizzazioni interattive, il che non è sempre vero con le piattaforme più recenti. Visualizzazione Dati Con Datawrapper Datawrapper sta diventando sempre più una scelta popolare, in particolare tra le organizzazioni dei media che lo utilizzano frequentemente per creare grafici e presentare statistiche. Ha un'interfaccia semplice e chiara che semplifica il caricamento dei dati CSV e la creazione di grafici e mappe semplici che possono essere rapidamente incorporati nei report. Visualizzazione Dati Con Plotly Plotly consente visualizzazioni più complesse e sofisticate, grazie alla sua integrazione con linguaggi di programmazione orientati all'analisi come Python, R e Matlab. È basato sulle librerie di visualizzazione open source d3.js per JavaScript, ma questo pacchetto commerciale (con una licenza gratuita non commerciale disponibile) aggiunge livelli di facilità d'uso e supporto, nonché supporto integrato per API come Salesforce. Visualizzazione Dati Con Sisense Sisense fornisce una piattaforma di analisi dello stack completo, ma le sue capacità di visualizzazione forniscono un'interfaccia di trascinamento della selezione semplice da usare che consente di creare grafici e grafici più complessi, nonché visualizzazioni interattive, con il minimo sforzo. Consente di raccogliere più fonti di dati in un unico repository facilmente accessibile in cui è possibile eseguire query istantaneamente tramite dashboard, anche su set di grandi dimensioni. I dashboard possono quindi essere condivisi tra le organizzazioni garantendo che anche il personale non tecnico possa trovare le risposte di cui ha bisogno ai propri problemi. Aggiorneremo questo elenco almeno su base annuale, quindi facci sapere se conosci qualche altro strumento che vorresti includere qui.
- Intelligenza Artificiale Forte e Debole - Le Differenze Tra IA Forte e IA Debole
Sapevi che esistono due forme di intelligenza artificiale? L'intelligenza artificiale (AI) debole o ristretta è ciò che incontriamo quotidianamente oggi. L'IA forte o generale è la fase successiva in cui le macchine possono pensare come gli umani senza essere programmate dagli umani. Impara le differenze tra AI debole e forte. Sebbene l'intelligenza artificiale (AI) fosse una volta un concetto difficile da toccare con mano, la maggior parte delle persone oggi utilizza l'intelligenza artificiale nella loro vita quotidiana. Dagli assistenti personali digitali come Alexa e Google Home alle indicazioni stradali e ai consigli, l'intelligenza artificiale non è più un'idea vista solo nei libri e nei film di fantascienza. Sebbene la maggior parte delle persone capisca l'IA, è quando le macchine completano funzioni di livello superiore come riconoscere il parlato e prendere decisioni come possono fare gli umani, ma non tutti potrebbero capire che esiste una distinzione tra AI debole e AI forte. Quindi, diamo un'occhiata alle differenze tra debole, nota anche come AI stretta, e AI forte o generale. Che cosa è l'Intelligenza Artificiale Debole ? L'intelligenza artificiale che ora vediamo nella nostra vita quotidiana è ciò che chiamiamo debole (IA stretta). In realtà è l'unica intelligenza artificiale che esiste oggi. Si chiama debole perché ha funzionalità limitate. Gli algoritmi di intelligenza artificiale sono costruiti per svolgere compiti specifici piuttosto che possedere capacità cognitive complete come il cervello umano. L'intelligenza artificiale debole dimostra che il comportamento intelligente può essere modellato. Esempi di AI debole includono Siri, Alexa e la ricerca di Google. L'IA debole è in azione quando può esserci una risposta programmata, ad esempio quando l'IA esegue un programma di scacchi. Questi algoritmi elaboreranno i dati per trovare cose che conoscono e quindi classificheranno in base all'addestramento/programmazione. Non possono deviare dal percorso programmato. L'intelligenza artificiale debole ha cambiato molti aspetti del business e il nostro stile di vita personale essendo in grado di risolvere o completare attività molto più velocemente o meglio di quanto possano fare gli umani. È ciò che alimenta i chatbot e i motori di raccomandazione sui servizi di streaming. L'IA debole può anche scoprire modelli nei volumi di dati per aiutare a diagnosticare malattie e sviluppare trattamenti. Finora è stata sicuramente una tecnologia trasformativa. Che cosa è l'Intelligenza Artificiale Forte ? L'intelligenza artificiale forte o generale a questo punto è solo teorica. È quando le macchine sviluppano la coscienza e il processo decisionale alla pari (o meglio) degli umani. Quando viene raggiunta una forte intelligenza artificiale, le macchine non faranno affidamento sulla programmazione umana per essere in grado di pensare o svolgere compiti. Questa è l'intelligenza artificiale immaginata nelle storie di fantascienza come "I-Robot" e "The Terminator". Inoltre, le macchine con una forte intelligenza artificiale saranno in grado di mostrare autocoscienza ed emozioni. In definitiva, l'obiettivo con l'IA generale è una macchina con intelligenza in vera forma umana. Confronto tra AI debole e AI forte Quando vuoi distinguere tra i tipi di intelligenza artificiale, è bene guardare cosa può fare la tecnologia. Semplicemente, se la tecnologia è brava in azioni specifiche, è un'intelligenza artificiale debole. Se opera come un essere umano e non è obbligato a completare un compito specifico, è una forte intelligenza artificiale. Ecco alcuni altri modi per distinguere tra Intelligenza Artificiale debole e Forte-Generale: Differenze tra Intelligenza Artificiale Debole e Intelligenza Artificiale Forte ? Definizione. . . L'intelligenza artificiale debole tenta di imitare il comportamento umano intelligente, che consente alle macchine di risolvere problemi complessi imparando da esempi o serie storiche. L'intelligenza artificiale generale è attualmente ipotetica, ma quando o se sarà realizzata, le macchine avranno capacità cognitive umane complete. Scopo. . . L'IA debole è programmata per operare all'interno di una serie di funzioni predefinite implementate da menti UMANE attraverso la programmazione. L'IA forte avrà una mente propria per essere in grado di svolgere qualsiasi tipo di compito che la sua "mente" possa immaginare. Consapevolezza. . . L'intelligenza artificiale debole non raggiunge la consapevolezza di sé. L'IA forte sarà abbastanza avanzata a essere considerata veramente intelligente e pienamente consapevole di sé. Elaborazione dati. . . L'intelligenza artificiale ristretta classifica i dati. L'IA generale utilizza il clustering e l'associazione. Una volta (se mai) l'intelligenza artificiale arriva al punto in cui le macchine possono pensare e svolgere processi decisionali e compiti senza il coinvolgimento umano, sarà designata come IA generale o forte. Fino ad allora, l'intelligenza artificiale debole, gli algoritmi programmati per dare alle macchine la capacità di aiutarci a completare le attività in modo più rapido ed efficace, continueranno a trasformare il modo in cui viviamo, lavoriamo e giochiamo. E una volta raggiunta una forte intelligenza artificiale, la prossima pietra miliare sarà la super intelligenza artificiale. Super AI è quando le macchine superano l'intelligenza umana. Immagina una macchina che batte l'intelligenza umana in tutte le materie, dalla scienza e la matematica alla lingua, alla letteratura e alle arti creative. Questo è il livello che alimenta la preoccupazione che le macchine possano essere in grado di rovesciare la razza umana. Fortunatamente, la super intelligenza artificiale è interamente speculazione a questo punto. Non c'è alcuna garanzia quando e anche se una forte IA, figuriamoci una super IA, sarà possibile. Si spera che, se arriviamo al punto della super intelligenza artificiale, ci saranno misure di salvaguardia per evitare le terribili previsioni condivise nei film e nella letteratura sul futuro in cui le macchine ci governano.
- Qual è la differenza tra Intelligenza Artificiale, Machine Learning, Deep Learning e Data Science ?
Quando ho iniziato con l'apprendimento automatico, avevo molta confusione. La mia confusione non era nulla di tecnico, ma il modo in cui le parole sono state usate durante il mio viaggio verso l'apprendimento automatico. Queste aree si stanno evolvendo rapidamente e la definizione che trovi qui oggi potrebbe essere diversa da quella che troverai domani, quindi non dimenticare di stare al passo con la crescita della tecnologia. Cos'è l'intelligenza artificiale o Artificial Intelligence? Prima di approfondire il significato specifico dell'intelligenza artificiale, avevo l'idea che l'intelligenza artificiale (AI) riguardasse i robot che conquistano il mondo essendo in grado di fare le stesse cose che noi, in quanto umani, potremmo fare. Anche se questo fa parte della verità, non è esattamente ciò che riguarda l'intelligenza artificiale. Come sappiamo, mezza verità è quasi nessuna verità. La parola intelligenza secondo il dizionario Merriam-webster è "la capacità di apprendere o comprendere o di affrontare situazioni nuove o difficili" È anche definito come l'uso esperto della ragione e la capacità di applicare la conoscenza per manipolare il proprio ambiente o pensare in modo astratto misurato da criteri oggettivi (come i test). L'intelligenza artificiale (AI) è quindi, basata sull'idea della capacità di una macchina o di un programma per computer di pensare (ragionare), capire e imparare come gli esseri umani. Dalla definizione di intelligenza, possiamo anche dire che l'intelligenza artificiale è lo studio della possibilità di creare macchine in grado di applicare la conoscenza ricevuta dai dati nella manipolazione dell'ambiente. Quindi Riassumendo e prendendosi il rischio di definire l'intelligenza artificiale in due righe : L'intelligenza artificiale riproduce l'intelligenza umana nelle macchine, in particolare nei sistemi informatici attraverso l'apprendimento, il ragionamento e l'autocorrezione. Esempio di intelligenza artificiale nella vita reale: Se sei mio amico e capisco che ami i film d'azione, ti consiglierei dei film d'azione, in base a quello che so di te. Questa è l'intelligenza umana. Anche le macchine sono diventate in grado di farlo, se guardi una particolare categoria di film su Netflix, ad esempio, Netflix inizia a suggerirti film, in base al tuo modello di visione. Com'è possibile? Intelligenza artificiale. Questo è un esempio molto generico sull'intelligenza artificiale. Che cos'è l'apprendimento automatico o Machine Learning ? L'intelligenza artificiale è molto vasta. L'apprendimento automatico (ML) è un sottoinsieme dell'intelligenza artificiale. Ricordi la definizione di intelligenza vista nel paragrafo precedente? Dicevamo che attraverso l'apprendimento le macchine ... Ed è qui che entra in gioco ML. L'apprendimento automatico (ML) è un insieme di strumenti statistici per apprendere dai dati. Il nucleo del machine learning sta nell'insegnare ai computer come apprendere e fare previsioni dai dati senza essere necessariamente programmati. Esempio di vita reale di Machine Learning: Riceviamo tutti messaggi di spam. Questi sono sempre filtrati da Gmail, ad esempio. Inoltre, le e-mail sono classificate come promozioni e social, nonché altre categorie in base al servizio di posta utilizzato. Come ha imparato Gmail a farlo? Apprendimento automatico! Non dimenticare che il machine learning fa parte dell'IA. Nel tempo, il servizio è stato in grado di apprendere la categoria in cui potrebbe rientrare un'e-mail. Può essere sbagliato a volte, ma continua a imparare. Che cos'è l'apprendimento profondo o Deep Learning? Nell'apprendimento automatico, i dati passano principalmente attraverso algoritmi che eseguono trasformazioni lineari su di essi per produrre output. Il deep learning è un sottoinsieme del machine learning in cui i dati passano attraverso un numero multiplo di trasformazioni non lineari per ottenere un output. "Profondo" si riferisce a molti layer in questo caso. L'output di un layer è l'input per un altro layer, e questo viene fatto continuamente per ottenere un output finale. Tutti questi layer non sono lineari spesso. Un esempio di trasformazione non lineare è una trasformazione di matrice. L'apprendimento profondo è talvolta chiamato reti neurali profonde (DNN) perché utilizza reti neurali artificiali multistrato per implementare l'apprendimento profondo. Hai visto una foto di un neurone del cervello umano? Le reti neurali artificiali sono costruite in modo simile, con nodi neurali connessi come una rete. Gli algoritmi di deep learning richiedono macchine molto potenti ed è molto utile per rilevare pattern dai dati di input. ( ad esempio riconoscere oggetti nelle foto o video ) Un'applicazione di Deep Learning: Hai mai sentito parlare di WaveNet e Deep Speech? Entrambe sono reti di Deep Learning che generano automaticamente la voce umana dando in input solo un testo. Con il deep learning, i sistemi stanno imparando a imitare le voci umane al punto che è difficile distinguere tra una voce umana e una voce sintetizzata. Il Deep Learning ci avvicina a dare ai computer la capacità di parlare come gli umani. Ricorda Il deep learning è un sottoinsieme di ML che è un sottoinsieme di AI, quindi è AI. Che cos'è la scienza dei dati? La scienza dei dati ha un'intersezione con l'intelligenza artificiale ma non è un sottoinsieme dell'intelligenza artificiale. La scienza dei dati è lo studio di una curiosità suscitata in un dato campo, l'estrazione di dati da una grande fonte di dati relativi alla domanda in mente, l'elaborazione di dati, l'analisi e la visualizzazione di questi dati, in modo da dargli un significato per l'IT e strategie aziendali. In parole povere, è capire e dare un senso ai dati. Nella scienza dei dati vengono utilizzati molti strumenti. Includono strumenti statistici, probabilistici, algebra lineare e metrica, ottimizzazione numerica e programmazione. Un'applicazione della scienza dei dati: Scegliamo un concetto a caso: la sponsorizzazione. In che modo le persone ottengono una sponsorizzazione per una causa. Chi di solito è disposto a rispondere a un'e-mail di richiesta di sponsor. Quali parole chiave cercano nelle e-mail di richiesta di sponsorizzazione? preferirebbero una telefonata? In questo caso, la scienza dei dati può aiutare. Un pool di dati relativi a tutti coloro che hanno sponsorizzato una causa, al motivo per cui l'hanno sponsorizzata, alle loro preferenze in termini di canali di comunicazione ecc. Viene estratto un ampio insieme di dati non strutturati. I dati vengono elaborati, analizzati e visualizzati utilizzando i vari strumenti. Le conclusioni sono tratte da questi dati. Queste informazioni possono aiutare le organizzazioni non profit e le persone che perseguono una causa a cercare sponsor. La scienza dei dati non è completamente intelligenza artificiale, tuttavia parti della scienza dei dati si intersecano con l'intelligenza artificiale. Quando si arriva al punto, una cosa è comune a queste parole d'ordine: DATI! Grazie mille per aver letto tutto l'articolo, condividilo con i tuoi colleghi per evitare gaf durante i meeting 😊
- L' INTELLIGENZA
Questa Spiegazione è appartenente ad una Serie di Articoli. Prima di iniziare a leggere ti consigliamo di guardare gli articoli precedenti : Lo Strumento "mente" Il servomeccanismo mentale Gli Engrammi : Le Immagini della Mente Che cosa è un concetto Gli stati Attenzionali Le funzioni attenzionali Il concetto di variabile La sovrapposizione degli effetti La Curiosità Le attività percettive La cognizione La concentrazione Un altro argomento interessantissimo da trattare con la sovrapposizione degli effetti è la funzione "intelligenza" in quanto si tratta del motore mentale che più ci appartiene come esseri viventi. Nei precedenti articoli abbiamo accennato al processo costitutivo della teorizzazione affermando ipoteticamente che fosse data come prodotto dell’interconnessione fra la volontà e l’immaginazione nel contesto attenzionale dell’informazione e abbiamo assunto che tale processo preveda una ripresa correlativa fra i vari correlati che compongono i costrutti presi in esame dal sistema, ora pensiamo alla definizione di intelligenza nel senso classico del termine e si potrebbe affermare che l’intelligenza è l’insieme delle capacità che rendono possibile il comprendere e risolvere situazioni nuove o problemi, in vista dell’adattamento individuale, in altri termini potremmo indicare l’intelligenza come la capacità di porre dei rapporti fra i costrutti che costituiscono una particolare situazione e di individuarne le correlazioni intrinseche, quanto di più facile alla luce di questa affermazione ipotizzare che se consideriamo la derivata della teorizzazione formulata rispetto ad un campo informazionale otterremo proprio l’intelligenza? Per analogia si pensi un attimo alla concezione fisica della potenza espressa proprio come derivata prima dell’energia rispetto al tempo e si trasporti questa forma mentale nell’intendere il concetto di intelligenza, assumendo proprio la teorizzazione come "energia" e l’intelligenza come "potenza". Per capire ancor meglio questa funzione particolare ed importantissima del nostro servomeccanismo mentale possiamo fare degli esempi applicativi; immaginiamo dunque di avere a disposizione dodici palline colorate uguali, ma una di queste ha il peso diverso dalle altre, ora noi fruendo di una bilancia comparativa dovremmo essere in grado di individuare la pallina "falsa" con sole tre pesate. La situazione è quella riprodotta dal disegno: Prima di continuare la lettura dovreste sforzarvi di prendere un pezzo di carta ed una penna e tentare di risolvere questo problemino dall'apparenza così ingenua. Vediamo ora di analizzare la situazione concettualizzando le informazioni e per fare questo partiamo dall'associazione del numero delle palline con le stesse, ovvero, il primo concetto che noi possiamo avere in mente come continuo informazionale è questo:”12-palline”, il secondo concetto è dato dal “numero delle pesate”, mentre il terzo deve essere costituito dalle operazioni elementari che può fare la bilancia che abbiamo a disposizione, dovremmo dunque ipotizzare le risposte che ci può dare questo strumento qualora fosse messo in azione; per fare questa operazione dobbiamo creare delle congetture, delle ipotesi di lavoro. La base di una qualsiasi congettura parte da un concetto funzione elementare che noi indichiamo solitamente con la particella (locuzione) "se" e corrisponde ad un particolare modo di predisporre il funzionamento del nostro sistema mentale che consiste nell'attivare tramite l'immaginazione dei “processi inferenziali”, creando una sequenza di informazioni indotte ed endogene, delle vere e proprie operazioni di trasformazione e di trasposizione informazionale, dandoci la possibilità di far entrare in azione le funzioni di “astrazione” o “teorizzazione”, in altri termini, cosa succede SE pensiamo a che cosa corrisponde l'azione di mettere due pesi uguali sui piatti della bilancia, il “continuo informazionale” che corrisponde a questa azione verrà preso come "soggetto", ovvero la prima "parte" dell'operazione, la seconda "parte" dell'operazione sarà quella di osservare SE si sono ottenute delle variazioni di stato ed anche questo costituirà un “continuo informazionale” che verrà preso come "oggetto", abbiamo già visto precedentemente che un embrione di ragionamento è costituito da due concetti "dato", uno preso come soggetto e l'altro come oggetto che vengono messi in relazione fra loro tramite un concetto funzione elementare, abbiamo anche visto che rallentando il processo di percezione, la funzione principale è data dalla riparametrazione simmetrica che consiste nell’avere come base del sistema controreazionato la funzione ’B(i)="uguale"’, anche in questo caso la correlazione di base è la stessa e viene soddisfatta la riparametrazione simmetrica fra il soggetto e l’oggetto, ovvero, potremmo ipotizzare che non vi saranno variazioni del segnale di simmetria ’e(i)’, dobbiamo pensare però che stiamo analizzando le operazioni tramite delle macrofunzioni mentali e quindi siamo ancora lontani dal verificare la composizione di questi processi in funzioni elementari, ma proseguiamo nel percorso cambiando la controreazione del sistema da "uguale" a "diverso", equivale a dire sostanzialmente che la nostra attenzione viene eccitata da una variazione, (che probabilmente passa per “equivalente” e poi per “simile”) e poi, come succedeva nel punto di congiuntura del segmento raffigurante la coda con il rettangolo raffigurante il corpo del logotipo di quadrupede, a quel punto, finiva per legare assieme le due parti costituenti l’embrione di pensiero, vi sarà una ripresa attenzionale sul soggetto che si trasformerà in un nuovo concetto funzione: il concetto di "causa" e di “conseguenza”, l’oggetto si trasformerà nel concetto di "effetto". Ora, fermiamoci un attimo e osserviamo una cosa importante, abbiamo legato assieme in questa parte di ragionamento alcuni concetti partendo dal presupposto che alla base di tutte le operazioni vi sia la presenza di un “continuo informazionale”, vediamo un po’ meglio di che cosa si tratta: l’osservazione di una regione spaziale a colore uniforme o di una linea, costituisce un “continuo informazionale” di carattere percettivo dove il segnale che noi riceviamo tramite l’apparato visivo è costante, la stessa cosa dicasi se sentiamo una nota costante o tocchiamo una superficie uniformemente liscia, ma pensiamo a due note che si susseguono nel tempo o ad una superficie uniformemente ruvida, potremmo ancora considerarli dei continui informazionali, basti pensare alla ripresa attenzionale che origina il processo di costituzione di causa-effetto; per capire quanto sopra basti osservare questa semplice sequenza di lettere: SOSOSOSOSOSOCECECECECECECE Sono due continui informazionali che si possono scomporre in altri continui informazionali, alla base di tutto ritroviamo ripercorrendo il processo a ritroso i concetti di causa-effetto, di soggetto-oggetto e di parte, ma tutte queste funzioni hanno in comune la simmetria attenzionale, ovvero i concetti elementari di "uguale", “equivalente”, “simile”, "diverso". Riprendiamo il nostro percorso e facciamo ancora qualche passo in avanti, arriviamo a dire che la bilancia dovrebbe pendere da una parte o dall’altra e da qui il passo per fornire altri due concetti complementari è facile, introduciamo infatti i concetti di "maggiore" e "minore" che sono delle funzioni elementari chiamate in causa dal processo di comparametrazione, noi diciamo semplicemente che il peso è maggiore dove il piatto della bilancia si avvicina al suo supporto, in realtà il processo che svolge la nostra mente è assai complesso per stabilire quale continuo informazionale debba entrare come maggiore e quale invece come minore, si tratta in effetti di dover stabilire una relazione con un altro continuo informazionale e controllare tramite delle operazioni matematiche quali sono le corrispondenze del sistema in esame, nel caso della percezione semplice è anche facile stabilire ad esempio quale sia la più grande di due regioni spaziali o quale sia la maggiore fra distanze di oggetti da un punto di osservazione, la cosa pero‘ si complica già quando dobbiamo far riferimento all’intercorrere del tempo fra degli avvenimenti, figuriamoci poi quando si tratta di stabilire relazioni con grandezze fisiche come il peso in questo caso. Sta di fatto comunque che si tratta soltanto di mettere in relazione due cose con un continuo informazionale, stabilire semplicemente quanto più questo sia presente in una o nell’altra e il tutto rientra ancora una volta nell’ambito della simmetria, ovvero “ricercare qualche cosa di uguale che tenga legate assieme attenzionalmente due cose diverse”. Ora ci ritroviamo con tre complessi di informazioni che possono servirci da trampolino per ulteriori ragionamenti, per esempio, abbiamo da una parte il continuo dato dal concetto delle dodici palline e dall’altra quello delle operazioni che può svolgere la bilancia, il passo che genera la prima correlazione fra i due è quello che stabilisce il fatto che se noi dividiamo le dodici palline in due parti uguali e le mettiamo sulla bilancia, questa penderà “sicuramente” da una parte o dall’altra, però non ci fornirà altre indicazioni e se prendiamo questa procedura come causa, l’effetto sarà quello di dichiarare come indefinibile la posizione della pallina che pesa diversamente dalle altre con la prima pesata, per deduzione quindi, avendo soltanto due gruppi di palline da mettere in relazione, dovremmo assumere come inutile questa procedura. L’altra correlazione che si può fare è dividere ulteriormente il numero delle palline in “parti uguali” e se consideriamo il “numero delle pesate” si potrebbe ipotizzare di “dividere le dodici palline in tre parti”, otterremo così un nuovo continuo che sarà dato dai tre gruppi di palline, d'altro canto se considerassimo divisioni ulteriori, dovremmo dividere le dodici palline quattro o in sei parti parti e questo porterebbe ad avere un numero superiore di gruppi da controllare rispetto al numero delle pesate che possiamo effettuare, quindi dobbiamo per forza scartare queste ipotesi! La conseguenza logica di questa correlazione ci porta a considerare come unica soluzione da applicare, quella di effettuare una prima pesata con due dei tre gruppi di palline e a questo punto si possono verificare due casi: o i due gruppi hanno lo stesso peso, oppure avendo pesi diversi la bilancia si inclinerà da una o dall'altra parte. Supponiamo di verificare il caso che i gruppi hanno lo stesso peso, dovremmo dedurre che la pallina falsa è sul gruppo che non abbiamo pesato. Il fatto che abbiamo pesato i due gruppi che non contenevano la pallina da ricercare ci indica che è vero che la pallina si trova sul terzo gruppo, dobbiamo allora vedere come si può effettuare la seconda pesata, se supponiamo di dividere il terzo gruppo di palline in due, torneremmo alla conclusione fatta precedentemente che la pesata è inutile in quanto non ci potrà che fornire una sola risposta, inclinandosi da una o dall'altra parte, ma non ci fornirà nessuna indicazione su quale dei due gruppi di due palline ci sia quella falsa. A questo punto bisogna decidere quali e quante palline mettere in relazione con la seconda pesata, ovviamente se confrontiamo il gruppo intero con uno dei due già pesati otterremo la risposta sul tipo di peso della pallina, ossia saremmo in grado di capire se pesa più o meno delle altre, ma poi ci resta una sola pesata per identificarla fra tutte e quattro, il che non è possibile! Se pensiamo di confrontarne due per volta con due di uno dei gruppi già pesati, potremmo trovarci nel caso che effettivamente la pesata ci sia favorevole per l'identificazione della pallina falsa, ossia quando si ottenga che le due palline prese dal terzo gruppo e confrontate con le altre, risultino più pesanti o più leggere e allora con l'ultima pesata, confrontando una di queste due palline con una qualsiasi delle rimanenti si arriverebbe con certezza alla identificazione, ma nel caso che la seconda pesata risulti uguale, allora il procedimento non ha più la possibilità di poter determinare la pallina falsa in quanto sicuramente sarà una delle due che non sono state pesate, ma con la terza pesata non riusciremmo a stabilire con certezza quale delle due sia quella falsa. Ecco allora che ci balena in testa l'idea di pesarne tre del terzo gruppo con le tre palline di uno dei due gruppi già pesati, può succedere che la seconda pesata risulti uguale e allora basterà pesare la pallina esclusa con una qualsiasi delle altre per identificare se questa pesa di più o di meno, altrimenti la seconda pesata ci indicherà che una delle tre palline del terzo gruppo peserà di più o di meno delle altre e con l'ultima pesata, avremmo ancora due alternative una, sbagliata, come si evince dal diagramma sotto esposto, è quella di mettere al confronto due palline del gruppo noto, con le due del gruppo da pesare, in quanto nel caso la terza pesata risultasse essere diverso il peso tra “A1+A2” e “C1+C2”… sarebbe impossibile determinare se quella con il peso diverso sia “C1” oppure “C2”. Ed una giusta che consiste nel confrontare due di queste palline, (togliendone una dal piatto destro e una dal piatto sinistro). Potremmo stabilire così se è quella esclusa oppure quale delle due è quella falsa a seconda che la bilancia dia la risposta di uguale, nel caso fosse quella esclusa, di diverso nel caso la pallina che si sposta di piatto sia quella falsa o di costante nel caso che la pallina falsa sia quella che rimane nel piatto dov’era nella seconda pesata. Come si potrà notare, questa forma rappresentativa del processo di risoluzione del problema, mette in evidenza con uno “schema a blocchi” e dei simboli matematici le varie relazioni che si possono stabilire fra i fattori che costituiscono il sistema imposto dalla metodologia teorico-deduttiva di ragionamento che la nostra mente assume per trovare il percorso logico che ci porta al raggiungimento del “fine prefissato”, conformemente al “sistema teleologico” Potremmo a questo punto pensare che, ancor prima che un ragionamento o un qualsiasi pensiero si possano trasformare in linguaggio, questi siano costituiti da dei processi di “costituzioni relazionali” fra dei “continui informazionali” e le relazioni stesse, di carattere matematico. Questa ipotesi ci porterebbe a farne di conseguenza un’altra e cioè che il nostro organismo, tramite la possibilità sensoriale, riceve costantemente dei segnali energetici di vario genere che tendono a produrre delle trasformazioni biofisiche e quindi biochimiche di determinate strutture, in particolare le strutture del sistema nervoso e del sistema cerebrale, quindi esiste sicuramente una stretta interconnessione fra i segnali che noi riusciamo a percepire, le trasformazioni energetiche indotte o endogene che danno vita all’attività mentale e il linguaggio, va ricordato in proposito che se si tratta di stabilire delle relazioni fra dei “segnali energetici”, l’unico mezzo che abbiamo a disposizione è proprio dato dalle nostre possibilità di comparazione che si esprimono in parole o in simboli matematici con "uguale" o "diverso", da cui se si possono stabilire delle relazioni nel caso della diversità di due percepiti, tramite uno o dei continui informazionali , si passerà a "minore" o "maggiore", "simile", “equivalente” ecc. Il lettore che si è impegnato a risolvere questo caso da solo, ponendo attenzione alle proprie attività cerebrali, dovrebbe essersi accorto che subentra una nuova forma di potenzialità intellettiva che deriva dalla attività che la mente svolge al di sotto del livello di consapevolezza e che definirei come "intuito", questo fatto ci farebbe capire che le facoltà intellettive sono frutto non solo dell’applicazione attenzionale volontaria, ma anche dell’attività mentale che si svolge per così dire “istintivamente”, infatti il presupposto di partenza era appunto quello di identificare l’intelligenza come la "derivata" della teorizzazione formulata genericamente rispetto ad un campo informazionale , ossia un insieme di continui informazionali correlati tra loro, preso in considerazione per la risoluzione di un problema, ipotizzando inoltre che la teorizzazione fosse il prodotto dell’interconnessione dei processi di "controllo" e di "trasformazione" delle informazioni dovuti alla immaginazione e alla volontà, (nota: perché?→ perché!), nel contesto attenzionale. Coloro che si sono cimentati nella costituzione correlativa del sistema per la risoluzione di questa parte del problema sapranno certamente che la difficoltà maggiore consiste nella strutturazione della seconda pesata, poiché questa è fatta in funzione della terza, magari ci sono arrivati dopo molteplici fallimenti, quindi per esclusione di processi correlativi, alcuni avranno indubbiamente rinunciato alla fatica di inventare dei metodi di risoluzione, altri ci possono essere arrivati invece con facilità. Dobbiamo notare che la costituzione metodo logica della terza pesata è difficilmente deduttiva in quanto prevede tre possibili situazioni: una uguaglianza, una diversità ripetuta oppure una diversità variata, per questo sopra accennavo al fatto che alcuni avrebbero scoperto il metodo in modo intuitivo, dove i processi correlazionali sono dovuti all’attività dell’immaginazione che agisce al di sotto del livello di consapevolezza. Adesso invece mi sembra opportuno spendere due righe per identificare in che cosa consiste il processo deduttivo di ragionamento, si tratta in sostanza di stabilire se un continuo informazionale è vero o falso. In termini pratici dovremmo partire come base di riferimento dalla relazione causa-effetto, ipotizzando una causa noi ipotizziamo anche l’effetto relativo, qualora si faccia una comparametrazione fra due continui informazionali rispetto ad un terzo inteso come causa, dovremmo stabilire che uno dei due è falso, l’identificazione di quello vero fa assumere automaticamente l’altro come falso e per fare questo dovremmo verificare con una ulteriore comparametrazione le relazioni esistenti fra i continui informazionali in esame, basti per il momento pensare al fatto che si tratta ancora una volta di stabilire delle uguaglianze fra le relazioni. Per capire meglio questo modo di procedere della nostra mente, si pensi per esempio alla proposizione: "Il girasole è rosso", questa proposizione di per sé, può anche essere considerata come vera fintantoché non si faccia una seconda proposizione del tipo: "Le primule sono gialle", ora, se compariamo le due proposizioni potremmo assumere che una delle due è falsa in quanto il continuo informazionale dato dalla percezione del colore non corrisponde nei due casi alla relativa descrizione in quanto abbiamo una uguaglianza percepita ed invece una diversità descritta, questa comparazione implica che la funzione di causa sia proprio la percezione e l’effetto sia la sensazione che deriva da questo processo. Per stabilire quale delle due proposizioni sia quella falsa noi dovremmo ricercare una nuova comparametrazione correlando una sensazione uguale ad una delle due prese in esame attenzionalmente, per esempio la affermazione: "la rosa è gialla", ammesso che dia la stessa sensazione della primula e del girasole, ci dà la possibilità di stabilire che la prima proposizione è falsa, chi ha seguito questo ragionamento rallentando le proprie funzioni mentali dovrebbe accorgersi che qualora una proposizione viene assunta come "vera" la nostra attenzione è eccitata come quando si dice "ecco", quello che noi sentiamo è proprio il richiamo attenzionale alla causa. Potremmo considerare a questo punto la “deduzione” come un concetto funzione applicandola alla scatola nera "A(i)", come un vero e proprio motore che ci permette di passare da una serie di informazioni assunte come un continuo informazionale preso come causa ad uno preso come effetto, per poi ricondurre questo ad un nuovo concetto di causa e stabilire un nuovo effetto. Ma che cosa ci permette di creare le correlazioni in questi casi se non la “teorizzazione”? Proviamo per un attimo a pensare di ripercorrere il problema a ritroso, partendo cioè dalla costituzione dell’ultima pesata, quante ipotesi di impostazione del problema potremmo costruire, infinite, basti pensare di variare il numero delle pesate a disposizione o il numero delle palline, questo ci indica che se fosse possibile definire un livello logico di campi informazionali, quello relativo alla risoluzione finale di un problema ha sicuramente un livello logico inferiore a quello di impostazione, il percorso che si effettua passando da uno all’altro dei livelli logici viene stabilito tramite delle correlazioni di informazioni, di carattere deduttivo qualora si passi dalla impostazione del problema alla sua risoluzione tramite un processo inferenziale di causa-effetto, oppure di carattere induttivo qualora si passi, con una procedura inferenziale inversa, dagli effetti alle cause che li hanno provocati, potremmo allora definire l’intelligenza proprio come la possibilità di effettuare il passaggio dal livello logico di impostazione di un problema relativamente ai campi di informazione che lo costituiscono al livello logico della risoluzione dello stesso col minimo di correlazioni necessarie. Da quanto sopra esposto è ipotizzabile che l’intelligenza di tipo “intuitivo”, dovuta quindi ai processi correlativi che si svolgono al di sotto del livello di consapevolezza, si manifesti in modo più esplicito quando il processo di risoluzione di un problema implichi un’attività mentale di tipo “induttivo” in quanto si deve passare da strutturazioni informative aventi dei livelli logici inferiori in rapporto ai livelli logici dei campi informazionali che supportano la risoluzione stessa del problema, in altre parole, il passare dalla concezione di effetto alla causa che lo ha provocato non sempre comporta una certezza di correlazioni appropriate, si hanno soltanto delle probabilità di ripercorrere a ritroso, quindi entalpicamente dal punto di vista informativo, i processi di evoluzione. Ma facciamo un altro esempio tanto per rilassare la mente, con un problemino abbastanza simpatico, anche se per certi versi poco di moda. Cera una volta una piccolissima isola molto lontana dal resto del mondo, dove gli abitanti vivevano felici e contenti, però avevano un grosso problema di carattere possessivo: le persone sposate non potevano sopportare l’idea che i relativi partners potessero “tradirli” e renderli "cornuti" e questo pesava sulla comunità al punto tale che vi era una legge molto severa che vietava in maniera categorica di far qualsiasi allusione al fatto, né con parole né in qualsiasi altro modo. Gli abitanti di quest’isola avevano inoltre una tradizione che veniva sempre rispettata: ogni sera si riunivano tutti quanti in un luogo dove si vedevano e parlavano tra loro. Una brutta sera però, mentre erano in riunione, venne un mago burlone, che dopo aver formulato delle parole magiche disse: da questo momento a tutti coloro che sono stati fatti "cornuti" spunteranno i corni in testa, ma chi li ha non se li potrà vedere in alcun modo, mentre tutti vedranno i corni degli altri. Inoltre, disse il mago, coloro che capiranno di essere cornuti nel pieno rispetto delle leggi che vi siete imposti e quindi senza accennare in alcun modo al fatto, avranno salva la vita purché scappino dall’isola all’alba del giorno dopo che lo hanno scoperto, altrimenti tutti coloro che trasgrediranno le leggi moriranno all’istante. Dette queste parole il mago aggiunse: tornerò ancora, per sciogliere l'incantesimo, quando scoprirete quanti cornuti ci sono, così capirete finalmente che il sesso non è tutto nella vita! A quelle parole tutti si spaventarono, passarono sette giorni difficili, ma all'alba dell'ottavo giorno tutti i cornuti dell'isola lasciarono quel posto e nessuno degli abitanti morì! La stessa sera ritornò il mago e vedendo che nessuno era morto e non c’erano più cornuti, fu costretto a sciogliere l’incantesimo, gli abitanti che restarono abolirono in quella riunione la legge famosa e il mago, stupito, chiese loro come avevano fatto a sfuggire ai suoi sortilegi. Quello che si deve scoprire è quanti cornuti c’erano sull’isola e come avevano fatto a capire la loro condizione? Questo nel pieno rispetto dei termini imposti dal problema, mettendosi nelle stesse condizioni di quei poveri malcapitati. Tengo a precisare che non serve ipotizzare nessun tipo di comunicazione per ottenere la risoluzione del problema, il ragionamento da fare è squisitamente soggettivo. Ora si sospenda per un attimo la lettura e si cerchi di dare una risposta alla prima domanda. E‘ molto facile che accada che la risposta sia immediatamente quella giusta in quanto la nostra mente associa intuitivamente una costante ad ogni giorno ossia il numero delle riunioni, in altre parole si viene a creare un continuo informazionale inteso come causa, al quale sempre con la facoltà di stabilire delle uguaglianze fra dei continui informazionali e correlando in modo diretto la causa all’effetto si arriva a stabilire che i cornuti erano sette. Invece è probabile che riesca molto più difficile stabilire il metodo di ragionamento necessario per poter capire come abbiano fatto quelle persone a capire di essere cornuti soltanto usufruendo di una riflessione inferenziale. In effetti ogni abitante sposato dell’isola non poteva in alcun modo informarsi e sapere se era o meno un potenziale cornuto però poteva contare quanti cornuti vedeva durante la famosa riunione serale. Quindi, fin dalla prima sera ogni abitante dell’isola "cornuto" poteva contare sei altri "cornuti", mentre coloro che non lo erano ne vedevano sette. Allora il ragionamento che si può fare è questo: se io fossi "cornuto" vedrei il numero dei "cornuti" meno uno, altrimenti se io non lo fossi vedrei effettivamente il numero dei "cornuti" che ci sono. Quindi se effettivamente i cornuti fossero sei, ognuno di loro ne vedrebbe cinque e soltanto alla sesta sera, sapendo che nessuno era partito all’alba, il sesto si accorgerebbe di essere cornuto, perciò all’alba del settimo giorno dovrebbero partire tutti, ma se i cornuti sono sette e io ne ho contati solo sei allora significa che anch’io sono cornuto e allora partiremmo all’alba dell’ottavo giorno. In effetti si pensi a questo, se il cornuto era una sola persona, allora la prima sera non ne avrebbe visti altri e quindi sarebbe dovuta andarsene al mattino dopo. Se le persone cornute fossero state due, la prima sera ognuna di loro avrebbe visto una sola persona con i corni e quindi se alla seconda sera la situazione rimaneva immutata allora capivano entrambe di essere nelle stesse condizioni e sarebbero partite all'alba del terzo giorno,così se le persone fossero state tre, sarebbero partite all'alba del quarto giorno dopo aver fatto la triste scoperta contemporaneamente alla riunione del terzo giorno, ecc. In definitiva, il ragionamento viene condotto con un metodo inferenziale che prevede questa logica: SE è vero che T è il numero dei cornuti, ALLORA in T riunioni questi lo saprebbero, ALTRIMENTI, T èil numero dei cornuti meno uno e ALLORA servirebbero T più una riunione per sapere la verità; ovviamente T rappresenta il numero di cornuti che ogni persona vede. In un linguaggio estremamente stereotipato, come potrebbe essere quello adottato dalle macrofunzioni dei sistemi di programmazione dei computers potremmo ulteriormente tradurre quanto espresso sopra con la formula: SE T=NC ALLORA T=NR,ALTRIMENTI T=NC-1,ALLORA NR=NR+ Grazie mille per la lettura, nel prossimo articolo, l'ultimo di questa prima serie 😞, andremo a parlare del Sistema Inferenziale, di Passato,presente e futuro...