[データサイエンティストの思考法〜KDD Cup世界第2位の頭の中〜]

実像に迫るためにコンピューターを鍛え上げる【第4回】

2016年2月16日(火)西川 大亮(新日鉄住金ソリューションズ(NSSOL)技術本部システム研究開発センター データ分析・基盤研究部 データ分析グループリーダー(統括研究員)) 原田 慧(金融エンジニアリング・グループ コンサルティング本部 第1部 第1グループ 副主任コンサルタント)

筆者らのデータ分析チームは、「KDD Cup 2015」というデータ分析の国際大会で2位に入賞しました。これまで、「オンライン無料講座からの離脱者を予測する」という同大会の課題に対し、講座のアクセスログから受講者がどんな行動を取っているかを想像し、コンピューターが離脱を予測しやすいようデータを加工して特徴量を作るところまで、筆者らの取り組みと思考について説明してきました。今回は、その特徴量からコンピューターに離脱する人の法則性を学習させる過程で、筆者らが考えた中身を紹介します。

 第3回で紹介したように、データ分析では特徴量を抽出しなければなりません。人間が苦労して作った、その特徴量を入力として、例えば「XGBoost」といったソフトウェアが学習し、法則を発見します。この法則を、筆者らは単に「モデル」と呼びます。業界用語ですので、業界外の方と話すときは「予測モデル」とか「予測プログラム」などと補足したり言い換えたりしています。

 モデルは、未知の特徴量を入力として法則を適用し、今回の課題であれば、離脱する/しないといった予測結果を出力します。競技では、この予測精度を競っているのです。モデルの精度、すなわち性能は、プログラムの処理手順であるアルゴリズムによって異なりますし、入力される特徴量や処理の実行条件(ハイパーパラメーター)によっても大きく変わります。

図1:モデル構築の全体像図1:モデル構築の全体像
拡大画像表示

 ですので、コンピューターを鍛えて性能を高めるためには、考えなければならないことが沢山あります。どのアルゴリズムを選ぶのか、あるいは自作するのか、ハイパーパラメーターをどの値にするのか、複数のアルゴリズムをどう組み合わせるのかなどです(図1)。

 学習に使うプログラムは、XGBoostのように公開され定番になっているものが大半ですが、それでも「データを入れればOK」とはなりません。コンピューターを鍛え上げるには、上記のように、色々と悩みどころがあるのです。以下では、まずは何を鍛えるのかを説明し、その後に、どのように鍛え上げるのかについて、KDD Cup 2015で実施した内容を中心に紹介していきます。

この記事の続きをお読みいただくには、
会員登録(無料)が必要です
登録済みの方はこちら

IT Leaders 雑誌版、電子版をご購読の方、会員登録済みの方は下記ボタンよりログインして続きをお読みください

初めての方はこちら

IT Leaders 会員になると
会員限定公開の記事を読むことができます
IT Leadersのメルマガを購読できます

【次ページ】適切なアルゴリズムは事前に選択できない
  • 1
  • 2
  • 3
  • 4
  • 5
バックナンバー
データサイエンティストの思考法〜KDD Cup世界第2位の頭の中〜一覧へ
関連記事

Special

-PR-

実像に迫るためにコンピューターを鍛え上げる【第4回】筆者らのデータ分析チームは、「KDD Cup 2015」というデータ分析の国際大会で2位に入賞しました。これまで、「オンライン無料講座からの離脱者を予測する」という同大会の課題に対し、講座のアクセスログから受講者がどんな行動を取っているかを想像し、コンピューターが離脱を予測しやすいようデータを加工して特徴量を作るところまで、筆者らの取り組みと思考について説明してきました。今回は、その特徴量からコンピューターに離脱する人の法則性を学習させる過程で、筆者らが考えた中身を紹介します。

PAGE TOP