WEBVTT

00:00:01.199 --> 00:00:03.279
<v Davide>Salve a tutti, siete all'ascolto di

00:00:03.279 --> 00:00:05.599
<v Davide>INSiDER - Dentro la Tecnologia,

00:00:05.599 --> 00:00:07.839
<v Davide>un podcast di Digital People e

00:00:07.839 --> 00:00:09.039
<v Davide>io sono il vostro host,

00:00:09.039 --> 00:00:10.080
<v Davide>Davide Fasoli.

00:00:16.864 --> 00:00:19.824
<v Davide>Oggi Luca Martinelli, autore del podcast,

00:00:19.824 --> 00:00:21.505
<v Davide>ci racconterà di un suo progetto

00:00:21.505 --> 00:00:24.625
<v Davide>per realizzare un'intelligenza artificiale in grado

00:00:24.625 --> 00:00:26.545
<v Davide>di generare delle nuove emoji.

00:00:26.809 --> 00:00:28.329
<v Davide>Prima di passare alle notizie che

00:00:28.329 --> 00:00:30.410
<v Davide>più ci hanno colpito questa settimana,

00:00:30.410 --> 00:00:32.329
<v Davide>vi ricordo che potete seguirci su

00:00:32.329 --> 00:00:36.329
<v Davide>Instagram a @dentrolatecnologia, iscrivervi alla newsletter

00:00:36.329 --> 00:00:38.409
<v Davide>e ascoltare un nuovo episodio ogni

00:00:38.409 --> 00:00:40.684
<v Davide>sabato mattina, su Spotify,

00:00:40.684 --> 00:00:44.045
<v Davide>Apple Podcast, Google Podcast oppure direttamente

00:00:44.045 --> 00:00:45.164
<v Davide>sul nostro sito.

00:00:57.829 --> 00:01:00.789
<v Davide>Nel processo Epic Games contro Apple,

00:01:00.789 --> 00:01:02.789
<v Davide>di cui avevamo parlato qualche mese

00:01:02.789 --> 00:01:04.469
<v Davide>fa e che era scaturito dalla

00:01:04.469 --> 00:01:06.069
<v Davide>volontà di Epic di non voler

00:01:06.069 --> 00:01:08.629
<v Davide>pagare le commissioni del 30% dei

00:01:08.629 --> 00:01:11.724
<v Davide>ricavi di Fortnite all'App Store per

00:01:11.724 --> 00:01:14.125
<v Davide>gli acquisti all'interno delle app scaricate

00:01:14.125 --> 00:01:15.644
<v Davide>proprio dallo store di Apple,

00:01:15.644 --> 00:01:19.004
<v Davide>il Tribunale distrettuale della California settentrionale

00:01:19.004 --> 00:01:21.724
<v Davide>ha rigettato l'accusa di posizione dominante

00:01:21.724 --> 00:01:23.724
<v Davide>di Apple, ma ha lasciato una

00:01:23.724 --> 00:01:25.930
<v Davide>porta aperta agli sviluppatori che ora

00:01:25.930 --> 00:01:28.569
<v Davide>potranno prevedere nelle app link esterni

00:01:28.569 --> 00:01:30.810
<v Davide>per gli acquisti accanto agli acquisti

00:01:30.810 --> 00:01:32.329
<v Davide>in app e che quindi non

00:01:32.329 --> 00:01:35.209
<v Davide>saranno soggetti a nessuna commissione da

00:01:35.209 --> 00:01:36.409
<v Davide>versare ad Apple.

00:01:36.409 --> 00:01:38.890
<v Davide>Epic però ha voluto procedere in appello,

00:01:38.890 --> 00:01:40.805
<v Davide>sia perché non contenta del rigetto

00:01:40.805 --> 00:01:43.045
<v Davide>dell'accusa di posizione dominante,

00:01:43.125 --> 00:01:44.884
<v Davide>sia perché la sentenza ha stabilito

00:01:44.884 --> 00:01:47.284
<v Davide>anche il risarcimento con interessi ad

00:01:47.284 --> 00:01:49.805
<v Davide>Apple pari al 30% dei 12

00:01:49.805 --> 00:01:51.685
<v Davide>milioni di dollari di entrate che

00:01:51.685 --> 00:01:54.549
<v Davide>Epic ha raccolto dagli utenti nell'app

00:01:54.549 --> 00:01:57.510
<v Davide>Fortnite su iOS attraverso i pagamenti

00:01:57.510 --> 00:01:59.750
<v Davide>diretti aggiunti contro la volontà di

00:01:59.750 --> 00:02:03.030
<v Davide>Apple tra agosto 2020 e ottobre 2020,

00:02:03.030 --> 00:02:04.790
<v Davide>più il 30% di tutte le

00:02:04.790 --> 00:02:06.814
<v Davide>entrate che Epic Games ha raccolto

00:02:06.814 --> 00:02:09.375
<v Davide>dal 1 novembre 2020 fino alla

00:02:09.375 --> 00:02:10.895
<v Davide>data della sentenza.

00:02:13.534 --> 00:02:16.334
<v Davide>Nell'ormai consueto evento di settembre,

00:02:16.334 --> 00:02:18.574
<v Davide>Apple ha finalmente presentato la nuova

00:02:18.574 --> 00:02:20.590
<v Davide>gamma di iPhone, che rispetto al

00:02:20.590 --> 00:02:22.909
<v Davide>modello del 2020 non presenta di

00:02:22.909 --> 00:02:25.389
<v Davide>fatto sostanziali migliorie se non per

00:02:25.389 --> 00:02:27.550
<v Davide>il comparto fotocamere e nello spazio

00:02:27.550 --> 00:02:29.870
<v Davide>di archiviazione, ma andiamo con ordine.

00:02:29.949 --> 00:02:32.110
<v Davide>Ad essere mostrato per primo è

00:02:32.110 --> 00:02:34.269
<v Davide>stato il nuovo iPad 2021,

00:02:34.564 --> 00:02:37.685
<v Davide>aggiornato rispetto alla versione 2020 con

00:02:37.685 --> 00:02:39.284
<v Davide>chip di iPhone 11,

00:02:39.284 --> 00:02:41.365
<v Davide>un sensore grandangolare e i nuovi

00:02:41.365 --> 00:02:45.205
<v Davide>tagli da 64 e 256 GB.

00:02:45.284 --> 00:02:46.724
<v Davide>La tensione si è poi spostata

00:02:46.724 --> 00:02:48.724
<v Davide>sul nuovo iPad Mini 6 da

00:02:48.724 --> 00:02:51.289
<v Davide>8.3 pollici, che proprio come iPad

00:02:51.289 --> 00:02:53.129
<v Davide>Air presenta bordi curvi,

00:02:53.129 --> 00:02:55.210
<v Davide>sblocco Touch ID sul pulsante di

00:02:55.210 --> 00:02:57.530
<v Davide>accensione e connettore USB-C.

00:02:57.530 --> 00:02:59.530
<v Davide>I nuovi Apple Watch serie 7

00:02:59.530 --> 00:03:02.169
<v Davide>sono rimasti pressoché invariati rispetto alla

00:03:02.169 --> 00:03:04.090
<v Davide>versione precedente, se non per gli

00:03:04.090 --> 00:03:06.090
<v Davide>schermi del 20% più ampi.

00:03:06.090 --> 00:03:08.625
<v Davide>I nuovi formati quindi saranno disponibili

00:03:08.625 --> 00:03:11.344
<v Davide>da 41 e 45 mm.

00:03:11.425 --> 00:03:13.585
<v Davide>Concludiamo con gli iPhone 13,

00:03:13.585 --> 00:03:15.425
<v Davide>i quali oltre al nuovo chip

00:03:15.425 --> 00:03:18.705
<v Davide>A15 Bionic, includono uno schermo OLED

00:03:18.705 --> 00:03:21.500
<v Davide>da 6.1 pollici con dimensioni del

00:03:21.500 --> 00:03:24.219
<v Davide>notch ridotte, due fotocamere da 12

00:03:24.219 --> 00:03:26.379
<v Davide>megapixel e un aumento dello spazio

00:03:26.379 --> 00:03:28.939
<v Davide>di archiviazione che parte da 128

00:03:28.939 --> 00:03:31.900
<v Davide>e arriva a 512 GB,

00:03:31.980 --> 00:03:33.819
<v Davide>disponibili anche nella versione Mini.

00:03:33.995 --> 00:03:36.074
<v Davide>Infine, con le nuove versioni Pro

00:03:36.074 --> 00:03:39.354
<v Davide>vengono finalmente introdotti i 120 Hz,

00:03:39.354 --> 00:03:41.834
<v Davide>con frequenza di refresh variabile per

00:03:41.834 --> 00:03:44.794
<v Davide>delle animazioni sullo schermo molto più fluide,

00:03:44.794 --> 00:03:47.189
<v Davide>mentre per quanto riguarda l'archiviazione si

00:03:47.189 --> 00:03:50.709
<v Davide>potrà acquistare per ben 1869 euro

00:03:50.709 --> 00:03:52.949
<v Davide>anche la versione da 1 TB.

00:04:12.915 --> 00:04:15.610
<v Davide>Abbiamo parlato spesso di intelligenza artificiale,

00:04:15.849 --> 00:04:18.410
<v Davide>apprendimento automatico e di come questa

00:04:18.410 --> 00:04:21.689
<v Davide>tecnologia può essere integrata in altri sistemi,

00:04:21.689 --> 00:04:23.209
<v Davide>ma anche dei pericoli e dei

00:04:23.209 --> 00:04:24.970
<v Davide>rischi che questa può portare.

00:04:24.970 --> 00:04:26.649
<v Davide>Torniamo quindi a parlare di questo

00:04:26.649 --> 00:04:29.529
<v Davide>argomento da una prospettiva leggermente diversa.

00:04:29.884 --> 00:04:31.725
<v Davide>Oggi infatti siamo in compagnia di

00:04:31.725 --> 00:04:33.964
<v Davide>Luca Martinelli, autore del podcast,

00:04:33.964 --> 00:04:36.524
<v Davide>che nell'ambito di un progetto universitario

00:04:36.524 --> 00:04:38.685
<v Davide>ha avuto l'opportunità di realizzare proprio

00:04:38.685 --> 00:04:42.285
<v Davide>uno di questi algoritmi di intelligenza artificiale.

00:04:42.524 --> 00:04:43.485
<v Davide>Ben tornato Luca.

00:04:44.180 --> 00:04:45.860
<v Luca>Ciao a te Davide e ciao

00:04:45.860 --> 00:04:47.220
<v Luca>a tutti gli ascoltatori.

00:04:47.939 --> 00:04:50.339
<v Davide>Innanzitutto puoi dirci in che cosa

00:04:50.339 --> 00:04:52.740
<v Davide>consisteva il tuo progetto e che

00:04:52.740 --> 00:04:54.419
<v Davide>cosa sei andato a realizzare?

00:04:55.300 --> 00:04:56.100
<v Luca>Sì, certamente.

00:04:56.659 --> 00:04:59.620
<v Luca>Nell'ambito della scienza digitale forense,

00:04:59.995 --> 00:05:02.555
<v Luca>quindi tutta quella parte di informatica

00:05:02.555 --> 00:05:06.154
<v Luca>che riguarda in particolar modo l'identificazione,

00:05:06.634 --> 00:05:09.194
<v Luca>la conservazione, ma anche la protezione

00:05:09.194 --> 00:05:11.595
<v Luca>e l'analisi di prove digitali che

00:05:11.595 --> 00:05:14.875
<v Luca>quindi possono essere utilizzate ad esempio

00:05:15.430 --> 00:05:19.349
<v Luca>per risolvere indagini o rintracciare cybercriminali

00:05:19.349 --> 00:05:22.949
<v Luca>o criminali, l'intelligenza artificiale sta dando

00:05:23.110 --> 00:05:25.750
<v Luca>una grossa mano in diversi campi.

00:05:25.750 --> 00:05:27.909
<v Luca>E alcuni tra questi sono ad

00:05:27.909 --> 00:05:30.254
<v Luca>esempio il riconoscimento facciale o il

00:05:30.254 --> 00:05:34.014
<v Luca>riconoscimento di comportamenti sospetti per quanto

00:05:34.014 --> 00:05:35.935
<v Luca>riguarda la sicurezza di una rete

00:05:35.935 --> 00:05:38.654
<v Luca>aziendale o anche il riconoscimento di

00:05:38.654 --> 00:05:41.615
<v Luca>contenuti non originali o modificati.

00:05:41.939 --> 00:05:44.180
<v Luca>Va poi detto che a seconda

00:05:44.180 --> 00:05:45.540
<v Luca>di ciò che si vuole andare

00:05:45.540 --> 00:05:49.300
<v Luca>a realizzare esistono ovviamente numerose tipologie

00:05:49.300 --> 00:05:52.340
<v Luca>di intelligenza artificiale o per meglio

00:05:52.340 --> 00:05:54.740
<v Luca>dire di strutture che poi grazie

00:05:54.740 --> 00:05:57.540
<v Luca>proprio ai dati che noi mettiamo

00:05:57.754 --> 00:06:00.875
<v Luca>permettono appunto di risolvere il problema

00:06:00.875 --> 00:06:02.954
<v Luca>che ci siamo preimpostati.

00:06:02.954 --> 00:06:04.634
<v Luca>Queste sono quelle che vengono appunto

00:06:04.634 --> 00:06:07.514
<v Luca>definite reti neurali e che come

00:06:07.514 --> 00:06:09.769
<v Luca>dice il nome le possiamo immaginare

00:06:09.769 --> 00:06:12.250
<v Luca>esattamente come un cervello formate quindi

00:06:12.250 --> 00:06:15.290
<v Luca>da tanti neuroni e numerosi connessioni.

00:06:15.290 --> 00:06:17.449
<v Luca>A seconda poi di come queste

00:06:17.449 --> 00:06:20.730
<v Luca>connessioni vengono create il risultato ovviamente

00:06:20.730 --> 00:06:23.485
<v Luca>sarà diverso e poi il discorso

00:06:23.485 --> 00:06:25.645
<v Luca>è anche molto ben più complesso,

00:06:25.884 --> 00:06:27.964
<v Luca>però in sintesi il funzionamento di

00:06:27.964 --> 00:06:29.245
<v Luca>base è proprio questo.

00:06:29.245 --> 00:06:31.485
<v Luca>E tra le tante tipologie dunque

00:06:31.485 --> 00:06:33.245
<v Luca>quella che sono andato a realizzare

00:06:33.245 --> 00:06:36.230
<v Luca>io è una GAN ovvero Generative

00:06:36.230 --> 00:06:39.189
<v Luca>Adversarial Network o in italiano Rete

00:06:39.189 --> 00:06:41.750
<v Luca>Generative Avversaria che è appunto una

00:06:41.750 --> 00:06:44.149
<v Luca>tipologia di intelligenza artificiale in grado

00:06:44.149 --> 00:06:46.470
<v Luca>di creare dei contenuti e nel

00:06:46.470 --> 00:06:48.625
<v Luca>mio caso immagini di emoji che

00:06:48.625 --> 00:06:51.105
<v Luca>appunto troviamo sui nostri dispositivi.

00:06:51.345 --> 00:06:53.504
<v Davide>E puoi dirci più nel dettaglio

00:06:53.665 --> 00:06:56.144
<v Davide>cos'è questa GAN, come funziona e

00:06:56.144 --> 00:06:57.824
<v Davide>come può essere utilizzata.

00:06:58.225 --> 00:07:00.625
<v Luca>Si allora le reti GAN come

00:07:00.625 --> 00:07:02.660
<v Luca>ho appena detto sono per così

00:07:02.660 --> 00:07:05.220
<v Luca>dire specializzate nel creare dei nuovi

00:07:05.220 --> 00:07:07.779
<v Luca>contenuti simili a quelli con cui

00:07:07.779 --> 00:07:10.180
<v Luca>siamo andati ad addestrare l'algoritmo.

00:07:10.259 --> 00:07:12.740
<v Luca>Per fare un esempio su internet

00:07:12.740 --> 00:07:15.060
<v Luca>esistono diversi siti che vanno a

00:07:15.060 --> 00:07:17.300
<v Luca>mostrare delle immagini di volti di

00:07:17.300 --> 00:07:19.115
<v Luca>persone che in realtà non esistono

00:07:19.115 --> 00:07:21.194
<v Luca>e dietro questa tecnologia c'è proprio

00:07:21.194 --> 00:07:23.675
<v Luca>un intelligenza artificiale di questo tipo

00:07:23.675 --> 00:07:25.995
<v Luca>che ben addestrata grazie appunto a

00:07:25.995 --> 00:07:27.675
<v Luca>volti di migliaia e migliaia di

00:07:27.675 --> 00:07:29.754
<v Luca>persone ha imparato a inventarne di

00:07:29.754 --> 00:07:32.169
<v Luca>nuove e ovviamente lo stesso discorso

00:07:32.169 --> 00:07:34.410
<v Luca>vale anche per qualsiasi altro soggetto

00:07:34.410 --> 00:07:37.850
<v Luca>come animali o vegetazione e facendo

00:07:37.850 --> 00:07:39.689
<v Luca>un altro esempio le reti GAN

00:07:39.689 --> 00:07:42.729
<v Luca>sono utilizzate anche per realizzare i

00:07:42.729 --> 00:07:45.354
<v Luca>video deepfake di cui abbiamo già

00:07:45.354 --> 00:07:48.315
<v Luca>ampiamente parlato e ancora google ha

00:07:48.315 --> 00:07:51.514
<v Luca>sviluppato nella sua applicazione dedicata all'arte

00:07:51.514 --> 00:07:54.154
<v Luca>una funzione che proprio grazie a

00:07:54.154 --> 00:07:57.035
<v Luca>questo algoritmo permette appunto di ridisegnare

00:07:57.035 --> 00:07:59.839
<v Luca>una fotografia nello stile ad esempio

00:07:59.839 --> 00:08:01.920
<v Luca>di Van Gogh, di Monet o

00:08:01.920 --> 00:08:04.639
<v Luca>di altri pittori o artisti famosi

00:08:04.639 --> 00:08:06.639
<v Luca>un ultimo esempio le reti GAN

00:08:06.639 --> 00:08:10.240
<v Luca>possono essere utilizzate per inventare anche

00:08:10.240 --> 00:08:12.654
<v Luca>forme per mobili o piante per

00:08:12.654 --> 00:08:14.975
<v Luca>nuove case o edifici quindi una

00:08:14.975 --> 00:08:17.855
<v Luca>intelligenza artificiale che va a supportare

00:08:17.855 --> 00:08:20.895
<v Luca>quella che l'architettura o l'interior design.

00:08:21.295 --> 00:08:23.535
<v Luca>Questa tecnologia, insomma, trova la sua

00:08:23.535 --> 00:08:26.095
<v Luca>applicazione in numerosissimi ambiti.

00:08:26.095 --> 00:08:27.615
<v Luca>Basta solo un po di fantasia.

00:08:27.779 --> 00:08:30.579
<v Luca>Ma venendo ora al nocciolo della questione,

00:08:30.579 --> 00:08:33.460
<v Luca>le reti generative avversarie sono molto

00:08:33.460 --> 00:08:36.100
<v Luca>interessanti per il modo in cui funzionano,

00:08:36.179 --> 00:08:38.500
<v Luca>perché in un certo senso possiamo

00:08:38.500 --> 00:08:40.179
<v Luca>dire che si addestrino da sole.

00:08:40.179 --> 00:08:43.375
<v Luca>Una GAN, infatti, in realtà è

00:08:43.375 --> 00:08:45.935
<v Luca>costituita da due elementi.

00:08:46.495 --> 00:08:47.774
<v Luca>Uno che è il generatore,

00:08:47.774 --> 00:08:50.254
<v Luca>e uno che si chiama discriminatore.

00:08:50.254 --> 00:08:51.455
<v Luca>Come dice il nome,

00:08:51.455 --> 00:08:53.909
<v Luca>il generatore è quello che si

00:08:53.909 --> 00:08:55.750
<v Luca>occuperà poi di generare,

00:08:55.750 --> 00:08:57.669
<v Luca>ad esempio, partendo da una serie

00:08:57.669 --> 00:09:00.230
<v Luca>di numeri casuali, il contenuto che,

00:09:00.230 --> 00:09:02.549
<v Luca>nel mio caso, è appunto un'immagine,

00:09:02.709 --> 00:09:03.429
<v Luca>un emoji.

00:09:03.429 --> 00:09:05.990
<v Luca>Dall'altro lato, invece, il discriminatore si

00:09:05.990 --> 00:09:08.230
<v Luca>occupa di distinguere un contenuto vero

00:09:08.230 --> 00:09:09.029
<v Luca>da uno falso.

00:09:09.274 --> 00:09:12.154
<v Luca>L'obiettivo del generatore sarà dunque quello

00:09:12.154 --> 00:09:14.634
<v Luca>di creare dei contenuti talmente realistici

00:09:14.634 --> 00:09:16.554
<v Luca>da ingannare il discriminatore,

00:09:16.554 --> 00:09:19.115
<v Luca>mentre il discriminatore dovrà imparare a

00:09:19.115 --> 00:09:21.754
<v Luca>riconoscere sempre meglio un contenuto reale

00:09:21.754 --> 00:09:22.715
<v Luca>da uno generato.

00:09:22.970 --> 00:09:24.250
<v Luca>In questo modo si crea una

00:09:24.250 --> 00:09:26.170
<v Luca>sorta di inseguimento per cui,

00:09:26.170 --> 00:09:28.649
<v Luca>man mano che l'intelligenza artificiale viene

00:09:28.649 --> 00:09:30.730
<v Luca>addestrata con i dati che appunto

00:09:30.730 --> 00:09:33.929
<v Luca>vengono immessi, il generatore genera immagini

00:09:33.929 --> 00:09:35.929
<v Luca>o qualsiasi altro tipo di contenuto

00:09:36.164 --> 00:09:38.485
<v Luca>sempre più realistici, e il discriminatore

00:09:38.485 --> 00:09:40.404
<v Luca>invece impara sempre di più a

00:09:40.404 --> 00:09:42.644
<v Luca>riconoscere e a distinguere i piccoli

00:09:42.644 --> 00:09:44.164
<v Luca>difetti del generatore.

00:09:45.284 --> 00:09:47.845
<v Davide>Quindi abbiamo parlato in generale di

00:09:47.845 --> 00:09:50.565
<v Davide>come funzionano le reti GAN e

00:09:50.565 --> 00:09:51.684
<v Davide>perché sono importanti.

00:09:52.160 --> 00:09:54.480
<v Davide>Per quanto riguarda il tuo progetto,

00:09:55.120 --> 00:09:57.679
<v Davide>dicevi che l'obiettivo era creare un'intelligenza

00:09:57.679 --> 00:10:01.040
<v Davide>artificiale in grado di disegnare delle emoji.

00:10:01.040 --> 00:10:03.440
<v Davide>Puoi parlarci più nel dettaglio come

00:10:03.440 --> 00:10:06.559
<v Davide>sei riuscito e che strumenti hai utilizzato.

00:10:08.214 --> 00:10:10.375
<v Luca>Certo, il progetto di per sé

00:10:10.375 --> 00:10:11.975
<v Luca>non è così complicato.

00:10:12.455 --> 00:10:15.095
<v Luca>Innanzitutto, come gran parte dei progetti

00:10:15.095 --> 00:10:18.054
<v Luca>di intelligenza artificiale, ho utilizzato Python

00:10:18.054 --> 00:10:19.815
<v Luca>come linguaggio di programmazione,

00:10:19.975 --> 00:10:22.294
<v Luca>per cui esistono numerosi esempi già

00:10:22.294 --> 00:10:24.750
<v Luca>fatti da cui poter partire e

00:10:24.830 --> 00:10:26.830
<v Luca>inoltre questo linguaggio rende anche la

00:10:26.830 --> 00:10:28.590
<v Luca>programmazione molto più veloce.

00:10:28.590 --> 00:10:30.350
<v Luca>Per creare delle reti neurali,

00:10:30.350 --> 00:10:32.750
<v Luca>poi programmare interamente il codice da

00:10:32.750 --> 00:10:34.910
<v Luca>zero sarebbe sia uno spreco di

00:10:34.910 --> 00:10:36.350
<v Luca>energie ma anche di tempo.

00:10:36.524 --> 00:10:39.085
<v Luca>Per cui esistono delle librerie già pronte.

00:10:39.085 --> 00:10:42.205
<v Luca>Queste librerie possiamo immaginarle come una

00:10:42.205 --> 00:10:44.524
<v Luca>sorta di mattoncini, ovvero pezzi di

00:10:44.524 --> 00:10:46.925
<v Luca>codice già pronti, già scritti,

00:10:46.925 --> 00:10:48.845
<v Luca>da usare poi per realizzare ciò

00:10:48.845 --> 00:10:49.565
<v Luca>che desideriamo.

00:10:49.759 --> 00:10:51.440
<v Luca>Nel mio caso, la libreria che

00:10:51.440 --> 00:10:54.320
<v Luca>ho utilizzato si chiama TensorFlow ed

00:10:54.320 --> 00:10:56.720
<v Luca>è curata e sviluppata dalla stessa Google,

00:10:56.720 --> 00:10:58.879
<v Luca>per cui ha scritto anche una

00:10:58.879 --> 00:11:00.480
<v Luca>serie di guide, anche in italiano,

00:11:00.480 --> 00:11:02.875
<v Luca>e diversi esempi di come utilizzarla

00:11:02.875 --> 00:11:05.514
<v Luca>appunto per creare delle diverse tipologie

00:11:05.514 --> 00:11:07.355
<v Luca>di intelligenze artificiali.

00:11:07.355 --> 00:11:09.035
<v Luca>E tra queste c'è anche un

00:11:09.035 --> 00:11:10.794
<v Luca>esempio molto semplice di GAN,

00:11:10.795 --> 00:11:13.195
<v Luca>da cui appunto sono partito per

00:11:13.195 --> 00:11:15.675
<v Luca>migliorare e sviluppare l'intero progetto.

00:11:15.674 --> 00:11:18.389
<v Luca>E in particolare l'esempio di Google

00:11:18.549 --> 00:11:21.269
<v Luca>riguarda la creazione di piccole immagini

00:11:21.269 --> 00:11:23.269
<v Luca>in bianco e nero raffiguranti dei

00:11:23.269 --> 00:11:24.709
<v Luca>numeri disegnati a mano.

00:11:24.709 --> 00:11:26.470
<v Luca>Va da sé che disegnare delle

00:11:26.470 --> 00:11:28.950
<v Luca>emoji colorate e a dimensioni maggiori

00:11:28.950 --> 00:11:30.629
<v Luca>è notevolmente più complesso,

00:11:30.629 --> 00:11:33.325
<v Luca>e quindi sono state necessarie diverse modifiche,

00:11:33.565 --> 00:11:36.205
<v Luca>ottimizzazioni, che si traducono in diversi

00:11:36.205 --> 00:11:38.764
<v Luca>test e diverse prove per poter

00:11:38.764 --> 00:11:40.924
<v Luca>andare a trovare dei parametri che

00:11:40.924 --> 00:11:43.325
<v Luca>potessero migliorare anche di poco il

00:11:43.325 --> 00:11:44.125
<v Luca>risultato finale.

00:11:44.470 --> 00:11:45.990
<v Luca>Per quanto riguarda i dati,

00:11:45.990 --> 00:11:48.309
<v Luca>invece, ovvero le immagini che ho

00:11:48.309 --> 00:11:51.269
<v Luca>usato poi per addestrare questa rete neurale,

00:11:51.269 --> 00:11:53.669
<v Luca>sempre online esiste un insieme già

00:11:53.669 --> 00:11:56.149
<v Luca>pronto che va a raggruppare le

00:11:56.149 --> 00:11:57.990
<v Luca>emoji di diversi produttori,

00:11:58.205 --> 00:11:59.884
<v Luca>come ad esempio Google,

00:11:59.884 --> 00:12:01.164
<v Luca>app o il Microsoft,

00:12:01.164 --> 00:12:02.524
<v Luca>Samsung o Twitter.

00:12:02.524 --> 00:12:04.764
<v Luca>Il problema principale delle emoji,

00:12:04.764 --> 00:12:07.085
<v Luca>però, è che sono molto diverse

00:12:07.085 --> 00:12:09.085
<v Luca>tra loro, e dunque ho scelto

00:12:09.164 --> 00:12:12.700
<v Luca>di raggrupparle e utilizzare solamente alcuni

00:12:12.700 --> 00:12:14.059
<v Luca>di questi sottogruppi.

00:12:14.059 --> 00:12:15.580
<v Luca>In questo modo una volta ho

00:12:15.580 --> 00:12:18.299
<v Luca>destrato la GAN per produrre delle faccine,

00:12:18.379 --> 00:12:20.059
<v Luca>un'altra volta per produrre,

00:12:20.059 --> 00:12:21.980
<v Luca>ad esempio, cuori, un'altra volta per

00:12:21.980 --> 00:12:23.820
<v Luca>produrre le bandiere e così via.

00:12:23.820 --> 00:12:25.740
<v Luca>E ovviamente non sono nemmeno mancati

00:12:25.740 --> 00:12:26.139
<v Luca>i problemi.

00:12:26.754 --> 00:12:28.034
<v Davide>E la prossima domanda,

00:12:28.034 --> 00:12:30.195
<v Davide>infatti, riguarda proprio questo,

00:12:30.514 --> 00:12:32.754
<v Davide>ovvero quali sono i principali problemi

00:12:32.754 --> 00:12:34.995
<v Davide>che hai riscontrato in questo progetto?

00:12:35.714 --> 00:12:38.754
<v Luca>Allora, innanzitutto il tempo è uno

00:12:38.754 --> 00:12:40.834
<v Luca>dei problemi principali, probabilmente.

00:12:40.835 --> 00:12:42.579
<v Luca>E infatti non ci si può

00:12:42.579 --> 00:12:45.779
<v Luca>aspettare che, solo dopo dieci minuti

00:12:45.779 --> 00:12:48.339
<v Luca>e qualche immagine, l'algoritmo abbia già

00:12:48.339 --> 00:12:50.899
<v Luca>imparato a disegnare delle faccine perfette.

00:12:50.899 --> 00:12:52.819
<v Luca>Anzi, ogni volta che la GAN

00:12:52.820 --> 00:12:55.074
<v Luca>ha guardato tutte le immagini che

00:12:55.074 --> 00:12:56.434
<v Luca>gli passiamo come input,

00:12:56.434 --> 00:12:58.834
<v Luca>ricomincia da capo per migliorare ancora

00:12:58.834 --> 00:12:59.475
<v Luca>e ancora.

00:12:59.475 --> 00:13:02.194
<v Luca>E questa operazione va ripetuta non

00:13:02.194 --> 00:13:03.954
<v Luca>una ma migliaia e migliaia di

00:13:03.954 --> 00:13:06.434
<v Luca>volte prima di vedere dei risultati

00:13:06.434 --> 00:13:08.514
<v Luca>che siano quantomeno soddisfacenti.

00:13:08.860 --> 00:13:11.660
<v Luca>Le prime immagini che disegnava il generatore,

00:13:11.660 --> 00:13:13.419
<v Luca>infatti, non erano altro che un

00:13:13.419 --> 00:13:16.700
<v Luca>insieme abbastanza casuale e astratto di colori.

00:13:16.700 --> 00:13:19.100
<v Luca>E ovviamente poi dipende anche dalla

00:13:19.100 --> 00:13:20.779
<v Luca>potenza del computer che si utilizza,

00:13:20.779 --> 00:13:23.414
<v Luca>ma affinché imparasse a disegnare delle

00:13:23.414 --> 00:13:26.375
<v Luca>emoji realistiche, nemmeno di grandi dimensioni,

00:13:26.375 --> 00:13:28.294
<v Luca>ho dovuto lasciare il mio computer

00:13:28.294 --> 00:13:29.894
<v Luca>acceso per un paio di giorni

00:13:29.894 --> 00:13:31.735
<v Luca>e per ogni singolo test.

00:13:31.815 --> 00:13:34.375
<v Luca>In realtà esiste anche un servizio

00:13:34.855 --> 00:13:37.209
<v Luca>messo a disposizione da Google che

00:13:37.209 --> 00:13:39.370
<v Luca>si chiama Google Collab e per

00:13:39.370 --> 00:13:41.370
<v Luca>cui è possibile eseguire il codice

00:13:41.370 --> 00:13:43.850
<v Luca>direttamente sui computer di Google che,

00:13:43.850 --> 00:13:46.809
<v Luca>chiaramente, sono molto più potenti rispetto

00:13:46.809 --> 00:13:48.490
<v Luca>a quello che avevo io a disposizione.

00:13:48.845 --> 00:13:52.445
<v Luca>Tuttavia, questo servizio è gratuito ma

00:13:52.445 --> 00:13:54.125
<v Luca>solo per le prime ore,

00:13:54.125 --> 00:13:56.524
<v Luca>che decisamente non bastavano per raggiungere

00:13:56.524 --> 00:13:59.085
<v Luca>i risultati sperati e che mi

00:13:59.085 --> 00:14:00.125
<v Luca>ero prefissato.

00:14:00.125 --> 00:14:01.725
<v Luca>Un altro problema era appunto,

00:14:02.679 --> 00:14:03.720
<v Luca>come avevo detto prima,

00:14:03.720 --> 00:14:06.039
<v Luca>quello delle diversità di emoji.

00:14:06.039 --> 00:14:08.360
<v Luca>Questo l'ho risolto, come ho detto prima,

00:14:08.360 --> 00:14:10.919
<v Luca>suddividendole in vari sottogruppi,

00:14:10.919 --> 00:14:14.039
<v Luca>ma ovviamente questo significa diminuire anche

00:14:14.039 --> 00:14:15.799
<v Luca>la quantità di dati utili per

00:14:15.799 --> 00:14:18.705
<v Luca>addestrare la GAN e quindi ciò

00:14:18.705 --> 00:14:21.825
<v Luca>si traduce in risultati molto meno precisi.

00:14:21.825 --> 00:14:23.825
<v Luca>Un altro problema di cui soffrono

00:14:23.825 --> 00:14:26.625
<v Luca>in generale tutte le GAN e

00:14:26.625 --> 00:14:28.465
<v Luca>che appunto anche io ho riscontrato

00:14:28.465 --> 00:14:30.940
<v Luca>è invece quello che viene definito collasso.

00:14:31.259 --> 00:14:32.540
<v Luca>In poche parole, a un certo

00:14:32.540 --> 00:14:35.340
<v Luca>punto l'algoritmo inizia a creare delle

00:14:35.340 --> 00:14:37.100
<v Luca>immagini si vero simili,

00:14:37.259 --> 00:14:39.420
<v Luca>però quasi tutte uguali tra di loro.

00:14:39.420 --> 00:14:40.540
<v Luca>Negli ultimi anni, poi,

00:14:40.540 --> 00:14:43.100
<v Luca>questo problema è stato parzialmente o

00:14:43.100 --> 00:14:46.904
<v Luca>completamente risolto usando altri modelli e

00:14:46.904 --> 00:14:49.384
<v Luca>altre soluzioni che però io non

00:14:49.384 --> 00:14:51.625
<v Luca>ho sfruttato completamente nel progetto.

00:14:51.625 --> 00:14:52.664
<v Luca>Uno di questi metodi,

00:14:52.664 --> 00:14:54.985
<v Luca>ad esempio, che ho anche utilizzato

00:14:54.985 --> 00:14:58.664
<v Luca>è quello di utilizzare delle GAN condizionali.

00:14:59.579 --> 00:15:01.419
<v Davide>E puoi dirci cosa sono e

00:15:01.419 --> 00:15:03.179
<v Davide>che differenza c'è con quello di

00:15:03.179 --> 00:15:04.860
<v Davide>cui ci hai parlato finora?

00:15:05.740 --> 00:15:08.699
<v Luca>Sì, allora, finora appunto abbiamo parlato

00:15:08.699 --> 00:15:11.100
<v Luca>di GAN normali, ovvero quelle GAN

00:15:11.100 --> 00:15:13.659
<v Luca>che generano casualmente dei contenuti,

00:15:13.659 --> 00:15:15.355
<v Luca>nel mio caso delle immagini,

00:15:15.355 --> 00:15:18.075
<v Luca>in seguito a un addestramento con

00:15:18.075 --> 00:15:20.475
<v Luca>una quantità di dati eterogenei.

00:15:20.475 --> 00:15:23.914
<v Luca>Le GAN condizionali, o C-GAN invece,

00:15:23.914 --> 00:15:25.674
<v Luca>a differenza delle normali GAN,

00:15:25.674 --> 00:15:28.950
<v Luca>utilizzano delle informazioni aggiuntive,

00:15:28.950 --> 00:15:30.710
<v Luca>delle informazioni in più per creare

00:15:30.710 --> 00:15:32.550
<v Luca>o disegnare il contenuto.

00:15:32.629 --> 00:15:33.990
<v Luca>Nel caso delle emoji,

00:15:33.990 --> 00:15:36.629
<v Luca>questa informazione aggiuntiva era proprio il

00:15:36.629 --> 00:15:38.550
<v Luca>tipo di emoji, quindi se questa

00:15:38.550 --> 00:15:40.070
<v Luca>era una faccina, un cuore,

00:15:40.070 --> 00:15:42.230
<v Luca>una bandiera, una mano,

00:15:42.230 --> 00:15:43.110
<v Luca>eccetera eccetera.

00:15:43.524 --> 00:15:44.644
<v Luca>Nel caso dei numeri,

00:15:44.644 --> 00:15:46.804
<v Luca>invece, questo può essere ad esempio

00:15:46.804 --> 00:15:49.285
<v Luca>il numero da disegnare e così via.

00:15:49.285 --> 00:15:51.285
<v Luca>In pratica, ciò che si fa è,

00:15:51.285 --> 00:15:53.684
<v Luca>ogni volta che noi passiamo l'immagine

00:15:53.845 --> 00:15:58.165
<v Luca>all'intelligenza artificiale, dobbiamo dirle anche cos'è quell'immagine.

00:15:58.519 --> 00:16:01.160
<v Luca>E quando invece ne richiediamo una generata,

00:16:01.399 --> 00:16:03.960
<v Luca>dobbiamo anche specificarne la tipologia.

00:16:04.039 --> 00:16:05.000
<v Luca>Nel caso delle emoji,

00:16:05.000 --> 00:16:07.879
<v Luca>dunque, potevo generare in modo distinto

00:16:07.879 --> 00:16:11.159
<v Luca>delle immagini di specifiche categorie di emoji,

00:16:11.159 --> 00:16:13.764
<v Luca>risolvendo in parte dunque il problema

00:16:13.764 --> 00:16:15.445
<v Luca>delle immagini tutte uguali.

00:16:15.764 --> 00:16:19.125
<v Luca>Per capire le potenzialità delle GAN condizionali,

00:16:19.125 --> 00:16:21.605
<v Luca>ad esempio, online, esiste anche un

00:16:21.605 --> 00:16:24.485
<v Luca>progetto sviluppato da Nvidia che permette

00:16:24.485 --> 00:16:26.165
<v Luca>di creare dei paesaggi più o

00:16:26.165 --> 00:16:28.004
<v Luca>meno realistici a nostro piacimento.

00:16:28.419 --> 00:16:31.139
<v Luca>Partendo quindi da una tavola bianca

00:16:31.139 --> 00:16:33.299
<v Luca>con diversi colori, possiamo infatti indicare

00:16:33.299 --> 00:16:35.059
<v Luca>dove generare degli alberi,

00:16:35.059 --> 00:16:36.740
<v Luca>dove generare delle rocce,

00:16:36.740 --> 00:16:38.419
<v Luca>delle montagne e così via.

00:16:38.419 --> 00:16:40.980
<v Luca>L'intelligenza artificiale poi si occuperà appunto

00:16:40.980 --> 00:16:43.785
<v Luca>di generare gli elementi corretti nei

00:16:43.785 --> 00:16:46.105
<v Luca>posti corretti che abbiamo indicato per

00:16:46.264 --> 00:16:49.865
<v Luca>creare una sorta di fotografia quasi realistica.

00:16:49.865 --> 00:16:51.384
<v Luca>E allo stesso modo funziona anche

00:16:51.384 --> 00:16:53.544
<v Luca>l'algoritmo di Google, di cui avevo

00:16:53.544 --> 00:16:55.625
<v Luca>parlato prima, per creare appunto delle

00:16:55.625 --> 00:16:57.809
<v Luca>opere d'arte di specifici artisti,

00:16:57.809 --> 00:16:59.570
<v Luca>partendo da nostre fotografie.

00:16:59.570 --> 00:17:01.169
<v Luca>E sempre allo stesso modo poi

00:17:01.169 --> 00:17:04.450
<v Luca>potremo utilizzare il discriminatore ben allenato,

00:17:04.450 --> 00:17:06.769
<v Luca>ad esempio, per riconoscere delle immagini

00:17:06.769 --> 00:17:08.690
<v Luca>false o video deepfake.

00:17:08.690 --> 00:17:10.289
<v Luca>E anche in questo caso l'unica

00:17:10.289 --> 00:17:11.809
<v Luca>cosa che ci può fermare è

00:17:11.809 --> 00:17:13.089
<v Luca>proprio la nostra fantasia.

00:17:13.954 --> 00:17:17.394
<v Davide>Però mi pare, anche visto alcuni

00:17:17.394 --> 00:17:19.875
<v Davide>esempi che mi hai mostrato di

00:17:20.195 --> 00:17:24.835
<v Davide>emoji realizzate appunto con questa coppia

00:17:24.835 --> 00:17:28.509
<v Davide>di intelligenze artificiali, che la tecnologia

00:17:28.509 --> 00:17:30.509
<v Davide>sia ancora c'è erba,

00:17:30.509 --> 00:17:30.910
<v Davide>giusto?

00:17:32.109 --> 00:17:34.029
<v Luca>Sì e no, nel senso la

00:17:34.029 --> 00:17:35.950
<v Luca>differenza in questo caso la fa

00:17:36.670 --> 00:17:38.830
<v Luca>molto la potenza del o dei

00:17:38.830 --> 00:17:41.555
<v Luca>computer che vengono utilizzati per allenare

00:17:41.555 --> 00:17:43.474
<v Luca>la rete orale e anche la

00:17:43.474 --> 00:17:45.794
<v Luca>quantità di dati che abbiamo a disposizione.

00:17:45.955 --> 00:17:47.795
<v Luca>Al momento, dunque, anche nelle migliori

00:17:47.795 --> 00:17:50.914
<v Luca>delle ipotesi servono ancora molti miglioramenti

00:17:50.914 --> 00:17:53.394
<v Luca>e molte ottimizzazioni per generare dei

00:17:53.394 --> 00:17:55.075
<v Luca>contenuti fedeli alla realtà.

00:17:55.339 --> 00:17:57.500
<v Luca>Però si stanno facendo anche dei

00:17:57.500 --> 00:17:58.779
<v Luca>grandi passi in avanti.

00:17:58.940 --> 00:18:02.779
<v Luca>Ritornando ad esempio all'esempio dei volti

00:18:02.779 --> 00:18:04.779
<v Luca>di persone che non esistono,

00:18:04.779 --> 00:18:07.740
<v Luca>disegnati da una di queste intelligenze artificiali,

00:18:07.740 --> 00:18:09.980
<v Luca>in alcuni casi è impossibile distinguere

00:18:09.980 --> 00:18:12.355
<v Luca>le foto reali da quelle generate.

00:18:12.434 --> 00:18:14.355
<v Luca>E anche per quanto riguarda ad

00:18:14.355 --> 00:18:16.194
<v Luca>esempio i video deepfake,

00:18:16.275 --> 00:18:20.674
<v Luca>solo in particolari condizioni possiamo raggiungere

00:18:20.914 --> 00:18:23.075
<v Luca>dei risultati veramente realistici.

00:18:23.250 --> 00:18:25.970
<v Luca>Sicuramente quindi in generale c'è ancora

00:18:25.970 --> 00:18:28.289
<v Luca>parecchia strada da fare prima di

00:18:28.289 --> 00:18:30.690
<v Luca>raggiungere un livello che possa essere

00:18:30.690 --> 00:18:33.409
<v Luca>ad esempio utilizzato a livello commerciale.

00:18:33.650 --> 00:18:36.289
<v Davide>Va bene Luca, grazie per averci

00:18:36.974 --> 00:18:40.335
<v Davide>raccontato questo descritto, questo tuo progetto

00:18:40.335 --> 00:18:41.694
<v Davide>e alla prossima.

00:18:41.855 --> 00:18:43.535
<v Luca>Grazie a te e un saluto

00:18:43.535 --> 00:18:44.734
<v Luca>a tutti gli ascoltatori.

00:18:53.390 --> 00:18:55.470
<v Davide>E così si conclude questa puntata

00:18:55.470 --> 00:18:57.789
<v Davide>di INSiDER - Dentro la Tecnologia,

00:18:57.789 --> 00:18:59.950
<v Davide>io ringrazio come sempre la redazione

00:18:59.950 --> 00:19:01.789
<v Davide>e in special modo Matteo Gallo

00:19:01.789 --> 00:19:03.789
<v Davide>e Luca Martinelli che ogni sabato

00:19:03.789 --> 00:19:06.109
<v Davide>mattina ci permettono di pubblicare un

00:19:06.109 --> 00:19:07.150
<v Davide>nuovo episodio.

00:19:07.150 --> 00:19:08.914
<v Davide>Per qualsiasi tipo di domanda o

00:19:08.914 --> 00:19:13.474
<v Davide>suggerimento scriveteci a redazione@dentrolatecnologia.it,

00:19:13.474 --> 00:19:16.914
<v Davide>seguiteci su Instagram a @dentrolatecnologia dove

00:19:16.914 --> 00:19:20.195
<v Davide>durante la settimana pubblichiamo notizie e approfondimenti.

00:19:20.194 --> 00:19:22.579
<v Davide>In qualsiasi caso nella descrizione della

00:19:22.579 --> 00:19:24.980
<v Davide>puntata troverete tutti i nostri social.

00:19:24.980 --> 00:19:27.859
<v Davide>Se trovate interessante il podcast condividetelo

00:19:27.859 --> 00:19:29.220
<v Davide>che per noi è un ottimo

00:19:29.220 --> 00:19:31.059
<v Davide>modo per crescere e non dimenticate

00:19:31.059 --> 00:19:32.419
<v Davide>di farci pubblicità.

00:19:32.419 --> 00:19:34.579
<v Davide>Noi ci sentiamo la settimana prossima.

