TensorFlow je software s otevřeným zdrojovým kódem pro provádění úloh strojového učení. Google, jeho tvůrce, chtěl odhalit výkonný nástroj, který by vývojářům pomohl prozkoumat a vytvořit aplikace založené na strojovém učení, a tak jej vydali jako projekt s otevřeným zdrojovým kódem. TensorFlow je extrémně výkonný nástroj specializující se na typ neuronové sítě nazývaný hluboká neuronová síť.
Hluboké neuronové sítě se používají k provádění složitých úloh strojového učení, jako je rozpoznávání obrázků, rozpoznávání rukopisu, zpracování přirozeného jazyka, chatboti a další. Tyto neuronové sítě jsou trénovány, aby se naučily úkoly, které mají vykonávat. Vzhledem k tomu, že výpočty potřebné pro školení jsou extrémně obrovské, většinou je vyžadována podpora GPU a právě zde přichází na pomoc TensorFlow. Podporuje GPU, a proto lze instalací softwaru s podporou GPU výrazně zkrátit potřebnou dobu školení.
Tento návod vám pomůže nainstalovat TensorFlow pouze pro CPU a také s podporou GPU. Chcete-li tedy získat TensorFlow s podporou GPU, musíte mít GPU Nvidia s podporou CUDA. Instalace CUDA a CuDNN (výpočetní knihovny Nvidia) jsou trochu složitější a tato příručka poskytuje postupný přístup k jejich instalaci, než dojde k samotné instalaci TensorFlow.
Nvidia CUDA je knihovna s akcelerací GPU, která má vysoce vyladěné implementace pro standardní rutiny používané v neuronových sítích. CuDNN je knihovna ladění pro GPU, která se automaticky stará o ladění výkonu GPU. TensorFlow se na oba spoléhá při trénování a provozování hlubokých neuronových sítí, a proto musí být nainstalovány před instalací TensorFlow.
Je velmi důležité poznamenat, že ti, kteří si NEPŘEJÍ instalovat TensorFlow s podporou GPU, můžete přeskočit všechny následující kroky a přejít přímo na část „Krok 5:Instalace TensorFlow pouze s podporou CPU“ této příručky.
Úvod do TensorFlow naleznete zde.
1 Instalace CUDA
Nejprve si stáhněte CUDA pro Ubuntu 16.04 odtud. Tento soubor je poměrně velký (2 GB), takže jeho stažení může chvíli trvat.
Stažený soubor je balíček ".deb". Chcete-li jej nainstalovat, spusťte následující příkazy:
sudo dpkg -i cuda-repo-ubuntu1604-8-0-local_8.0.44-1_amd64.deb
následující příkazy nainstalují všechny vynechané závislosti a nakonec nainstalují sadu nástrojů cuda:
sudo apt install -f
sudo apt update
sudo apt install cuda
Pokud byla úspěšně nainstalována, zobrazí se zpráva, že je „úspěšně nainstalována“. Pokud je již nainstalován, získáte výstup podobný obrázku níže:
2 Instalace knihovny CuDNN
Stahování CuDNN bohužel vyžaduje trochu práce. Nvidia vám přímo neposkytuje soubory ke stažení (je to však zdarma). Chcete-li získat soubory CuDNN, postupujte podle pokynů.
- kliknutím sem přejdete na registrační stránku společnosti Nvidia a vytvoříte si účet. První stránka vás požádá o zadání vašich osobních údajů a druhá stránka vás požádá o zodpovězení několika otázek průzkumu. Je v pořádku, pokud neznáte odpovědi na všechny, můžete jen náhodně vybrat možnost.
- Předchozí krok by vedl k tomu, že vám Nvidia zašle aktivační odkaz na vaše e-mailové ID. Po aktivaci přejděte na odkaz ke stažení CuDNN zde.
- Jakmile se přihlásíte na tuto stránku, budete muset vyplnit další menší průzkum. Náhodně klikněte na zaškrtávací políčka a poté klikněte na tlačítko „pokračovat ke stažení“ ve spodní části průzkumu a na další stránce klikněte na souhlas s podmínkami použití.
- Nakonec v rozbalovací nabídce klikněte na „Stáhnout cuDNN v5.1 (20. ledna 2017) pro CUDA 8.0“ a v této rozbalovací nabídce si kliknutím na něj musíte stáhnout dva soubory:
- CuDNN v5.1 Runtime Library pro Ubuntu14.04 (Deb)
- Knihovna vývojářů cuDNN v5.1 pro Ubuntu14.04 (Deb)
POZNÁMKA:i když knihovna říká, že je pro Ubuntu 14.04, použijte pouze tento odkaz. funguje to i pro 16.04
Nyní, když máte konečně oba soubory CuDNN, je čas je nainstalovat!! Použijte následující příkazy ze složky, která obsahuje tyto stažené soubory:
sudo dpkg -i libcudnn5_5.1.5-1+cuda8.0_amd64.deb
sudo dpkg -i libcudnn5-dev_5.1.5-1+cuda8.0_amd64.deb
Následující obrázek ukazuje výstup spuštění těchto příkazů:
3 Přidejte umístění instalace do souboru Bashrc
umístění instalace by mělo být přidáno do souboru bashrc, takže od příštího okamžiku by systém měl vědět, kde najít nainstalovaný adresář pro CUDA. k otevření souboru bashrc použijte následující příkaz:
sudo gedit ~/.bashrc
jakmile se soubor otevře, přidejte na konec tohoto souboru následující dva řádky:
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64" export CUDA_HOME=/usr/local/cuda
4 Instalace TensorFlow s podporou GPU
v tomto kroku nainstalujeme TensorFlow s podporou GPU. Pokud používáte python 2.7, spusťte následující příkaz:
pip install TensorFlow-gpu
pokud máte python 3.x místo výše uvedeného příkazu, použijte následující:
pip3 install TensorFlow-gpu
Jakmile příkaz dokončí provádění, zobrazí se zpráva „úspěšně nainstalováno“. Nyní zbývá jen otestovat, zda se správně nainstaloval. Chcete-li to vyzkoušet, otevřete příkazový řádek a zadejte následující příkazy:
python
import TensorFlow as tf
Měli byste získat výstup podobný obrázku níže. Z obrázku můžete pozorovat, že knihovny CUDA byly úspěšně otevřeny. Nyní, pokud došlo k chybám, objeví se hlášení, že se nepodařilo otevřít CUDA a dokonce i moduly, které nebyly nalezeny. V takovém případě jste možná vynechali jeden z výše uvedených kroků a správným řešením bude pečlivé zopakování tohoto návodu.
5 Instalace TensorFlow pouze s podporou CPU
POZNÁMKA:Tento krok musí provést lidé, kteří nemají GPU nebo lidé, kteří nemají GPU Nvidia. Ostatní, prosím ignorujte tento krok!!
instalace TensorFlow pouze pro CPU je extrémně snadná. Použijte následující dva příkazy:
pip install TensorFlow
pokud máte python 3.x místo výše uvedeného příkazu, použijte následující:
pip3 install TensorFlow
Ano, je to tak jednoduché!
Tím končí instalační příručka, nyní můžete začít vytvářet své aplikace pro hluboké učení. Pokud právě začínáte, pak se zde můžete podívat na oficiální návod pro začátečníky. Pokud hledáte pokročilejší výukové programy, pak se zde můžete naučit, jak nastavit systém/nástroj pro rozpoznávání obrázků, který dokáže s vysokou přesností identifikovat tisíce objektů.