利用事例

連載10回:株式会社 リクルートテクノロジーズ 様

先進技術から紡ぐ、リクルートの「未来のソリューション」

 就職、結婚から住宅購入などのライフイベントや、一人ひとりのライフスタイルに関する様々な情報サービスを展開するリクルート。それら数多くのサービスをITやネットマーケティングの領域で支えているのが、今回取材した株式会社リクルートテクノロジーズ様です。アドバンスドテクノロジーラボは、そのような同社の中にあって、既存の事業の枠組にとらわれず未来のサービスにいかせるソリューションを研究開発する少数先鋭の部隊です。担当の塩澤様に現在の研究領域やAIへの取組を伺いました。


Photo01_RecruitTech

株式会社 リクルートテクノロジーズ

アドバンスドテクノロジーラボ 塩澤 繁 様


― まず、塩澤さんがいらっしゃる「アドバンストテクノロジーラボ(ATL)」がどんなことをしている部門なのか伺えますか?

塩澤 繁(以下、塩澤):

 はい。リクルートテクノロジーズは、リクルートグループの中でITやSIを担当している企業です。例えば「じゃらん」や「SUUMO」などといったWebサービスのフロントから、バックエンドのシステムを開発するというようなことを担当しています。

 ATLはその中でも最先端の技術の研究開発に取り組む部隊です。企業の研究開発はふつう、ビジネスの現場から「こういう課題をITで解決して欲しい」といった形で取り組むことが多いと思いますが、我々は逆なんです。新しい技術、価値がありそうな技術を海外から見つけてきて、初期のプロトタイプ程度までを研究開発し、それがビジネスに装着できそうであればビジネス側のIT開発組織に引き継ぐ形になります。


― 具体的には、どのような体制で研究を進めているのですか?

塩澤:

 現在、社員は4名で、それぞれの社員が業務委託のパートナーさんと5、6名のチームを作って、個々の研究テーマに取り組んでいます。


人手不足の小売店にも、簡単に導入できるAI技術を


― なるほど。塩澤さんご自身は、今はどんな研究をしているのでしょうか?

塩澤:

 直近で私が担当していたのは、「ビジネス現場でのAI活用」という大きなテーマの中で、リテールテックという分野の研究に取り組んでいます。AIや画像処理は大きな資本を持つ企業がお金をかければできますが、中小の小売店さんはそこまではできません。でも日本全国で高齢化も進み、人手不足で店舗の経営は非常に苦労しています。そこで、低コストで誰でも使えるような技術を、我々が開発・公開できればと考えています。

 まず、顔認識です。来店されたお客様が男性か女性か、年齢はどれくらいなのかといった属性を、カメラとエッジコンピューティングで認識します。従来もレジではPOSシステムでお客様の属性を入力していましたが、それを人間を介さずに自動でやってしまおうということです。

 また商品棚の前にお客様が来た時にどの商品に興味を持って視線を向けたのかを、ヒートマップでグラフィカルに表示します。


Photo05_RecruitTech

図1.顔認識システムによる視線検知と冷蔵庫棚での視線のヒートマップ


― これは、人の目の動きを認識しているのですか?

塩澤:  そうです。視線を向けた回数が多い商品は興味があるのだなとわかります。たとえば同じ中身の商品でも赤いパッケージと青いパッケージのものを棚に並べたとき、お客様はどちらに興味を持ってくれるのかという、パッケージデザインのABテスト1にも使えます。

 また店舗内でのお客様の回遊性、お客様がどのように店内行動しているのか、ということを検知しています。人を検知したらその人にIDをつけて、ずっと軌跡を追っていきます。どのような属性の人がどういう動きをしたか把握できるので、大人が多く通る場所には季節性商品を置いたりといった活用が考えられます。


― 店舗の入り口のカメラがお客様を認識したら、店内の他のカメラと情報共有して、同じ人物が移動してきたことを認識するのですね。でも、お客様は棚を見ているので、カメラに顔が向かないこともありそうですが。

塩澤:

 顔だけでなく人全体の特徴をとらえているので、顔が映らなくても後ろ姿でも、店内で動いているものは人間として認識できるんですよ。


認識の柔軟性を高める学習がキーになる


塩澤:

 商品棚にカメラとエッジデバイスを取り付けることで、商品棚から商品がなくなったから在庫補充しなければならない、ということも検知できます。レジのPOSシステムで売れた商品の把握はしていますが、バックヤードの在庫管理システムと連携していない店舗も多く、いつどの商品を棚に出すかというタイミングは、いまだに人手で棚を確認して、無かったら補充するという状況です。

 そこで、我々が開発したシステムを使うと、この商品は缶コーヒーのAという商品ですよ、これはBですよとラベルを認識できるので、棚から商品がなくなったので倉庫から補充してください、と人が見に行かなくても通知される感じですね。しかもこの方法だと、場所ではなく商品の種類を認識しているので、商品の棚の位置を変えたことをいちいち入力しなくても、AIが自動認識してくれるんです。


― 商品の中には区別が難しいものもあるのではないですか?野菜とか、果物とか。

塩澤:

 そうですね。人間が目で見て区別できないようなものは、AIでも区別は難しいです。一方で、缶コーヒーも時期によってパッケージが若干変わることがあります。ある缶コーヒーは、学習した時にはたまたまアニメキャラクターのコラボパッケージでした(笑)。それで学習してしまって、今は通常のパッケージに戻っているのですが、それでもかなりの精度でちゃんと認識してくれるんです。我々はロバスト性の高い学習をAIにさせているので、柔軟性高く商品認識ができます。データセットを用意するときの加工の仕方などのテクニックがあります。


わずか数万円から導入できるエッジデバイスでも稼働


Photo02_RecruitTech


― ところで、店内にいくつものエッジデバイスを設置することを考えると、低価格のハードウェアで実現する必要がありますね。

塩澤:

 NVIDIAのJetson Nanoというコンピューターを使いました。1個1万円強程度と非常に安価ですが、Linuxが動きますからモニターとキーボードを接続すればPCとして使えます。

 また、NVIDIA製なのでCUDA2が載っています。性能はPC用のGeForceチップより劣りますが、同じ技術を使っているAI開発用ワークステーションやABCIで開発したモデルを共通して使うことができるので、そこが非常に強みですね。

 これに加えてカメラが数千円ほどですから、小さな小売店でもハードウェアだけなら数万円で設置できます。そこに我々がソフトウェアを無償で公開することで、誰でも使っていいですよという形にして、少し技術のある方であればセットアップできるものにしたいなあと思っているんです。


― 店内に数台置くとしても、数十万円程度でできそうですね。

塩澤:

 むしろ最近はカメラの方が問題です。少し前まではテレビ会議などに使用するUSBカメラが流通していましたが、今はほとんどのPCやスマホにカメラが内蔵されているので、USBカメラのニーズがなくなってしまったんです。我々が使っているのも5~6年前のもので、解像度も処理速度も進化が止まっています。エッジデバイスに使える高性能なUSBカメラが手に入らないんです。


仮想空間でロボットの歩行も自己学習


塩澤:

 もうひとつ、倉庫から店舗への物の搬送をサポートする機械を考えています。私が歩くとそのあとを2台の自走ビークルがついて来るんです。私が立ち止まって荷物を載せるときは停まって待っててくれるんですが、私が歩き出すとまたついてきてくれる。


― スーパーでショッピングカートがついてきてくれたら、とても楽ですね。日本のスーパーだとちょっと狭いですけど、アメリカのスーパーなら使えるかも。

塩澤:

 冒頭に言ったラボの意味って、そういうところにあるんだと思っています。今のリクルートのビジネスだけで考えると視野が狭くなるので、リクルートがやっていないことを含めてこの技術が使えないか、ということを研究するのがラボの意義だと思っているんです。リクルートグループのビッグデータ処理の基盤にもなっていたHadoop3も、同じような経緯でATLが研究を進めていました。

 そういう意味で、ラボにこもって盛んにプログラムを流して研究しているときもあれば、海外へ調査に行ったりしてコンピューターリソースをほとんど必要としない期間もあります。ただ、急に新しいプロジェクトが立ち上がり、プロトタイプを作ってみましょう、となったときに迅速にコンピューターリソースが必要になる。ABCIはクラウド型で使いたいときに使えるのでありがたいですね。


― 今度は6足のロボットですね。

塩澤:

 ええ。近藤科学さんという、ロボットメーカーがありまして、そのロボットを利用したロボットサッカー大会等も行われています。我々はこれをビークルとは別の荷物搬送用ロボットとしても使いたいなと思っているんです。6足ロボットの動き方を人間が教えるのではなくて、AI自ら考えた歩き方を3D空間の中で自己学習させたんですね。これがその映像です。


Photo06_RecruitTech

図2.3D空間上の歩行学習モデルと現実世界の歩行ロボット


― 最初はうまく歩けませんね。

塩澤:

 試行錯誤しながら、与えるパラメータ、報酬を変えながら学習を繰り返していくと徐々にスムーズな歩行になります。目的の方向に進めば進ほど、高い報酬を与えています。


― ばったんばったんと、前に進むようになりましたね。

塩澤:

 決してスマートな歩行とは言えませんが、これでも人間が設計した歩き方より10倍くらい速いんです。


― 6本脚なのに、後ろの2本はほとんど動かなくて、前の4本だけで歩いています。まるで人間の赤ちゃんが這い這いをしているようです。

塩澤:

 そうですね。ゆくゆくは階段を上るとか、移動中に身体を水平に保って荷物を運べるとか、そういうことに応用したいと思って研究を始めたばかりです。人間が設計したプログラミングだと、応用が利かない可能性があるんです。人間が教えたことしかできませんから、想定以上のアクシデントやイレギュラーには対応できない。


学習環境のセットアップも簡単なABCI


― ABCIはどのように利用していますか?

塩澤:

 今回、ABCIを利用した一例が、商品判別AIの商品画像の学習です。商品の種類が多くてデータ数も数万件ありましたから、自分たちの手元にあるワークステーションで学習をさせたところ、夏だったこともあってかなりの放熱が発生しました。また複数のパラメータを設定してみたり、AIのフレームワークを変えたりと、複数の学習を同時並行させようとすると、やはりローカルのマシンでは限界があります。ABCIを使うと、複数の学習でもノードをたくさん立てれば同時に、かつ高速に実行できるので、非常に有益な環境でした。


― 1回の学習はどのくらいの規模ですか?

塩澤:

 あまり大規模ではなくて、1つの学習に1ノードで数日間、同時に5つぐらいの学習を送っていました。それを何回かのサイクルで送っていくので全体ではもっと多くのノード数を利用しています。


― 自前で続けていたらコンピューターの数も熱も大変でしたね。

塩澤:

 それに、環境セットアップが非常に楽です。自分達でやろうとすると、マシンごとにPythonやCUDAなどのバージョンを合わせるなどの作業をしなければなりません。でもABCIでは同じ構成を複数、短い時間で環境構築可能です。

また、ABCIでは多くのストレージが利用できます。画像処理系のAIは結構なストレージ容量が必要になりますから、ABCIの環境は画像処理AIに非常にマッチしていると思いますね。


― 今後のABCIやAI開発環境に関して、期待することはありますか?

塩澤:

 AI開発に利用できるフリーのデータセットって、海外製のものが多いんです。海外のデータセットで学習がされている為、日本の用途で利用すると実はクオリティが低かったりします。顔認識のツールも、日本人を認識しようとすると若干精度が落ちてしまったりします。

 自然言語処理、AI OCRに関しても、日本人が作ったAIモデルの方が日本語の認識精度が優れる事が多いと感じています。なのでやはり、日本の中でも産総研のような公的機関でもデータセットやツールを整備して、みんなに公開していただけると非常にありがたいなと思います。


聞き手 大貫 剛(ライター)


株式会社 リクルート https://www.recruit.co.jp/


  1. マーケティングにおけるコンバージョン率(CVR)最適化手法の一つ。Webページや商品パッケージに対して複数のテストパターンを用意し、より高いCVRを得られるよう検証する。 

  2. Compute Unified Device Architecture:NVIDIAが開発・提供しているGPU向けの汎用並列計算プラットフォーム、およびプログラミングモデル 

  3. 大規模データを複数のサーバーで分散・並列処理するオープンソースのミドルウェアソフト