Makina Boltzmann
Një makinë Boltzmann (e quajtur ndryshe edhe modeli Sherrington–Kirkpatrick me fushë të jashtme ose modeli stokastik Ising ), i emërtuar sipas Ludwig Boltzmann është një model i qelqit spin me një fushë të jashtme, si p.sh., një model Sherrington–Kirkpatrick, [1] që është një model stokastik lsing . Është një teknikë e fizikës statistikore e zbatuar në kontekstin e shkencës kognitive. [2]
Makinat Boltzmann janë teorikisht tërheqëse për shkak të lokalitetit dhe natyrës Hebbian-e të algoritmit stërvitës të tyre (të trajnuar sipas rregullit të Hebb-it), dhe për shkak të paralelizmit dhe ngjashmërisë së dinamikës së tyre me proceset e thjeshta fizike. Makinat Boltzmann me lidhje të pakufizuar nuk janë dëshmuar të dobishme për problemet praktike në mësimin makinerik ose gjykime statistikore, por nëse lidhja kufizohet saktësisht siç duhet, mësimi mund të bëhet mjaftueshëm i frytshëm për të qenë i dobishëm në probleme praktike. [3]
Emërtimi i tyre vjen prej shpërndarjes Boltzmann në mekanikën statistikore, e cila përdoret në funksionin e mostrimit . Ato u popullarizuan dhe u promovuan shumë nga Geoffrey Hinton, Terry Sejnowski dhe Yann LeCun në komunitetet e shkencave kognitive, veçanërisht në mësimin makinerik, [4] si pjesë e " modeleve të bazuara në energji " (EBM), sepse Hamiltonianët e qelqeve spin si energji përdoren si pikënisje për të përcaktuar detyrën mësimore. [5]
Struktura
[Redakto | Redakto nëpërmjet kodit]Një makinë Boltzmann, po ashtu si një model Sherrington–Kirkpatrick, është një rrjet njësish me një "energji" totale (Hamiltoniane) të përcaktuar për rrjetin e përgjithshëm. Secila prej njësive prodhojnë rezultate binare. Peshat e makinës Boltzmann janë stokastike. Energjia globale në një makinë Boltzmann është identike në trajt me atë të rrjeteve Hopfield dhe modeleve Ising :
Ku:
- është fuqia e lidhjes ndërmjet njësisë dhe njësi .
- është gjendja, , e njësisë .
- është njëanshmëria e njësisë në funksionin e energjisë globale. ( është pragu i aktivizimit për njësinë.)
Shpesh peshat paraqiten si matricë simetrike me vlera zero përgjatë diagonales.
Probabiliteti i gjendjes së njësisë
[Redakto | Redakto nëpërmjet kodit]Dallimi në energjinë globale që rezulton nga një njësi e vetme e barabartë me 0 (fikur) kundrejt 1 (ndezur), e shkruar , duke supozuar një matricë simetrike të peshave, jepet si më poshtë:
Kjo mund të shprehet si ndryshim i energjive të dy gjendjeve:
Zëvendësimi i energjisë së secilës gjendje me probabilitetin e saj relativ sipas faktorit Boltzmann (vetia e një shpërndarjeje Boltzmann që energjia e një gjendje është në përpjesëtim me probabilitetin log negativ të asaj gjendjeje) jep:
ku është konstanta e Boltzmann-it dhe bëhet e barazvlefshme me konceptin artificial të temperaturës . Duke vënë në dukje se probabilitetet që njësia të jetë e ndezur ose e fikur e kanë shumën , lejon thjeshtimin:
nga ku rrjedh që probabiliteti i njësisë të jepet:
ku ndryshori skalar quhet temperatura e sistemit. Kjo lidhje është burimi i funksionit logjistik që gjendet në shprehjet e probabilitetit në disa variante të makinës Boltzmann.
Gjendja e ekuilibrit
[Redakto | Redakto nëpërmjet kodit]Rrjeti vepron duke zgjedhur në mënyrë të përsëritur një njësi dhe duke rivendosur gjendjen e saj. Pas veprimit për një kohë mjaft të gjatë në një temperaturë të caktuar, probabiliteti i një gjendjeje globale të rrjetit varet vetëm nga energjia e asaj gjendjeje globale, bazuar në shpërndarjen Boltzmann, dhe jo nga gjendja fillestare nga e cila filloi procesi. Kjo do të thotë që probabilitetet logaritmikë të gjendjeve globale bëhen lineare në energjitë e tyre. Kjo marrëdhënie është e vërtetë kur makina është "në ekuilibër termik ", që do të thotë se shpërndarja e probabilitetit të gjendjeve globale ka konvergjuar. Rrjeti duke vepruar fillimisht nga një temperaturë e lartë, temperatura e tij zvogëlohet gradualisht derisa të arrihet një ekuilibër termik në një temperaturë më të ulët. Më pas mund të konvergjojë në një shpërndarje ku niveli i energjisë luhatet rreth minimumit global. Ky proces quhet pjekja e simuluar .
Për të stërvitur rrjetin në mënyrë të tillë që mundësia që ai të konvergjojë në një gjendje globale sipas një shpërndarjeje të jashtme mbi këto gjendje, peshat duhet të vendosen të tilla që gjendjet globale me probabilitetet më të lartë të marrin energjitë më të ulëta. Kjo bëhet me stërvitje.
Stërvitja
[Redakto | Redakto nëpërmjet kodit]Njësitë në makinerinë Boltzmann ndahen në njësitë 'e dukshme', V, dhe njësitë 'e fshehura', H. Njësitë e dukshme janë ato që marrin informacion nga 'mjedisi', dmth., bashkësia e të dhënave për stërvitje është një bashkësi vektorësh binarë mbi bashkësinë V. Shpërndarja mbi grupin e trajnimit shënohet si .
Shpërndarja mbi gjendjet globale konvergjon ndërkohë që makina Boltzmann arrin ekuilibrin termik. Pasi e margjinalizojmë mbi njësitë e fshehura, këtë shpërndarje e shënojmë si .
Qëllimi ynë është të përafrojmë shpërndarjen "reale" duke përdorur e prodhuar nga makina. Ngjashmëria e dy shpërndarjeve matet nga divergjenca Kullback-Leibler, :
ku shuma është mbi të gjitha gjendjet e mundshme të . është një funksion i peshave, pasi janë ato që përcaktojnë energjinë e një gjendjeje, dhe energjia përcakton , siç përcaktohet nga shpërndarja Boltzmann. Një algoritëm i zbritjes me gradient ndryshon një peshë të caktuar, , duke zbritur derivatin e pjesshëm të në lidhje me peshën.
Stërvitja e makinës Boltzmann përfshin dy faza të alternuara. Njëra është faza "pozitive" ku gjendjet e dukshme të njësive shtrëngohen sipas një vektori binar të gjendjes e marrë mostër nga bashkësia e të dhënave të stërvitjes (sipas ). Tjetra është faza "negative" ku rrjeti lejohet të funksionojë lirshëm, dmth., vetëm nyjet hyrëse e kanë gjendjen e tyre të përcaktuar nga të dhënat e jashtme, ndërsa nyjeve dalëse u lejohet të ndryshojnë lirshëm. Gradienti në lidhje me një peshë të caktuar, , jepet nga ekuacioni: [6]
ku:
- është probabiliteti që njësitë i dhe j janë të dyja të ndezura kur makina është në ekuilibër në fazën pozitive.
- është probabiliteti që njësitë i dhe j janë të dyja të ndezura kur makina është në ekuilibër në fazën negative.
- tregon shkallën e të mësuarit
Ky rezultat rrjedh nga fakti se në ekuilibër termik probabiliteti i çdo shteti global kur rrjeti funksionon lirshëm jepet nga shpërndarja Boltzmann.
Ky rregull i të mësuarit është gjithashtu biologjikisht i arsyeshëm, sepse i vetmi informacion i nevojshëm për të ndryshuar peshat ofrohet nga informacioni "lokal". Kjo do të thotë, lidhja (në biologji, sinapsi) nuk ka nevojë asnjë informacion përveçse dy neuroneve që lidh. Kjo është biologjikisht më e pranueshme krahasuar me algoritme të tjerë të trajnimit të rrjeteve nervore në pjesën e informacionit të nevojshëm nga një lidhje, si p.sh. përhapja e pasme .
Stërvitja e një makinerie Boltzmann nuk përdor algoritmin EM, i cili përdoret shumë në mësimin makinerik. Minimizimi i divergjencës KL e bën atë ekuivalent me maksimizimin e gjasës logaritmike (log-likelihood) të të dhënave. Prandaj, procedura e stërvitjes kryen ngjitjen e gradientit në gjasën logaritmike të të dhënave të vëzhguara. Kjo është në kontrast me algoritmin EM, ku shpërndarja e prapme e kulmeve të fshehura duhet të llogaritet përpara maksimizimit të vlerës së pritur të gjasave të të dhënave të plota gjatë hapit M.
Trajnimi i njëanshmërive është i ngjashëm, por përdoret vetëm aktiviteti i një nyjeje:
Problemet
[Redakto | Redakto nëpërmjet kodit]Teorikisht makina Boltzmann është një mjet llogaritës mjaft i përgjithshëm. Për shembull, nëse stërvitet për fotografi, makina teorikisht do të modelonte shpërndarjen e fotografive dhe mund ta përdorte atë model, për shembull, për të përfunduar një fotografi të pjesshme.
Fatkeqësisht, makinat Boltzmann përjetojnë një problem serioz praktik, duke qenë se ndalojnë së mësuari saktë kur makina shkallëzohet në madhësi.
Shiko gjithashtu
[Redakto | Redakto nëpërmjet kodit]- Makina Boltzmann e kufizuar
- Makina Helmholtz
- Fusha e rastësishme Markov (MRF)
- Modeli Ising (modeli Lenz–Ising)
- Rrjeti Hopfield
Referenca
[Redakto | Redakto nëpërmjet kodit]- ^ Sherrington, David; Kirkpatrick, Scott (1975), "Solvable Model of a Spin-Glass", Physical Review Letters (në anglisht), vëll. 35 no. 35, fq. 1792–1796, Bibcode:1975PhRvL..35.1792S, doi:10.1103/PhysRevLett.35.1792
- ^ Ackley, David H.; Hinton, Geoffrey E.; Sejnowski, Terrence J. (1985). "A Learning Algorithm for Boltzmann Machines" (PDF). Cognitive Science (në anglisht). 9 (1): 147–169. doi:10.1207/s15516709cog0901_7. Arkivuar nga origjinali (PDF) më 18 korrik 2011.
{{cite journal}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ Osborn, Thomas R. (1 janar 1990). "Fast Teaching of Boltzmann Machines with Local Inhibition". International Neural Network Conference (në anglisht). Springer Netherlands. fq. 785. doi:10.1007/978-94-009-0643-3_76. ISBN 978-0-7923-0831-7.
{{cite book}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ Ackley, David H.; Hinton, Geoffrey E.; Sejnowski, Terrence J. (1985). "A Learning Algorithm for Boltzmann Machines" (PDF). Cognitive Science (në anglisht). 9 (1): 147–169. doi:10.1207/s15516709cog0901_7. Arkivuar nga origjinali (PDF) më 18 korrik 2011.
{{cite journal}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja)Ackley, David H.; Hinton, Geoffrey E.; Sejnowski, Terrence J. (1985). "A Learning Algorithm for Boltzmann Machines" (PDF). Cognitive Science (në anglisht). 9 (1): 147–169. doi:10.1207/s15516709cog0901_7. Arkivuar nga origjinali (PDF) më 18 korrik 2011.{{cite journal}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja) - ^ Nijkamp, E.; Hill, M. E; Han, T. (2020), "On the Anatomy of MCMC-Based Maximum Likelihood Learning of Energy-Based Models", Proceedings of the AAAI Conference on Artificial Intelligence (në anglisht), vëll. 4 no. 34, fq. 5272–5280, arXiv:1903.12370, doi:10.1609/aaai.v34i04.5973
- ^ Ackley, David H.; Hinton, Geoffrey E.; Sejnowski, Terrence J. (1985). "A Learning Algorithm for Boltzmann Machines" (PDF). Cognitive Science (në anglisht). 9 (1): 147–169. doi:10.1207/s15516709cog0901_7. Arkivuar nga origjinali (PDF) më 18 korrik 2011.
{{cite journal}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja)Ackley, David H.; Hinton, Geoffrey E.; Sejnowski, Terrence J. (1985). "A Learning Algorithm for Boltzmann Machines" (PDF). Cognitive Science (në anglisht). 9 (1): 147–169. doi:10.1207/s15516709cog0901_7. Arkivuar nga origjinali (PDF) më 18 korrik 2011.{{cite journal}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja)
Lexim të mëtejshëm
[Redakto | Redakto nëpërmjet kodit]- Hinton, G. E.; Sejnowski, T. J. (1986). "Learning and Relearning in Boltzmann Machines" (PDF). Parallel Distributed Processing: Explorations in the Microstructure of Cognition. Volume 1: Foundations (në anglisht): 282–317. Arkivuar nga origjinali (PDF) më 2010-07-05.
- Hinton, G. E. (2002). "Training Products of Experts by Minimizing Contrastive Divergence" (PDF). Neural Computation (në anglisht). 14 (8): 1771–1800. CiteSeerX 10.1.1.35.8613. doi:10.1162/089976602760128018. PMID 12180402.
- Hinton, G. E.; Osindero, S.; Teh, Y. (2006). "A fast learning algorithm for deep belief nets" (PDF). Neural Computation (në anglisht). 18 (7): 1527–1554. CiteSeerX 10.1.1.76.1541. doi:10.1162/neco.2006.18.7.1527. PMID 16764513.
- Kothari P (2020): https://www.forbes.com/sites/tomtaulli/2020/02/02/coronavirus-can-ai-artificial-intelligence-make-a-difference/?sh=1eca51e55817
- Montufar, Guido (2018). "Restricted Boltzmann Machines: Introduction and Review" (PDF). MPI MiS (Preprint) (në anglisht). Marrë më 1 gusht 2023.
{{cite web}}
: Mirëmbajtja CS1: Datë e përkthyer automatikisht (lidhja)