レコメンドシステムについて

新年あけましておめでとうございます。

Arithmerは創業してから7年目になりますが、今年は卯(うさぎ)年ということもあり、個人としても会社としても飛躍できたらと考えています。

自己紹介

はじめまして、研究開発本部 徳島オフィスの原です。

私は偏微分方程式の数値計算に関する研究で修士号を取得した後、徳島のソフトウェア開発会社でBtoB や BtoCの商品開発をしてきました。

その後、数学の知識と興味を生かし、企業活動の課題解決に携わりたいという思いから、Arithmerに転職して3年経ちました。

はじめに

Arithmer入社後、銀行向け統合データベースシステムや衣料業界向けのファッションレコメンドシステム、教育機関向けの動画レコメンドシステムの開発に関わってきたことから、このブログではレコメンドシステムの概要について書いてみようと思います。

レコメンド、類似検索、特徴ベクトル

一昔前までは、欲しい商品や見たい動画、聴きたい音楽はGoogleなどの検索サービスで「自ら」探していましたが、AmazonやNetflix、Spotify などを利用していると、購入した商品や鑑賞した動画、視聴した音楽と関連がありそうなコンテンツを「推薦」してくれるようになりました。

たまに、自分では決して探さない(探せない)ようなコンテンツと出会い、セレンディピティを感じるときもあるのではないでしょうか。

「購入・鑑賞・視聴」という個人の嗜好である一種の個人情報を、ほぼ無意識にサービス側へ提供しているわけですが、その対価(恩恵?)として、レコメンドサービスを享受できています。

この背景には「レコメンドのAI技術」が利用されていますが、「レコメンドのAI技術」と聞いて、みなさんは何を思い浮かべるでしょうか。

やはり「協調フィルタリング」でしょうか。

※協調フィルタリング:多くのユーザーの嗜好情報を蓄積し、あるユーザーと嗜好の類似した他のユーザーの情報を用いて自動的に推論を行う方法論

Arithmerのファッションレコメンドシステムも、ユーザーの購買データ等を元に「協調フィルタリング」をベースにしたアルゴリズムでレコメンドエンジンを構築しています。

「協調フィルタリング」では、購買したユーザーや商品との類似性を「ピアソンの相関係数」や「コサイン類似度」等を利用します。

また、ファッションレコメンドシステムには、スマホで撮影した画像と類似したアパレル商品画像を検索できる機能も提供しています。

技術的には、大量のアパレル商品画像を分類するタスクを機械学習し、そのモデルで得られる「特徴ベクトル」を利用します。そして「ベクトルの類似度」を計算することで、スマホ撮影画像との類似商品が検索できています。最近のDBでは、ベクトルのまま格納して L2ノルムやコサイン類似度を計算してランキングしてくれるものもあります。

コナカと開発した「AI Coordinateレコメンドアプリ」 をサービス開始

ところで、自然言語処理(NLP)の世界に目を向けると、単語の分散表現(ベクトル表現)を取得するAI技術として word2vec(CBOW/skip-gram)やfasttextなどがあります。

TF-IDF を利用したベクトルと異なるのは、ベクトルの四則演算(和・差)が可能なところにあります。

例えば「王様-男性+女性=女王」の等式がベクトル計算で成り立ちます。(皆さんも一度は目にされたことがあるかもしれません)

統合データベースシステムでは「潜在ニーズの抽出」に、動画レコメンドシステムでは「感想が類似する動画の検索」に先の技術を応用して実現しています。

地方銀行様が保有しているビックデータを有効活用した、経営課題AI支援システムを導入

単語の分散表現については、単語や文章の「類似性」以外の別分野にも応用できそうで、現在、研究開発中です。

おわりに

今回は、レコメンドシステムとそこで利用されている技術概要について簡単にご紹介させていただきました。

本年もどうぞよろしくお願いいたします。