データ収集にはオープンソース化よりAPI提供が適している―リクルート「A3RT」無料公開の裏側
リクルートテクノロジーズは3月、人工知能、機械学習をベースにしたリコメンドや文章の分類/ラベル付け、チャットなどのAPIシリーズ「A3RT」として一挙6本を無料公開した。これらのAPIは、もともと同社がリクルートグループの内部使用を前提に開発にあたったものだが、IBMやGoogleなど海外企業発のAPIが利用の大半を占めるなか、日本発のAPIとして国内普及を目指すとともに、一般利用による知見のフィードバックをAPIの向上に活かそうと公開に踏み切った。開発の経緯と発表後の反応などを同社石川信行氏が語った。
テクノロジードリブンでグループのビジネスの質の向上を目指す
私たちリクルートテクノロジーズは、リクルートグループをITとネットマーケティング機能で支援する会社であり、テクノロジードリブンによってビジネス品質を向上させていくための活動を、各事業会社に対して水平的に行っています。純粋なR&Dというよりはプロダクト寄りですが、新しい技術やアルゴリズムが登場したら、それを実装して、何かできないかといつもトライしています。
グループ内のデータは、互いに活用できるように一か所に集中させ、Hadoop等の大規模分析基盤で解析するように進めているところです。そのデータからセレクトし、新しい技術との組み合わせで課題解決や効率向上に結び付けられないか開発を行い、手応えの得られたものを該当する課題を抱える事業部に提案するという形で動いています。各事業部にも技術担当者はいるのですが、内部競合しても結果がついてくれば問題はないと考えています。
3月に発表した人工知能と機械学習の無料API提供サービスである「A3RT」は、リクルートテクノロジーズとしては初のグループ外へ向けたアクションです。
「A3RT」開発のバックグラウンドを説明すると、そもそもリクルートグループがデータ解析に取り組み始めたのが4~5年前です。従来の数値系データに加えて、画像やテキストなどの非構造化データが増加してきたタイミングで、これらを活かす必要性を感じて開始した取り組みです。
「ホットペッパービューティー」のためのネイルアートの類似判定や「カーセンサー」のための自動車の車種判定などに画像データが使えそうだと考えて開発し、それらの技術を必要とする事業部に提案しました。ほかにテキスト分類なども開発しました。
そうした提案が事業部で採用され成果が上がり始めると、他のセクションからも「それなら、こんなことはできないか?」という問い合わせがくるようになります。リクルートでは多数のWebや紙のメディアを持っているため、メディアの内容によって使用するデータを入れ替えて個別にチューニングすることで、スピーディーに利用可能な場面が多いのです。それらに対応するために、共通化と汎用化を進め、各種用途に導入できるように改良を進めていきました。
これが「A3RT」で提供しているAPIの原型です。
競争力も考えて選ばれた6つの公開API
各事業部で共通したコアを容易に利用可能にするためのAPIとしての提供を、当初はグループ内向けに考えていました。「A3RT」は2016年の上期に内部向けのプロジェクトとしてスタートしましたが、下期には外向きの開発もスタートしています。
外に向けた提供を考えたのは、GoogleやMicrosoftなど、海外企業がオープン化したAPIが日本でもさかんに利用されているのを見て、日本製のAPIを利用してもらえないだろうかと考えたためです。また、APIを一般に利用してもらうことで、利用ユーザーのフィードバックを受け取り、知見を集約してAPIを改良し精度を高めることが可能なのではないかと思いました。(リクルートテクノロジーズが)もともと直接の売り上げを求められるセクションではなかったため、特に登録ユーザー数などの数値目標はなく開発しました。
外部向けの開発を決定したタイミングで社内向けに開発していたAPIは開発途中のものも含めると20くらいありました。その中から公開するもの6つをセレクトしたのですが、選考基準はグループ内部でも一般でも利用される機能であるということです。一方で機能自体はある程度スペシフィックな作りにしました。汎用性が高すぎるとすでに先行しているGoogleなどと競合してしまいます。例えば画像認識の分野では後から出したAPIは利用されにくいために、単なる画像認識機能としては「A3RT」には入れていません。また、出力を想定して使いやすい形で、ドメスティックなニーズを対象にし、精度の高いものをと考えて選考しました。
具体的にはレコメンド機能を提供する「Listing API」と画像のスコア予測を行う「Image Influence API」、文章の自動分類とラベル付けを行う「Text Classification API」、文書作成中に単語やセンテンスをサジェストする「Text Suggest API」、誤字脱字を検出する「Proofreading API」、そして日常会話のチャットボット「Talk API」の6つです。
今回の6本の共通点としては、Webメディアにおけるレコメンドや検索改善等の新規機能や、コンテンツ作成等の作業を軽減する業務改善プロセス最適化など、出口にWebが設定されていることが挙げられます。チャット用の「Talk API」は、最近増えている業務用のサポート対応の会話ではなく、日本語の日常会話に対応しているものを無料提供ということで、他社のAPIと差別化できているため、ラインナップに加えました。
API提供で見えてきたもの
APIの外部提供には開発スタイルに合わせてクラウドを利用していますが、計算リソース等のコストがかかります。しかし、実際に利用いただいて得られるフィードバックの価値というものは、そういった運用や改善コストよりも大きいという判断から、APIの無償提供を可能にしているのです。
公開後一か月で、APIコール数は数十万に達しています(編注:インタビューは4月中旬に実施)。「Talk API」利用が3分の1程度を占めていますが、これはチャットボットという性質から会話ごとにコールがかかるためです。すでにそれらのデータを「Talk API」にフィードバックし学習させているので、同APIは一月前より進歩しています。もっとも、この改良はまだ内部還流はしていません。今後の課題です。
利用者からの「A3RT」に関する問い合わせでは、プロダクトごとにキーを発行しているため、別のプロダクトで発行したキーが使えないと言ったFAQ的なものも多い一方で、企業からもすでに10社ほど問い合わせがきていて、協業の可能性やアドバンス的な使い方はできないかといった声が寄せられています。単なる機能提供だけではなく、共同研究や共同開発も検討しています。
オープンソースとAPIの適材適所
「A3RT」はあくまでもAPIの提供なので、オープンソースのようなユーザーコミュニティの形成などは考えていませんが、異業種などとの協業の可能性は模索していきたいと考えています。リクルートテクノロジーズでは、海外のスタートアップとの協業などにも積極的に取り組んでおり、文化的にはけっこうオープンです。
私自身はオープンソースが好きですが、データ収集という観点では利用者が限られるため適していないと思います。ロジックやアルゴリズムの開発、洗練を加速したいようなテーマが出てきたときにはオープンソース化も考えたいと思います。
「A3RT」開発の舞台裏と今後の展望
私は新卒でリクルートに入社して、今年で9年目になります。最初の年は新人研修の一環として営業などの経験もしましたが2年目でJavaでの開発、3年目にHadoopの担当になりました。Hadoopではデータを集めるだけでなく、その利用法、施策を考えなくてはいけないと考え、アプリ開発、分析、ビジネスコンサルなど上流の利用を意識するようになりました。その流れが、「A3RT」にも活きていると思います。
今回のAPI開発には、部署の人的リソースをフルに投入したわけではありません。各プロダクトのチームから工数を割いて、常に2人程度が関わる形で開発を進めました。こうしたイレギュラーな形でもスピーディーな開発が可能だったのは、やはり皆が面白いと感じたからだと思います。
技術者として技術を探求したい、成長したい、プレゼンスを示したい。そうした動機にマッチするテーマだったのです。私自身として時間を取られたのは、利用規約の決定など法務系の作業でした。言い出しっぺなのでやれと言われ、弁護士と相談して決めたのですが経験したことのない作業で大変でした。
ツールの選択もその時々の目的に合ったものを利用すればいいと考えていて、特に利用に抵抗のあるツールや言語はありません。「A3RT」もディープラーニングにこだわることなく様々な機械学習手法を柔軟に活用し、機能に合ったAPIを作っています。フレームワークとしてはCaffeやChainer、TensorFlow、Lasagneなど、さまざまなツールや環境を使い分けています。
「A3RT」はまだ公開して一か月なので、これからいろいろな使われ方をされ、データも集まってきて新しい展開が広がってくるだろうと考えています。それによって、グループ内での利用にも品質の向上という形で還元していきたいです。
現在は内部利用先行のAPIばかりですが、将来的には逆パターンで一般公開を先行させ、そのフィードバックで精度を上げてから内部向けに公開していくといったスタイルも考えています。
さらに大きな目標を挙げるなら、いま盛り上がっているAIブームを一過性に終わらせないために一般に使ってもらい浸透させていきたいということです。今後のAIのさらなる発展のために、「A3RT」も一役買っていきたいですし、そのためには「A3RT」自身が進化していくことが必要だと考えています。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- ホートンワークスが「Data Platform Conference Tokyo 2017」を開催、サイバーセキュリティへの対応を強化
- 「第2のシリコンバレー」でエンジニアリングの武者修行(前編)
- 「データは新しいビジネスの通貨」日本初上陸のHadoop Summitレポート
- 先進ユーザーがリードするHadoop/Spark応用事例~Sparkで5倍の性能アップ~
- 10/10開催 Apache Hadoop 3.0 / Metron最新動向「Data Platform Conference Tokyo 2017」
- 池澤あやか氏・リクルートテクノロジーズCTO米谷氏対談レポート-リクルートテクノロジーズがオープンイノベーションスペースを作った理由-
- MDISとMapR、ビッグデータ活用ソリューションで協業
- 「ウェアラブルに求めるもの」は男女で異なる?
- 新人ITエンジニアが入社前にやっておくべきことは?
- 米トレジャーデータ IoT事業を中心に「トレジャーデータサービス」の導入拡大を目指す