前述したようにリクルートでは、Webのアクセスログ解析に強化学習を適用しています。リクルートの各サービスでは、ユーザーの利便性を上げるために、さまざまなコンテンツを準備していますが、ユーザー個々にとって最適な導線は異なります。
教師あり学習だと、その時点でユーザーがCVしそうか否かは分かりますが、次にどのようなアクションをすればCVする可能性が高いかは分かりません。強化学習であれば、将来のCVを考慮した次のアクションを示唆できます。この性質を利用して、以下のような施策に取り組んでいます。
実際の取り組みについては、第3回目で詳しく説明します。
機械学習のロジックを実装しやすいプログラミング言語は「Python」です。なぜなら数多くのライブラリとレファレンスがあるからです。強化学習も、もちろんPythonで実装可能で、便利なフレームワークが用意されています。下記が主なものです。
今回は、強化学習の概念、その他の学習方法との違い、強化学習が向いているタスクを中心に説明しました。
2回目では、強化学習の中でも特にイメージのつきやすい「Qラーニング」、さらにQラーニングにDeep Learningを加えた「Deep Qラーニング」について解説した上で、Pythonと便利なフレームワークChainerRLによる実装方法を、3目並べという簡単な例を使って解説していきます。
大学4年から修士2年まで統計学を専攻し、2016年リクルートホールディングスに新卒入社。リクルートテクノロジーズ配属後、データテクノロジーラボ部にてスタッフ業務効率化のためのプロダクト開発や原稿校閲のプロダクトの導入、推進業務を行いながら、機械学習技術の研究開発に従事。趣味は麻雀と人狼。
Copyright © ITmedia, Inc. All Rights Reserved.