技術ドキュメント

ガチスコ算出アルゴリズム(技術詳細)

スコアをどう計算しているかを、条件と式のレベルまで開示します。 かみ砕いた説明はサイトコンセプトにあります。

1. このスコアが答えている問い

ガチスコが推定しているのは「この院の治療は良いか」ではありません。公開されているクチコミのうち、信頼して読めるものだけを残したら評価は何点になるか—— これだけです。設計上の前提は3つあります。

  • Googleが表示する星別の内訳のうち、水増しが乗る★4・★5はそのまま使わない(★1〜3は実数として使う)。
  • 正当に評価されている院のスコアは下げず、水増しされた院だけを実力位置まで戻す。
  • 全院を同じ手続きで自動計算する。人手の加点・減点は行わない。

2. クチコミ1件ごとの採否

集めるのは各院の新しい順に最大200件。その1件ずつを次の順で判定します。 高評価と低評価で条件が違う点が要です。

  • 投稿者で切る:本文つきで書いたクチコミが2件以下のアカウントは、内容を問わず不採用。
  • 言語で切る:外国語のみと判定した投稿は、星の数にかかわらず不採用。
  • ★1〜3は本文を問わない:上記の除外条件に該当しない投稿は、本文が空でも採用します。
  • ★4〜5は本文を要求:定型の付随句を除いた実質10文字以上の本文があり、返信・定型文パターンでない場合のみ採用。

低評価にだけ本文を求めないのは、不満は黙って星だけ付けられることが多いためです。 ここで一律に本文を要求すると、否定的な声だけが先に消えてスコアが実態より高く出ます。 水増しが起きるのは高評価側なので、本文の要件は★4〜5にのみ課しています。 ここで数えるのは、Googleがクチコミカードに表示する「◯件のクチコミ」=そのアカウントが本文つきで投稿した件数です。星だけ付けた評価は 「◯件の評価」という別の数字に入り、カードには描画されないため参照できません。 この件数が少ないアカウントを落とすのは、量産アカウントで極端に少なくなるという傾向によるものです。

3. クチコミが多い院での補正(層化推定)

総クチコミ数が200件を超える院では、採用したぶんの単純平均を出しません。 手元にあるのは新しい順の200件だけなので、その平均は「最近の投稿の平均」に寄ってしまうからです。 かわりに星ごとの件数と、星ごとの採用率を分けて求め、掛け合わせてから平均します。

ガチスコ = (★1×n₁×t₁ + ★2×n₂×t₂ + … + ★5×n₅×t₅) ÷ (n₁×t₁ + n₂×t₂ + … + n₅×t₅)

n_k は星kの件数、t_k は星kのクチコミが第2節の判定を通る割合(0〜1)です。

3-1. 採用率 t_k

手元のクチコミを星ごとに分け、それぞれのバケットで採用判定を通った割合を数えます。

t_k =(星kのうち採用されたクチコミ数)÷(星kのクチコミ数)

ここが水増しの相殺点です。依頼して★5を積んだ院では、★5の件数 n₅ が増えるかわりに、 同じ★5の中に本文の無い投稿・本文つきの投稿が少ないアカウントが混ざるため t₅ が下がります。 積 n₅·t₅ が信頼できる件数に戻るので、 積み増した分は打ち消されます。純粋に評価の高い院は t₅ が高いままなので、スコアは動きません。

3-2. 星ごとの件数 n_k

  • ★1〜3はGoogleの星別件数をそのまま使う:水増しが乗るのは高評価側なので、 低評価側の内訳は実数として素直に信用できます。
  • ★4・★5は「残り」を実測比で分ける:高評価の総数を先に確定させ、 その内訳だけを新しい順200件の採用後の比で決めます。 Googleの星別内訳の★4・★5は使いません(水増しが乗るのがここだからです)。

まず高評価の総数を出します。

高評価の総数(残り) = 総クチコミ数 −(n₁+n₂+n₃)

次に、新しい順200件のうち★4・★5だったものを数え(c₄・c₅)、その比で残りを配分します。 採用率も同じ窓から取り、t₄ = p₄÷c₄・t₅ = p₅÷c₅ とします(p は採用された件数)。

n₄ = 残り × c₄ ÷ (c₄+c₅)  /  n₅ = 残り × c₅ ÷ (c₄+c₅)

窓に決めさせるのは内訳の比だけで、大きさ(残り)は総クチコミ数で固定します。そのため星の合計は常に総クチコミ数と一致し、辻褄合わせの切り詰めは起きません。Googleの表示平均(★4.2 などの平均点)は、算出に一切使いません。

4. パラメータと分岐

外国語のみで書かれたと判定したクチコミは、星の数にかかわらずガチスコの算出対象から除外します。 Googleが日本語に翻訳して表示する投稿も対象です。これは投稿言語による集計対象の区分であり、 投稿者の国籍やクチコミの真偽を判定するものではありません。 星だけの投稿は言語を判定できないため、投稿実績など他の採用条件で扱います。

言語判定はGoogleの翻訳案内「原文を見る」がある投稿を対象にします。 案内がない場合も、タグを除いた本文が空白を除いて10文字以上あり、仮名・漢字を含まず、 ラテン文字・ハングルが合計8文字以上ある投稿は対象です。短文や本文が途中で切れた投稿など、判定できない場合もあります。

  • 投稿者の除外:本文つきクチコミが2件以下のアカウントは不採用。
  • 本文の最小長:付随句を除いた実質10文字未満の★4〜5は不採用。
  • 層化の適用条件:総クチコミ数が200件以下なら層化しない(全件が手元にあり、推定を挟む必要がないため)。
  • 窓のサンプル下限:新しい順200件のうち★4・★5が合わせて5件未満なら、内訳の比を決められないため単純平均へ。
  • 星別内訳の健全性:Googleの星別件数の合計が総クチコミ数と2件(または2%)を超えてずれる院は、取得時期のズレとみなして層化せず単純平均へ。
  • 空のバケット:件数0の星は低評価をまとめた採用率を使い、それも無ければ 1.0 とみなす。
  • N/A:分母(Σ n_k×t_k = 推定される信頼件数)が10未満ならサンプル不足として「N/A」。低評価という意味ではありません。
  • 丸め:小数点2桁。

層化に必要な材料(Googleの星別件数・総クチコミ数)が揃わない院(開院直後・クチコミが少ない等)は層化せず、 採用したクチコミの単純平均をガチスコとします。 この場合は件数が少ないほど高めに出やすく、クチコミが増えるにつれ本来の値に近づきます。

5. このスコアで分からないこと

上の手続きはクチコミの信頼度を扱うもので、医療的な内容には一切踏み込みません。 次の点はガチスコでは判断できません。

  • 診断・治療方針の妥当性、施術者の技術や資格の有無。
  • 自分の症状にその院が合っているか(クチコミの多い院が自分に合うとは限りません)。
  • 巧妙に書き込まれたクチコミ。本文のある投稿は、内容の真偽までは検証できません。

各ページでは、素のGoogle評価と並べて採用/除外の内訳も公開しています。 スコアだけでなく、その中身をあわせてご確認ください。

補足

  • 本ページはアルゴリズムの開示を目的としています。実装の細部は予告なく改善されることがあります。
  • ガチスコは自動計算による指標であり、掲載院の品質や医学的な妥当性を保証するものではありません。治療方針は必ず医療機関にご相談ください。
  • ガチスコ ヘルスケアはGoogleマップの非公式サービスです。Googleとの提携・認定関係はありません。