Mašinsko učenje i problem zaokruživanja brojeva

Mašinsko učenje i problem zaokruživanja brojeva

Zamislite da morate da procenite ukupnu cenu artikala u vašoj korpi za namirnice da biste odlučili da li da vratite nešto nazad. Dakle, zaokružite na najbliži dinar za svaku potencijalnu kupovinu, koristeći tehniku „zaokruži na najbliže“ koja se obično uči u školi. To vas podstiče da zaokružite cenu svake stavke naviše ako je razlomljeni deo najmanje 50 para i zaokružite naniže ako je manji.

Ovaj pristup zaokruživanja dobro funkcioniše za brzu procenu ukupne vrednosti bez kalkulatora. I daje iste rezultate kada se određeni zadatak zaokruživanja ponavlja. Na primer, zaokruživanje 4,9 na najbliži ceo broj uvek će dati pet, a zaokruživanje 302 na najbližu stotinu uvek će dati 300.

Ali ova vrsta zaokruživanja može predstavljati probleme za proračune u mašinskom učenju, kvantnom računarstvu i drugim tehničkim aplikacijama, kaže Mantas Mikaitis, kompjuterski naučnik sa Univerziteta u Mančesteru u Engleskoj.

„Uvek zaokruživanje na najbliže može da uvede pristrasnost u proračunima“, kaže Mikaitis. „Recimo da vaši podaci nekako nisu ravnomerno raspoređeni ili vaše greške zaokruživanja nisu ravnomerno raspoređene. Tada biste mogli da nastavite da zaokružujete u određenom pravcu koji će se tada pojaviti u glavnom rezultatu kao greška ili pristrasnost“.

Alternativna tehnika koja se zove stohastičko zaokruživanje je pogodnija za aplikacije gde pristup od zaokruživanja do najbližeg nije dovoljan, kaže Mikaitis. Prvi put koje je 1949. predložio kompjuterski naučnik Džordž Elmer Forsajt, stohastičko zaokruživanje „trenutno doživljava obnovljeno interesovanja“, pišu Mikaitis i njegove kolege u martovskom Kraljevskom društvu Open Science.

Ova tehnika nije predviđena da se radi u napamet. Umesto toga, kompjuterski program zaokružuje na određeni broj sa verovatnoćama koje su zasnovane na udaljenosti stvarnog merenja od ciljnog broja. Na primer, 2.8 ima 80 procenata šanse da zaokruži na tri i 20 procenata šanse da zaokruži na dva. To je zato što je 80 procenata udaljen do tri i 20 procenata udaljen do dva, objašnjava Mikaitis. Alternativno, 2,5 je podjednako verovatno zaokruženo na dva ili tri.

Ali smer koji zaokružujete za bilo koji primer zaokruživanja je nasumičan: ne možete predvideti kada će 2,5 biti zaokruženo na tri, a kada na dva, i postoji šansa od 20 procenata da će se 2,8 ponekad zaokružiti naniže do dva.

Uveravajući se da zaokruživanje ne ide uvek u istom smeru za određeni broj, ovaj proces pomaže u zaštiti od onoga što je poznato kao stagnacija. Taj problem „znači da stvarni rezultat raste dok rezultat proračuna ne raste“, kaže Mikaitis. „Radi se o gubitku mnogih malih vrednosti koja doprinose velikom gubitku u konačnom rezultatu“.

Stagnacija je „problem u računarstvu uopšte“, kaže Mikaitis, metode mašinskog učenja su posebno osetljive na ovaj tip gre[aka, koje često uključuju akumulaciju brojnih vrednosti, pri čemu su neke od njih mnogo veće od drugih, odnosno razlikuje im se skala. Sa metodom zaokruživanja na najbliže, ovo dovodi do problema stagnacije. Kod stohastičkog zaokruživanja, šansa za zaokruživanje, na primer, u nizu uglavnom malih brojeva koji su prekinuti sa nekoliko velikih odstupanja pomaže u zaštiti od tih malih vrednosti koje uvek dominiraju zaokruživanjem i potiskuju ga naniže.

Većina računara još uvek nije opremljena da izvrši istinsko stohastičko zaokruživanje, primećuje Mikaitis. Mašinama nedostaju hardverski generatori slučajnih brojeva, koji su potrebni za određivanje verovatnoće odluke na koji način da se zaokruži. Međutim, Mikaitis i njegove kolege su osmislili metod za simulaciju stohastičkog zaokruživanja u ovim računarima kombinovanjem metode zaokruživanja na najbliže sa tri druga tipa zaokruživanja.

Potreba stohastičkog zaokruživanja za slučajnošću čini ga posebno pogodnim za aplikacije kvantnog računarstva. „Kod kvantnog računarstva, morate izmeriti rezultat mnogo puta, a zatim dobiti prosečan rezultat, jer je to bučan rezultat“, kaže Mikaitis. „Već imate tu slučajnost u rezultatima.“