機械学習 & ディープラーニング 環境構築 入門

機械学習 & ディープラーニング 環境構築 入門

機械学習およびディープラーニングの環境構築方法を説明する連載。

一色政彦 デジタルアドバンテージ 一色 政彦
  • レベル:  入門者 [ゼロから始めよう] 
  • 記事数: 全2回【連載中】 (推定学習時間: 1時間30分
  • 必須条件:
    • 知識ゼロから誰でもスタートできます。
    • GPU付きのPC、もしくはクラウド環境(Azure/AWS/GCP)が必要です。
    • 幅広いライブラリに対応できるUbuntu OSを採用しています。
    • なお、Windows/macOS編の提供は検討中です。
  • こんな方にお勧め:
    • ディープラーニングを始めるに当たり、どのOSを選択すべきか検討中の方
    • ディープラーニングを始めるに当たり、どのPython仮想環境を選択すべきか検討中の方
    • CUDA/cuDNN/nvidia-dockerとは何か?と聞かれたときに、答えられない方
    • 自前のPCを活用して、NVIDIA GPUを用いたディープラーニング環境を構築したい方
    • クラウドを活用して、GPUを用いたディープラーニング環境を構築したい方(今後、記事を提供予定)
  • 学習内容:
    • ディープラーニングをするためのOS環境の選択指針が分かる
    • ディープラーニングをするためのPython仮想環境の選択指針が分かる
    • NVIDIAのCUDAドライバーやcuDNNライブラリといったディープラーニング環境の基礎が理解できる
    • 幅広いライブラリに対応可能な、NVIDIA GPUを用いたディープラーニング環境が構築できる
    • 3大クラウドを用いて効率的に機械学習/ディープラーニング環境を構築する方法が理解できる(今後、記事を提供予定)

目次

第1章 UbuntuでのGPUディープラーニング環境の構築【Ubuntu 16.04 LTS対応】

ディープラーニングのOS環境の選択指針
PCとOS環境の準備

Ubuntuとデスクトップ環境
 - Ubuntu 最新LTSバージョン
 - デスクトップ環境
 - Ubuntuの日本語化
リモート接続用サーバー
 - SSHサーバー
 - リモートデスクトップ接続サーバー
 - リモートデスクトップ接続クライアント

NVIDIA GPU環境の準備

NVIDIAドライバーとCUDA Toolkitのバージョン要件の確認
NVIDIAドライバー(=CUDAドライバー)
NVIDIA GPUの状態確認
nvidia-docker(OS環境切り替え)[オプション]
 - nvidia-dockerを使う場合のシステム構成
 - Docker
 - nvidia-docker
 - Dockerコンテナー上でのGPU状態の確認
 - GPU付きDockerコンテナーの実行
CUDA Toolkit(開発環境)
cuDNN(ディープラーニング用ライブラリ)
CUDA Profiling Tools Interface(libcupti-devライブラリ)のインストール

ディープラーニング開発環境の準備

Python仮想環境の使い分け指針
Anaconda
PyCharm
Visual Studio Code

 

はじめに ― 本連載の読み方

 機械学習およびディープラーニングでGPUを用いた作業環境を構築する方法を説明する連載記事です。

 本格的な作業環境としては、自前のPC、もしくはクラウド環境を選択することになります。記事内容を試すときのような一時的な作業や、短時間で終わる作業、費用は気にせずに大量のGPUを使って高速に処理をさせたい場合には、クラウド環境の方が便利です。逆に、日常的に常用する作業や、追加の費用をかけずに処理を実施したい場合は、自前のPCの方がより良いでしょう。なお、これ以外の選択肢としては、あまりお勧めはしませんが、GPUは使わず、日常使いのWindow PCやMacなどで手軽にディープラーニングを実行することも可能です。

 第1章では、自前のPCを活用して、NVIDIA GPUを用いたディープラーニング環境を構築する方法を説明しています。具体的な手順は、参考説明となっており、本家の正式なインストール手順と突き合わせながら作業することができるので、安全かつ簡単に各種インストール作業を済ませることができます。また、本格的なディープラーニング作業環境を構築するための、OS環境の選択指針やPython仮想環境の選択指針が示されており、各自がどれを選択すべきかを考えるためのヒントが示されています。さらにディープラーニングでは、NVIDIA GPUを使うことが一般的で、各ライブラリがCUDAドライバーやcuDNNライブラリに対応(もしくは依存)していますが、そういったハードウェアに関する知識も知ることができます。特に「幅広いライブラリに対応可能な、NVIDIA GPUを用いたディープラーニング環境が構築したい」という方には、ぜひ一読をお勧めします。

 第2章今後、記事を提供予定)では、クラウドを活用して、GPUを用いたディープラーニング環境を構築する方法が説明されています。「Azure/AWS/GCPといった3大クラウドを用いて効率的に機械学習/ディープラーニング環境を構築したい」という方は、こちらをご参照ください。

 

著者紹介

一色 政彦(いっしき まさひこ)

一色 政彦(まさひこ いっしき)

機械学習、ディープラーニングの初心者として、当サイトキャラクターのマナブと同じ目線で学び、記事を発信していきます。


●受賞・資格

- Microsoft MVP for Visual Studio and Development Technologies (11年連続)

- 2017/12/26 JDLA Deep Learning for GENERAL 2017

- 2017/10/11 第二種電気工事士


経歴

1975年8月、福岡県北九州市生まれ。

1999年4月、九州大学文学部を卒業後、ソフトウェア パッケージ ベンダーに入社。開発部で技術研究や基礎開発の業務に携わる。

2003年2月、福岡から上京。

2003年4月、フリーランスのテクニカル ライターとなり、開発者、ITプロ向けの記事を執筆。

2003年11月、(株)デジタルアドバンテージに入社して、@IT/Insider.NETの編集者兼ライターとなる。

2013年4月、@ITの編集者を兼務しつつ、新サイト「Build Insider」の編集長に就任。

2018年4月、機械学習エンジニア向けの新サイト「Deep Insider」の編集長に就任。編集に記事執筆に活躍中。