パーソナライゼーションとプライバシー

ここ半年ぐらい、こういうことを思いついたときはScrapboxやDynalistにまとめて、思いついたときに随時書き足せるようにしておいた。それで、ある程度まとまってからブログ記事にしようと思っていた。しかし、結局それからブログ記事になったものは一つもなかったし、ある程度しっかり考えるにはそれに専念するような時間を持たないとどうにもならないことに気がついた。だから、やっぱり浅い考えでも書きたいな〜と思ったら、短い記事でも書くことにした。いま思えば、Scrapboxにしたのは、後から簡単に編集できる*1以外にも、公開度の問題や、話をうまくまとめる目的もあった気がする。まあそのへんのニュアンスは気が向いたら書くとして…。

更新しなさすぎてとうとう広告が出てきてしまったので、何でもいいから書いてそれを消したい、というのもある。最近書こうとしてもなんだか気張ってしまって書けなかった(某ブログに取り上げられた影響もあるかもしれないw)が、今回は日付が変わる前で眠いので、あんまりそういうことを考えずに打ち込めている。


パーソナライゼーションというのは、「〇〇さんにおすすめ」というアレとか、似たような広告がたくさん出てくるとか、そういうこと(サジェスト・レコメンドなどの用語があるが、眠いのであんまりちゃんと分別しないことにする)。ユーザとしては、別にあってもなくても困らないのだが、いろいろなサービスがこれを実装している。で、こういったパーソナライゼーションには、それを行うための素材となるデータが必要になるから、サービスは必然的にユーザの属性や行動を貪欲に探り当てていくことになる。そして探り当てたデータ(好み、年齢層、訪問する時間帯などの属性と行動)はサービスのデータベースに送られて、次のページで表示するレコメンドの材料になったり、蓄えられて未来のユーザとの比較対象になったりする。

ただ、この探り当てたデータが、ユーザを離れて事業者のサーバに移動されてしまうと何をされるか・何に使われるかわからない、プライバシーが守られない、というのでユーザが不安になったりGDPRが施行されたりした。パーソナライゼーションとプライバシーの2単語で検索すると、二者の「境界」とか「兼ね合い」という単語が目に付く。

しかし、購入履歴にせよ、年齢層にせよ、そのような懸念が生じるデータはもともとユーザが持っていたものであるはずだ。別の言い方をすれば、ユーザの持ち物をサービスが持っていってしまうから懸念が生じた。持っていたけれど、あまりに些細だったり当たり前だったり、集計するのがめんどくさかったりして放置されていたデータを、たまたまアルゴリズムが見つけ出して、サーバに持ち帰ったにすぎない。レコメンドエンジンがある商品を勧めてきたときに「これはいらないな」と思うのは、エンジンが(推論含め)獲得したデータと、ユーザ自身が判断に使う自己のデータに差があったからだ(ユーザ自身は自己のデータを全て持っているから、その判断は常に「正解」になる)。

そこで、ユーザが持っているデータを、サービスではなく自前で掘り当てさせれば、勝手に知らないサーバに投げられることもなく安心なパーソナライゼーションが実装できるのではないかと思った。「兼ね合い」ではなくて「両立」できないのかな?と。ここで自前で掘り当てるといっているのは、ユーザが自己啓発本を読んで自分の性格を分析するってことではなくて、ユーザの管理下にあるコンピュータ(だいたいの場合サービスを利用する端末)で、クライアントの立場でデータをアルゴリズムでかき集めてくる、という意味。

たとえばECサイトのレコメンドにおいて、必要なのは個々のユーザのデータ(嗜好、予算、訪問頻度…)と商品のデータ(商品の概要、在庫、価格…)、それからこれまでのユーザのデータが蓄積されたデータベースである。データベースを使うと、「このカテゴリを見にくる人は20代の男性が多い」など、やや抽象的な傾向が入っている。これらのうち、個々のユーザのデータはクライアントで取得できる。そもそも、サーバに送られていくユーザの行動は、クライアントとなるブラウザ・アプリとユーザの間で起こることの一部分でしかあり得ない。ユーザと直接対話するのはクライアントであって、サーバではない。

商品のデータはやや難しいが、スクレイピングAPIを使えば理想的にはなんとかなる気がする。もちろん、サービスが持つデータへのアクセスについては、レコメンドエンジンは一般ユーザやサードパーティー開発者と比べると特権的な位置にあるだろうから、現実的にはそう簡単にはいかない。最後にデータベースだが、これはレコメンドを使いたいユーザが集まってデータを出し合えばよさそう*2。ユーザがデータを出し渋るような気もするが、それまで一企業に嬉々としてデータを提供してきたのであれば、特に問題はないと思う。レコメンドの実装については詳しくないし、大手がどのようなエンジンを使っているのかも知らないが、小さなサービスであればOSSのエンジンを使用するものもありそう。その場合は同じOSSを使えばアルゴリズムの能力的には対抗できる。

だから、「パーソナライゼーションがほしい」というのはプライバシーを諦める理由にならないかもしれないと思った。

すげー眠くなった。もう寝るが、またなんか思いついたら追記する。

*1:簡単に、というのは「書く画面と読む画面が同じ」というレベルの話で、「編集ボタンを押したら編集画面に移動して、読むときとは違う記法(Markdown)だがすぐ書き直せる」ブログレベルの簡単さではない

*2:口コミの定量化と捉えられそう