February 16th, 2021

moose, transparent

об эффективности вакцины

Немного ликбеза про вакцину. Когда пишут, что например у вакцины от Пфайзер эффективность 95%, что именно это означает? Это НЕ ОЗНАЧАЕТ две следующие вещи:

1. Что 5% людей, получивших вакцину в исследовании, заболели ковидом. НЕВЕРНО.

2. Что на 5% людей вакцина "вообще не действует" и не защищает. НЕВЕРНО, что 95% эффективности это означают. Само по себе такое положение вещей СКОРЕЕ НЕВЕРНО, хотя в принципе возможно.

Что же на самом деле значит эффективность вакцины? Откуда взялись исходные 95%?

36 тысяч человек разделили на две группы, в каждой по 18 тысяч. Одной группе вкололи вакцину, другой - плацебо (т.е. ничего). Кто в какую группу попал, выбирали случайно (рандомизация), причем люди не знали, в какую группу они попали (слепая рандомизация), и даже врачи, делавшие укол, не знали, они дают вакцину или плацебо (двойная слепая рандомизация).
Через два месяца подсчитали число людей, которые заболели ковид-19 с какими-то нетривиальными симптомами (начиная с кашля, температуры итд. вплоть до серьезного течения болезни). В группе, получившей вакцину, таких оказалось 8. В группе с плацебо - 162. Вероятность заразиться в группе с вакциной равна 8 поделить на 18 тысяч. Вероятность заразиться в группе с плацебо равна 162 поделить на 18 тысяч. ОТНОСИТЕЛЬНЫЙ риск равен частному этих вероятностей: одну вероятность поделить на другую. Вспоминаем школьную арифметику и видим, что это равно 8 поделить на 162, это почти точно 5%. Если это вычесть из 100%, остается 95% и это называется "эффективность вакцины".

Что это значит?

Если бы вакцина ничего не делала, мы бы ожидали в группе с вакциной получить тоже (примерно) 162 больных ковидом с симптомами. А мы получили 8. Значит, когда коронавирус атаковал людей из группы с вакциной, из всех тех, кому бы "надлежало" переболеть с симптомами, вакцина "защитила" 95%, так, что у них даже симптомов не было. (замечу тут, что мы не знаем, было у них вообще заражение или нет. Есть основания считать, что вакцина также снижает заражаемость, а не только проявления симптомов, но в клиническом исследовании вакцины этого не проверяли).
Значит ли это, что тех 8 человек, которые все-таки заболели с симптомами в группе с вакциной, она "никак не защитила"?

Необязательно. Ведь в конечном итоге нас интересует не кашель с температурой, а серьезные последствия болезни, включая смерть. Скажем, если бы из 162 человек, заболевших в группе плацебо, все умерли, а из 8 человек в группе вакцины - никто, мы бы с уверенностью сказали, что вакцина защищает даже заболевших. Если бы наоборот, все 8 умерли, а из 162 все выжили, мы бы наоборот били в набат: вакцина ухудшает течение болезни у тех, кто все-таки заразился! (такое бывало в прошлом с некоторыми вакцинами, и всегда очень этого опасаются).

Что же случилось на самом деле? В группе с плацебо было 9 серьезных случаев болезни из 162, никто не умер (от коронавируса). В группе с вакциной был 1 серьезный случай болезни из 8, тоже никто не умер (от коронавируса). 9 против 1 - слишком маленькие числа, чтобы делать какие-то выводы в данном случае. Особенно 1 - слишком маленькое число. Сюда также следует добавить, что у этого 1 серьезный симптом был только один (93% насыщение кислорода в крови), и быстро прошел сам без госпитализации или лечения. Так что это такой пограничный серьезный случай. Плюс к этому то, что у вакцины Модерна разброс серьезных случаев с группе плацебо/вакцины не 9:1, а 30:0 (это не означает, что она лучше или хуже; там размеры групп другие и числа все равно слишком маленькие).

Может быть, вакцина "работает" так: если у вас "серьезное" заражение, которое должно привести без вакцины к серьезной болезни, то она ничего не делает и никак не защищает, а если "несерьезное" - то защищает в 95% случаев. Может такое быть? Почти наверняка нет, потому что тогда мы бы ожидали примерно одинаковое число серьезных болезней в обеих группах, а не 9:1 или 30:0. Тем более маловероятно, чтобы вакцина УХУДШАЛА течение серьезной болезни.

Тогда остаются два других варианта:

1. Может быть, вакцина "работает" так: если вас атакует вирус, и без вакцины вы бы заболели с симптомами (серьезно или нет), в 95% случаев вакцина помогает (снимает симптомы вообще или уменьшает их), а в 5% вообще ничего не делает. Это в принципе возможно по данным Пфайзера: если в группе плацебо 9 из 162 серьезных, а в группе вакцины 5% случаев заражения не меняются, а остальные уходят, то мы как раз можем ожидать 9 случаев и из них 0-1 серьезных.
2. Может, вакцина "работает" так: если вас атакует вирус, и без вакцины вы бы заболели с симптомами (серьезно или нет), то в 95% случаев вакцина полностью убирает болезнь, но и в оставшихся 5% работает и снижает опасность, просто не настолько, чтобы вообще симптомов не осталось. Это тоже возможно по данным Пфайзера.

Мне кажется по ряду причин более вероятным эта вторая возможность: что вакцина помогла и тем 8, что заболели в группе вакцины, просто недостаточно для того, чтобы полностью снять симптомы. Например, проверки на антитела после вакцины показывали (у гораздо меньшей группы по размеру, правда) 100%-ное наличие хотя бы одного вида антител. Но в принципе возможно и то, что 5% получивших вакцину вообще никакой пользы от нее не получают. Только не надо думать, что исследования это как-то подвердили или доказали, это совсем не так.

(И даже если это все-таки верно, и даже если вам не повезло и вы один из тех 5%, которые никакой прямой пользы от вакцины лично не получите, вам все равно польза от того, чтобы как можно больше людей провакцинировалось, потому что это почти наверняка помогает остановить вирус еще до того, как он попал в ваш организм)

Возвращаясь к началу поста:

Верно ли, что что 5% людей, получивших вакцину в исследовании, заболели ковидом? НЕВЕРНО. Это вообще полный бред. Заболели ковидом 8 из 18 тысяч, намного более мизерное число (0.04%). Даже в группе плацебо заболели ковидом всего около одного процента. Это не значит ничего особенного, могло быть больше или меньше - это зависит от того, в каких странах набирали добровольцев, как там в то время шло распространение коронавируса, были ли карантины итд. итп.

Верно ли, что на 5% людей вакцина "вообще не действует" и не защищает? НЕВЕРНО, что "95% эффективности" именно это означает. То, что верно - это что имеющиеся данные из клинических исследований совместимы как с "вакцина вообще ничего не делает у 5% людей", так и с "вакцина помогает практически всем, но у 5%, если их заражает вирус, она помогает недостаточно, чтобы убрать все симптомы". Правда где-то посредине между этими двумя возможностями (в конце концов, есть люди с практически убитой иммунной системой итд.), но наверное сильно ближе к второй, чем к первой.
moose, transparent

эта вежливая культура опенсорса

Вот небольшой уютный ламповый автоматический репликатор базы данных SQLite, интересная идея (интересно только программистам): https://github.com/benbjohnson/litestream

Но больше, чем сама программа, меня заинтересовало объяснение автора о том, что он не хочет, чтобы ему присылали изменения исходников - что для починки багов, что для новых возможностей. "Открытые исходники, но не открыто для совместной работы" (Open-source, not open-contribition). Он там объясняет, что в прошлом его опенсорс проекте у него случилось нервное истощение от того, что ему присылали кучу запросов с кодом, на которые у него уходило невозможное совершенно количество времени. И в конце концов он тот проект прикрыл, а в этом решил заранее заявить: ничего не принимаю.

Почему вообще нужно такое заявление? Ну не хочешь принимать чужой код, и не принимай, никто не может тебя заставить. Мне кажется, что дело в том, что практически весь опенсорс перешел на github.com, а там царит культура pull request. Любой может открыть в твоем проекте pull request и попросить тебя принять код, и ты конечно ничего не обязан сделать, но ожидается, что ты постараешься отнестить благосклонно.

Когда-то в доисторическую эпоху, до Гитхаба, если я скачивал откуда-то в интернете опенсорсную библиотеку или программу, у меня не было автоматического ожидания, что я могу послать автору патч и он с ним станет что-то делать. Я искал какое-то README в архиве и смотрел, что там написано на эту тему - если ничего, то мог спросить у автора почтой, перед тем, как слать код. Теперь это все кажется лишним: вот же он, репозиторий на Гитхабе, посылай pull request и все.

Проблема решается легко: надо всего лишь сделать так, чтобы владелец репозитория на Гитхабе мог запретить в нем pull requests. Тогда и объяснять ничего не надо, видно, что закрыто тут. У Гитхаба пользователи выпрашивают эту возможность последние лет семь. Гитхаб аккуратно отвечает, что да-да, мы планируем сделать, и не делают. При этом ясно же, что для них это более или менее тривиально сделать. Им просто наплевать или это хитрая политика такая?

Наверное, это пример того, как мелочь в дизайне продукта (Гитхаба в данном случае) дает огромный эффект. Меня не удивит, если десятки тысяч владельцев проектов тратят сотни тысяч часов своего времени зря, рассматривая всякие запросы с кодом, который им нафиг не нужен, потому что им неловко оттого, что кто-то уже написал этот код и сделал запрос. Люди даже боты всякие пишут, которые автоматически закрывают все созданные запросы с извинениями от автора (больше одного такого бота видел). И все из-за того, что нет одного маааахонького чекбокса в настройках проекта. Поставить галочку "не хочу запросов" и все. Но нет.