機械学習を様々なアプリケーションに適用するためのアドバイス
Andrew Ngの講義で面白いスライドがあったので紹介.研究ではなく様々なアプリケーションへ機械学習を適用するときに実践すべきTipsが3つのトピックに関して語られています.以下は,スライド内で自分が覚えておくべきと思った部分を抽出し,メモ書きしたもの.実サービスやKDD Cup等のコンテストで機械学習を用いる度に,見返してみるのも良いかもしれません.
トピック1.Debugging Learning Algorithms
- 適当な分類器を学習させ,スパムフィルタリングでエラー率20%を達成したら次に何をすべきか?
- 訓練データを増やしたり,より良い分類器を適用したり,色々な改善策が考えられる…
- 診断法1 : バイアス-バリアンス分析
- 診断法2 : 目的関数が適当か
トピック2. Error Analysis
トピック3. Getting started on a learning problem
- 設計をじっくり考えてから実装するか,とりあえず実装してエラー診断・分析を繰り返し改良を重ねるか
- 前者は,スケーラブルで高精度,汎用性の高いシステムを作りたい時に有用
- いち早くサービスなどの形で世に送り出したいならば,後者の方が良い