cocoa-mhlw / cocoa

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

「過去14日間の接触」画面を改善する

keiji opened this issue · comments

その機能リクエストは何らかの問題に関連しますか / Is your feature request related to a problem?

COCOA v2.0.0では「過去14日間の接触」画面で、接触が確認された時間の合計を表示する。

FP8WLWGagAQQ4NQ

しかし、複数人と接触した場合でも接触時間は合算となる(何人と接触したかはCOCOAには分からないので、人数で割って平均値を出すことはできない)。そのため、想定よりも大きな接触時間が表示されることがあり、利用者に過剰な不安を与えるという指摘があった

該当するTweetのスレッド
https://twitter.com/akzh101/status/1512952388013146113

解決策についてお書きください / Describe the solution you'd like

「過去14日間の接触」画面には時間の積算を表示しない。接触があった事実をだけを示すようにして、詳細は「接触一覧画面」で見るようにする。

「接触一覧画面」には、現在の日別の合計値を表示するようにした上で、さらに日毎の詳細(ExposureWindow)を表示する。

あなたが考える代替案についてご説明ください / Describe alternatives you've considered

画面の本格的な改善には、デザインと実装に時間がかかる可能性がある。取り急ぎの対応として #913 で提案している接触データをエクスポートして、利用者が詳細を確認できるようにする。

その他 / Additional context

テキスト表示の問題ではあるが、利用者への情報の伝え方という意味で design のラベルを付けます。

念の為一点確認なのですが、現状の画面仕様としては「1129分」という表示が出る事自体はおかしいことでは無い(バグとは考えていない)と言う認識で合っていますか?

はい。ENから1129分という値が得られること自体はあり得ますね。

回答ありがとうございます。

間違った情報を出しているわけでは無いが対象者に伝えたい情報と齟齬があると言う印象を受けました。

具体的な数字を表示しないと言うのも一つの手かと思いますが、簡易にでもリスク判断出来る情報が表示されてくれれば嬉しいかなと言う感想を抱きました。
(ENSv2 で得られる情報は十分に理解出来ていないのでそのような情報が出せるかどうかも判断が付いていません)

その点でいうと、対象者に伝えたい情報は書いているのだが、対象者が知りたい情報ではない、というすれ違いですよね…

伝えたいのは「濃厚接触の可能性があると判断した根拠がある」ということになります。一方、知りたいのは「感染のリスク」なのも分かります。
とはいえ、COCOAどころか、スマートフォンが取れる情報だけでは、感染リスクをお伝えできないのは間違いないです。
(とくに、厚生労働省という、医療機器などのより厳しい品質が求められる機器を扱う組織が「リスクの有無を判断できるアプリです」と言ってしまうためには、かなりハードルはたかいな、と…)

というところも踏まえて、現時点では、プログラムで「感染のリスク」に対して、一律の判断をすることが不誠実であろう、生データに近いものをお見せする、という形になってしまってはいます。

ただ、これはCOCOAに限らない話で、保健所・医療機関での感染リスクの判定・断定具合も大差ない(あるいは、もっと定性的な判断になる※)中で、「COCOA単体として」どこまで改善の余地を探っていくのか、ゴール水準がみえるとありがたい、と思います。

丁寧な説明ありがとうございます。課題に対する理解が進んだように思います。

伝えたいのは「濃厚接触の可能性があると判断した根拠がある」ということになります。一方、知りたいのは「感染のリスク」なのも分かります。

こちらについては、理想的にはどちらも必要であると感じます。

ただ、ご説明頂いたとおり「感染リスク」そのものを正確に把握するのは事実上無理だと思います。
また曖昧な情報で惑わしてしまうこともよろしくないでしょう。
代わりとなる良い案も思い浮かびませんし「感染リスク」を示すのは諦めるしか無さそうです。

一方、濃厚接触の可能性があると判断した根拠(通知を行った根拠)に付いては具体的な情報があるはずですし、もう少し対象者に対して情報を出せないだろうかと考えます。

現状だと、 https://github.com/cocoa-mhlw/cocoa/discussions/960#discussioncomment-2539414 こちらで戴いたコメントに近い物を感じていて、合計時間として表示している物は「複数の人(スマホ)との複数回?の接触時間を合計したもの」というコンテキストが抜け落ちているのではないかと感じました。
(同一の人と間を開けて複数回接触したケースがどう扱われるかよく分かっていないです)

このコンテキストを上手く表現できれば、接触時間の合計という今の情報内容でもある程度の理解は得られるのかなと考えたのですが如何でしょうか?

たたき台として例を挙げるならば、以下の様な文章を備考やTooltipの形で表示すると言うのを考えました。

  • 「複数の陽性者と同日に接触があった場合、その合計時間を表示しています」

「複数の陽性者と同日に接触があった場合、その合計時間を表示しています」

これは接触一覧画面に入れた方がよさそう。

@daisuke-nogami
14日間の接触画面から分数の合計値削除するのはどうですか?

そうですね、冒頭の画面にまで分数をだす必要はないかもですね。

(合計時間を表示しているのを単位で表示するなら、実は「分」ではなく「分・台」なんでしょうけれど、そういう表記が通じるのは研究者とかだけですね…)

「分・台」についてです。
表示される接触時間は、陽性者さん端末との距離の枠に応じてウェイトに従って実際の時間を増減させているなら、それはもう「分」とはいえない指標と思います。医師に、ウェイトで調整された時間のようなものを、時間として示さない方が、私は安全と思います。

示さない方が安全という意味では「基準値未満の接触画面」でもスコアの表示についてが話題になっていたりしますね。まぁ、当該画面については基準値未満の接触自体を示さない方が安全という流れになってしまって苦労しているわけですが。

個人的には日別の接触に関しては分数を示した方が「この日でこの時間ならあのライブだ」とか「あの打ち合わせでもしかしたら」という、利用者自身の行動を思い起こすきっかけになっている様子のであって良いと思いますが。

14日間の接触画面で時間の表示はしない。
接触一覧画面に「複数の陽性者と同日に接触があった場合、その合計時間を表示しています」の注記を追加する。

この2つでどうですか?

EN2では、接触日に何人とすれ違ったか表示されず、
すれ違った人数分、それぞれの「○分間」が加算されて、加算後にしきい値を超えたらEN1と異なり濃厚接触となり、
#605 (comment)
距離のウェイトで時間を増減させつつ、実時間が15分に満たなければ濃厚接触にしているかもしれず、

「○分間」というのが、何を意味しているかまるで分からないです。

「基準値未満の接触画面」では、結局、最大値を100とする比率にしました。

接触一覧の接触日別に、濃厚接触のしきい値を100とした比率によるスコア(3桁の数字)で表示する可能性も、並行して検討いただけたらと思います。

ありがとうございます。

接触一覧の接触日別に、濃厚接触のしきい値を100とした比率によるスコア(3桁の数字)で表示する可能性も、並行して検討いただけたらと思います。

検討する上でご意見を伺いたいのですが、仮に閾値100として比率によるスコアを示したとして、接触の可能性として取り扱われている訳なので、利用者目線では100以上の数字、たとえば115だったり400とか値がぽんと出てくるわけですが、一般の利用者はその値を見てその数字がなにを意味するのか直感的に理解できそうでしょうか。

もちろん計算方法は基準値未満の接触画面のように注記することはできます。その上で、たとえばスコアが115なら「まぁ、これなら検査受けずに家で過ごそうか」、400なら「検査受けた方がいいな……」みたいな対応を利用者が判断する材料にできるでしょうか。

ぼくは、いまのCOCOAの運用を見ていると、そう言った類いの話にはならないだろうと理解しています。

それよりはシンプルに「人間が理解しやすい身近な概念(つまり時間)に留めておく」のが良いと考えています。これは「16分だからリスクが低い」、「2,000分だからリスクが高い」と言う話ではなく、前述のように「この日にこの時間だと、きっとあのイベントだ」とか「通勤途中の電車かな」のように、自身の行動を振りる材料として、行動変容につながる可能性を残しておきたいと考えています。

すいません、手前の段階で認識ずれてますよね

陽性者さん端末との距離の枠に応じてウェイトに従って実際の時間を増減させているなら、それはもう「分」とはいえない指標と思います

判断に使うスコアはおっしゃる通りですが、表示している時間は実際の時間です!!!
そして、スコアですが、

  • ENの使うリスクスコアは
    • である:「通知を出す/出さない」の0/1の判断をするもの
    • ではない:感染のリスクの大きさと比例するもの
  • ENに限らずスマートフォン単体で把握できる情報で「感染のリスクの大きさと比例するスコア」は出せない

という前提は踏まえていただきたいなと。

なお、それをふまえてると、回答は直前の有山さんの回答と同じ「自身の行動を振り返り(リスクがあることの納得感をもって)行動を起こす/変える」ことにつなげる、となります。

@kvaluation さんの言うこともわかります。

ExposureWindowの時間は電波強度がセットになっている。COCOAではExposureWIndowからリスク値を計算するのに電波強度に応じた重み付けをしているのだから、時間をただ合算するのは厳密に言うと正しくない。そして、時間を重みで補正したとすれば、それはもう時間とは異なる概念になる。と言うことですよね。

ご提案には感謝しています。
その上で、スコアを表示することが利用者にわかりやすいかというと、あまり分かりやすくはないね。と言う話になっています。ここは本当に難しいところで、複数の接触時間を合算することに起因して、大きな接触時間が利用者に提示されてしまうケースがどの程度発生するのか。問い合わせの発生状況なども見ながら工夫していきたいと考えています。

これは本論からそれますが、別のIssueで接触データをエクスポートする機能を検討中です。接触チェックのログにMatchCountがなくなったことと「そもそも接触データは利用者のものなので、利用者が見られないのはおかしいでしょう」という建て付けです。

接触データが利用者の手元に届くようになれば、どのような見せ方が良いか、検討する上での可能性が広がるかも知れないなと考えています。

現在表示されている合計時間については以下の様な理解をしているのですが、合っていますでしょうか。

同日中に3回の 記録 接触があったとする。
端末 A,B,C では陽性者登録が行われており、該当日は接触判定の対象とする。

  1. 端末A と 20 分の接触。リスクスコアは閾値以上
  2. 端末B と 40 分の接触。リスクスコアは閾値未満
  3. 端末C と 30 分の接触。リスクスコアは閾値以上

この状態で接触判定を行うと通知と画面表示は次のようになる。

  1. 通知自体は、 仮に 1 または 3 の接触のみであったとしても行う(一件でも閾値以上のリスクスコアがあれば行う)
  2. 「過去14日間の接触」画面では、1, 3 の接触時間を合算し該当日に 50分間 の接触があったと表示する。

備考:

  • 実際の接触が例示したような物であったかどうかは COCOA からは参照出来ない。

追記:

説明頂き、認識間違いであった部分に打ち消し線

このケースでは、あくまで合計して「90分の接触として表示されると考えています。

ENv2のリスクスコア(スコア)は、1,2,3を総合してENの内部で算出されて出てきます。もっと言えば、スコアの元となる時間は30分を最大値として分割されます。なので今回は「3回の記録」として例示されていますが、得られるデータは、

  1. 20 分の接触。電波強度○db
  2. 30 分の接触。電波強度○db
  3. 10 分の接触。電波強度○db
  4. 30 分の接触。電波強度○db

と言う形です。
端末A, B, Cの違いはCOCOAからはわかりません。1, 2, 3, 4はぜんぶ同じ端末との接触かも知れないし、ぜんぶ違う端末かも知れません。

また、1mと言う基準を計測するにあたって、電波強度が○以上、未満という形で設定することは実質的に不可能です。電波強度は周囲の環境、端末の状態によって簡単に変動します。

ENv2では、電波強度をグループ化してそれぞれに重み付けをした上で、それぞれの時間に適用してスコアとして取り扱います。

COCOAは、1, 2, 3, 4を元にENが計算したスコアをが閾値が超え、さらに接触の合計時間が15分を超えた場合にのみ通知を出すようにしています。
これは当初はスコアのみを閾値にしていました。それだと距離が非常に近い場合、15分未満の接触でもスコアの閾値を超えるケースがあることが分かり「合計時間で15分未満であれば通知しない」という処理を追加しました。

PS. 当初4つの例示で「電波強度弱い」「電波強度強い」と記載していたのですが、○dbと言う値を示す形に置き換えてあります。これは電波強度の値を「弱い」「強い」と単純に分割できるものではなく、ミスリードになると考えたためです。

なるほど。説明ありがとうございます。

ENv2のリスクスコア(スコア)は、1,2,3を総合してENの内部で算出されて出てきます。

主にこの部分に誤解が有ったのですね。

すいません、手前の段階で認識ずれてますよね

陽性者さん端末との距離の枠に応じてウェイトに従って実際の時間を増減させているなら、それはもう「分」とはいえない指標と思います

判断に使うスコアはおっしゃる通りですが、表示している時間は実際の時間です!!! そして、スコアですが、

  • ENの使うリスクスコアは

    • である:「通知を出す/出さない」の0/1の判断をするもの
    • ではない:感染のリスクの大きさと比例するもの
  • ENに限らずスマートフォン単体で把握できる情報で「感染のリスクの大きさと比例するスコア」は出せない

という前提は踏まえていただきたいなと。

実時間であるというのは、気がついておりませんでした。ありがとうございます。

例えば、接触経過時間(実時間)13分で、ウェイトを掛けて16分になったとき、15分以上で濃厚接触に該当するが、表示するのは実際の実時間の13分で、そうすると混乱するから実時間13分のケースは濃厚接触にしない、という要件なのでしょうか。

混乱するから、ではなく、「15分以上」であることが必須要件だからです。
15分未満というのは、通知を出したい条件と明らかに整合性がとれず、濃厚接触 の可能性 の通知をしない、としました。

@kvaluation さんの言うこともわかります。

ご提案には感謝しています。 その上で、スコアを表示することが利用者にわかりやすいかというと、あまり分かりやすくはないね。と言う話になっています。ここは本当に難しいところで、複数の接触時間を合算することに起因して、大きな接触時間が利用者に提示されてしまうケースがどの程度発生するのか。問い合わせの発生状況なども見ながら工夫していきたいと考えています。

通知がある際に実時間が分単位で表示されることを理解しました。その前提でさらに、(1)合計していることと、(2)合計の元の陽性登録者さんは、同一人か違う人かは仕様上わからない、と理解しています。これは、単位としては、[分・件]かなと思います。

「台」ですと、同一端末の2回の合計は1台で2台ではないですが、2件でしたら説明できます。

(提案1)表示例は、
1日間に合計1129分間の接触(複数人・複数件の接触があればそのすべての接触の合計です)
というかっこ内の注記をどこかに入れることが考えられます。

・この1129分に、遠距離の5分の接触、10名(通勤だとありがち)とかの50分も含まれているとすると、過剰に多い接触分数になるように思います。気をつけるべき濃厚接触とは関係がないです。

(提案2)合計した件数も表示する。
1日間に合計1129分間の接触(複数人・複数件の接触があればそのすべての接触の合計です)
合計した接触の件数: ○○件(同一の陽性登録者の端末との接触件数と、複数の陽性登録者の端末との接触件数の両方を含みます)

合計した数字を表示するので、何件合計したのかの数字ぐらいは、あると良いかと思います。1人と長時間か、多数人となのかは、「自身の行動を振りる材料として、行動変容につながる可能性」を精度良く高める情報になると思います。

(提案3)低リスク表示との関係
濃厚接触を合計の接触分数で表示する場合、シームレスに、検討中の低リスク表示も同一の単位での数字にしてもらえると、説明しやすいと思います。

(提案4)「リスク」
なんとなく、COCOA | EN2そのもので「リスク評価」はできないよね、という理解が、私としては嬉しいことに、広がってきている気もします。「リスク」ではない、単に事実をお知らせしているという用語に収れんしていくことを希望しております。

別のIssueで接触データをエクスポートする機能を検討中です。接触チェックのログにMatchCountがなくなったことと「そもそも接触データは利用者のものなので、利用者が見られないのはおかしいでしょう」という建て付けです。

選択肢が色々ありますが、
(1) cocoa-log
cocoa-logで読めるようにしていただくのも一案かと思います。cocoa-logがすぐスマホの共有にでるのはとても操作感が良いです。対象層は狭いですが。

(2) エクスポート
接触データをエクスポートする機能は、より広いユーザー層が対象になるかと思います。
v2.0.0-beta04 (クローズド)の「受信した信号」で表示する接触データを、エクスポートか、1タップで表示するかできると、MatchCountで見ていた情報と同じ情報を知ることができるので、EN1のMatchCount自体を提供しなくても、十分ではないかと思います。

エクスポートで幅広いユーザー層に表示する接触データは、一番詳細なのが、電波強度の3区分ごとの接触時間(いままで、Androidユーザーがアクセスできていた)で、一番簡易なのは接触日ごとの接触分数[の合計(修正追記)]、中間的に接触分数[と接触件数(修正追記)]などでしょうか。

(3) cocoa-logとエクスポートの併用
cocoa-logを自己責任でみる人には、電波強度の3区分ごとの接触時間(または、接触の1件ごとの接触分数)
エクスポート機能では、接触日ごとの接触分数と、できれば接触件数が良さそうに思います。

(4) v2.0.0-beta04 (クローズド)の採用
v2.0.0-beta04 (クローズド)の受信した信号の表示が採用されれば、MatchCountに相当する情報のエクスポート機能は不要とおもいます。

(5) OS側
OSから出力される「接触確認の履歴」については、Apple | Googleに問い合わせたり要望したりぐらいで良いのかなとも思います。Appleは、MatchCountを意図的に削除した可能性もあるかと思います。

FAQ に説明が追加された様です。

image

v2.0.1で対応しました。
何かあればreopenするのでコメントしてください。

すべてのExposureWindow(ScanInstances)を全部足した時間を表示しているのは違和感あるよねと言うTwitterでの指摘。
https://twitter.com/satorunet/status/1556270048527847425