O.S.E.L. - Pravděpodobnostní programování pro počítačové vidění
 Pravděpodobnostní programování pro počítačové vidění
Vývojáři z MIT pracují na jazyku pravděpodobnostního programování pro aplikace počítačového vidění.



Zvětšit obrázek
Horní řádek ukazuje 2D obrázky lidských tváří, dolní řádek jejich 3D modely ve starším software a prostřední řádek ukazuje modely vytvořené s Picture. Kredit: Kulkarni et al., MIT.
Horní řádek ukazuje 2D obrázky lidských tváří, dolní řádek jejich 3D modely ve starším software a prostřední řádek ukazuje modely vytvořené s Picture. Kredit: Kulkarni et al., MIT.
Poslední dobou jsme svědky intenzivního rozvoje umělých inteligencí. Skynet to sice ještě není, ale stále víc nás obklopují podivuhodně inteligentní aplikace, které nám chtějí usnadnit život. Většinu pokroku umělých inteligencí má na svědomí strojové učení (machine learning), tedy algoritmy, díky kterým se počítače dovedou samy učit z dostupných dat.

Tejas Kulkarni. Kredit: T. Kulkarni.
Tejas Kulkarni. Kredit: T. Kulkarni.

Vývojáři umělých inteligencí se snaží usnadnit tvorbu aplikací strojového učení a tak vyvíjejí takzvané pravděpodobnostní programování (probabilistic programming), které je šité na míru ovládaní algoritmů strojového učení.

Pravděpodobnostní programování zaujalo i americké vojenské vizionáře DARPA (Defense Advanced Research Projects Agency), kteří spustili čtyřletý program financování jeho výzkumu Probabilistic Programming for Advancing Machine Learning (PPAML).



Tejas Kulkarni z MIT a jeho kolegové hodlají na červnové konferenci Computer Vision and Pattern Recognition předvést sílu pravděpodobnostního programování při řešení úloh pro počítačové vidění (computer vision), v programech či aplikacích získávajících data ze zachyceného obrazu. Tvrdí, že takové programy, které mají v konvenčním počítačovém jazyku rozsah tisíců řádků, lze sepsat v jazyku pravděpodobnostního programování na pár desítek řádků. V MIT si pro své experimenty vyvinuli jazyk pravděpodobnostního programování Picture, který navazuje na dříve vyvinutý jazyk MIT pro pravděpodobnostní programování jménem Julie. Podle jejich slov je to poprvé, kdy se někdo pustil do počítačového vidění s pravděpodobnostním programováním.

Zvětšit obrázek
Logo programu Probabilistic Programming for Advancing Machine Learning (PPAML). Kredit: DARPA.
Logo programu Probabilistic Programming for Advancing Machine Learning (PPAML). Kredit: DARPA.

Vědci studovali použití pravděpodobnostního programování v počítačovém vidění třeba na řešení problému konstrukce trojrozměrného modelu lidské tváře ze dvojrozměrného obrázku. Odvozování tvaru je totiž pravděpodobnostní úloha. Jde o to, vybrat z mnoha navzájem si konkurujících možností tu, která je nejvíc pravděpodobná. A právě tohle usnadňují jazyky pravděpodobnostního programování.



Program Kulkarniho a spol. v jazyku Picture popisuje klíčové parametry tváře, jako například pozice dvou symetricky rozmístěných objektů (očí) a dvou dalších objektů umístěných veprostřed pod nimi (nosu a úst). Překlad charakteristik obličeje do jazyka pravděpodobnostního programování prý nedá mnoho práce a pak už jenom stačí krmit software 2D obrázky tváří společně s odpovídajícími 3D modely, na nichž se program sám naučí vše potřebné.



V jazyku pravděpodobnostního programování má tu nejtěžší práci na starost takzvaný odvozovací algoritmus (inference algorithm). Právě ten zařizuje strojové učení programu z dat, která má k dispozici. Kulkarni a jeho kolegové mohli využít dosavadní pokrok ve výzkumu strojového učení a vybavili jazyk Picture několika různými odvozovacími algoritmy, které se osvědčily v úlohách počítačového vidění. Picture si může při řešení určitého problému vyzkoušet všechny a zjistit, který algoritmus je pro danou situaci ten nejlepší.



Zároveň je jazyk Picture navržen tak, že si může prostřednictvím strojového učení vylepšit samotné odvozovací algoritmy. Vylepšování odvozovacích algoritmů bývá hodně specifické a vázané na konkrétní problém, pravděpodobnostní programování ho ale umožňuje zobecnit. Podle oslovených odborníků z oboru nabízí Picture možnost řešit takřka všechny problémy počítačového vidění a také se blíží k odpovědi na zásadní otázku počítačového vidění – jak v počítači co nejlépe zachytit vizuální scénu.




Video:  AGI 2011 - Probabilistic Programs: A New Language for AI.





Literatura
MIT News 13. 4. 2015, Wikipedia (Machine learning, Computer vision, Probabilistic programming language).


Autor: Stanislav Mihulka
Datum:19.04.2015 22:43