• 🏡 Home
  • 🚨 GDPR Compliant
  • ⚡️ Data Science
  • 📌 Machine Learning
  • 🔒 Privacy Preserving
  • 🏡 Home
  • 🚨 GDPR Compliant
  • ⚡️ Data Science
  • 📌 Machine Learning
  • 🔒 Privacy Preserving
Guide

Keras: rete neurale con un layer e un neruone | Machine Learning

Keras: rete neurale con un layer e un neruone | Machine Learning

In questo post abbiamo visto come un semplice neurone artificiale, senza l’ausilio di librerie come tensorflow, possa risolvere problemi di intelligenza artificiale grazie al machine learning.

Oggi vediamo come realizzare nuovamente un semplice script di machine learning attraverso il supporto di keras, un’API ad alto livello che consente la veloce creazione di reti neurali.

Reality: starting point

Ogni progetto di machine learning ha origine da una determinata realtà contraddistinta da una serie di dati e da una legge, una relazione, nota o sconosciuta che regola i dati.

Questo è il nostro dataset di partenza:

[ input ] : [-2.0,-1.0, 0.0, 1.0, 2.0, 8.0, 12.0]
[output ] : [-9.0, -6.0, 0.0, 0.0, 3.0, 21.0, 33.0]

La relazione tra l’input e l’output è la seguente:

y = x*3 - 3

Ci troviamo nella situazione di conoscere la relazione tra i dati, ma potrebbe capitare, come spesso succede, che questa preziosa informazione sia assente. Non è un problema: qui entra in gioco l’intelligenza artificiale.

Con l’ausilio di tecniche quali il deep learning, o il machine learning, è possibile estrarre da una serie di dati, attraverso l’iterazione in un numero elevato di epoche (cicli), grazie anche a specifiche funzioni matematiche, la relazione che consente di fare previsioni dell’ouput su input non forniti nella fase di training.

Questo è quello che andremo a fare.

Script: using keras to desing a net

Per poter procedere, occore che keras si installato propriamente nel nostro ambiente di lavoro. Io, da anaconda Prompt digito:

pip install keras

Iniziamo a scrivere lo script.

Importiamo le librerie:

from tensorflow import keras
import numpy as np

Quindi creiamo la nostra rete neurale, fatta di un semplice neurone e un solo layer:

model = keras.Sequential([keras.layers.Dense(units=1, input_shape=[1])])
model.compile(optimizer='sgd', loss='mean_squared_error')

Ora il nostro dataset:

x = np.array([-2.0,-1.0, 0.0, 1.0, 2.0, 8.0, 12.0], dtype=float)
y = np.array([-9.0, -6.0, 0.0, 0.0, 3.0, 21.0, 33.0], dtype=float)

Popoliamo il modello:

model.fit(x, y, epochs=500)

E proviamo a fare una predizione su un dato in input, il 9; l’output? Dovebbe essere 24:

print(model.predict([9.0]))

Eseguendo lo script, otteniamo:

[24.101503]

Ci piace!

Alla prossima!

Un caldo abbraccio, Andrea!

Written by Andrea Provino - Dicembre 26, 2018
Next Post
Previous Post

Una pubblicità che non vedi se usi AdBlock

EXPAND YOUR KNOWLEDGE

  • Blockchain Developer

    Circuito aritmetico

    Novembre 1, 2022
  • machine-learning

    Un nuovo inizio

    Settembre 4, 2021
  • Zero Knwoledge Proof Article Privacy Preserving

    Zero Knowledge Proof: zk-SNARK e zk-STARK | Prova a conoscenza zero

    Luglio 8, 2021
  • oblivious-transfer-spiegazione-italiano-ot-explanation Privacy Preserving

    Oblivious Transfer (OT)

    Luglio 6, 2021
  • Aleo Studio Website Preview machine-learning

    Aleo Studio: un IDE per Zero-Knowledge Proofs Applications

    Luglio 1, 2021
  • privacy-enhancing-technologies-data-machine-learning-data-science Privacy Preserving

    Perché il Privacy Tech è un vantaggio competitivo micidiale

    Giugno 17, 2021
  • bloom-filter-spiegazione-italian Privacy Preserving

    Bloom Filter

    Giugno 3, 2021
  • trusted-execution-environment-tee-data-science-come-fuziona Data Science, Privacy Preserving

    Trusted Execution Environment | Cos’è un TEE?

    Giugno 2, 2021
  • Crypto Custody services machine-learning

    Crypto Custody: Guida alla custodia delle criptomonete

    Maggio 26, 2021
  • deep-q-learning-q-learning-reinforcement-learning machine-learning

    Deep Q-Learning

    Aprile 27, 2021

Quello che Google pensa ti possa piacere

Prodotti che i Cookie dicono potresti trovare interessanti

AI Blog - © 2019-2021 Andrea Provino