ホーム  >   ブログ  >   情報推薦 / 機械学習   >   推薦システムとブロックチェーン

2021-07-03

推薦システムとブロックチェーン

このエントリーをはてなブックマークに追加

P2Pネットワーク上の“信用”を担保したトランザクションの記録とそれに対する計算処理の実行 — "What Blockchain Brings to Real-World Applications" でまとめたように、ブロックチェーン技術によって拡がるアプリケーションの可能性は未知数であり、その議論は暗号通貨に留まらない。

That is, if trust among unknown peers in a network matters and the situation requires validation, verification, recording of time-stamped immutable conditions, blockchain can be a deeply satisfying way to build an appropriate solution to the problem.

これまで個人的に見聞きした応用事例はサプライチェーンIoTに関するものが主であったが、たとえば推薦システムなんかはどうだろうか?次の3本の文献を参考にしつつ、推薦システム×ブロックチェーンの可能性を探ってみる。

  1. Frey, R., Wörner, D., & Ilic, A. (2016). Collaborative filtering on the blockchain: a secure recommender system for e-commerce.
  2. Lisi, A., De Salve, A., Mori, P., & Ricci, L. (2019). A smart contract based recommender system.
  3. Yeh, T. Y., & Kashef, R. (2020). Trust-Based Collaborative Filtering Recommendation Systems on the Blockchain.

「推薦する側」の責任

昨今の推薦システム研究は、いかに複雑な状況をモデリングしてその精度を高めるかに躍起になっている。ゆえに、その理論と実践は属性・行動・コンテクストにまつわる膨大なデータの収集・分析に強く依存している。

他方、ユーザに紐づくデータの取扱いやプライバシーへの配慮は重要な課題であり、機械学習・データ分析を応用したサービスの提供者には、安心・安全なシステムの構築が要求される。

システムの裏側を洗練させながらも、その信用性・透明性を最大限に高めること。個人的に、このバランス感覚が「情報推薦=機械学習」ではないという事実の下には特に重要だと考えている。ヒューリスティクスや“誤り”を許容する「すきま」のあるシステムだからこそ成し遂げられる、明るい未来があるはずだ。

「利潤追求のためのタッチポイント“最適化”」—そのような空虚な議論の果てにある現実が、データサイエンティストによって無邪気に分析される行動ログと、頼んでもいないのに表示される大量のレコメンドだ。そんな誰のためかも分からぬ技術応用が、かつて純粋にインターネットに魅せられ興奮した僕らが成し遂げたかったことなのだろうか。

推薦システム(の開発者)の怠慢を清算する時が来ていると、僕は思う。システムを技術的・倫理的な側面の両方から深く考え、“正しい”設計をする責任が開発者にはあるのではなかろうか。では、推薦システムにおける“正しさ”とは何か。そこにブロックチェーンはどのように貢献しうるのか。

推薦システムが抱える問題とブロックチェーンの特性、その親和性

「個人」をモデリングする推薦システムにおいては、あらゆるデータが大変センシティブであり、その取り扱いには十分注意する必要がある。

特に、協調フィルタリングをはじめとする基本の推薦アルゴリズムは、購入・評価・クリックといったユーザの行動ログを常に必要とする1。そして既存の中央集権的なシステムにおいては、そのような行動データはサービス提供者のデータベース上で個人情報やクレジットカード情報などと容易に紐付けることができる。当然、この事実が示唆する潜在的なリスクの影響は計り知れない。

そのような懸念に対して、オプトアウト手段の提供やデータの暗号化によってシステムの安全性を向上させる試みは多数なされてきた。しかし、暗号通信の文脈での匿名性やデータのオーナーシップについては真面目に検討されてこなかった。また、元データを特定できないようにするための「暗号化されたデータの分散処理」に依る手法は計算のオーバーヘッドが大きく非効率的だ、と文献[1]は指摘している。

では、行動ログをブロックチェーン上のトランザクションの形で保持すればどうだろうか。匿名化された分散型データベースとしてのブロックチェーン。一度保存されたトランザクションは書き換えが不可能であり、ネットワーク全体によってそれが正であることが“保証”される。

したがって、公なやり取りの下、ユーザは自身に紐づくデータについて高い透明性を獲得する。また、ユーザは自由意志でブロックチェーンに参加することができ、システムは各ユーザから発せられたリクエストに応じて、予め定義されたSmart Contractに基づく処理を匿名で実行する。

推薦システムにおけるSmart Contract

ブロックチェーンを応用したアプリケーション (Decentralized Application; Dapp) は、Smart Contractと呼ばれるトランザクションに対して実行される“ロジック”によってプログラマブルに実装される。そして、ブロックチェーンの参加者はSmart Contractの実行に際してその複雑性に応じた“コスト”(Ethereumで言うところのGas)を支払い、結果に基づいて対価が払われる。このコストとインセンティブの関係が、ブロックチェーンの生み出す信用の基盤でもある。

推薦システムに関して言えば、例えば文献[2]では次のような操作に対してそれぞれSmart Contractを定義できることが例示されている。

ポイントは、透明性・公平性にまつわる次の2点。

  1. ブロックチェーン内のトランザクションはパブリックなため、誰もが匿名化された全ユーザの過去の行動ログを参照可能。
  2. ブロックチェーン参加者が皆、各操作を自由意志で実行する権利を持っている。

自分の行動は自分でシステムに報告し、それに基づいてシステムがどのような推薦結果を提示すべきなのかも自ら定義する。結果として、「ブロックチェーンの上に推薦システムを実装する」ということは、特定企業に対して自身の行動ログ・個人情報を受け渡すことなく推薦結果が享受できるようになることを意味する。

計算コストと推薦結果のコントロールにまつわる課題

Dappとしての推薦システムを考えたとき、複雑な推薦アルゴリズムほど高い実行コストを要求するという点は強調しておきたい。ゆえに今回参照した文献[1,2,3]では、単純な協調フィルタリングやルールベースの推薦手法に議論が集中している。

さらに文献[3]では、協調フィルタリングのキモとなる類似度計算をSmart Contract以前のクライアントサイドのPythonコードで行っている。このように、ブロックチェーン×推薦システムの実用化に際しては、Off-chain処理の効果的な活用や従来型の中央集権的処理とのハイブリッド化が不可欠であると考えられる。

もう一つの課題としては、誰もが参加できるブロックチェーンであるがゆえに、悪意のある人間が偽のトランザクションを大量に登録することが可能であるという点。これにより、推薦結果を意図的に操作することが可能になってしまう。対策としてパーミッション(あるいはプライベート)型ブロックチェーンでの実装なども選択肢としつつ、ブロックチェーンへのアクセス権については慎重に考える必要がある。

いずれにせよ、このような障壁は「そもそも極限まで個人化された“高精度”な推薦システムって本当に必要なんだっけ?」と自身に問いかける機会を与えてくれる。それだけでも、推薦システムをブロックチェーンの文脈で語ることの意義は十二分にあるのではなかろうか。

“良い”推薦システムって、一体何なんだろうね。

1. 逆に、個々人の情報への依存度が低いコンテンツ型推薦アルゴリズムを利用する場合、種々の問題への対策も比較的容易である。この点は文献[1]でも言及されている。

  シェアする

このエントリーをはてなブックマークに追加

  サポートする

  コーヒーを贈る

  あわせて読みたい

2017-11-23
筋トレ、登山、昨今の推薦システムのトレンドなどについて話しました
2017-11-17
Podcast "Data Skeptic" の推薦システム回が良すぎて3回聞いた
2014-09-01
【実践 機械学習】レコメンデーションをシンプルに、賢く実現するための3か条

  もっと見る

  書いた人: たくち

たくちです。カナダ・バンクーバー在住のソフトウェアエンジニア。これまでB2B/B2Cの各領域で、データサイエンス・機械学習のプロダクト化および顧客への導入支援・コンサルティング、そして関連分野のエバンジェリズムに携わってきました。趣味は旅行、マラソン、登山、ブリュワリー巡り。長野県出身。ブログへのご意見・ご感想など、@takuti または [email protected] までいつでもお気軽にご連絡ください。

  オンラインで直接話す

※当サイトおよび関連するメディア上での発言はすべて私個人の見解であり、所属する(あるいは過去に所属した)組織のいかなる見解を代表するものでもありません。

  過去の人気記事

2021-08-12
いい加減、プロダクトマネージャーという職業に幻想を抱くのはやめよう。
2017-12-16
データサイエンスプロジェクトのディレクトリ構成どうするか問題
2017-06-10
Amazonの推薦システムの20年