はじめに
機械学習やJavaScriptの勉強がてらに、ブラウザ上で機械学習の手法等をデモできるサイトを作成しています。
このまま埋もれさせるのもどうかと思い、せっかくなので公開しました。
これは何?
- 様々な機械学習をブラウザ上で簡単に試すことができるサイトです
- クライアントサイドのJavaScriptのみで動作します
- 機械学習部分は(行列演算含め)外部ライブラリを一切使用していません
- コードはGithubに公開しています
- npmパッケージとしても公開しています。
どうやって使う?
- https://ai-on-browser.github.io/ にアクセスする
- 手動でデータを作成したり、設定可能なデータセットを選択したりする
- Task(処理)を選択する
- Model(モデル)を選択する
- Modelに応じてボタンなどを操作し、学習を行う
何ができる?
-
データ
- 手動で作成する二次元データ
- Iris
など
-
処理
- クラスタリング、分類、回帰、外れ値検出、次元削減、特徴量選択、密度推定、データ生成、補間
- 強化学習
- 平滑化、時系列予測、変化点検知
-
モデル
- 古典的機械学習手法
- ニューラルネットワーク(GANやDQNを含む)
など
最新の一覧はREADME.mdにあります。
その他
- 実装時に参考にさせていただいたサイトは、ソースコードに記載しています。
- Google Chromeの最新版を推奨します。(最新のSafariで動作することを確認しました)
- 行列演算もニューラルネットワーク関連処理も手作りですので、処理速度は遅いと考えてください。
- UIが貧弱です。
- バグがそこかしこに散らばっています。
- いくつか明確に動作していないと思われるモデルが存在します。(SDARなど)
- ソースコードにコメントがほぼ書いていないコードです。
- 趣味でやっていることなので、色々と許してください。
おわりに
車輪の再発明ではありますが、誰かの役に立てば幸いです。
またそのうちに、それぞれの手法を説明していこうと考えています。