講演資料
講義資料スライドの表紙です。上のスライド画像をクリックすると、同じ画面のまま全編のPDF資料を快適に閲覧・印刷することができます。
セミナーの概要
本セミナー「20181022GMO」は、急速に多様化・断片化するディープラーニングのエコシステムを整理し、「どのフレームワークを選ぶべきか」「学習済みモデルをどう共有・再利用するか」「そして実際にどうプロダクションへ届けるか」という、現場のAI開発者が直面する根本的な問いに正面から向き合うセミナーです [p.1, p.2]。
2017年から2018年にかけて、TensorFlow・Keras・PyTorch・MXNet・CNTK・Chainerなど、多数のディープラーニングフレームワークが乱立する「フレームワーク戦国時代」が到来しました [p.21]。それぞれのフレームワークは静的グラフ・動的グラフといった設計哲学の違いを持ち、学習済みモデルの形式も互いに互換性がありませんでした [p.60]。この「断片化(Fragmentation)」こそが、研究から本番運用への移行を著しく遅らせる構造的な問題として認識されます [p.61]。
この問題への解答として、本セミナーは三つの軸で議論を展開します。第一は「共通中間表現(IR)」の登場です。MicrosoftとFacebookが共同提唱したONNX [p.55, p.57]、KhronosグループによるNNEF [p.65]、そしてApache TVMやNNVMコンパイラ [p.76, p.77] といったエコシステムが、フレームワークの壁を越えてモデルを移植・最適化する基盤として整備されつつあることを示します。第二は「Model Zoo」の活用です。各フレームワーク(MXNet・Caffe・Caffe2・Gluon)やTensorFlow Hubが提供する学習済みモデルの資産を再利用することで、ゼロから学習するコストを劇的に削減できることを具体的に解説します [p.44〜p.53]。第三は、AmazonのマネージドMLプラットフォームであるAmazon SageMakerによる「学習・デプロイ・推論」の一気通貫の実現です [p.81〜p.98]。
さらに、学習済みモデルをブラウザ上で直接動作させるTensorFlow.jsと、Progressive Web Apps(PWA)技術を組み合わせることで、サーバーレスかつオフライン対応の推論アプリケーションが構築できることを実装例とともに示します [p.69〜p.75, p.114]。MNISTから落書き認識(Doodle)、CIFAR10、ImageNet/MobileNetのWebCam認識まで、豊富なデータセットと実装例を縦断し、理論と実践を架橋するセミナーとなっています [p.12〜p.16, p.122]。
講義のロードマップ
ここでは、セミナーの講演資料がどのようなパートから構成されているかを示します。また、それぞれのパートのポイントを紹介します。
■ Part 1: ディープラーニングの全体像とデータセット
機械学習・ディープラーニングのワークフロー全体を俯瞰し、学習データセットの種類と特性を把握することが出発点となります。MNIST・Fashion MNIST・Doodle・CIFAR10・ImageNetという代表的なデータセットを比較することで、モデル選択やフレームワーク選択の前提となる「問題の難易度と規模感」を具体的に掴みます [p.5, p.8]。
■ Part 2: フレームワーク群の全体像と選択の問題
Google・Facebook・Amazon・Microsoftという主要プレイヤーがそれぞれ独自フレームワークを擁立している現状を整理します。フレームワーク間の「静的グラフvs動的グラフ」「柔軟性vs速度」といった本質的なトレードオフを理解した上で、CIFAR10を題材に複数フレームワーク(TensorFlow・Keras・MXNet・PyTorch・Gluon・CNTK2)で同一タスクを実装比較するアプローチを示します [p.17, p.21]。
■ Part 3: Model Zoo ― 学習済みモデルの資産活用
フレームワークごとにModel Zooが整備されており、AlexNet・ResNet・VGG・MobileNetなどの著名なアーキテクチャが即座に利用可能です。学習済みモデルを「流用」することで、新規タスクへの転移学習コストを劇的に削減できるという発想の転換がここで提示されます [p.35, p.36]。
■ Part 4: 中間表現(IR)とフレームワーク間の相互運用 ― ONNX・NNEF・TVM
フレームワークの断片化を解消するための「共通中間表現(IR)」という概念が本Partの核心です。ONNX・NNEF・NNVMという三つのアプローチがそれぞれの提唱主体とともに登場し、「研究から本番へのギャップを閉じる」という共通のビジョンを持つことが示されます [p.41, p.43, p.60, p.61, p.62]。
■ Part 5: Amazon SageMaker ― 学習・デプロイ・推論の一気通貫
Amazon SageMakerは「fit・deploy・predict」という三段階のAPIによって、モデルの学習からエンドポイントへのデプロイ、推論呼び出しまでを統一的に管理するマネージドプラットフォームです。Jupyter Notebook上でコードを書くだけで、スケーラブルなGPUインスタンスの確保から推論APIの公開までが完結します [p.83, p.85, p.86, p.87]。
■ Part 6: TensorFlow.js と Progressive Web Apps ― ブラウザ上での推論
TensorFlow.jsはブラウザ上でGPUアクセラレーションを活用した推論・学習を可能にするライブラリです。これをPWA(Progressive Web Apps)技術と組み合わせることで、オフライン対応・ホーム画面インストール可能なAI推論アプリが、サーバーコストゼロで実現できるという新しいデプロイパターンが提示されます [p.69, p.114]。
ページのナビゲート