TensorFlow: resoconto secondo incontro Meetup "Machine-Learning e Data Science" Roma (19 febbraio 2017)

170219-tensorflow.jpg

Il 16 febbraio 2017 si è svolto a Roma – presso il Talent Garden di Cinecittà - il secondo incontro del Meetup "Machine Learning e Data Science" (web, fb, slideshare): l’incontro - organizzato insieme al Google Developer Group Roma Lazio Abruzzo   - è stato dedicato alla presentazione di TensorFlow,  la soluzione di Google per il deep learning nel machine learning.

Nel seguito una breve sintesi dell’incontro del 16 febbraio 2017.

Prima di iniziare:

•    Cos’è il Machine Learning? Intervista a Simone Scardapane sul Machine Learning Lab (1 dicembre 2016)
•    Cos’è TensorFlow? Andrea Bessi, “TensorFlow CodeLab”, Nov 16, 2016

Resoconto

Premessa

Il 15 Febbraio 2017 a Mountain View (USA) si è tenuto il “TensorFlow Dev Summit” , il primo evento ufficiale di Google dedicato a TensorFlow, la soluzione di deep learning rilasciato circa un anno fa e giunta adesso alla versione 1.0 “production ready”.
Il “TensorFlow Dev Summit” è stato aperto da un keynote di Jeff Dean (wiki, web, lk) - Google Senior Fellow - Rajat Monga (tw) - TensorFlow leader nel Google Brain team - e Megan Kacholia (lk) Engineering Director del TensorFlow/Brain team.

Per approfonsire il #TFDevSummit 2017:

L’incontro del Meetup "Machine-Learning” di Roma è stata un’occasione per rivedere insieme e commentare il video e fare anche una breve presentazione di TensorFlow.
Alla fine dell'evento c’è stato un piccolo rinfresco aperto a tutti gli appassionati di deep learning a Roma.

Simone Scardapane: “TensorFlow and Google, one year of exciting breakthroughs”

Simone (mup, web, fb, lk) ha aperto l’incontro con una breve presentazione sul deep learning e TensorFlow.
“TensorFlow” ha detto Simone “ ha reso accessibili a tutti le reti neurali che sono alla base del deep learning e dell’intelligenza artificiale. Prima di TensorFlow c’era una oggettiva difficoltà nel gestire e allenare reti neurali vaste e complesse”.
Le moderne architetture di deep learning usano infatti reti neurali molto complesse: ad esempio nelle applicazioni di data imaging  i modelli architetturali prevedono decine di milioni di parametri.

170219-reteneurale.jpg

(Rete neurale, immagine tratta da http://joelouismarino.github.io/blog_posts/blog_googlenet_keras.html)

Uno dei grossi vantaggi di TensorFlow è che permette di definire una rete neurale in modo simbolico: lo strumento fornisce inoltre un compilatore efficiente che gestisce in automatico il processo di back-propagation.
TensorFlow può essere utilizzato inoltre con una interfaccia semplificata come Keras arrivando quasi ad una sorta di programmazione dichiarativa.
La prima release di TensorFlow – ha ricordato Simone - è stata rilasciata nel novembre 2015 con licenza aperta Apache 2.0  (cos’è?). Il 15 febbraio 2017 – durante il TFDevSummit - è stata annunciata la versione 1.0 di TensorFlow la prima “production ready”.
La disponibilità di un ambiente deep learning aperto e “user-friendly” ha permesso lo sviluppo di una vasta comunità di esperti, ricercatori e semplici appassionati e il rilascio applicazioni software di grande impatto. Simone ha mostrato alcuni esempi.

1) Neural image captioning: software in grado di riconoscere e descrivere o sottotitolare immagini.

170216-tensorflow-s2.jpg
 

170216-ragazzo-aquilone.jpg

170216-tren-b-n.jpg

2) Google Neural Machine Translation (GNMT)  che ha permesso il rifacimento di “Google translator” grazie al deep learning: invece di tradurre parola per parola ora è possibile analizza il testo nella sua interezza cogliendo significato e il contesto con un livello di accuratezza ormai vicino alla traduzione umana.

nmt-model-fast.jpg

170216-neural-translation.jpg
170216-neural-translation2.jpg

3) Generative Adversarial Networks (GANS) sistemi capaci di generare nuovi dati grazie a un emenorme “training set” e che lavorano con una coppia di reti neurali: la prima produce nuovi dati la seconda controlla la “bontà” del risultato; questi sistemi sono già stati usati per generare immagini artificiali, scenari per video-game, migliorare immagini e riprese video di scarsa qualità.

170216-generative-image

4) Alphago: il deep learning è anche alla base dei recenti spettacolari successi dell’IA nel campo dei giochi da tavolo come la vittoria di Alphago di Google  contro il campione del mondo di GO.

170216-alphago.jpg

5) WaveNet - a generative model for raw audio - capace di generare discorsi che imitano una voce umana con molta più “naturalezza” rispetto ai migliori sistemi di Text-to-Speech oggi esistenti. WaveNet è già stato utilizzato anche per creare musica artificiale.

Simone ha concluso il suo intervento ricordando che di deep learning e ML si parlerà anche in un track specifico alla Data Driven Innovation Roma 2017   che si terrà presso la 3° università di Roma il 24 e 25 febbraio 2017.

Sintesi del keynote di Jeff Dean, Rajat Monga e Megan Kacholia su TensorFlow

Il keynote di apertura del TF DevSummit 2017 condotto da Jeff Dean, Rajat Monga e Megan Kacholia  ha trattato:

  • origini e storia di TensorFlow
  • i progressi da quanto è stata rilasciata la prima versione opensource di TensorFlow
  • la crescente comunità open-source di TensorFlow
  • performance e scalabilityà di TensorFlow
  • applicazioni di TensorFlow
  • exciting announcements!

Jeff Dean

jeff dean.jpg

Jeff ha detto che l’obiettivo di Google con TensorFlow è costruire una “machine learning platform” utilizzabile da chiunque.
TensorFlow è stato rilasciato circa un anno fa ma le attività di Google nel campo del machine learning e deep learning sono iniziati 5 anni fa.
Il primo sistema realizzato – nel 2012 – è stato DistBelief un sistema proprietario di reti neurali adatto ad un ambiente produzione come quello di Google basato su sistemi distribuiti (vedi “Large Scale Distributed Deep Networks” in pdf). DistBelief è stato utilizzato in molti prodotti Google di successo come Google Search, Google Voice Search, advertising, Google Photos, Google Maps, Google Street View, Google Translate, YouTube.
Ma DistBelief aveva molti limiti: “volevamo un sistema molto più flessibile e general purpose” ha detto Jeff “che fosse open source e che venisse adottato e sviluppato da una vasta comunità in tutto il mondo e orientato non solo alla produzione ma anche alla ricerca. Così nel 2016 abbiamo annunciato TensorFlow, una soluzione capace di girare in molteplici ambienti compreso IOS, Android, Raspberry PI, capace di girare su CPU, GPU e TPU, ma anche sul Cloud di Goole ed essere interfacciata da linguaggi come Python, C++, GO, Hasknell, R”.

170216-tensorflow-keynote1.jpg
TensorFlow ha anche sofisticati tool per la visualizzazione dei dati e questo ha facilitato lo sviluppo di una vasta comunità open source intorno a TensorFlow.

170216-tensorflow-keynote2.jpg

Rajat Monga

rajatmonga2.jpg

Rajat Monga ha ufficialmente annunciato il rilascio della versione 1.0 di TensorFlow illustrandone le nuove caratteristiche.

170216-tensorflow-keynote3.jpg

170216-tensorflow-keynote4.jpg

Rajat ha poi illustrato le nuove API di TensorFlow

170218-tf-model.jpg

TensorFlow 1.0 supporta IBM's PowerAI distribution, Movidius Myriad 2 accelerator, Qualcomm SnapDragon Hexagon DSP. Rajat ha annunciato anche la disponibilità di XLA an experimental TensorFlow compiler  specializzato nella compilazione just-in-time e nei calcoli algebrici.

170218-tf-xla.jpg

Megan Kacholia

megankacholia2.jpg

Megan Kacholia ha approfondito il tema delle performancedi TensorFlow 1.0.

170216-tensorflow-keynote7.jpg

In ambiente di produzione si possono utilizzare  molteplici architetture: server farm, CPU-GPU-TPU, server a bassa latenza (come nel mobile) perché TensorFlow 1.0 è ottimizzato per garantire ottime performance in tutti gli ambienti.

170218-tf-performance1.jpg

Megan ha poi illustrato esempi dell’uso di TensorFlow in ricerche d'avanguardia - cutting-edge research – e applicazioni pratiche in ambiente mobile.

170218-tf-research2.jpg

170218-tf-research1.jpg

Conclusione del keynote

In conclusione del Keynote è di nuovo intervenuto Jeff per ringraziare tutti coloro che contribuiscono alla comunità di TensorFlow pur non facendo parte di Google.
“Dalla comunità” ha detto Jeff “arrivano suggerimenti, richieste e anche soluzioni brillanti a cui in Google non avevamo ancora pensato” citando il caso di un agricoltore giapponese che ha sviluppato un’applicazione con TensorFlow su Raspberry PI per riconoscere i cetrioli storti e scartarli nella fase di impacchettamento.
Nel campo della medicina – ha ricordato Jeff – TensorFlow è stato usato per la diagnostica della retinopatia diabetica (qui una sintesi) e all’università di Stanford per la cura del cancro della pelle .

Contatti

•    Meetup “Machine-Learning e Data Science” di Roma: - sito web e pagina Facebook

Approfondimenti

Video

Ulteriori informazioni su TensorFlow

Leggi anche

AG-Vocabolario: 

Resoconto primo incontro Meetup "Machine-Learning e Data Science" (3 febbraio 2017)

170203-ml-meetup.jpg

Il 2 febbraio 2017 si è svolto a Roma il primo incontro del Meetup "Machine-Learning e Data-Science"  (fb) presso la Sala Storica di LUISS ENLABS.

Agenda

  • Simone Scardapane e Gabriele Nocco, presentazione del Meetup "Machine-Learning e Data Science"
  • Gianluca Mauro (AI-Academy): Intelligenza artificiale per il tuo business
  • Lorenzo Ridi (Noovle): Serverless Data Architecture at scale on Google Cloud Platform

Simone Scardapane e Gabriele Nocco, presentazione del Meetup "Machine-Learning e Data Science"

161022-simone-scardapane.jpg

(Simone Scardapane)

Simone (mup, web, fb, lk) ha rapidamente illustrato le finalità del Meetup "Machine-Learning e Data-Science" 
“Vogliamo creare una comunità di appassionati e professionisti di ML, AI e Data Science” ha detto Simone, “un luogo dove trovare risposte a domande quali:

  1. Sono appassionato di Ml, dove trovo altri esperti?
  2. Cerchiamo qualcuno esperto di ML, ne conosci?
  3. Mi piacerebbe avvicinarmi a ML, come faccio?”

gabrielenocco.jpeg

(Gabriele Nocco)

Gabriele Nocco (mup , fb, lk) ha annunciato che il secondo evento del Meetup si terrà a Roma il 16 febbraio 2017 al Talent Garden di Cinecittà (mappa) in collaborazione con il Google Dev Group di Roma . Per partecipare occorre registrarsi – gratuitamente – a EventBrite.
“Parleremo di TensorFlow  e proietteremo il keynote ed alcuni momenti salienti del primo TensorFlow Dev Summit per tutti gli appassionati di deep learning e, grazie anche alla gentile sponsorship di Google, avremo il nostro secondo momento di networking condiviso nei bellissimi spazi a nostra disposizione” ha detto Gabriele.
innocenzo-sansone.jpg

(Innocenzo Sansone)

È intervenuto anche Innocenzo Sansone (fb, tw , lk)  – tra gli organizzatori e sponsor – che ha ricordato che il 24 e 25 marzo 2017 a Roma avrà luogo Codemotion  nel quale è previsto – tra gli altri – anche un track specifico sul Machine Learning.

Gianluca Mauro (AI-Academy ): Intelligenza artificiale per il tuo business

170203-gianluca-mauro2.jpg

(Gianluca Mauro)

Gianluca (blog, lk) – ingegnere, imprenditore, esperto di AI, ML e Data Science – è anche uno dei 3 fondatori – insieme a Simone Totaro  (lk)  e Nicolò Valigi (lk) - di AI-Academy  una startup che si prefigge di favorire l’utilizzo dell’Intelligenza Artificiale nei processi di business aziendali (vedi AI Academy manifesto).

ai-academy.jpg

Breve storia dell’Intelligenza Artificiale

Nella prima parte del suo intervento Gianluca ha delineato lo sviluppo storico dell’Intelligenza artificiale.
Gli inizi della IA si devono alla conferenza tenutesi a Dartmouth – USA - nel 1956  ed organizzata da John McCarthy, Marvin Minsky, Nathaniel Rochester e Claude Shannon: per la prima volta si parla di “intelligenza artificiale” e viene indicato l’obiettivo di “costruire una macchina che simuli totalmente l’intelligenza umana” proponendo temi di ricerca che negli anni successivi avranno un grande sviluppo: reti neurali, teoria della computabilità, creatività e elaborazione del linguaggio naturale.

dartmouth.jpg
 
Fonte immagine: http://www.scaruffi.com/mind/ai.html

La ricerca IA viene generosamente finanziata dal governo statunitense fino alla metà degli anni 60: di fronte alla mancanza di risultati concreti i finanziamenti cessano dando origine al primo “AI winter” (1966 – 1980).
Negli anni 80 l’IA riprende vigore grazie a un cambio di paradigma: invece di inseguire l’obiettivo di riprodurre artificialmente l’intera intelligenza umana si ripiega sulla realizzazione di “Sistemi esperti” in grado di simulare le conoscenze in ambiti delimitati.
Anche questo 2° tentativo ha però scarsa fortuna causando il nuovo “AI winter” che si protrae fino agli inizi degli anni 90 quando comincia a imporsi una nuova disciplina: il Machine Learning.

Cos’è il Machine Learning?

AI.jpg

Fonte immagine: http://www.thebluediamondgallery.com/tablet/a/artificial-intelligence.html

Il Machine Learning – ha spiegato Gianluca – è una branca dell’Intelligenza Artificiale che si propone di realizzare algoritmi che a partire dai dati ricevuti in input si adattino in maniera automatica così da produrre risultati “intelligenti” quali previsioni e raccomandazioni.
Gianluca ha fatto l’esempio di un bambino che impara a camminare: non serve conoscere la legge di gravità ed è sufficiente osservare come cammina la mamma e riprovare fino a che non si trova l’equilibrio.

Cos’è il Deep Learning?

Il deep learning è un sottoinsieme del Machine Learning e si rivolge alla progettazione, allo sviluppo, al testing e soprattutto al traning delle reti neurali e di altre tecnologie per l’apprendimento automatico.
Il deep learning è alla base degli spettacolari successi dell’IA nel campo dei giochi da tavolo: la vittoria agli scacchi di Deep Blue di IBM contro il campione del mondo in carica, Garry Kasparov,  e la vittoria di Alphago di Google contro il campione del mondo di GO .

This is the golden age of Artificial Intelligence

Secondo Gianluca Mauro questo è il momento magico per l’IA perché finalmente abbiamo gli strumenti – algoritmi, data, computing power – necessari per realizzare applicazioni di ML a costi sempre più bassi.
Gli algoritmi sono ormai collaudati grazie ai lavori pubblicati negli ultimi anni a cominciare da quelli di Corinna Cortes (“Support-vector networks”) e Davide Rumelhart (“Learning representations by back-propagating errors”).
Il computing power è rappresentato principalmente dalla grande quantità di tecnologie open source a disposizione.
La combinazione di tutti questi fattori è rivoluzionario come dice Chris Dixon, uno dei più noti esponenti del Venture capital USA:
“La maggior parte degli studi di ricerca, degli strumenti e degli strumenti sw legati al ML sono open source. Tutto ciò ha avuto un effetto di democratizzazione che consente a piccole imprese e addirittura a singoli individui di realizzare applicazioni veramente potenti. WhatsApp è stato in grado di costruire un sistema di messaggistica globale che serve 900 milioni di utenti assumendo solo 50 ingegneri rispetto alle migliaia di ingegneri che sono stati necessari per realizzare i precedenti di sistemi di messaggistica. Questo "effetto WhatsApp" sta accadendo adesso nell’Intelligenza Artificiale. Strumenti software come Theano e TensorFlow, in combinazione con i cloud data centers per i training, e con le GPU a basso costo per il deployment consentono adesso a piccole squadre di ingegneri di realizzare sistemi di intelligenza artificiale innovativi e competitivi”.
Secondo Gianluca l’IA presto sarà una necessità per qualsiasi azienda o per citare Pedro Domingos: “A company without Machine Learning can’t keep up with one that uses it”.
Secondo Andrew Ng, chief scientist in Baidu, AI e ML stanno già trasformando le imprese perché le obbligheranno a rivoluzionare i loro processi produttivi così come accadde nell’800 quando fu disponibile per la prima volta elettricità a basso costo (video).
Questo cambiamento culturale è già avvertibile nel Venture Capital e nel Merger & Acquisition: le grandi imprese non cercano solo startup che si occupano di ricerca pura nell’ML ma startup che realizzano servizi e prodotti con ML embedded.
“Siamo all’alba di una nuova era” ha concluso Gianluca “quella del Machine Learning as a feature”.

Lorenzo Ridi (Noovle): Serverless Data Architecture at scale on Google Cloud Platform

lorenzo-ridi.jpeg

(Lorenzo Ridi)

Lorenzo Ridi (mup, fb, lk),  tw) ha presentato un caso d’uso concreto (qui disponibile nella sua versione integrale , anche su SlideShare) per mostrare i vantaggi di usare l’architettura su Google Cloud Platform, attraverso sole componenti serverless, in applicazioni con Machine-Learnin embedded.
Il caso d’uso riguarda una società che con l’avvicinarsi del Black Friday decide di commissionare un’indagine sui social, e in particolare su Twitter, per catturare insights utili a posizionare correttamente i propri prodotti, prima e durante l’evento: questo è tanto più cruciale quanto si considera l’enorme dimensione del catalogo aziendale perché indirizzare in modo sbagliato la propria campagna pubblicitaria e promozionale sarebbe un errore fatale.
Tuttavia, per gestire il forte traffico atteso durante l’evento, gli ingegneri di ACME decidono di abbandonare le tecnologie tradizionali, e di implementare questa architettura su Google Cloud Platform, attraverso sole componenti serverless:

170203-google-architecture-ml1.jpg
 
Ingestion

Per recuperare i dati viene implementata una semplice applicazione Python che, attraverso la libreria TweePy, accede alle Streaming API di Twitter recuperando il flusso di messaggi riguardanti il Black Friday e le tematiche ad esso connesse.
Per fare in modo che anche questa componente mantenga gli standard di affidabilità prefissati, si decide di eseguirla, all’interno di un container Docker, su Google Container Engine, l’implementazione di Kubernetes su Google Cloud Platform. In questo modo, non dovremo preoccuparci di eventuali outage o malfunzionamenti. Tutto è gestito (e all’occorrenza automaticamente riavviato) da Kubernetes.

170203-google-architecture-ml2.jpg
 
Innanzitutto creiamo l’immagine Docker che utilizzeremo per il deploy. A questo scopo è sufficiente redigere opportunamente un Dockerfile che contenga le istruzioni per installare le librerie necessarie, copiare la nostra applicazione ed avviare lo script:

170203-google-architecture-ml3.jpg
 
Et voilà! L’immagine Docker è pronta per essere eseguita ovunque: sul nostro laptop, su un server on-prem o, come nel nostro caso, all’interno di un cluster Kubernetes. Il deploy su Container Engine è semplicissimo, con il tool da riga di comando di Google Cloud Platform: tre sole istruzioni che servono a creare il cluster Kubernetes, acquisire le credenziali di accesso ed eseguire l’applicazione in modo scalabile ed affidabile all’interno di un ReplicationController.
Il secondo elemento della catena, la componente cioè verso la quale la nostra applicazione invierà i tweet, è Google Pub/Sub. una soluzione middleware fully-managed, che realizza un’architettura Publisher/Subscriber in modo affidabile e scalabile.
Nella fase di processing, utilizziamo altri due strumenti della suite Google Cloud Platform:

  • Google Cloud Dataflow è un SDK Java open source – adesso noto sotto il nome di Apache Beam – per la realizzazione di pipeline di processing parallele. Inoltre, Cloud Dataflow è il servizio fully managed operante sull’infrastruttura Google, che esegue in modo ottimizzato pipeline di processing scritte con Apache Beam.
  • Google BigQuery è una soluzione di Analytic Data Warehouse fully managed. Le sue performance strabilianti, che abbiamo avuto modo di sottolineare più volte, lo rendono una soluzione ottimale all’interno di architetture di Data Analytics.

La pipeline che andiamo a progettare è estremamente semplice. Di fatto non farà altro che trasformare la struttura JSON che identifica ogni Tweet, inviata dalle API di Twitter e recapitata da Pub/Sub, in una struttura record BigQuery. Successivamente, attraverso le BigQuery Streaming API, ogni record verrà scritto in una tabella in modo tale che i dati possano essere immediatamente analizzati.
 170203-google-architecture-ml4.jpg
Il codice della pipeline è estremamente semplice; questo è in effetti uno dei punti di forza di Apache Beam rispetto ad altri paradigmi di processing, come MapReduce. Tutto ciò che dobbiamo fare è creare un oggetto di tipo Pipeline e poi applicare ripetutamente il metodo apply() per trasformare i dati in modo opportuno. È interessante osservare come i dati vengano letti e scritti utilizzando due elementi di I/O inclusi nell’SDK: PubSubIO e BigQueryIO. Non è quindi necessario scrivere codice boilerplate per implementare l’integrazione tra i sistemi.

Machine learning

Per visualizzare graficamente i risultati utilizziamo Google Data Studio, uno strumento della suite Google Analytics che consente di costruire visualizzazioni grafiche di vario tipo a partire da diverse sorgenti dati, tra le quali ovviamente figura anche BigQuery.
Possiamo poi condividere le dashboard, oppure renderle pubblicamente accessibili, esattamente come faremmo con un documento Google Drive.

170203-ml5.jpg
 
In questo grafico è riportato il numero di Tweet collezionato da ogni stato dell’Unione. Sicuramente d’impatto, ma non molto utile per il nostro scopo. In effetti, dopo un po’ di analisi esplorativa dei dati, ci accorgiamo che con i soli tweet collezionati non riusciamo a fare analisi molto “avanzate”. Dobbiamo quindi rivedere la nostra procedura di processing per cercare di inferire qualche elemento di conoscenza più “interessante”.
Google Cloud Platform ci viene in aiuto, in questo caso offrendoci una serie di API, basate su algoritmi di Machine Learning, il cui scopo è esattamente aggiungere un pizzico di “intelligenza” al nostro processo di analisi. In particolare utilizzeremo le Natural Language API, che ci saranno utili per recuperare il sentiment di ogni tweet, cioè un indicatore numerico della positività (o negatività) del testo contenuto nel messaggio.

170203-google-architecture-ml6.jpg
 
La API è molto semplice da usare: prende in ingresso un testo (il nostro tweet) e restituisce due parametri:

  • Polarity (FLOAT variabile da -1 a 1) esprime l’umore del testo: valori positivi denotano sentimenti positivi.
  • Magnitude (FLOAT variabile da 0 a +inf) esprime l’intensità del sentimento. Valori più alti denotano sentimenti più forti (siano essi rabbia o gioia).

La nostra personale semplicistica definizione di “sentiment” altro non è che il prodotto di questi due valori. In questo modo siamo in grado di assegnare un valore numerico ad ogni tweet – ed auspicabilmente, di tirarne fuori delle statistiche interessanti!
La pipeline Dataflow viene modificata in modo da includere, oltre al flusso precedente, anche questo nuovo step. Tale modifica è molto semplice, e visto il modello di programmazione di Cloud Dataflow, permette un notevole riuso del codice esistente.

170203-google-architecture-ml7.jpg
 

Con questi nuovi dati possiamo realizzare delle analisi molto più interessanti, che ci informano sulla distribuzione geografica e temporale del “sentimento” riguardante l’evento Black Friday.
La mappa che segue, ad esempio, mostra il sentiment medio registrato in ognuno degli stati degli US, colori più scuri rappresentano sentiment più negativi (quel quadrato rosso là in mezzo è il Wyoming).

170203-google-architecture-ml8.jpg
 
Quest’altra analisi invece riporta l’andamento del sentiment legato ai tre maggiori vendor statunitensi: Amazon, Walmart e Best Buy. A partire da questa semplice analisi, con un po’ di drill-down sui dati, siamo riusciti a carpire alcuni fatti interessanti:

  • il popolo di Twitter non ha apprezzato la decisione di Walmart di anticipare l’apertura delle proprie vendite al giorno precedente il Black Friday, la festa nazionale del Thanksgiving Day. La popolarità di Walmart è stata infatti minata fin dai primi di Novembre da questa decisione  – d’altronde, la tutela dei lavoratori è un tema universale.
  • Le vendite promozionali di Amazon (aperte il 18 Novembre, quindi con anticipo rispetto al Black Friday) sono state inizialmente duramente criticate dagli utenti, con un crollo della popolarità che ha raggiunto il suo minimo il 22. In seguito però il colosso delle vendite online ha recuperato terreno rispetto a Best Buy, che invece sembra aver mantenuto intatta la sua buona reputazione per tutto il periodo.

170203-google-architecture-ml9.jpg

Contatti

Leggi anche

AG-Vocabolario: 

Simone Scardapane: Machine Learning Lab (1 dicembre 2016)

161022-ml2.jpg

Il 22 ottobre 2016 si è svolta la “Google DevFest”, organizzata dal Google Developer Group Roma Lazio Abruzzo presso l’Engineering Department dell’Università degli Studi di Roma Tre.
Uno dei seminari della “Google DevFest” è stato dedicato al “Machine Learning” ed è stato condotto da Simone Scardapane - della Università “La Sapienza” di Roma - che abbiamo intervistato.

161022-simone-scardapane.jpg

(Simone Scardapane)
 
Agatino Grillo (AG): Buongiorno Simone e grazie per la collaborazione. Ti vuoi presentare?

Simone Scardapane (SS): Sono un assegnista di ricerca presso l’Università “la Sapienza” di Roma, e le mie attività di ricerca si concentrano in prevalenza su vari aspetti del Machine Learning. Sono membro del GDG da diversi anni, ed in questo tempo abbiamo organizzato diverse presentazioni, come quella dell’ultima DevFest, per cercare di introdurre un pubblico più vasto alle tematiche del Machine Learning, che (credo) saranno sempre più importanti per sviluppatori e non negli anni a venire.
Prima di prendere il dottorato, mi sono laureato in Ingegneria Informatica a Roma Tre, ed in seguito ho conseguito un Master in Intelligenza Artificiale e Robotica presso La Sapienza.

AG: Cos’è il “Machine Learning” (ML)?

SS: Si tratta di un campo molto vasto che, in sostanza, si pone come obiettivo di realizzare algoritmi che si adattino in maniera automatica a partire dai dati che ricevono, al fine di realizzare previsioni o, più in generale, comportamenti intelligenti di vario tipo.
Un esempio classico è una banca che, al momento di erogare un prestito, potrebbe utilizzare un algoritmo di ML per fare previsioni sulla solvibilità dei propri clienti basandosi sullo storico dei prestiti già erogati fino a quel momento.
Un altro campo di utilizzo classico del ML riguarda la “raccomandazione” di prodotti o servizi simili sulla base delle scelte fatte dai consumatori già registrati nelle basi dati, che ha moltissima rilevanza oggi nei servizi di e-commerce.

AG: Come è nato il ML e perché oggi ha acquistato tanta importanza?

SS: Il Machine Learning, che possiamo considerare una branca dell’Intelligenza Artificiale, è una disciplina che sotto varie forme esiste da molti decenni: il primo embrione di quelle che oggi sono le reti neurali nasce negli anni quaranta, mentre il termine “machine learning” viene introdotto circa nel 1959. È un campo complesso che ha guadagnato dal contributo di tantissime discipline, tra cui l’informatica, la matematica, le scienze cognitive e molte altre.
Negli anni ha attraversato varie fasi, direi che oggi ha raggiunto una fase di maturità grazie ad (almeno) 3 fattori concomitanti:

  1. sono disponibili grandi basi di dati che possono essere usate per addestrare gli algoritmi di ML
  2. la potenza computazionale necessaria è disponibile a basso costo (si pensi a piattaforme di cluster computing come Spark)
  3. si sono imposte delle librerie standard che permettono di realizzare gli algoritmi in modo veloce all’interno di linguaggi e programmi estremamente interattivi.

Esiste una classificazione storica degli algoritmi di ML, che possiamo dividere in:

  1. apprendimento supervisionato: si basa sull’utilizzo di informazioni “etichettate” in qualche modo – come nell’esempio della banca, dove ciascun cliente è etichettato in funzione del suo livello di solvibilità – per predire nuovi risultati
  2. apprendimento non supervisionato: in questo caso, l’obiettivo è gestire informazioni secondo strutture non note a priori; ad esempio facendo clustering di clienti per offerte commerciali mirate
  3. apprendimento con rinforzo (reinforcement learning): è l’area più avanzata e probabilmente meno standardizzata, in questo caso i dati servono ad apprendere azioni ottimali in ambienti non strutturati – si pensi ad esempio ad un programma che impara a giocare a scacchi.

AG: Cosa serve per fare ML?

SS: Ovviamente dipende dalla quantità di dati che si vuole analizzare e dagli obiettivi che ci si prefigge. A livello implementativo, se i dati non sono eccessivi si può facilmente sperimentare su un singolo computer, basta la conoscenza di almeno un linguaggio di programmazione e delle librerie di ML e di analisi di dati disponibili. A livello teorico conta molto quanto si vuole approfondire l’argomento. Alcuni concetti di fondo si imparano facilmente, ma per andare oltre le descrizioni informali dei metodi e degli algoritmi è richiesta (almeno) una conoscenza di base di algebra lineare e di ottimizzazione.

161022-ml3.jpg

AG: in cosa è consistito il tuo ML lab?

SS: Nel lab che ho condotto durante la Google Fest abbiamo usato scikit-learn (sklearn) - una libreria open source di apprendimento automatico in Python. L’idea era quella di mostrare che, con il livello di maturità raggiunto dalle librerie software di oggi, si può arrivare a dei primi risultati in maniera rapida e valutando tutto il processo ad alto livello. Ovviamente questo non toglie la necessità di capire gli algoritmi, ma credo che questo genere di esperienza “hands-on” aiuti ad invogliare le persone ad avvicinarsi a questo campo.

Nel dettaglio, sklearn contiene algoritmi ML di classificazione, regressione, clustering, e diverse funzioni di supporto per la valutazione e l’ottimizzazione dei modelli. Soprattutto, ha un’interfaccia molto semplice e consistente per il suo utilizzo. Per chi volesse replicare quanto fatto, consiglio di scaricare e installare l’ambiente Pyhton integrato Anaconda, un full-stack che contiene tutto quello che serve, incluso un IDE specializzato per il calcolo scientifico.

Nel lab abbiamo visto e commentato insieme tre esempi di algoritmi ML:

  • Music classification: classificare secondo il genere musicale un insieme di canzoni tratte da un dataset predefinito.
  • Image segmentation effettuata in maniera non convenzionale grazie a un algoritmo di clustering.
  • Joke recommendation: come consigliare barzellette usando il dataset di prova 1_1 della Jester collection.

Tutto il codice zippato e le slides relative sono disponibili sulla mia pagina web.

AG: Che sviluppi futuri ti aspetti per il ML?

SS: Negli ultimi due/tre anni abbiamo visto una esplosione di applicazioni grazie alla diffusione del “deep learning”, una nuova famiglia di algoritmi che permettono di estrarre rappresentazioni gerarchiche di dati complessi (es., immagini). Sicuramente questo trend continuerà, ad esempio con nuovi filoni di applicazioni in ambito biomedico e di analisi di dati scientifici (per esempio nel campo della fisica delle particelle).
Più in generale, tutti i risultati ottenuti finora sono solo una piccola parte di quello che servirebbe per avere degli algoritmi che “imparano” nel senso più generale del termine. L’accelerazione del ML e del deep learning sicuramente porterà ad una simile accelerazione in questi campi più di frontiera, soprattutto nel reinforcement learning, nell’analisi di dati complessi, nel trasferimento di conoscenza fra problemi diversi, e così via.

AG: Cosa consigli a chi voglia intraprendere questo tipo di studi a livello universitario?

SS: Come già detto, il ML è un campo molto variegato, a cui ci si può affacciare da diverse discipline, incluse informatica, ingegneria, matematica e così via. Il mio consiglio per chi volesse specializzarsi in questa disciplina è di controllare bene quale sia l’opzione migliore all’interno della propria università – in alcuni casi potrebbe essere preferibile un percorso all’interno di Informatica o Ingegneria Informatica, in altri i corsi potrebbero essere erogati all’interno dell’area di matematica applicata o statistica. È difficile dare un consiglio che valga in generale.

AG: Cosa consigli invece a chi voglia approfondire l’argomento?

SS: Oggi il modo più comune di approcciarsi al ML è quello di frequentare uno dei tanti corsi online disponibili su piattaforme MOOC, come quelli di Coursera o Udacity. Si tratta di ottimi punti di partenza che permettono un buon ripasso dei fondamenti ed una certa visione di insieme. A quel punto è possibile seguire materiale più specializzato a seconda dei propri interessi. Il mio consiglio in questo caso è di provare da subito ad applicare le tecniche che si imparano, ad esempio all’interno di piattaforme come Kaggle che mettono a disposizione diversi dataset su cui confrontarsi. Come in tutti i settori, l’esperienza pratica non è mai troppo poca, ed è l’unica che permette di prendere realtà familiarità con una vasta schiera di tecniche ed algoritmi.

Link

Google Developer Group Lazio e Abruzzo

Simone Scardapane

Strumenti e tool

 

AG-Vocabolario: 

Google DevFest + Linux Day Roma 22 ottobre 2016

161022-gdfest-2016.jpg

Sessioni Monografiche

  • Angular2
  • BigData
  • DevOps
  • Machine Learning
  • Mobile

Angular 2

il Web avanza ed incontra il mobile su ogni piattaforma: Angular 2 è un framework Javascript molto potente per creare applicazioni web desktop e mobile La nuova versione è più semplice da utilizzare ma obbliga a scelte preventive importanti (non solo il vecchio javascript). Che vantaggi? Quali strategie architetturali e di approfondimento?
Codelab sulla parte Web e Mobile nativo con Mini Progetto reale.
Prerequisiti
Venite con il notebook e con Node installato. Per lo sviluppo mobile nativo occorre anche avere Nativescript e SDK (Android o/e iOS).
Agli iscritti verrà fornita la lista esatta del Software da installare con le istruzioni
I più bravi e fortunati tra gli iscritti registrati saranno premiati con maglietta, block notes ed una licenza a scelta JetBrains
..

BigData

Cosa significa Data Science? Perchè ha tanto successo in questo periodo e come mai tutte le aziende innovative cercano esperti in Analisi di grandi quantità di Dati?
Verranno illustrate le tecniche principali e le abilità non tipicamente informatiche da sviluppare.
L'evoluzione da Map Reduce ad Apache Spark ed ai principali Servizi, tra i quali i nuovi servizi Google per lo streming di enormi flussi di dati spiegati (in inglese) da Mete di Google.
Codelab con Databricks e le migliori risorse per imparare.
Prerequisiti
Venite solo con il con il notebook e con Node installato. E' tutto in Cloud..
I più bravi e fortunati tra gli iscritti registrati saranno premiati con maglietta, block notes ed una licenza a scelta JetBrains.

DevOps

Developer di Sistemi capaci di automatizzare l'integrazione tra ambienti diversi e distribuiti, in particolare per il Cloud.
Virtualizzazione leggera con Docker e le tecniche per creare e scalare container, immagini, per creare pipeline e per ottenere un processo snello, veloce e automatico.
Organizzazione e concertazione di Sistemi con Google Kubernetes (in inglese)

Prerequisiti

Venite con il notebook in cui avete installato Docker: https://www.docker.com/products/docker
I più bravi e fortunati tra gli iscritti registrati saranno premiati con maglietta, block notes ed una licenza a scelta JetBrains.

Machine Learning

Introduzione pratica al Machine Learning in Python con scikit-learn.
Perchè Google (e moltissime altre aziende di successo) utilizzano il ML in praticamente tutti i loro sistemi applicativi. I campi di applicazione ed i diversi utilizzi.
Tre casi d'uso realistici relativi alla classificazione, al clustering, ed al recommending.

Prerequisiti

Venite con il notebook in cui avete installato Python e librerie associate ( in particolare Sklearn). Il modo più semplice è con Anaconda, un build che comprende tutto. https://www.continuum.io/downloads
Agli iscritti verrà fornita la lista esatta del Software da installare con le istruzioni
I più bravi e fortunati tra gli iscritti registrati saranno premiati con maglietta, block notes ed una licenza a scelta JetBrains.

Mobile

Non solo Android ma soprattutto non solo Smartphone.
Che approccio e che tecniche utilizzare per creare una semplice app in Android ed iOS.
Android TV: che cosa è, come orientarsi, cosa è possibile fare.
Dispositivi e Piattaforme diverse: come sarà il futuro di un developer mobile e quali sono le opportunità più interessanti.
La caccia al Tesoro con i visori 3D in realtà virtuale.

Prerequisiti

Il Lab non è pre principianti. Dovete avere installato l'SDK Android o iOS.
Agli iscritti verrà fornita la lista esatta del Software da installare con le istruzioni
I più bravi e fortunati tra gli iscritti registrati saranno premiati con maglietta, block notes ed una licenza a scelta JetBrains.

CoderDojo

I CoderDojo sono club gratuiti, orientati all'insegnamento della programmazione informatica ai più piccoli. CoderDojo è un movimento aperto, libero e totalmente gratuito, organizzato in centinaia di club indipendenti sparsi in tutto il mondo. Ogni Dojo organizza le proprie attività senza scopo di lucro, rispettando le indicazioni della Charter internazionale stilata dalla Fondazione Internazionale CoderDojo (per informazioni: www.coderdojo.com). Le attività di formazione dei club ruotano intorno al gioco, lo scambio reciproco ed il peer learning, secondo l’unica regola fondamentale di ogni dojo: Above all, Be Cool..
Durante l'evento 30 bambini dagli 8 ai 13 anni impareranno a programmare giocando insieme.

 

AG-Vocabolario: 

Assemblea Wikimedia Italia – attività 2015 e rinnovo delle cariche (12 aprile 2016)

160412-wikimedia-org2.jpg

(Fonte immagine: By Wikimedia Foundation, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=28006572)

Il 9 aprile 2016 a Firenze presso la Biblioteca delle Oblate (fb, wk, web) si è tenuta l’assemblea dei soci  di Wikimedia Italia – Associazione per la diffusione della conoscenza libera .
L'associazione (informalmente nota come WMI) è la corrispondente italiana ufficiale di Wikimedia Foundation, Inc, all'interno della rete di capitoli locali (chapter) che nei rispettivi paesi hanno il compito di promuovere i progetti gestiti dalla Wikimedia Foundation (su cui non hanno alcun controllo) e la cultura libera.
Il progetto più noto di Wikimedia Foundation è Wikipedia  l'enciclopedia libera e collaborativa; altri progetti sono:

  • Wikizionario
  • Wikiquote
  • Wikibooks
  • Wikisource
  • Wikispecies
  • Commons
  • Wikinotizie
  • Wikiversità
  • Wikidata
  • Wikivoyage
  • OpenStreetMap

Relazione sulle attività 2015

Qui trovate una esauriente e completa “Relazione sulle attività 2015” di Wikimedia Italia, di seguito sintetizzata.

Biblioteche

Il rapporto tra biblioteche e WMI è stato particolarmente fruttuoso nel corso del 2015, rafforzando ulteriormente il ruolo dell'Associazione di portavoce privilegiato dei progetti Wikimedia nei confronti di questo mondo.
L'obiettivo strategico perseguito da WMI con il programma biblioteche consiste essenzialmente nel consolidamento delle relazioni esistenti allo scopo di rendere replicabile su più ampia scala i progetti che già l'associazione realizza. Per citare qualche numero sull'impatto misurato: sono state prodotte 7552 pagine di contenuto rispetto alle 3000 preventivate nel piano strategico.
Tra gli eventi maggiormente significativi vanno ricordati: il workshop "Accesso aperto al patrimonio culturale digitale e linked open data: strategie, progetti e nuove opportunità", tenutosi a Roma nel mese di marzo, al quale sono sono intervenuti i soci Liam Wyatt e Luca Martinelli, Segretario dell'Associazione, l'hackathon del 10-11 aprile a Firenze in collaborazione con la Biblioteca Nazionale Centrale sull'uso di Wikibase e, soprattutto, la seconda conferenza annuale GLAM/Biblioteche, tenutasi a Firenze il 27 Novembre presso la BNCF, che, dopo il successo dello scorso anno, è stato ripetuto e ha permesso di avvicinare ulteriormente il mondo dei wikipediani con quello dei bibliotecari.

Musei e archivi

  • presentazione "Attività con i musei 2016"  in pdf

Come indicato dal piano strategico, i musei rappresentano un territorio per molti versi ancora da esplorare per WMI, nonostante gli importanti progetti e collaborazioni già realizzate in passato.
A differenza delle biblioteche che rappresentano un'area di attività ormai "matura", per i musei l'obiettivo strategico delineato nel piano consiste essenzialmente nella penetrazione di questo particolare settore e nella creazione dell'identità e del ruolo di WMI quale partner strategico per i musei e gli archivi italiani.
Nel primo semestre 2015, Wikimedia Italia ha  concentrato i suoi sforzi sulla costruzione di un solido legame con partner quali ICOM, la maggiore associazione di categoria dei musei e degli operatori museali italiani e Museimpresa.
Nel secondo semestre era prevista l'attivazione di 4 collaborazioni per i “Wikipediani in Residenza”  che sono “contributori volontari di Wikipedia che collaborano con un'istituzione culturale per facilitare la redazione di voci dell'enciclopedia relative a tale istituzione”:

  1. Museo Nazionale della Scienza e della Tecnologia Leonardo da Vinci di Milano
  2. MUSE – Museo delle Scienze di Trento
  3. Fondazione Mansutti di Milano
  4. il Museo Galileo - Istituto e Museo di Storia della Scienza di Firenze

160412-wikipedia-in-residenza.jpg

(Fonte immagine: Di The Children's Museum of Indianapolis, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=18782989)

Progetti didattici e formativi

I progetti in ambito educativo di Wikimedia Italia pur essendo "maturi" in termini di know how maturato dai volontari negli anni hanno risentito in modo particolare della distribuzione disomogenea dei volontari nel territorio nazionale, dei vincoli posti dalla programmazione scolastica alle proposte agli studenti; inoltre, a differenza dei progetti con le biblioteche, presentano una maggiore difficoltà ad auto-remunerarsi.
Nel corso del 2015 sono stati realizzati 55 eventi con le scuole a cui si stima abbiano partecipato complessivamente 1296 persone.
I progetti all'interno delle scuole hanno portato a risultati importanti nel secondo semestre: alcuni istituti italiani hanno contattato direttamente WMI per attivare corsi nelle loro sedi e alcuni dei nostri volontari hanno fatto fruttare i loro contatti per organizzare varie iniziative.
Il progetto "Wikipedia va a scuola", che mira a portare Wikipedia nelle classi italiane, riscuote sempre maggiore successo tra i docenti, allineandosi con la recente riforma scolastica promossa dal governo e facendo dell'information literacy uno dei suoi pilastri.

  • presentazione "Wikipedia va a scuola" in pdf

OpenStreetMap

Il 28 gennaio 2016  WMI è stata ufficialmente riconosciuta come capitolo italiano ufficiale della OpenStreetMap Foundation un progetto collaborativo finalizzato a creare mappe a contenuto libero del mondo.

Wiki Loves Monuments

Wiki Loves Monuments (conosciuto anche con l'acronimo WLM) è un concorso fotografico internazionale che coinvolge cittadini di tutto il mondo nel documentare il proprio patrimonio culturale.
Il concorso si rivolge a fotografi professionisti, appassionati e dilettanti invitandoli a fotografare monumenti e beni di valore artistico presenti sul proprio territorio, caricando poi le immagini ottenute su Wikimedia Commons con licenza libera.
In Italia WLM è stata anche l’occasione per portare avanti una battaglia legislativa a favore della cosiddetta “libertà di panorama.
Il Codice Urbani del 2004 sancisce infatti l'impossibilità di fotografare monumenti e diffonderne le immagini senza un'autorizzazione delle istituzioni per cui “le foto del Colosseo che postiamo su Facebook sono potenzialmente illegali”: da questo punto di vista anche grazie a WMI sono stati compiuti grandi passi avanti grazie a contatti e incontri con l'ufficio legislativo del Ministero dei Bani Culturali (MIBACT); nel mese di febbraio 2016 si è tenuto un incontro alla presenza del Ministro Franceschini e nel mese di aprile WMI incontrerà i responsabili dell'Ufficio legislativo del Ministero per discutere su una possibile soluzione normativa.

Rinnovo delle cariche sociali

L’assemblea dei soci di Wikimedia Italia ha rinnovato le cariche sociali: consiglio direttivo e collegio dei garanti.

160409-wikimedia-firenze-7-3.jpg

Consiglio direttivo

Il consiglio direttivo eletto il 9 aprile 2016 è formato da:

  • Lorenzo Losa, presidente (scadenza mandato nel 2018)
  • Cristian Consonni, vicepresidente (scadenza mandato nel 2017)
  • Ginevra Sanvitale, segretaria (scadenza mandato nel 2017)
  • Simone Cortesi, tesoriere (scadenza mandato nel 2018)
  • Luca Martinelli, responsabile dei progetti (scadenza mandato nel 2018)

Come da regolamento dell'associazione, i membri di questo direttivo scadono in anni diversi.
Inoltre:

  • Giovanni Fasano è vicetesoriere,
  • Giulia C.M. Clonfero è vicesegretaria e membro osservatore del direttivo.

Collegio dei garanti

Il Collegio dei garanti eletto il 9 aprile 2016 è formato da:

  • Maurizio Codogno
  • Roberto Corda
  • Iolanda Pensa
  • Giovanni Augulino (supplente)
  • Francesco Carbonara (supplente)

Approvazione del bilancio

L’assemblea ha approvato il bilancio 2015 e il consuntivo per il 2016
In sintesi: il 2015 si chiude con entrate per € 410.226,75  (di cui € 247.265,17 grazie al 5 per 1000) ed uscite per € 259.744,93 con risultato positivo di ben € 150.481,82
Per il 2016 si prevedono entrate per  € 484.352,22 ed uscite per € 490.265,49 con un risultato (negativo) di -€ 7.313,26
    

 

AG-Vocabolario: 

The Google web multiverse (September 19th, 2015)

150919-multiple-universe.jpg

The multiverse (or meta-universe) is the hypothetical set of infinite or finite possible universes (including the Universe we consistently experience) that together comprise everything that exists
The various universes within the multiverse are also called "parallel universes" or "alternate universes".

https://en.wikipedia.org/wiki/Multiverse, image from Wikipedia, credit

Introduction

The “Google web multiverse” is the story of a journey inside the Google technologies for software developers.

I used the term “multiverse” because today Google offers multiple technologies for web development that often overlap each other in a confused and inconsistent way.
I believe that “Big G” is undertaking a social-technological experiment, proposing multiple eco-systems for web development assuming that only the best will survive as a sort of Darwinian selection, the survivor of the fittest.
Multiple web ecosystems means multiple universes: hence the title.
The story begins with an unscheduled event in which I participated in November 2014: the Rome Google DevFest.
It was like landing on an unknown planet and finding it inhabited by beings similar to humans and at the same time different: our twins, but living and speaking with a partial different logic.
A fantastic parallel universe, a dystonia, requiring an in-depth investigation.
So I began to contact the people who had spoken at the event speakers to ask them for more information about what they had presented; the conversations quickly turned into interviews.
Below I have collected all the interviews together in order to present alternative technologies and to better understand Google’s programming strategies.

The series

(Italian translation)

Premessa

Il “Google Web multiverso” è il racconto di un viaggio all’interno delle tecnologie di Google per gli sviluppatori software.
Ho usato il termine “Multiuniverso” perché oggi Google propone molteplici tecnologie per lo sviluppo web che spesso si sovrappongono tra loro in modo confuso e poco coerente.
Credo che Big G stia tentando un esperimento social-tecnologico: proporre contemporaneamente più eco-sistemi per lo sviluppo web puntando sul fatto che sopravvivranno solo i migliori.
Molteplici ecosistemi web significa molteplici universi: ecco perché questo titolo.
Questo racconto nasce da un evento a cui ho partecipato, in modo un po’ casuale, nel novembre 2014: la Google DevFest di Roma di Novembre 2014.
È stato come sbarcare su un pianeta sconosciuto e trovarlo abitato da umanoidi simili agli esseri umani e contemporaneamente diversi: nostri gemelli che però vivono e parlano con logiche in parti dissimili.
Una fantastica distonia che richiedeva un approfondimento di indagini.
Così ho cominciato a contattare i relatori dell’evento per chiedere loro maggiori informazioni su quello che avevano presentato; i colloqui si sono presto trasformati in interviste.
Le interviste in un percorso di ricerca.

AG-Vocabolario: 

Mia madre: life, death and art according to Nanni Moretti (May, 17th, 2015)

150517-mia_madre.jpg

My mother” (“Mia madre”) is a film by the Italian director Nanni Moretti released in Italy in the  spring of 2015 and selected fot 2015 Cannes Film Festival.
The movie is about a female director, Margherita, played by Margherita Buy, working on a complicated production while in her private life she has to face the end of a love affair and then the death of her mother.
Margherita is the “projection” of Moretti who also appears in the film in the role of Giovanni the engineer brother of the director: a picky person, always planning everything, very different from his  impulsive and moody sister.
Margherita is insecure, indecisive and aims to be perfect but in reality she is unbearable both in her private and professional life.
The theme of the film is the loss: loss of affection, loss of artistic inspiration, loss of self.
A key figure is Barry Huggins the star of Margherita’s movie, masterfully played by John Turturro: an insufferable braggart capable of thinking only of his career but now conscious of being trapped in his character and unable to live a real life.
There are many moments of true poetry in the film, the most beautiful is perhaps in Margherita’s dream where she is standing in a long queue, as a young woman, and she is arguing with her boyfriend; from this scene we can see she already has an unbearable character.

Mia madre: la vita, la morte e l’arte secondo Nanni Moretti (17 maggio 2015)

“Mia madre” è un film del regista italiano Nanni Moretti uscito in Italia nella primavera del 2015 e presentato al Festival di Cannes dello stesso anno.
È la storia di una regista donna, Margherita, interpretata dall’attrice Margherita Buy, impegnata in un film complicato mentre la sua vita privata viene messa a dura prova prima dalla fine di un rapporto sentimentale e poi dalla morte della madre.
La regista è la “proiezione” di Moretti che appare anche nel film nelle vesti di Giovanni, fratello ingegnere della regista: una persona pignola, sempre pronto a pianificare tutto, molto diverso dal carattere impulsivo e lunatico della sorella.
Margherita come donna e come regista è insicura, indecisa, vorrebbe raggiungere la perfezione ma nei fatti, nella vita privata come nel lavoro, è insopportabile.
Il tema del film è la perdita: perdita degli affetti, perdita dell’ispirazione artistica, perdita di se stessi.
Un personaggio fondamentale è Barry Huggins l’attore protagonista del film di Margherita interpretato magistralmente da John Turturro: un insopportabile fanfarone capace di pensare solo alla sua carriera ma cosciente di essere ormai intrappolato nel suo personaggio ed incapace di vivere una vita reale.
Tanti i momenti di vera poesia nel film: il più bello forse nel sogno di Margherita di una lunghissima fila davanti al cinema nella quale ritrova se stessa giovane e innamorata ma già irrimediabilmente insopportabile.

Wikipedia

AG-Vocabolario: 

Terre Rare by Sandro Veronesi: a metaphor of Italy (April 16th, 2015)

150416-terre-rare

Terre Rare” (literally: Rare Lands) is the sequel of “Caos Calmo” (Quiet Chaos) the Sandro Veronesi’s novel published on 2005 which had a great success and from which was also made a film.
In the new novel, we find the same characters eight years later - Pietro Paladini, his daughter Claudia now a teenager, his sister-in-law Marta - but all of them have changed as Italy in these eight years.
Pietro, who in “Caos Calmo” was a successful manager in a commercial television, is now an entrepreneur in trouble surrounded by unreliable, sometimes ridiculous, often immature characters that in the first part of the book seem to lead him to the disaster.
A metaphor of Italy today that was about to fail dragged down by a political class and entrepreneurial unable and ruinous?
But “Rare Lands” is also a novel about love, incommunicability, unavoidable errors in relationships with lovers, children and parents.
It is a hard novel, sometimes cruel as usual in the Veronesi ‘s books.
Recommended for those who want to understand better what has been happening in Italy in the last 10 years.

150416-sandro-veronesi

("Sandro Veronesi 2010 mt" di cc-by-sa3] - Opera propria. Con licenza CC BY-SA 3.0 tramite Wikimedia Commons - http://commons.wikimedia.org/wiki/File:Sandro_Veronesi_2010_mt.jpg#/medi...)

Italian translation

“Terre rare” è il sequel di “Caos calmo” il romanzo del 2005 di Sandro Veronesi che ha avuto un gran successo e dal quale è stato anche tratto un film.
Nel nuovo romanzo ritroviamo gli stessi protagonisti 8 anni dopo - Pietro Paladini, la figlia Claudia ora adolescente, la cognata Marta – ma tutto è cambiato come è cambiata l’Italia in questi 8 anni.
Pietro che in “Cos Calmo” era un manager di successo in una televisione commerciale è ora un imprenditore in mezzo ai guai circondato da personaggi inaffidabili, a volte ridicoli, spesso immaturi che nella prima parte del libro sembrano condurlo verso il disastro.
Una metafora dell’Italia di oggi che è stata sul punto di fallire trascinata verso il basso da una classe politica e imprenditoriale incapace e cialtrona?
Ma “Terre rare” è anche un romanzo sull’amore, sull’incomunicabilità, sugli errori inevitabili nei rapporti con amanti, figli e genitori.
È un romanzo duro, a volte crudele come sempre nei libri di Veronesi.
Consigliato a chi vuole capre meglio cosa è successo in Italia negli ultimi 10 anni.

 

AG-Vocabolario: 

“Numero Zero” the new novel by Umberto Eco: just a parade of erudition? (February, 21st 2015)

150221-numero-zero.jpg

(Italian translation available here)

“Numero Zero”, the latest novel by Umberto Eco was published in Italy on 2015 February five years after the previous novel “The Prague Cemetery” so I was very curious to read it.
My judgment?
I am very dissatisfied!
A fragile plot, unrealistic characters, much confusion about dates, recent dramatic Italian historical events and (most likely) author’s personal facts.
Reading it I thought that the text looked more like a first draft than the final version of a novel.
The book is a sort of collection of ideas, feelings and suggestions which the author didn’t really can turn into a coherent story.
The novel seems to be the result of the overabundance of information from which all we suffer since Internet has become our playmate and classmate.
Perhaps “Numero Zero” warns us of the risks of the Network because it appears too erudite, weakened by too many links, attentive more to form than content.
Or did Umberto Eco trick us showing the narrative of the coming years?

The plot

The story is about a ghost writer who is both an author and journalist, involved in the formation of a fabricated daily political newspaper which speaks of the investigations in Milan in 1992.
Here the complete plot of the book (in English) https://theuntranslated.wordpress.com/2015/02/01/zero-issue-numero-zero-...  

Book information

Author     Umberto Eco
Original title     Numero Zero
Country     Italy
Language     Italian
Genre      Mystery
Publisher     Bompiani (Italy)
Publication date    2015, February (in Italy)

Links

AG-Vocabolario: 

“Numero Zero” il nuovo romanzo di Umberto Eco: solo uno sfoggio di erudizione? (21 febbraio 2015)

150221-numero-zero.jpg

Ho letto l’ultimo romanzo di Umberto Eco, “Numero Zero”, e sono rimasto fondamentalmente insoddisfatto.
Una storia fragile, personaggi improbabili, una certa confusione tra date, eventi storici, drammi nazionali e (probabili) accadimenti personali.
Mentre leggevo pensavo che il testo sembrava più che la versione definitiva di un romanzo la sua prima bozza come se l’autore avesse raccolto idee, sensazioni e suggestioni senza poi riuscire veramente a trasformare tutto in una storia coerente e finita.
Un romanzo che sembra frutto della sovrabbondanza di informazioni di cui soffriamo tutti da quando Internet è diventato il nostro compagno di giochi e di studi.
“Numero Zero” sembra ammonire sui rischi della Rete: troppo erudito, indebolito da mille link, più attento alla forma che al contenuto.
Oppure Umberto Eco ci ha preso in giro ed ha voluto semplicemente mostrarci come sarà la narrativa che ci attende nei prossimi anni.

La trama

La storia di un quasi scrittore e quasi giornalista che a Milano, nel 1992, partecipa alla costituzione di un nuovo ma falso quotidiano di indagini giornalistiche.
Qui la trama completa del libro (in inglese)

La scheda del libro

Autore     Umberto Eco
Titolo originale     Numero Zero
Paese     Italia
Lingua     Italiano
Genere      Mystery
Editore     Bompiani
Data di pubblicazione    Febbraio 2015 (in Italia)

Link

 

AG-Vocabolario: 

Pages