Specialista strojového učení: řešení problémů coby profese

20. 4. 2020

4 min.

Specialista strojového učení: řešení problémů coby profese
autor
Gary Finn

Managing director at Branditmedia

Ahmed Ahres během dospívání snil o tom, že bude vyvíjet software pro virtuální hry. Dnes pracuje ve společnosti Revolut na vývoji technologie pro rozpoznávání obličejů, jejímž cílem je zabránit finančním podvodům. Spolu s Ahmedem jsme si prošli zákulisím jeho kariéry specialisty strojového učení ve start-upu Revolut se sídlem v Canary Wharf – finančním centru v Londýně.


Kdy a jak jste se začal zajímat o problematiku strojového učení?

Když jsem byl mladší, byl jsem velkým fanouškem počítačových her a chtěl jsem vyvíjet herní software především pro virtuální realitu (VR). Když mi bylo šestnáct let, přestěhoval jsem se z Tunisu do Eindhovenu v Nizozemsku a tam jsem získal bakalářský titul v počítačovém inženýrství. Fascinovaly mě možnosti propojení VR a systémů počítačového vidění a potenciál, které toto propojení má. A tak jsem se následně v magisterském studiu počítačového inženýrství v Lausanne ve Švýcarsku zaměřil právě na VR a počítačové vidění.

V Revolutu jste začal jako stážista na pozici datového specialisty v rámci projektu obrany proti finančním podvodům. Jak jste se k této stáži dostal?

Revolut v té době neměl žádný program pro stážisty. Díky známostem a aktivizaci svých kontaktů jsem dostal možnost v této společnosti absolvovat několik pohovorů s vidinou toho, že by mi mohla být nabídnuta stáž. A nakonec, po pěti kolech pohovorů, jsem tuto nabídku skutečně dostal.

Coby datový specialista jsem shromažďoval a připravoval data potřebná k vytváření modelů pro systémy umělé inteligence. Tyto modely se potom používají při detekování podvodníků, kteří se snaží vydávat za klienty.

image

Co jste jako datový specialista – stážista dělal?

Coby datový specialista jsem shromažďoval a připravoval data potřebná k vytváření modelů pro systémy umělé inteligence. Data jsem „překopával“ tak, aby se daly využít při tréninku umělé inteligence.Tyto modely se potom používají při detekování podvodníků, kteří se snaží vydávat za klienty.

Úkolem specialistů strojového učení je vyprojektovat (…) modely, které se používají při řešení problémů v reálném světě.

V Revolutu jste poté nastoupil na plný úvazek na pozici specialisty strojového učení. Co vlastně v rámci této pozice děláte?

Úkolem specialistů strojového učení je vyprojektovat, vytvořit a vyhodnotit modely, které se používají při řešení problémů v reálném světě. V dnešní době mají už firmy k dispozici obrovské množství dat, které mohou inženýři použít k vytváření modelů. Uvedu příklad. Pokud máte k dispozici data o prodeji určité počítačové hry v průběhu několika let, jste tak schopni predikovat, jaké prodeje této hry vás čekají v příštím roce. Specialista strojového učení by v tomto případě byl zodpovědný za návrh, vývoj a vyhodnocení daného prediktivního modelu.

V čem se vaše práce liší od práce datového specialisty nebo datového analytika?

Modely strojového učení potřebují určitá data k tomu, aby se mohly učit a následně být vyhodnoceny. Specialista strojového učení k danému úkolu přistupuje už s předpokladem, že jsou mu tato data k dispozici. A poskytnutí a příprava těchto dat jsou právě úkolem datového analytika nebo datového specialisty.

Učím například umělou inteligenci, aby dovedla poznat, jestli selfie jednoho z našich uživatelů odpovídá pasové fotografii toho samého uživatele.

image

Co jsou tedy každodenní povinnosti specialisty strojového učení v Revolutu?

Pracuji na vývoji algoritmů a na trénování našich modelů strojového učení tak, aby byly schopné rozpoznávat obličeje našich zákazníků a odepřít přístup těm lidem, kteří našimi klienty nejsou. Tento úkol v sobě obsahuje jak vývoj celé řady datových modelů, tak i „výcvik“ systémů umělé inteligence (AI). Učím například umělou inteligenci, aby dovedla poznat, jestli selfie jednoho z našich uživatelů odpovídá pasové fotografii toho samého uživatele. A především ji učím rozpoznat, kdy se naopak dané dvě fotografie neshodují, a kdy by se tedy mohlo potenciálně jednat o podvodníka, co se snaží získat neoprávněný přístup do klientského účtu.

Současně platí, že můj tým je malý. Proto musím zastávat i role, které mé pozici standardně nepřísluší. Když například potřebujeme udělat nějakou analýzu, tak i přestože nejsou analýzy můj obor, musím ji udělat, protože ji náš tým prostě potřebuje.

Váš tým „Computer Vision“, tedy tým zaměřující se na počítačové vidění, je v Revolutu poměrně nový. S jakými dalšími odděleními spolupracujete?

Pracujeme hodně s týmem „Know Your Customer (KYC)“, který se věnuje problematice verifikace identity klientů. Vzhledem k tomu, že vyvíjíme software pro rozpoznávání obličejů, tak také spolupracujeme s odděleními, jako je tým finanční kriminality nebo compliance.

Nejvíce fascinující částí práce specialisty strojového učení je podle mého názoru proces řešení problémů. Tento proces je hodně o přemýšlení a ne pouze o jednoduché aplikaci technického řešení.

Co vás na vaší práci nejvíc baví? A co vás baví naopak nejméně?

Nejvíce fascinující částí práce specialisty strojového učení je podle mého názoru proces řešení problémů. Když dostanu k řešení důležitý problém, musím si nejdříve položit řadu klíčových otázek, například: „Jak navrhnu tento model a proč?“, „Jak nejlépe mohu tento model validovat?“, „Jaká data potřebuji a kde je seženu?“ a podobně. Tento proces je hodně o přemýšlení a ne pouze o nalezení a jednoduché aplikaci technického řešení.

V Revolutu mi byla poskytnuta důvěra a byla mi svěřena velká zodpovědnost. To pro mě znamenalo velkou motivaci. Když jsem do firmy přišel, bylo mi teprve dvacet let. Ale hned, co jsem nastoupil, jsem dostal na starosti velký projekt. Během tří týdnů jsem už měl pohovory s kandidáty na pozice dalších členů týmu a dostal jsem možnost rovnou zasahovat i do zdrojového kódu našich systémů.

Strojové učení není jenom technologie. Je to určitý způsob myšlení při řešení problémů. Tento druh myšlení si osvojíte právě tím, že budete aktivně vytvářet vlastní projekty a že se budete účastnit online kurzů.

image

Jakou radu byste dal někomu, kdo se chce stát specialistou strojového učení?

Kromě studia počítačového inženýrství existuje i řada jiných cest, jak se stát specialistou strojového učení. Zájemcům bych radil, aby byli proaktivní a aby se účastnili online soutěží v oblasti strojového učení, jako jsou třeba soutěže Kaggle. Kaggle je online platforma, ve které firmy prezentují skutečné problémy z reálného světa a ve které mají účastníci za úkol vybudovat řešení využívající strojové učení. Řešitelé mají zároveň k dispozici potřebná data a navíc za svá řešení mohou dostat reálné ceny.

Můžete se také účastnit online kurzů. Mezi ty slavné patří například kurz „Machine Learning“ od Coursera, vytvořený Andrewem Ng. Následně můžete vytvořit svoje vlastní projekty strojového učení za použití dostupných open-source dat. A když budete tyto projekty zveřejňovat online (například na vlastní webové stránce), prokážete tak svoje schopnosti a proaktivitu. Strojové učení není jenom technologie. Je to určitý způsob myšlení při řešení problémů. Tento druh myšlení si osvojíte právě tím, že budete aktivně vytvářet vlastní projekty a že se budete účastnit online kurzů. Je samozřejmě potřeba také získat technické dovednosti, jako je například používání TensorFlow a Python.

Přeložil Matěj Moravec

Fotografie: Betty Zapata pro Welcome To The Jungle

Sledujte Welcome to the Jungle na Facebooku a to nejlepší z našich článků vám přistane do kanálu příspěvků!

Probíraná témata
Hledáte svou další pracovní příležitost?

Více než 200 000 kandidátů našlo práci s Welcome to the Jungle

Prozkoumat pracovní místa