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

Cos’è il bias in una rete neurale artificiale | Towards Machine Learning

Cos’è il bias in una rete neurale artificiale | Towards Machine Learning

Il bias è un termine che fa riferimento ad un parametro di un modello statistico, il quale è generalmente usato come astrazione di una certa realtà nel campo delle intelligenze artificiali; più nel dettaglio nel Machine Learning.

Come parametro di un modello statistico, il Bias è ‘appreso‘ o ‘stimato‘ (learned or estimated) trovando il punto di minimo (by minimizing) di una particolare funzione detta funzione di perdita, meglio nota come loss function, che dipende dal nostro dataset.

Bias in machine learning | Cosa diamine è??

Il termine Bias è proprio delle rete neurali artificiali, e deve essere inteso come caratterizzante ogni singolo neurone della rete. Perciò nel complesso la rete sarà costitutita da diverse biases.

Ora, il valore associato ai biases è variabile, così come lo è per i wieghts, e viene corretto nella fase di apprendimento.

La chiave di volta per comprenderne il significato e l’utilità è considerare ogni singolo bias come una soglia (threshold) per determinare se l’informazione entrata ed elaborata dal neurone debba o meno uscirne procedendo in avanti (forward propagation)nella rete.

In altre parole, il bias determina se e in quale misura il neurone debba attivarsi (neuron fires).

La presenza di questo parametro incrementa inoltre la flessibilità del modello, consentendogli di adatttarsi meglio (fit the model) al dataset.

Bias in machine learning | Ecco il suo posto nello schema!

Ora capiremo perché è importante avere un parametro come il Bias nella propria rete.

Ogni neurone riceve, dal precedente layer, una somma di input ‘pesati‘ (weighted), che passa attraverso una funzione di attivazione. Il bias entra proprio in questo momento, all’interno della funzione di attivazione.

Questo significa che invece di passare direttamente la ‘somma pesata’ (che permettimi, in italiano non ha proprio senso… weighted input) alla funzione, aggiungiamo un parametro in più: entra in gioco il bias.

Questo esempio, che ammetto essere preso dalla rete, è illuminante.

Consideriamo una singola, piccola, rete di 3 neuroni, due in un layer e uno in un’altro:

L’input del primo neurone (1), così come quello del secondo (2), che si trova nell’input layer, è moltiplicato per il weight della rispettiva connessione al terzo neurone dell’hidden layer. I due risultati parziali sono poi sommati tra loro e passati ad una funzione che nel nostro caso specifico è la ReLU. Avremo così:

1*0.35+2*(-1.50)  => -2.65
f(x) => max(0, -2.65) => 0

L’input ricevuto dal terzo neurone sarà dunque pari a zero: in questo modo il neurone sarà disattivato e il suo peso sarà irrilevante nella rete.

Se volessimo abbassare la soglia di attivazione del neurone (threshold), dove per soglia indichiamo il livello oltre al quale il neurone risulta attivo, dovremmo introdurre il bias il cui valore sarà quindi opposto a quello della soglia desiderata.

Quindi, adesso abbiamo una soglia di 0. Facciamo finta di vole abbassare la soglia a -3; in questo caso scegliamo come bias il suo opposto

-a = -(-3) = 3

e lo aggiungiamo subito prima di calcolare la ReLU. Riprendendo l’esempio di prima:

1*0.35+2*(-1.50) + 3 => -2.65 + 3 = 0.35
f(x) => max(0, 0.35) => 0.35

Con un valore di 0.35, il nostro neurone risulterà attivo.

Written by Andrea Provino - Febbraio 27, 2019
Tags | AI, data science, deep learning, machine learning, neural network

You Might Also Like

migliori-libri-sul-machine-learning-best-machine-lerning-books-data-science-guida-acquisto-amazon

Migliori libri sul machine learning

Novembre 2, 2020
ridge-regression-machine-learning-cross-validation-grid-search-data-science-data-scientist-course-italiano

Ridge Regression

Novembre 6, 2019
global-differential-privacy-local-differential-privacy-deep-learning-data-science-scaled

Global Differential Privacy vs Local Differential Privacy

Febbraio 13, 2020
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