kavárna | |
---|---|
Typ | prostředí hlubokého učení |
Autor | Yangqing Jia |
Vývojář | Berkeley Vision and Learning Center |
Zapsáno v | C++ |
Operační systém | Linux , macOS , Windows [1] |
Nejnovější verze | 1.0 [2] (18. dubna 2017 ) |
Licence | BSD [3] |
webová stránka | caffe.berkeleyvision.org |
Caffe je rámec hlubokého učení , který vyvinul Yangqing Jia při přípravě své diplomové práce na univerzitě v Berkeley . Caffe je software s otevřeným zdrojovým kódem distribuovaný pod licencí BSD . [4] Napsáno v C++ a podporuje rozhraní Python . [5]
Název Caffe pochází ze zkratky „ Convolution Architecture For Feature Extraction “ (Convolution Architecture For Feature Extraction).
Yanqin Jia z UC Berkeley vytvořil Caffe na podporu hlubokého učení . Klíčovým tématem disertační práce bylo zajištění efektivního paralelního zpracování vícerozměrných maticových operací , pro které bylo rozhodnuto vytvořit framework založený na matematické knihovně MATLAB a multiprocesorové architektuře CUDA . Počáteční vývoj trval pouhé dva měsíce. [6] K projektu se připojilo mnoho vývojářů a nyní je hostován prostřednictvím webové služby GitHub . [7]
V dubnu 2017 Facebook oznámil vytvoření Caffe2 [8] , který obsahuje nové funkce, zejména rekurentní neuronové sítě .
V květnu 2018 se týmy Caffe2 a PyTorch spojily. [9] Kód Caffe2 byl od té doby přesunut do úložiště PyTorch a je jeho součástí.
Caffe podporuje mnoho typů strojového učení , primárně zaměřeného na řešení problémů klasifikace a segmentace obrázků . Caffe poskytuje konvoluční neuronové sítě , RCNN, dlouhodobou krátkodobou paměť a plně propojené neuronové sítě. [10] Zároveň je pro urychlení učení použit systém grafických procesorů (GPU) podporovaný architekturou CUDA a využívající knihovnu CuDNN od Nvidie . [jedenáct]
Caffe umožňuje používat hotové konfigurace průmyslových neuronových sítí, které byly testovány. Sada obsahuje mimo jiné AlexNet , který vyhrál soutěž ImageNet v roce 2012 [12] , a GoogLeNet , který vyhrál soutěž ImageNet 2014 [13]
Caffe manipuluje s bloby – vícerozměrnými poli dat, která se používají v paralelních výpočtech a jsou umístěna na CPU nebo GPU . Učení v konvoluční neuronové síti je implementováno jako paralelní víceprocesorové výpočty blobů z vrstvy na vrstvu (dopředu a dozadu). Řešitel koordinuje celý proces učení - vpřed od vstupu k výstupu, získání chybové funkce, zpět ( Backpropagation ) zpět z výstupní vrstvy pomocí gradientů chyb. Zároveň Caffe implementuje různé učební strategie pro Solver.
Jako vstup se používají data z paměti, z databáze nebo z externích paměťových médií. Jako skryté vrstvy se používají konvoluční vrstvy, tradiční konvoluční sítě, ReLU vrstvy, sdružování, plně propojené vrstvy i rozvinovací (dekonvoluční) vrstvy pro sítě RNN . K dispozici je také mnoho dalších typů vrstev, filtrů, transformací dat a chybových funkcí.
Caffe se používá v akademickém výzkumu, prototypech pro startupy i pro průmyslové aplikace, jako je rozpoznávání obrazu, řeči nebo multimédií. Yahoo! také integroval Caffe s prostředím Apache Spark a vytvořil distribuovaný rámec CaffeOnSpark. [čtrnáct]
Programy hlubokého učení | |
---|---|
svobodný software |
|
Nesvobodný software |
|
|