1
Fork 0
mirror of https://github.com/Steffo99/unisteffo.git synced 2024-11-30 03:44:19 +00:00
triennale-appunti-steffo/docs/route-ApprendimentoSistemiArtificiali.chunk.857ce.esm.js

16 lines
25 KiB
JavaScript
Raw Normal View History

2020-08-21 16:33:22 +00:00
(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{"2w3n":function(i){i.exports={red:"red__2y1B_",orange:"orange__dD2kx",yellow:"yellow__OEpwl",lime:"lime__CVe41",cyan:"cyan__26ZAg",blue:"blue__LO7Xm",magenta:"magenta__1Akee",example:"example__2PzAa"}},"5rUc":function(i,l,e){"use strict";(function(i){var n=e("mDT8"),t=e.n(n);l.a=function(l){return i("abbr",{className:t.a.tick,title:"Un quanto di tempo del sistema."},l.children?l.children:"tick")}}).call(this,e("hosL").h)},"9cHI":function(i,l,e){"use strict";e.r(l),function(i){var n=e("mbOI"),t=e("ke5e"),o=e("5rUc");let a,u,r,s,c,d,p,m,g,b,f,h,v,z,q,_,w,S,k,C,A,I,N,E,P,U,x,M,D,L,y,T,H,R,B,G,O,F,V,W,Q,j,J,Z,X=i=>i;const K=String.raw;l.default=function(){return i("div",null,i("h1",null,"Apprendimento ed evoluzione in sistemi artificiali"),i(n.r,{title:"Informazioni"},i(n.q,{title:"Contatti"},i("ul",null,i("li",null,i("a",{href:"mailto:marco.villani@unimore.it"},"Prof. Marco Villani")))),i(n.q,{title:"Archivio"},i("p",null,"Se sei uno ",i("b",null,"studente dell'Unimore"),", puoi accedere all'",i("b",null,i("a",{href:"https://drive.google.com/drive/folders/1GcjP1Z5UtRjyAag7qjFQ-kx3s06G8ZoP"},"archivio del corso su Google Drive")),"."))),i(n.r,{title:"Esame"},i(n.q,{title:"Scritto"},i("ul",null,i("li",null,"Scegli 2 tra 6 domande possibili"),i("li",null,"90 minuti"))),i(n.q,{title:"Appelli"},i("ol",null,i("li",null,i(n.t,{to:"2020-06-23"})),i("li",null,i(n.t,{to:"2020-07-08"})),i("li",null,i(n.t,{to:"2020-07-22"}))))),i(n.r,{title:"NetLogo"},i(n.q,{title:"Cos'è?"},i("p",null,"NetLogo è un software di modellazione sistemi multiagente, da noi usato per le lezioni di laboratorio."),i("p",null,"Si può ",i("a",{href:"https://ccl.northwestern.edu/netlogo/download.shtml"},"scaricare")," o ",i("a",{href:"https://www.netlogoweb.org/launch"},"usare da browser"),"."),i("p",null,"Il suo codice sorgente è disponibile su ",i("a",{href:"https://github.com/NetLogo/NetLogo"},"GitHub"),", e ha una pagina di ",i("a",{href:"https://ccl.northwestern.edu/netlogo/docs/dictionary.html"},"documentazione"),"."),i("p",null,i("b",{style:"font-size: x-large;"},i("a",{href:"/apprendimento/netlogo"},"Consulta i miei appunti su NetLogo qui!"))))),i(n.r,{title:"Sistemi dinamici"},i(n.q,{title:"Cosa sono?"},i("p",null,"Sistemi naturali o artificiali che si basano su ",i("b",null,"leggi reversibili e deterministiche"),"."),i("p",null,"In natura, alcuni leggi possono sembrare irreversibili a livello macroscopico, ma sono in realtà reversibili a livello microscopico."),i(t.a,null,i("p",null,i("a",{href:"https://it.wikipedia.org/wiki/Modello_di_Ehrenfest"},i("u",null,"Urne di Ehrenfest")),": due urne con N palline; estraggo una pallina da una urna casuale ad ogni passo e la sposto nell'altra; con tante palline il sistema appare irreversibile."))),i(n.q,{title:"Fasi"},i("p",null,i("b",null,"Stati")," in cui si può trovare un sistema dinamico."),i("p",null,"Tutte insieme formano lo ",i("i",null,"(iper)",i("b",null,"spazio delle fasi")),".")),i(n.q,{title:"Attrattore"},i("p",null,"Lo ",i("b",null,"stato finale")," di un sistema dinamico."),i("p",null,"Tutte le fasi tendono a uno specifico attrattore.")),i(n.q,{title:"Elaborazione di informazione"},i("p",null,"I sistemi dinamici ",i("b",null,"elaborano informazione")," attraversando fasi e raggiungendo un attrattore."),i(t.a,null,"L'evoluzione biologica crea nuove specie partendo da quelle precedenti di maggiore successo fino a quando non si raggiunge la specie perfetta."),i(t.a,null,"Si può vedere l'universo come un gigantesco sistema dinamico. ",i("a",{href:"https://it.wikipedia.org/wiki/Ipotesi_della_simulazione"},"Che sia artificiale?")," ",i("a",{href:"https://it.wikipedia.org/wiki/Morte_termica_dell%27universo"},"Qual è il suo attrattore?")))),i(n.r,{title:"Sistemi lineari"},i(n.q,{title:"Cosa sono?"},i("p",null,"Sistemi dinamici i cui cambiamenti sono descritti da ",i("b",null,"funzioni lineari"),".")),i(n.q,{title:"Nodi"},i("p",null,i("b",null,"Situazioni iniziali")," di un sistema lineare."),i("p",null,"Possono essere:"),i("ul",null,i("li",nul
2020-06-18 17:46:40 +00:00
E = - \frac{1}{2} \sum_{n, m} ( w_{nm} \cdot x_n \cdot x_m ) + \sum_n ( \theta_n \cdot x_n )
2020-08-21 16:33:22 +00:00
`))))),i(n.r,null,i(n.q,{title:"Apprendimento hebbiano"},i("p",null,"Un metodo per realizzare l'apprendimento nel modello di Hopfield."),i("p",null,"Si incrementa l'intensità delle sinapsi che connettono neuroni nello stesso stato, e invece si decrementa l'intensità di quelle che connettono neuroni in stati opposti."),i("p",null,"Considerando i neuroni spenti e quelli accesi come ",i(n.h,null,K(U||(U=X`0`)))," e ",i(n.h,null,K(x||(x=X`1`)))," rispettivamente, si ha che per ogni pattern:"),i(n.p,null,K(M||(M=X`
2020-06-18 17:46:40 +00:00
\Delta w_{ik} = (2 \cdot A_i - 1)(2 \cdot A_k - 1)
2020-08-21 16:33:22 +00:00
`))),i(t.a,null,"Così facendo, si insegna sia il pattern normale sia il suo complementare!")),i(n.q,{title:"Simmetria"},i("p",null,"Applicando l'apprendimento hebbiano al modello di Hopfield si ottengono sinapsi simmetriche."),i("p",null,"Se è valida questa proprietà, si può dimostrare che l'",i("b",null,"energia del sistema è sempre decrescente"),", e che quindi che tenderà a un punto fisso!"),i("p",null,i(n.u,null,"TODO: Dopo il prof dimostra la relazione tra input netto e overlap, e che il sistema converge al pattern più simile."))),i(n.q,{title:"Overlap di due pattern"},i("p",null,"Il numero di neuroni attivati in entrambi i pattern."),i(n.p,null,K(D||(D=X`
2020-06-18 17:46:40 +00:00
Q(A, B) = \sum_{i = 1}^n A_i B_i
2020-08-21 16:33:22 +00:00
`)))),i(n.q,{title:"Interferenza"},i("p",null,"Più pattern vengono imparati da un modello, più è facile che essi interferiscano tra loro."),i("p",null,"In caso di pattern completamente scorrelati tra loro, il limite di pattern imparabili è circa:"),i(n.p,null,K(L||(L=X`0.14 \cdot N`)))),i(n.q,{title:"Archetipi"},i("p",null,"Per minimizzare l'interferenza tra pattern, è possibile insegnare al modello un ",i("i",null,"archetipo"),": si insegna più volte il pattern originale applicandoci una minima quantità di interferenza casuale."))),i(n.r,{title:"Modello a percettroni"},i(n.q,{title:"Cos'è?"},i("p",null,"Un modello di rete neurale che supporta l'apprendimento e che presenta ",i("b",null,"più strati di neuroni"),"."),i("p",null,"Ha costi computazionali molto più bassi del modello di Hopfield.")),i(n.s,null,i("thead",null,i("tr",null,i("th",null,"Simbolo"),i("th",null,"Descrizione"))),i("tbody",null,i("tr",null,i("td",null,i(n.a,null,K(y||(y=X`N`)))),i("td",null,"Numero totale di neuroni nel sistema")),i("tr",null,i("td",null,i(n.a,null,K(T||(T=X`n`)))),i("td",null,"Numero di un neurone specifico")),i("tr",null,i("td",null,i(n.a,null,K(H||(H=X`w_{nm}`)))),i("td",null,"Intensità della sinapsi diretta da ",i(n.h,null,K(R||(R=X`n`)))," verso ",i(n.h,null,K(B||(B=X`m`))))),i("tr",null,i("td",null,i(n.a,null,K(G||(G=X`x_n`)))),i("td",null,"Emissione del neurone ",i(n.h,null,K(O||(O=X`n`))))),i("tr",null,i("td",null,i(n.a,null,K(F||(F=X`H(v)`)))),i("td",null,"Funzione che restituisce lo stato di un neurone dato un valore di input")),i("tr",null,i("td",null,i(n.a,null,K(V||(V=X`\sum_1^N ( w_n \cdot x_n )`)))),i("td",null,"Somma degli input di un neurone")),i("tr",null,i("td",null,i(n.a,null,K(W||(W=X`b`)))),i("td",null,"Bias di un neurone"))))),i(n.r,null,i(n.q,{title:"Percettrone"},i("p",null,"Una ",i("b",null,"rete neurale")," che viene incapsulata all'interno di un singolo neurone."),i("p",null,"La sua emissione è determinata dalla sua funzione di emissione ",i(n.h,null,K(Q||(Q=X`H`))),":"),i(n.p,null,K(j||(j=X`
2020-06-18 17:46:40 +00:00
x_n = H \left( \sum_1^N ( w_n \cdot x_n + b) \right)
2020-08-21 16:33:22 +00:00
`))),i("p",null,i(n.h,null,K(J||(J=X`b`)))," è una costante configurabile, detta ",i("i",null,"bias"),", che rappresenta il valore di partenza della somma degli input.")),i(n.q,{title:"Percettrone booleano"},i("p",null,"Un percettrone la cui funzione di emissione è:"),i(n.p,null,K(Z||(Z=X`
2020-06-18 17:46:40 +00:00
\begin{cases}
1 \qquad se\ v > 0\\
0 \qquad se\ v = 0\\
-1 \qquad se\ v < 0
\end{cases}
2020-08-21 16:33:22 +00:00
`)))),i(n.q,{title:"Apprendimento"},i("p",null,"Si parte da intensità casuali delle sinapsi."),i("p",null,"Si prova a classificare degli esempi pre-classificati: se un esempio viene classificato nel modo sbagliato, si alterano le intensità delle sinapsi in direzione della sua classificazione corretta."),i("p",null,"Nel caso che vi siano più strati di neuroni, allora sarà necessario ricorrere alla ",i("a",{href:"https://en.wikipedia.org/wiki/Backpropagation"},"backpropagation"),", che stima l'errore di classificazione di ogni singolo neurone e li corregge di conseguenza."))),i(n.r,{title:"Rete feed-forward"},i(n.q,{title:"Cos'è?"},i("p",null,"Un modello a percettroni in cui ",i("b",null,"non si presentano cicli"),"."),i("p",null,"Alcuni dei neuroni che vi sono all'interno saranno dunque dei ",i("b",null,"neuroni sorgente")," e dei ",i("b",null,"neuroni pozzo"),"."))))}}.call(this,e("hosL").h)},ke5e:function(i,l,e){"use strict";(function(i){var n=e("2w3n"),t=e.n(n);l.a=function(l){return i("div",{class:t.a.example},l.children)}}).call(this,e("hosL").h)},mDT8:function(i){i.exports={red:"red__1DkTW",orange:"orange__3-zNZ",yellow:"yellow__2ln-k",lime:"lime__3VExD",cyan:"cyan__YxBjD",blue:"blue__2bc0p",magenta:"magenta__KGEa7",tick:"tick__2T7VF"}}}]);
//# sourceMappingURL=route-ApprendimentoSistemiArtificiali.chunk.857ce.esm.js.map