• 🏡 Home
  • 🚨 GDPR Compliant
  • ⚡️ Data Science
  • 📌 Machine Learning
  • 🔒 Privacy Preserving
  • 🏡 Home
  • 🚨 GDPR Compliant
  • ⚡️ Data Science
  • 📌 Machine Learning
  • 🔒 Privacy Preserving
AI, machine-learning

GAN: Cosa sono le Generative Adversarial Nets

GAN: Cosa sono le Generative Adversarial Nets

Le GAN, o Generative Adversarial Net(work)s, sono un framework per la stima di modelli generativi attraverso un processo avversario, o antagonista, che prevede l’allenamento simultaneo di un modello Generativo (Generator, o G) e di uno Discriminatorio (Discriminator, D).

Una definizione densa di contenuto che merita di essere approfondita.

In italiano usiamo l’espressione Rete Generativa Avversaria o Rete Antagonista Generativa per riferirci all’argomento, anche se ritengo i termini inglese particolarmente utili a questo proposito per una maggiore chiarezza.

Basta indugi.

Pronti a salpare? Ammainiamo le vele e molliamo gli ormeggi!

Alla scoperta delle affascinanti Generative Adversarial Network: GAN, per gli amici.

GAN: Cos’è una Generative Adversarial Network

Nel 2014, Ian J. Goodfellow et al. presentarono un articolo accademico che introdusse un nuovo framework per la stima dei modelli generativi attraverso un processo avversario, o antagonista, facente impiego di due reti: una generativa, l’altra discriminatoria.

Il modello Generativo, indicato come Generator o G cattura la distribuzione originale mentre quello Discriminatorio, definito Discriminator o D, stima la probabilità che un dato provenga dal dataset di training anziché da G.

La procedura di training per G, la goal function, prevede di massimizzare la probabilità che D sbagli.

Esiste un termine per indicare questa particolare struttura a due giocatori che si viene a creare.

Il framework a due modelli corrisponde a un minimax two-player game.

Questa è davvero bella.

Sì, perché devi sapere che nella teoria delle decisioni, il minimax è un metodo per minimizzare la massima perdita possibile (minimax) o massimizzare il minimo guadagno (maximin).

Fu scoperto nella teoria dei giochi in caso di gioco a somma zero con due giocatori.

Dovremo approfondire anche questo delizioso ambito; per il momento concentriamoci sulle nostre GAN.

Come capire cos’è una Generative Adversarial Nets

Al di là dei molti tecnicismi, concreti e densi d’informazione, le GAN sono un sistema creativo.

Ora si che hai capito! Scherzi a parte, vediamo di comprendere cosa sono!

Consentono di generare dati, principalmente immagini (quindi video) da zero, e possono essere usate a supporto di sistemi di Reinforcement Learning (che abbiamo conosciuto qui).

Per intenderci… sta cosa è stata creata da una GAN.

Right side image created by CycleGAN Source

Leggo nei tuoi occhi il desiderio di saperne di più.

Di fronte a una persona così curiosa e bramosa di sapere, non posso che aggiungere del contenuto.

Seguimi allora.

GAN in Python con TF-GAN

Joel Shor, Google Research Engineer, è autore di una leggere libreria per allenare e valutare Generative Adversarial Networks (GANs) chiamata TF-GAN che trovi qui.

Ha preparato per noi un video introduttivo sulle GAN che ti consiglio di vedere: non temere, è breve.

Joe può anche seguirti in un corso, firmato Google, proprio sulle reti generative avversarie.

Ti consiglio comunque di leggere prima il nostro post per imparare come funziona una rete generativa avversaria, così da avere un’infarinatura e procedere veloce nel corso.

Stiamo per concludere questo breve viaggio.

L’obiettivo era quello di fornire una definizione concisa, facilmente consultabile in futuro, e introduttiva alle GAN.

Ci siamo riusciti?

Scrivimelo nei commenti!

Comunque se intendi approfondire, qui hai una descrizione approfondita, qui una serie di esempi e qua invece un bel salto nel magico mondo delle GANs ancora più profondo.

GAN FAQ: Domande per ripassare

Prima di salutarti, ho pensato di raccogliere per te alcune domande e relative risposte che potresti trovare utili!

Sappi comunque una cosa.

Il box commenti poco oltre ti aspetta: se hai quesiti, non esitare a chiedere!

Per cosa sono usate le GAN?

Le Generative Adversarial Networks (GANs) o reti generative avversarie sono usate per task di unsupervised machine learning, l’apprendimento automatico non supervisionato. Sono note soprattutto per le loro applicazioni nella computer vision: possono generare volti umani verosimili.

Cosa sono le GANs?

Le Generative Adversarial Networks (GANs) o reti generative avversarie sono una classe di reti neurali in grado di generare dati che assomigliano a quelli di training.

Le GAN sono Deep Learning?

Sì, le GAN sono un esempio di applicazione del Deep Learning. Le reti generative avversarie si distinguono per diverse strutture, alcune delle quali hanno molti livelli o layers e sono allenate grazie al deep learning.

Per il momento è tutto.

Per aspera, ad astra.

Un caldo abbraccio, Andrea

Written by Andrea Provino - Aprile 20, 2020
Tags | deep learning, machine learning

You Might Also Like

No Big Data? Handling small data | Consigli

Giugno 28, 2019
aws-lambda-rnn-tensroflow-model-data-science-machine-learning-trading-deep-learning

AWS Lambda e RNN Tensorflow Model | Log Italiano

Aprile 14, 2020
aws-deep-learning-github-job-interview-request-skills-machine-learning-blog-italia-richieste-lavoro-colloquio-data-scientist.

Requisiti Data Scientist | 2020 Skill

Gennaio 27, 2020
Next Post
Previous Post

Una pubblicità che non vedi se usi AdBlock

EXPAND YOUR KNOWLEDGE

  • rust-react-webassembly-privacy-preserving-machine-learning Logs

    Rust, WebAssembly, React e un MVP

    Dicembre 21, 2020
  • diffie-hellman-key-exchange-protocol-scambio-di-chiavi-diffie-hellman Data Science, Privacy Preserving

    Cos’è lo scambio di chiavi Diffie-Hellman (DH)? | Privacy Preserving

    Dicembre 15, 2020
  • principio-di-esattezza-data-science-machine-learning-gdpr-data-accuracy Data Science, GDPR Compliant

    GDPR: Principio di esattezza dei dati (Data Accuracy)

    Dicembre 12, 2020
  • tensorflow-extended-tfx-deploy-machine-learning-guide-machine-learning-pipelines machine-learning

    TFX: come funziona Tensorflow Extended?

    Dicembre 9, 2020
  • tensorflow-extended-tfx-deploy-machine-learning-guide-machine-learning-pipelines machine-learning

    TensorFlow Extended (TFX) | Production Machine Learning Pipeline

    Dicembre 6, 2020
  • mean-shift-clustering-guida-italiano-spiegazione-semplice-algoritmo-di-clustering-esempio Data Science

    Mean-Shift Clustering

    Dicembre 3, 2020
  • data-minimization-principle-gdpr-principio-minimizzazione-dati-personali-gdpr-italia-consulenza-spiegazione-semplice Data Science, GDPR Compliant

    GDPR: Principio di minimizzazione dei dati (Data minimization)

    Dicembre 1, 2020
  • machine-learning-for-finance-trading-online-data-science-deep-learning-intelligenza-artificiale AI, machine-learning

    FinTech: Machine Learning for Finance (FinML) | Guide e Risorse di qualità

    Novembre 29, 2020
  • gdpr-principio-di-limitazione-della-finalita-machine-learning-data-science-guida-prupose-limitation-gdpr Data Science, GDPR Compliant

    GDPR: Principio di Limitazione della finalità | Purpose Limitation

    Novembre 26, 2020
  • machine-learning-engineer-lavoro-stipendio-responsabilità-come-diventare AI, Business, machine-learning

    Machine Learning Engineer

    Novembre 23, 2020

Quello che Google pensa ti possa piacere

Prodotti che i Cookie dicono potresti trovare interessanti

AI Blog - © 2019-2021 Andrea Provino