はてなキーワード: アルテリオとは
互助会がホットエントリーに上がらないようにするには、互助会をスパム扱いとすればいいけれど、どこからが互助会でそうでないかは人間にも明確な判断基準が無いからそれは難しい。
いまのホットエントリー入りのアルゴリズムがクソなので、本来の目的である「良い記事をホットエントリーに上げる」ということに注力すればいい。
「良い記事を早くブックマークするのは良いユーザー」「良いユーザーは良い記事を早くブックマークする」という、循環的なアイディアがある。
ユーザースコアははてブのフォロワーとか、機械学習を利用すればブックマークした記事や時間から算出することができる。
そしてブックマークしたユーザースコアの合計を記事のスコアとしてつける。
後は、今のホットエントリ入のアルゴリズムと同じように、一定時間で一定数の記事スコアを獲得した記事をホットエントリ入りとする。
この仕組でもスパムは可能だが、アカウントが大量に必要になるので、別方面でのスパム対策(スパムアカウント対策)で済む。
またユーザースコアの高いユーザー複数が共謀してブックマークするすることでも互助会的なことは可能だが、あまりその可能性は無さそう。
炎上対策についてはブックマークごとにユーザースコアの価値を最初の3ユーザーは100%の価値、次の10ユーザーは90%の価値、と下げていけばいい。(この辺りはRedditのスコアに似た考え方)
自分の作ってるサービス(bh.mgzl.jp)では機械学習でユーザースコアの算出できていない。(実現には膨大なAPIのコールが必要。)
そのかわりフォロワー数とユーザーの総スターをユーザースコアの算出の基準にしている。ただ、スターがユーザースコアに与える影響はとても小さい。1000スターで0.1上がるとかそのレベル。
残念ながら「良いユーザーは良い記事を(早く)ブックマークする」の部分が実現できていないのと、現状のホットエントリーに記事スコアをつけて表示しているだけなので、「良いホットエントリー」にはなっていない。(それでも「マシな感じ」くらいになるように調整し続けている。)
別に統計学をやってたとかそんなんでも何でもないので、破綻している部分もあるかもしれない。
ただ、RPGの与ダメージの様にみたいに足し算をするだけでなく、複雑に計算しないと上手く行かないと思う。アルテリオス計算式みたいに。
ブコメに返信
スター数とお気に入られ数は無駄に多いがキュレーション能力がクソザコナメクジレベルの人もいるので。誰とは言わないが。誰とは言わないが。
いまこの辺りを基準にしている理由は、他に容易に手に入れられそうな指標がないからだったりします。表にでてる指標で良い指標がないんですよね。
ちなみに自分のサービスのユーザースコアは、いろいろ計算して最大3.4、最小-0.5くらいの幅になってます。お気に入られ1000の人と100の人と1の人に差がつけられればいいので。
たぶん既にハテブには独自の良質ブクマ選定機能がある。私はあまりコメ残さずフレ少ないが、技術系や法律系を自分がブクマすると、翌日なぜかホッテントリ浮上する事が。特定分野を集中的にブクマしてると起きる傾向
実際のホットエントリーのアルゴリズムはブラックボックスなのでよくわからないですよね。ブラックボックスにしないでもスパムに食われないアルゴリズムができればいいんですけどね。Googleですら出来てないので無理でしょうが。
このアイディアは「スコア」という単一の指標ですが、「おもしろいブコメをする人」「技術的に優れた記事にブクマする人」みたいなベクトルに分けてもいいかもしれないです。
価値の無いブクマの線引きを固定パラメータですると、結局スパマーに見つかって終わるのでダメでしょうね。1つのパラメーターだけでスパマーに対向するのは無理なので、複数の評価が大事です。本文のアルテリオス計算式の話はこの辺りのことを言ってました。
直近のブクマに関しても、容易に回避可能なのと単にドメインが同じだけ(ニュースサイトとかqiitaみたいなサービスとか)なのか判別不能なので害しか無いでしょう。
更に返信
NGリスト方式だと、無限にNGが増えていってそんな面倒なことをやりたくないってのが大きいです。面倒くさがりなので何もしないでもいい記事だけが上がってきて欲しいのです。
良いユーザーの決め方は、最初は何かしら人間が基準を用意する必要がありますが、その後はブックマークから抽出できるはずなので、動かしてしまえばなんとかなるかと。
最初の基準は、それこそお気に入られ数とかスター数とかわりと適当でいいんじゃないでしょうか。自信はないですが。