このページの本文へ

技術検証と妄想、熱意が詰まった「横田deGoプロジェクト」を振り返る

顧客体験にこだわった「Developers.IO CAFE」が生まれるまで

2019年02月21日 07時00分更新

文● 大谷イビサ/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

すべてのパーツが協調動作したのは披露の前日

 プロジェクトはどんどん本格化していく。なにしろ本社が秋葉原なだけに、パーツや部材の調達にまったく手間はかからない。社内の休憩スペースには三脚を付けたToFカメラが設置され、商品棚もどんどん積み上げられ、「(カメラだらけの休憩スペースは)社員からもちょっと怖いですと言われた」(横田氏)という状態になった。

カメラとセンサーだらけとなった休憩スペース

 こうして試行錯誤を繰り返し、プロジェクト開始から3週間後の2018年7月19日、すべてがつながった。完成時のビデオでは、お客に扮したメンバーが店舗にチェックインし、商品をピックアップしていく。しかも、実際の店舗と同じく、複数のメンバーが同時多発的に商品を購入する。つまり、複数のカメラで複数のメンバーを識別し、商品の購入をトラックしたわけだ。

 最後、参加した5人のメンバーがピックアップした商品と点数があっているかをスマホアプリから確認すると、すべてOK。メンバーからは「イエーッ!」という歓声と拍手がわき上がる。「この映像は10年後まで語り継がれるはず。でも、翌日100人の前で発表する段階で、実はこのとき初めて動きました。すべてのパーツは独立動作していましたが、最後にオーケストレーションしたんです」(横田氏)。

2018年7月19日、すべてをつなぎあわせて動作させた

 横田deGoのアーキテクチャでは、店舗でのアクションはすべてクラウド側のデータベースに記録されており、これらをLambdaなどでつなぐことで店舗システムとして協調動作する。POSシステムと異なり、横田deGoでは、商品の購入のみならず、ユーザーが商品を戻したり、別の商品を比較したり、どの棚で立ち止まっているかも、システムが把握している。購入の場合は、クラウドに記録されているデータを分析することで「誰がなにを買ったのか」を判定し、あとからスマホにプッシュ通知している。Amazon ConnectやAlexaなどにも迅速に対応でき、在庫の問い合わせや売れ具合などを音声で問い合わせることができる。「大事なのはトランザクションとしての一貫性より、体験としてのスムーズさ」と横田氏は語る。

 こうして期日となった小売り業界向けの勉強会でめでたく横田deGoはお披露目され、業界関係者からは高い評価を受けた。翌週には専門紙にも取り上げられ、誌面ではその「機動力の高さ」が評価されたという。とはいえ、これはエンジニア集団であるクラスメソッド社内のプロジェクトだから実現したこと。「エンジニアがどんなに機動力があっても、お客様が機動力がなければ実現できない。エンジニアは悶々してしまう。お客様が業務上の課題を抱えていているし、海外でもどんどん先進事例が出てくる。どんなにいい提案をしても、やり始めるまで1年かかってしまうんです」と横田氏は指摘する。

機械学習やエッジコンピューティングを推進したシーズン2

 とはいえ、横田deGoもこれが完成形ではない。「アジャイル開発、イテレーションを回していきましょう」ということで、シーズン2に続く。要件定義はおおむねシーズン1と同じだが、課題としては挙がったのは「いたずらへの耐性」「複数人が同じ棚にいるときの正確さ」「QRコード以外の認証で入店をもっとスムーズに」「サーバー側のロジックが複雑」など。「総合的に見てスムーズさに欠ける」というのが横田氏の評価だ。

 小売り勉強会が終了した後の2018年8月にシーズン2がスタートした。しかし、本業多忙のため、シーズン2ではメンバーのほとんどが入れ替え。2ヶ月後のDevelopers.IOのイベントに間に合わせるべく、ゼロリセットでのスタートとなった。

 新メンバーによる再び技術検証と作り込みの日々が続く。まずは独立動作しているセンサーの状態管理のため、AWS Step Functionsを導入し、サーバー側のロジックをシンプルに。また、Sage Makerで機械学習による商品検知も本格的に作り込んだ。

Amazon SageMakerを本格導入して、商品検知を進める

 面白かったのは、機械学習で1つの商品を学習させるのにいくらかかるのかというコスト試算だ。技術検証では、6つの商品を分類すべく、1商品あたり10個の元画像を増幅させ、6000枚自動生成した。これをAWSのp3.8xlargeインスタンスで30分間学習すると、コストはおよそ9ドルになったという。「たとえば、商品数が3万SKUあった場合、すべての商品を1つのカメラで認識するのは大変です。なので、お総菜のコーナーで学習できる認識モデル、お菓子のコーナーで学習できる認識モデルといった具合に、問題を極所化するのが重要なのかなと思いました」(横田氏)。さらにクラウド側の学習は負荷が重いため、エッジコンピューティングも取り入れた。開発キット「NVIDIA Jetson TX2」を複数台購入し、Sage Makerで作成された学習モデルをAWS Greenglassにデプロイしてみたという。

 商品棚の方も生産体制が整ってくる。たとえば、重量ではなく、赤外線を物体に反射させて距離を識別できる「測距センサー」をマイコンとつなげてみた。これでより正確な商品の検知が実現する。「クラウドの会社のブログに初めて回路図が載り、他のエンジニアからのツッコミが入りました(笑)。回路が得意なエンジニアがいたのに、びっくりしました」(横田氏)。100円ショップで結束バンドやラックを調達し、挙げ句の果てにははんだごてやオシロスコープまで登場してきた。木を切り、ネジ留めし、棚を組み立て、体験をテストした。

木を切り、ネジ留めし、棚を組み立てる

 こうした泥臭い試行錯誤の末、シーズン2の横田deGoは自社イベントでめでたく展示となった。サーバー側のロジックがシンプルになり、ソフトウェアの品質が上がったことで、クラウドでの推論が高速化され、プッシュ通知までの時間も短くなった。一方で、デモのために棚を運ぶたびに壊れたり、ネットワークの安定性にも課題が浮き彫りになった。そして、2018年10月直後からはいよいよリアル店舗での実験を目指したシーズン3に突入する。「社長、カフェやったら会社つぶれるんじゃないですか?と言われましたが、いや違う!やろうということで、お店を探し始めました」(横田氏)。

カテゴリートップへ