Тёмный

Introduzione Alle Reti Neurali 04: Il Primo Programma in Python 

Riccardo Talarico
Подписаться 4,5 тыс.
Просмотров 44 тыс.
50% 1

In questo primo video applicativo utilizzeremo python per creare lo scheletro di quella che sarà la rete neurale in grado di risolvere semplici problemi di classificazione come quello dei gatti.
LINKS:
REPL:
repl.it/languages
PYTHONTUTOR:
pythontutor.com/visualize.html...
GRAFICO 3D:
ggbm.at/k95yv6np
DONAZIONI:
Paypal: www.paypal.me/RTalarico

Опубликовано:

 

21 сен 2018

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 21   
@patasilli
@patasilli 3 года назад
Bellissimo. Hai fatto veramente un gran lavoro.
@saraferro509
@saraferro509 4 года назад
Spiegazione davvero chiara!
@johntravolta9917
@johntravolta9917 3 года назад
hai la capacità di spiegare le cose in maniera semplice
@eldabreramolinaro565
@eldabreramolinaro565 Год назад
Complimenti, spiegazione chiarissima
@stefanorosso5443
@stefanorosso5443 5 лет назад
Favoloso, ottime spiegazioni. Bravo
@byronluca9041
@byronluca9041 3 года назад
you prolly dont care but if you guys are stoned like me during the covid times you can watch all of the latest movies on Instaflixxer. Have been binge watching with my gf for the last couple of days :)
@brixtonchristian3242
@brixtonchristian3242 3 года назад
@Byron Luca Yea, been using InstaFlixxer for since december myself :)
@lisar9899
@lisar9899 5 лет назад
Grazieeeee
@andreaceribelli9705
@andreaceribelli9705 3 года назад
grazie
@edoardos6426
@edoardos6426 4 года назад
Ciao ti volevo ringraziare per l'ottimo video e volevo chiederti cosa succede in caso gli input sono più di due, semplicemente si aggiungono pesi oppure c'è altro?
@danielarotelli
@danielarotelli 4 года назад
Puoi aggiungere la funzione ROUND() per mostrare direttamente a video il risultato, quindi round(previsione1) e round(previsione2) che ti restituisce 1 e 0
@danielarotelli
@danielarotelli 4 года назад
Comunque complimenti :)
@francescominojetti939
@francescominojetti939 5 лет назад
Buongiorno Riccardo, e innanzitutto grazie mille per i video che sono, tra quello online, tra i più chiari da seguire per un neofita. giocando con la tua applicazione in python, mi è sorta una domanda: i parametri random iniziali generati per w1, w2 e b, che impatto hanno sul raggiungimento dei valori "ottimizzati" per w1, w2 e b appunto? O meglio, se cambio i valori iniziali di w1, w2, e b, ottengo sempre gli stessi valori dopo aver allenato la rete? Allora ho provato a mettere dei vincoli al generatore di numeri casuali ed ho scoperto una cosa curiosa: se al momento della generazione dei numeri casuali, w1 e w2 vengono definiti con valori ENTRAMBI superiori a 0,67, la rete non si allena, e spara risultati assolutamente fuori contesto. Il problema non pare porsi con B, che qualsiasi valore le venga assegnato, è libera di muoversi senza problemi. IN effetti con il tuo programma questo non succede perché resetti il generatore (con RD.SEED(1)) pero' converrai con me che cosi facendo i "semi" dai quali vengono generati i parametri w1, w2, e b sono in un qualche modo "veicolati" e quindi il processo di generazione è sempre uguale a se stesso step by step, per cui anche se lo lanci 100.000 volte il risultato sarà il medesimo. Ma se invece venisse lasciato libero il feed di generazione dei numeri casuali, la possibilità di ottenere due valori vicini superiori entrambi a 0.67 non è pari a zero. Cosa ne pensi? Grazie del tempo che mi dedicherai
@riccardotalarico4263
@riccardotalarico4263 5 лет назад
Buongiorno Keko. Grazie a te per i complimenti! La tua osservazione è corretta, il processo di inizializzazione dei pesi e bias è sempre uguale a sé stesso in questo caso. L'ho fatto proprio per ottenere una certa riproducibilità. L'inizializzazione casuale ha ,come hai giustamente notato, dei potenziali problemi: se i pesi vengono inizializzati con un valore troppo alto la funzione sigmoide "mappa" gli ingressi ad uscite molto vicine ad 1 e quindi ci vogliono molte più iterazioni per eseguire l'addestramento (prova a verificarlo modificandone il numero e fai dei test con diversi learning rate). Esistono delle formule di inizializzazione particolari, utilizzate soprattutto quando si ha a che fare con reti multistrato, che tengono conto di questo e di altri problemi. Volendo fornire una visione semplificata dell'argomento ho preferito non parlarne in questi video. Grazie per il commento interessante!
@francescominojetti939
@francescominojetti939 5 лет назад
Riccardo Talarico grazie della risposta! Ok, giusto per curiosità provo a lavorare con le indicazioni che mi hai fornito, aumento il numero di iterazioni e lavoro sul learning rate. Poi ti dico, ok? Grazie. Ah un ultima cosa.... Repl.it è una meraviglia, ho sottoscritto subito l’abbonamento annuale! Ottimo consiglio
@abdallahamouda6633
@abdallahamouda6633 2 года назад
Dio mio ma quanto spieghi bene veramente non so io ma si vede che hai una dote
@raffaelegreco3337
@raffaelegreco3337 5 лет назад
Complimenti per il video, sto effettuando la mia tesi di laurea sulle reti neurali applicate ad eventi franosi, mi spiego meglio praticamente attraverso la lettura di alcune matrici che contengono dati numerici quali ad esempio pendenza del terreno, angolo di esposizione ecc ecc ed attraverso zone note in cui sono avvenute delle frane, devo valutare se altre parti del territorio possono essere soggette a frana o meno. Ora io non ho mai programmato quindi non saprei proprio come partire e nemmeno dove poter trovare qualcosa che mi possa aiutare. chi può darmi qualche consiglio?
@andreafalcetta927
@andreafalcetta927 5 лет назад
@barbezph
@barbezph 4 года назад
Ciaoo! Subito iscritto ! Qualche serie sul canale di C++?
@endriuishere4555
@endriuishere4555 Год назад
Ciao per caso come posso contattarti per chiederti qualcos'altro?
@daniellachiche270
@daniellachiche270 2 года назад
Non è tanto carino sparire senza spiegazioni ...