レコメンデーションについて話しているときに、よく話題にのぼるのが、「このレコメンドエンジンは賢いかどうか」ということです。
よく考えてみると大変含蓄の深いコメントです。「賢い」とは、「頭の働きがよく知恵がすぐれている。賢明だ。」という意味です。ということは、多くの人は、レコメンドエンジンをやはり「人工知能」として感覚的にとらえているのでしょうか。
もう少し分解すると、「レコメンド・エンジン」が賢いかどうかは、次の2つのポイントにわかれると思います。(商品の場合を例にとります。)
①表示されているおすすめ商品が、おすすめアイテムとして妥当かどうか。(一時的)
②最初に比べて、「よい」おすすめ商品が表示されていくようになっているかどうか。(時系列的)
①の判断は、正直いって、とてもトリッキー(tricky)です。もちろん、目視の段階では、とてつもなくおすすめが離れている場合(つまり、キーとなる表示されている商品と、常識で考えてもこれは相関がないだろうとわかるような商品が表示されている場合)については、わかります。実際に、相関が作られるほどのデータ量がない場合に、よく起こりえる現象ではあります。一方で、本当に普通の感覚では「これは?」と首をかしげるような商品が実は、おすすめ相関が高く、よく売れたりする場合も中にはありますから難しいところです。(ただし、滅多にはありませんが。)
やはり、目視(とくに企業サイドの目からの)は、そのレコメンドエンジンが本当に「賢く」ないかどうかを判断する目安ぐらいで考えるほうが無難だと思います。
「賢いか否か」といったときに、より②のポイントがクローズアップされると思いますが、これは人工知能についてのイメージにも大きく依っている気がします。人工知能(AI)=人間と同じように考えられること=だから、「学習」もしていってどんどん賢くなっていくだろう、という方程式です。
ただ、人工知能でいうところの「学習」は、所謂、人間の子供が新しいことをどんどん吸収していくという学習とはちょっと違います。人工知能における「学習」とは、「与えられた情報から将来使えそうな知識を見つけること」なので、レコメンドエンジンで考えるとすると、「AさんもBさんもCさんも、商品Dと商品Eを買っているから、これは、おすすめの基本データとして使えるぞ」(いわゆる古典的な協調フィルタリングの考え方ですね)ということがわかるというのが、「学習」となるわけです。そしてウェブサイトでいうと、いろいろなウェブ上での行動がどんどんユーザーからインプットされてくるわけですが、それらの情報をどのようにハンドリングできるかというのがレコメンドエンジンが「賢く」なるかどうかの一つの条件になるといえるのではないでしょうか。
もう一つ、レコメンド・エンジンにおける「賢さ」というのは、「推論」という要素があります。
これも人工知能における重要な要素の一つです。(ここに興味のある方は、こちらのホームページにわかりやすい説明があります。)20年以上前ですが(私もたいがい古いです)、WarGamesというマシュー・ブロデリック主演の映画がありました。この映画では、主人公が、米国の軍のシステムとは知らずにハッキングをして、ジョシュアとよばれる人工知能コンピュータプログラムにアクセスしてします。そしてジョシュアと仮想戦争ゲームを始めるのですが、ジョシュアは、仮想と思ってなく、世界核戦争があわや勃発!という映画でした。最後に主人公がジョシュアとtic-tac-toe(三目並べ)をして、ジョシュアを止めるのですが、まさにこの映画でジョシュアがやっていたのが、学習して、次にそのデータを元に何が起こるかを推論してアクションをするということでした。話が長くなりましたが、レコメンドエンジンこの推論の部分がどれだけ賢いかということが、レコメンド結果の「精度」になって現れるということになります。
これがレコメンドエンジンが推論エンジンとかとも言われる所以でもあります。
まったく人間の脳とは一緒ではありませんが、うまく使わなければどんどん「おばかさん」になるというのは、人間の脳と同じような気がします。。。