niedziela, lipca 28, 2019

Alert RCB - minimalizacja false negative prowadzi do zwiększenia false positive ;-)

Drugi raz w ciągu 24 godzin dostałem SMSa z Alertem RCB.
Wczorajszy się nie sprawdził, patrząc na pogodę od Google jest znaczna szansa, że dzisiejszy się też nie sprawdzi.

Mamy tu klasyczny konflikt między użytecznością, a przysłowiowym kryciem swojego tyłka.
Albo jak kto woli, problem wysokiego stopnia false postive ;-)

Mamy tak:

Niebezpieczne anomalie
pogodowe
Normalna pogoda
Alert RCBtrue positive
Ludzie zostali poinformowani, mieli czas na przygotowanie się, jak ktoś się dał złapać to jego problem
false positive
Odbiorcy wkurzeni
Ludzie zaczynają ignorować
alerty RCB
Brak alertu RCBfalse negative
Wszyscy wśiekli
Pojawiają się pomysły by
kogoś postawić przed sądem
za "niedopełnienie obowiązków"
true negative
Wszyscy mają w nosie

I jak patrzeć racjonalnie to jeśli wiemy, że może przyjść nawałnica czy burza i mogą coś drogiego uszkodzić, albo komuś krzywdę zrobić to trzeba ludzi o tym poinformować.

Pytanie co znaczy "wiemy". To nie jest binarna sprawa, bo zamiast wiedzieć "na 100% będzie" albo "na 100% nie będzie" wiemy tylko, że z prawdopodobieństwem X wystąpią opady o wielkości Y.
Nawet nie tak, wiemy tylko, że model przewiduje opady od wartości A do wartości B, większość symulacji wskazuje na wartość C, ale kilka wskazuje na wartość D, która jest wyższa niż jakiś arbitralnie ustawiony threshold to krzyczymy, że coś się może stać.

Coś jakby zbudować klasyfikator mówiący czy grozi nam w ciągu następnych 24 godzin uderzenie asteroidy, który może zabić ludzi i zawsze odpowiadać tak.
W końcu duża asteroida spada na Ziemię średnio raz na 20 milionów lat, a mała raz na pół miliona lat, czyli patrząc na dane historyczne duża każdego dnia ma szansę spaść jak 1 do trochę ponad 7 miliardów, a mniejsza jak 1 do jakichś 180 milionów.
Jeśli duża może zabić całą ludzkość, to mamy średnio szansę śmiercie tak jakoś 1 osoby, jeśli mała może zniszczyć miasto z okolicami gdzie mieszka powiedzmy 30 mln ludzi, to mamy średnio 6 osób. Czyli nasz klasyfikator ostrzega przed śmiercią jakichś 7 osób.
Dzień w dzień.

W przypadku alertów RCB jest tak, że jak np. jest sobie kolonia, czy obóz harcerski i przyjdzie nawałnica i coś się komuś stanie, a alertu nie było to prokurator zacznie ścigać meteorologów z RCB czy okolic, szczególnie jeśli się okaże, że jakaś symulacja mówiła, że coś się może zdarzyć.
Jak alert pójdzie, to w razie coś się uczestnikom kolonii/obozu stanie to problem opiekunów, nie RCB.

Jak alert pójdzie, a nic się nie stanie, to tylko się ludzie trochę wkurzą.

Czyli z punktu widzenia "gracza" jakim jest RCB, by uniknąć problemów prawnych należy ostrzegać o wszystkim co może źle się skończyć. Nieważne jakie jest tego prawdopodobieństwo.

To minimalizuje false negative, czyli minimalizuje szansę na zarzuty prokuratorskie za "niedopełnienie obowiązków".

Maksymalizuje też false positive (nie wprost, ale zwykle jak się dąży do zminimalizowania false negative, to zwiększa się liczbę false positive), a co za tym idzie zmniejsza się zaufanie do klasyfikatora.

Czyli chociaż pracownicy RCB są kryci i nie grożą im zarzuty prokuratorskie, to sam alert RCB staje się coraz mniej wiarygodny i coraz więcej ludzi go ignoruje.
A to siłą rzeczy prowadzi do tego, że ktoś może zginąć, bo zignoruje alert RCB.


Podobne postybeta
Pomodoro z positive reinforcement? ;-)
Ofiara algorytmu
Paranoja i Strach
Magia CallBacka w JavaScript :-) - czyli jak przekazać dodatkowy parametr
Czemu uważam, że 500+ jest złe

4 komentarze:

  1. Dla mnie podstawowym problemem w tym systemie, jest czas jaki potrzeba na rozesłanie wiadomości. U mnie jest to rozrzut coś pomiędzy 4-6 godzin, pomiędzy kartami SIM.

    OdpowiedzUsuń
    Odpowiedzi
    1. W Polsce jest podobno 53 mln kart SIM, jak rozumiem alerty RCB idą do każdego odbiorcy w danym rejonie, nie wiem czy są obsługiwane jakimś specjalnym protokołem czy po prostu idą jako SMSy, w tym drugim przypadku wysłanie powiedzmy 3 mln wiadomości do kart SIM w okolicach Krakowa może zająć trochę czasu.
      Z tego co widzę na stronie RCB to to są jednak zwykłe SMSy, które pewnie operatorzy wrzucają do jakichś niższych poziomów ważności, więc są pewnie wysyłane "jak jest miejsce", bo nikt chyba nie chce sieci zatkać.
      Pewnie przez jakieś tajemne API przychodzi request, że dla danego rejonu, czy zespołu rejonów ma być wysłany alert o danej treści, teraz operator musi odpytać swoją bazę o telefony w danym rejonie i wysłać SMSa do każdego urządzenia...
      Sensowniej pewnie by było to zrobić na poziomie BTSa i po prostu wydać mu polecenie "wyślij" SMS do każdego zalogowanego terminala, ale nie wiem czy takie się coś da zrobić.
      IMHO to spowolnienie to wynik złego softu ;-)

      Usuń
    2. Popatrz sobie dla porównania dla USB system (chyba EMS się nazywa) niema jednocześnie dostajesz to na wszystkie urządzenia i nie jako wiadomość SMS, ale wiadomość systemową. Tak więc jeśli jest już taka technologia, i wszystkie nowe urządzenia nasłuchują jakiś kanał brokcastowych, to czemu tego nie wykorzystać - tylko zmieniając kanał?

      Usuń
    3. @SpeX bo pewnie system został zadesignowany gdy jeszcze nie było oficjalnego wsparcia dla tego nowego ;-)
      Inna sprawa, może też chodzi o to, że operatorzy wolą tak bo nie wiem, nie są w stanie stwierdzić łatwo czy urządzenie wspiera ten nowy, czy nie, więc robią fallback do starego?
      Chociaż jeszcze inna opcja, tak było taniej, a przynajmniej tak to wyglądało, do tego wszystko projektowali ludzie, którzy nigdy nie budowali dużego systemu?

      Usuń