1 Min. Read

ベイジアンネットワークによるインストールレベルの不正検出

Michel Hayet Michel Hayet Apr 01, 2020

AppsFlyerは、毎日数百万件のアプリインストールを処理しています。それぞれのインストールは、タイムスタンプからデバイスセンサーのインジケーターまで、測定可能なデータポイントを大量に提供しているので、その品質を視覚的に把握することができます。

残念ながら、私たちのエコシステムを行き交う多くのインストールが不正によるものです。モバイル業界での不正防止対策の必要性はかつてないほど高まっており、その重要性は効果測定でのアトリビューションに次いで大きくなっています。

小規模不正検知の難しさ

不正防止技術が進歩すれば、不正行為も巧妙化(英語)します。新しいテクノロジーが登場しては、不正の新しい抜け道を見つけられ悪用されています。新たな不正が日々発生し、そのための新しい検知方法が生まれます。

多くの不正インストールは、インストール認証方法、または不正クラスターパターンとの関連性で識別できます。ただし、小規模な不正行為は検知できない場合があります。小規模なサイトでは使用しているサンプルサイズも小さくなるからです。

個々のインストールレベルで不正を特定することは、おそらく最も困難な課題の1つです。これは、単なるインストールの分類の問題として解決できるものではありません。そのため不正インストールの理想的な識別方法の探究は常に行われています。

インストールの識別に必要なのは、特定のパラメーターの記憶だけではありません。情報に基づき決定するために必要なルール、特定のインストールをブロックするロジックも必要です。小規模サイトでの小規模不正でも識別できるように、インストールレベルで不正を検知するのと同時に、誤検知率を最小限に抑えながらリアルタイムで正確に不正をブロックできなければなりません。

このような理想的な識別方法を探求する中で、私たちはベイジアンネットワークと出会いました。

ベイジアンネットワークとは、有向非巡回グラフを介して変数間の依存関係を測定する確率モデルです。

有向非巡回グラフ - ベイジアンネットワーク

有向非巡回グラフ

この識別方法は、インストールパラメーターが特定の組み合わせで見られる確率を計算します。基本的に、2つの変数からなる変数ペアの依存関係をモデル化し、どのペアが相互依存していて、どのペアが相互依存していないかを識別します。

ベイジアンネットワークは、発生したイベントの分析や、可能性のある発生原因の予測に最適です。

たとえば、ベイジアンネットワークは、病気とその症状の確率的関係を表すことができます。特定の症状が現れると、ベイジアンネットワークを使用して、さまざまな疾患の確率を計算できます。

ベイジアンネットワークの利用

変数間の条件依存をテストするために、カイ2乗検定で確率変数を使用します。すべての変数が依存していると仮定すると、私たちの計算は正しいが扱いにくくなります。

このネットワークにより、2つ以上のフィールドの組み合わせを見つけることができるようになります。そしてこれらのフィールドが実際に存在している可能性は、非常に低いか、まったくありません。

古いOSを備えた新しいデバイスモデルといったような、ささいな組み合わせもあるかもしれませんが、ひとつひとつのケースを手動で実行し規模を維持するのは困難です。

ベイジアンネットワークは、いくつかのパラメーターの組み合わせを調べるときに特に役立ちます。個別に調べれば、それぞれのペアは正当に見えるかもしれませんが、すべての変数を組み合わせて見るのは統計的には不可能です。

たとえば、50個の異なる変数があるとしましょう。それぞれの変数に10個のオプションがあります。これにより、考えられる値の組み合わせは10の50乗通りになります。すべての変数が独立していれば、変数を1つ1つ個別に調べれば良いことになり、500通り変数を計算すれば良いので簡単です。ただし、すべての変数が独立しているわけではありません。

これを正確に計算するには、最初に、どの変数が独立していて、どの変数が相互依存しているかを特定する必要があります。この識別により、ベイジアンネットワークが作成されます。これにより、多くの異なる変数でインストール確率を正確に計算できます。

基本的に、ここで私たちが計算するのは、インストールが不正である確率です。しかし、誤検知を回避するため、AppsFlyerが設定している厳格なしきい値を超えブロックされるためには、この確率は有意である必要があります。

この高度なモデルは、エコシステム全体ですでに使用されており、1日に100万件を超える不正なインストールを特定しています。以前のルールセットでは、これらのインストールの約50%は検出も識別もされませんでした。 不正インストールを多く検知できるようになったことで、AppsFlyerのお客様は数百万ドルの損失を回避しています。

ベイジアンネットワークを利用し、AppsFlyerは、不正検出機能に新しい機能と方法を常に追加しています。モバイル広告不正と闘うための取り組みを進めながら、現在そして将来の不正問題に対処できるようになっています。