Webブラウザとディープラーニング
近年、ディープラーニングの応用領域は広がっており、
- ロボット
- 医療
- エッジデバイス
など多様な分野で、ディープラーニングが活用されています。
Webブラウザ周りでのディープラーニング活用も進んでいます。
今日は、そんなWebブラウザ関連のディープラーニング技術について紹介します。
紹介するのは、
- TensorFlow.js
- ONNX.js
- Brain.js
- ConvNetJS
- WebDNN
の5つです。
いくつかの選択肢
TensorFlow.js
まずは、TensorFlow.jsです。
TensorFlow.jsは、Googleが開発した機械学習用のJavaScriptライブラリです。
TensorFlowは、同じくGoogleが開発した機械学習用のライブラリとして広く知られています。TensorFlow.jsは、それのJavaScript版といったところです。
TensorFlow.jsを使用することで、ディープラーニングを含む機械学習をJavaScriptを用いて行えます。作成した機械学習モデルは、ブラウザや Node.jsで使用することができます。Node.jsは、JavaScriptの実行環境です。
機械学習ライブラリとして広く知られているTensorFlowのJavaScript版ということで、TensorFlow.jsは、ドキュメントが充実しています。
まず、公式サイトからは、
チュートリアルが確認できます。
さらに、
- 画像分類
- 物体検出
- 姿勢推定
- 顔検出
- 音声コマンド認識
など色々な場面で使用できる機械学習モデルを参考にすることができます。
色々なデモも確認できます。
TensorFlowにはブログもあり、TensorFlow.js関連の記事を読むことができます。
Webブラウザでのディープラーニングを考えた時には、TensorFlow.jsは第一の候補になると思います。
ONNX.js
次に、ONNX.jsです。
ONNX (Open Neural Network Exchange)は、FacebookとMicrosoftが提唱した、機械学習モデルのためのフォーマットです。
ONNX以外のフォーマットとしては、
Neural Network Exchange Format (NNEF)
が知られています。
ONNXモデルに関しては、
- 画像分類
- 機械翻訳
- 言語モデル
- スピーチ、音声処理
などの様々なものが公開されています。
ONNX.jsは、JavaScriptのライブラリで、ONNXフォーマットに則った機械学習モデルをブラウザやNode.jsで実行させることができます。
ONNX.jsは、
- 画像分類
- 物体検出
などのデモが公開されています。
Brain.js
Brain.jsは、JavaScriptライブラリです。
Brain.jsを用いることで、JavaScriptで書いたニューラルネットのモデルをブラウザ、Node.jsで実行することができます。
公式サイトから、
などを確認することができます。
サンプルから、じゃんけんプログラムといった簡単なデモを確認できます。
ConvNetJS
ConvNetJSは、ディープラーニング用のJavaScriptライブラリです。
ConvNetJSを使うことで、ブラウザでのディープラーニングが可能になります。
公式サイトには、
が用意されています。
ConvNetJSの使い方だけでなく、
ディープラーニング入門用の資料リンクがあります。
公式サイトには、デモもあり、
などのデモを実際に確認することができます。
WebDNN
WebDNNは、Webブラウザでディープラーニングを実行するためのフレームワークです。
東京大学の研究者が開発したということです。
サイトからは、
などのデモを確認できます。
Neural Style Transferは、ディープラーニングを使った画風変換の手法です。
特定の写真を、
- 浮世絵風
- ゴッホの絵画風
などに変換することができます。
WebDNNには、チュートリアルが用意されています。
Webブラウザでも機械学習
以上のように、WebブラウザやNode.jsでディープラーニングを試す環境は整備されてきています。
- 画像分類
- 自然言語処理
- 強化学習
- 画像生成
などで
ブラウザ環境 × ディープラーニング
にチャレンジしてみてはいかがでしょうか。
今日紹介した、
- TensorFlow.js
- ONNX.js
- Brain.js
- ConvNetJS
- WebDNN
を活用することで、ブラウザでのディープラーニング、機械学習に取り組みやすくなると思います。
コメント