Leleplezte a gépi tanuláshoz használt titkos fegyverét a Google

A Google jó ideje érdeklődik a gépi tanulás iránt, hiszen a vállalat szolgáltatásai számára ez egy rendkívül fontos terület, így nem véletlen, hogy kísérletezik a leghatékonyabb feldolgozási formákat. A cég az elmúlt év végén már megnyitotta a TensorFlow néven ismert, gépi tanuláshoz használt függvénykönyvtárát, és az idei Google I/O rendezvénnyel párhuzamosan kiderült, hogy ehhez a vállalat egy ideje már egy speciális lapkát is használ titokban.

Hirdetés

A gépi tanulásról ismert, hogy a legfontosabb szempont a mátrixszorzás (GEMM), ugyanis jellemzően ez teszi ki a futtatási idő 89-95%-át. Mindemellett a pontosság nem különösebben lényeges, vagyis lehetőség szerint érdemes alacsony pontosság mellett elvégezni a számításokat. Emiatt a gépi tanulást egyre inkább gyorsítják többek között GPU-kkal, DSP-kkel, illetve FPGA-kkal. Ezek a központi processzorokhoz képest radikális előrelépést jelentenek a hatékonyság szempontjából, de így is jobb eredményekre van szükség.

A Google a speciális igények miatt kifejlesztett egy TPU-t, azaz Tensor Processing Unitot, amelynek belső felépítéséről a vállalat nem igazán beszél, de egy olyan egyedi lapkáról van szó, amely a TensorFlow függvénykönyvtár sűrűn használt elemeit gyorsítja, és eközben megfelelő feldolgozókkal rendelkezik a mátrixszorzás (GEMM) hatékony feldolgozásához. Mivel itt konkrétan ehhez a platformhoz tervezett célhardverről van szó, így nem csoda, hogy a keresőóriás radikális előrelépésről számol be a hatékonyság szempontjából. Ezt az előrelépést a Moore-törvényt követve hét év múlva lehetne hozni egy általánosan számításokra kihegyezett konfigurációval.

A Google szerint a TPU implementálása nem volt nehézkes. Az első lapkák legyártása után nagyjából három hétig tartott a beépítésük. Az aktuálisan használt dizájn a vállalat szerint az adatközpontokban használt merevlemezhelyekre építik be, így nem túl nagy a TPU-t rejtő nyomtatott áramkör kialakítása, illetve a lapkát hűtő borda.

A TPU önmagában kifejezetten kellemes fejlesztésnek tűnik, de a fenti előnyök mellett megvannak a maga hátrányai. Többek között a fixfunkciós feldolgozás következtében bizonyos hibajavítások nem oldhatók meg a futtatott kód cseréjével, ugyanis a bedrótozott működés miatt a hiba magában a hardverben van, így a javításhoz új lapkát kell tervezni. Ugyanez igaz a jövőben esedékes fejlesztésekre, mivel nem elég pusztán a TensorFlow függvénykönyvtárat kiegészíteni, hiszen azzal már az aktuális TPU szimplán nem működne. Egy ilyen váltáshoz tehát ismét egy új lapkára van szükség. A fentiek viszont azt bizonyíthatják, hogy a Google szerint megéri bevállalni ezeket a hátrányokat, mert a gépi tanulásra levetítve az alkalmazásspecifikus integrált áramkörök (ASIC) jelentős előnyt jelentenek az általánosabban programozható gyorsítókhoz viszonyítva.

Hirdetés

  • Kapcsolódó cégek:

Azóta történt