オレオレ機械学習ライブラリ構想(機械学習名古屋第17回勉強会)


自己紹介・近況

名前: 中西克典

所属: 有限会社 来栖川電算

twitter: @n_kats_

最近、Oculus Goを買って、OculusRoomとかでVR会議とか夢見るも、する相手がいない問題等で挫折



話すこと


  • 機械学習の開発

  • オレオレライブラリでしたいこと



最近何をしているか

面白いモデルを思いついた、試そう

→ あ、ここ一般化してライブラリ化しとこ

→ 新しいこと思いついた(元の奴、試してないやつ)

で、そのライブラリ化しているものは、

https://github.com/n-kats/mlbase

こんなことしている中で何を思っているかの話をします



機械学習で困るところ


  • 世の中に手法がたくさんあって試しきれない

  • パラメータをいじっているうちにもとに戻せなくなった

  • 色々作っているうちにカオスに

というか、機械学習のアルゴリズムに関係ないところに時間がかかる・・・



機械学習のアルゴリズムに関係ない部分多すぎ問題

機械学習のコードの部分小さすぎ.png

機械学習のコードは黒い部分・・・

"Hidden Technical Debt in Machine Learning Systems"より

実際にこれでサービス化したりする部分を含めると・・・



最近では

機械学習工学研究会とかで機械学習開発についての議論が行われている

https://www.youtube.com/watch?v=da7BmJ9QsDU

いい動画。みんなみよう(4時間)

アルゴリズム以外に気にスべきところ多すぎ(理想では)



機械学習とは一体・・・

AI人材がーーーって世間で言われているけど、


  • いかにもAI人材って人だけが機械学習のプレイヤーではない

  • 色んな切り口で機械学習に関われるからみんなやろう!



ここから作っているものの話


注意


  • 気まぐれで作っている

  • 完成からは程遠い

  • 以下ポエム



理想(夢)


  • アイデアをすぐに試せる・色んな機能をつけたい

  • 複数のデータセットとかモデルをもとに構成する複雑なモデルをつくりたい

  • 標準的なライブラリのインターフェースを大切にすべき


    • scikit-learn

    • OpenAI-gym





理想(頑張りたい)


  • 試したものがちゃんと記録される・再現できる

  • 煩わしいデータ管理をどうにかしたい

  • モデル管理をちゃんとしたい



興味のないこと


  • かっこいい可視化

  • 畳み込みをかっこよくかける何か

  • 色んな機械学習ライブラリを統一する何か

  • python2系 非unix環境



理想は結局・・・

煩雑なものを管理したい

とりあえずは、次がターゲット


  • データ

  • 研究

  • アイデア



データの管理、雑にすると


  • 評価用データが訓練用にまざちゃった

  • あのデータどこに置いたっけ?

  • このデータ何だっけ?



データの管理、管理するとすると


  • 一覧が見える

  • 簡単な情報も見たい



    • 簡単な説明

    • 公開元URL



  • データ内容をなんらかの「型」として表現

    入出力の形は決まりきったものが多い

    どんな意味なのかは大切

みたいな管理をすることになるのかなー



研究の管理、雑にすると


  • 上手く行ったパラメータが分からんくなった

  • なんでこれしたんだっけ?

  • 色々やったけど、どれが大切だっけ?



研究の管理、管理するとすると


  • 実験の設定の記録

  • 整理

  • 実験目的の記録

  • アイデア段階のものの記録

のような機能が必要かなー



現状


  • 設定管理系はできてきた


    • パラメータ

    • サブコマンド

    • ツール自体の設定



  • データの型より先の層の型を考えたけど頓挫

  • 記録書く系は適当にエディタを起動させるだけで良い気がしてきたところ



まとめ?


  • 機械学習には色んなプレイヤーが活躍できる

  • オレオレライブラリは、ぼちぼちやってきます

  • ささっと研究できるような状態に速くしたいな