プロポーザル
これは応募されたプロポーザルです。聞きたいと思うプロポーザルを各ページの下部にあるSNSのボタンで拡散しましょう。拡散された投稿をプロポーザルへの投票としてカウントし、選考時に参考にさせていただきます。
talk
luigiによる機械学習データフロー(ja)
スピーカー
竹野 峻輔
対象レベル:
中級
カテゴリ:
Useful libraries
説明
機械学習においては、実験等の再現性の重要であるためデータフローを明確に記述することが重要です。
ここでデータフローとはデータの取得・整形から前処理、モデルの学習・ハイパパラメータ調整・評価、そしてデプロイまでの一連のフローをさします。
発表では機械学習における一般的なデータフローについて導入したのち、実際のluigiによる記述方法について説明します。またluigiの利点や簡潔に書くためのテクニックについても述べます.
目的
参加者が 機械学習のデータフロー(取得〜モデルの学習、評価〜デプロイ)まで
luigiを利用して記述できるようになること。
概要
Pythonではscikit-learnやChainer, Theano, Tensorflowといった強力な機械学習ライブラリが充実しており、アカデミックの分野だけでなく, ビジネスの様々な分野においても活用が進んでいます。
機械学習プロジェクトを進める上で最も重要なことは、再現性を保つことです。
機械学習プロジェクトにおいて再現性を担保するには、データの取得・整形方法から前処理、モデルの理論・学習方法・ハイパパラメータ調整・評価までの一連のデータフローを明確に示すことが必要です。
本発表では、このデータフローの構築の仕方について焦点をあて、
Pythonのワークフローマネージャーであるluigiを利用し、機械学習データフローの構築方法について説明していきます。
機械学習における一般的なデータフローについて導入したのち、実際のluigiによる記述方法について説明します。
伝統的なMakefileやシェルスクリプト、Apache Airflowなどと比較したときの 違いについて言及しつつ, luigiの紹介を行います。
簡単な実例として 自然言語処理を題材として luigiでデータフローを記述します
このとき、luigiの利点や簡潔に書くためのテクニックについても述べます。
またPythonにおいてはpandasやjupyter notebook といった、他の強力なライブラリと連携することで、より簡潔・強力に集計作業やレポーティングを行うことができます。
これらの連携方法についても発表で述べます。
luigiを利用し、機械学習開発を進めることで
前処理方式の比較、モデルやそのハイパーパラメータの比較、実際のデプロイ時のパフォーマンスチェックまで簡単に行えるようになります