-
Notifications
You must be signed in to change notification settings - Fork 111
遠距離の信号を接触判定および表示から除外することを検討する #1121
Comments
経緯です。
|
Webミーティングで説明して欲しい、というご要望があれば応じます。あるエンジニアの方とのWebミーティングでは、20分程度の対話で核心部分を掴んでいただけました。 一方、文章で説明していくのは、なかなか大変そうです。 この場をお借りして、exposure_data.jsonをご提供いただいた方々に、お礼申し上げます。 |
具体的なexposure_data.jsonの内容を含めたデータ提供と整理ありがとうございます。 ご指摘の内容は、リリース前に検討していた論点でも概ねカバーされておりますので、 なお、 *見直しをする場合には、*頂いている案の中では、別案1の適切な条件を考える、というのが、 ※08/22 20:30 **で囲んだ部分加筆 |
これIssueのタイトルで課題の内容を掴みやすくするために「遠距離の信号を接触判定から除外する検討」にするのが良いか思いますが、いかがでしょうか。 |
ありがとうございます。 @keiji さんにご一任します。 接触判定は条件通り上手くいっているが、表示している接触時間の90%が遠距離の接触時間になっている(05A, 10G, 11G, 12G, 16A)、という課題も同時に生じていますので、「接触判定及び表示」だとより伝わりやすいかもと感じました。 |
機能停止方針( #1132 )が公表されましたが、本件に関してはきちんと進めていきたいので、引き続きよろしくお願いします! |
こちら、なにも進捗の報告をいれておらずすいません。 こちらの議論を進めるためには、パラメータ設計のために収集した測定データの公開が必要だと思っているのですが、これを公開できる状態に整える時間が取れていないという状態です。
すいません。が、必ずやります… ちなみに、この議論の間に、他国のENアプリで設定がどうなっているかを軽く調べていたことも記録しておきます。 ドイツのENアプリの設定値でも、同じ様な1番近いAttenuationのWeightを減らす設計にしていました。 最初は、55, 63, 73を閾値とする、私が作業したのと同じ様な理論値に近いスコアにしていましたが、 途中から、閾値を63, 73, 79に、重み付けも変えていて、弱い電波もスコアにカウントするようにしていました。 ただ、いずれのpull-requestも、根拠となるデータや説明が書かれておらず。 確かドイツは1.5mか2.0mを基準としていたのでそのまま利用できるスコアではないですが、 |
4ヶ月半お待たせして申し訳ありませんでした。 こちらの測定結果をご覧頂くと、少なくとも「dBだけで1mを判定するのが難しい」ことは確認いただけるのかなと思います(2mは何とかなりそうだ、というところも含めて) |
パラメーター設計の根拠についてはぼくも理解した上で、個人的な感想としては、パラメーターについては状況に応じて、もっとリアクティブにアップデートしたかったな。という反省があります。 ソフトウェア的にはすべてのパラメーター(ENAPIの設定と、接触として表示する閾値)は配信ファイルを通じて更新可能に設計してありますが、結局この仕組み、一度も使わなかったんですよね。 どうにも行政は「今現在の設定を変えること」を「以前の設定が間違いだった」と理解するようです。 もちろん、パラメーターの変更には十分な根拠が必要というのは間違いないので、やはり「ユーザーの明確な同意に基づく接触情報の収集」機能なくして成り立たなかったとは思うのですが。 |
COCOAが出す通知がどの程度強いメッセージだったのか、というのもパラメータ更新頻度には関係してきますね。 法令等に基づく、強い要請の根拠とするならば、アップデートをするにしても「いつ時点の基準にどのように該当したかを全て説明でき」ないと困るだろう、というのは、行政もそうだし、医療関係者もそう受けとるだろうとは思います。 一方、総括等を振り返っても、COCOAはそこまで強いメッセージを出すものではなく、「注意喚起」に止まるものでしたから、もう少し更新があっても良かっただろうとは思いますし、これはCOCOAに限らず、感染研の「積極的疫学調査実施要領」も含めた課題だったと思います(行政が判断するための基準として直接参照されたが故に更新しにくなった感じはあったので)。 |
要約 / Summary
EN2では、平均70dBを超える遠距離のExposureWindowの要素の接触時間が大量に含まれ、接触判定に際してこれらを除外していないため、
不具合の内容 / Describe the bug
元データ(ダウンロードしてご利用いただけます)
https://docs.google.com/spreadsheets/d/1r52qEUSHiq95ZTOeN1i_L7CcqmvSc4uT5lChDoz0K90/edit?usp=sharing
解析は、ExposureWindowsのデータを、接触日(Window)の区分を無くして二次元にし、ScanInstancesのTypicalAttenuationDbの小さい順に並べ替えて条件等と照らし合わせる手法により行いました。
ExposureWindowsに含まれる5分以内程度で TypicalAttenuationDb が付されたデータやその接触時間(SecondsSinceLastScan)を、ここでは「要素」といいます。1つのWindowは1以上の要素を持ちます。
COCOA 2.0.1で表示される接触時間に、TypicalAttenuationDbの値が70dB(2〜3m)を超える接触の接触時間が含まれている。
70dB(2m〜3m)を超えた接触時間の占める割合が、90%を超えているケースが21件中9件あり、次の2の問題がないケース(05A, 10G, 11G, 12G, 16A)でも、90%越えがある。
COCOA 1.4 の条件(63dB未満の接触を15分以上)を満たさないが、COCOA 2.0.1で接触通知されているケースが約半数あった(21件中10件)。大きく次の2パターンある。
2.1 attenuation_bucket_weightsが0.01の要素を237分や701分間含むことで、ScoreSumが1350を超えた(06A, 13G)。
2.2 TypicalAttenuationDbが66dBや70dBを超える要素の接触時間が加算されることで接触通知の条件である15分を超えた(08G, 09A, 14A, 15A, 17A, 18A, 20A, 21G)。
上記の不具合について、1つを解決して他が悪化することは望まれないため、全体の一体的な解決が求められる。
表中、L列の記号は、ExposureWindowsを解析して、1m以内15分以上という現行の基準との関係で、接触通知をすべきであったか否かの私見による評価です。
◎: COCOA 1.4でも接触通知されており問題無い。
○: COCOA 1.4では接触通知されないが、接触通知することに違和感はない。
△: 接触通知すべきかどうか、何らかの価値判断が示されると良い。例えば、1m以内のケースを99.99% 程度の確率で拾うために、1mより遠い距離のみの接触についても通知をすべきである、という立場であれば、現行の基準との関係でも是認できる範囲と思われる。
x: 1m以内15分以上という現行の基準との関係で、接触通知されることに強い違和感がある。
再現手順 / Steps to reproduce
COCOA 2.0.1が通知する接触時間が長いという不信感は、例えばTwitterで「COCOA バグ」等の検索をすると多数観測できる。
(複数人との接触が加算されることをご存じのかたも、ご存じでない方もおられる)
解析手順の詳細は、リンク先。
https://docs.google.com/spreadsheets/d/1r52qEUSHiq95ZTOeN1i_L7CcqmvSc4uT5lChDoz0K90/edit#gid=1271544166&range=A2
本件の解析の前処理について。
期待される挙動 / Expected behavior
1m以内で15分以上という条件から逸脱しない接触通知の判定をし、かつ、接触時間の表示を、この条件との関係で想定される表示とする。
スクリーンショット / Screenshots
なし(COCOAの接触通知の詳細画面は、個人を特定できる情報も含まれるため一般公開はしない方針です。公式の方は非公開前提に個別にご相談ください。)
動作環境 / Environments
・COCOA 2.0.1で接触通知されたケース
・iPhone、Androidの両方
その他 / Additional context
解決策
1. attenuation_bucket_weightsの0.01としている値を、0とする。
0としても、06A, 13Gの2件が接触通知なしになる他、他のケースには影響しない。
案2A COCOA 1.4と同じ63dB越えを除く→21件中、11件が接触通知となる。
案2B 65dB越え(weightが0.01の要素)を除く→21件中、13件が接触通知となる。
案2C 70dB越えを除く→21件中、17件が接触通知となる。
一貫性という点では、2での対応で一体的に表示時間を1m以内の可能性がある時間のみにすることが望ましい。
別の解決策
■ 別案1 現状のCOCOAの判定条件を正しいとして、1m以内で15分以上という条件の方を変更し、1m以内が10分以上で、遠距離を含む接触時間が15分以上とする。
(現状、1350スコアを超える接触時間が11分以内である件数は21件中16件と多数)
■ 別案2 ウエイトを掛けず、ScoreSumが実時間となるようにし、電波強度dBのしきい値のみで判断できるようにする。
上記案2Bと等しい条件にするには、
attenuation_bucket_weights を [1.0, 1.0, 1.0, 0]とし、
cocoa/documents/static/exposure_configuration/configuration.json
Line 94 in 34fbff0
DailySummary_DaySummary_ScoreSum の valueを 900 とする。
cocoa/documents/static/exposure_configuration/risk_calculation_configuration.json
Line 5 in d51384d
65dB以外の値をしきい値とするには、
attenuation_bucket_threshold_dbの65を63や70にする。
cocoa/documents/static/exposure_configuration/configuration.json
Line 92 in 34fbff0
(参考)
tmurakami さん
#754 (comment)
■ 別案3 ウエイトとスコアのしきい値を調整して、平均的に15分間となるようにし、スコアのみで接触通知を判定する。接触時間とする表示時間は別途検討する。しかし、この別案3は、トレードオフが多く不安定で別の不具合を生じさせてしまう可能性もあり、平均的に15分間となったかの検証も難しく、選択の優先順位は低いと考えられる。
The text was updated successfully, but these errors were encountered: