акинатор что это такое
Akinator
Akinator
Основная информация
Дата(ы) выпуска
Платформы
Геймплей [ ]
Вся суть игры состоит в том, что игрок должен загадать какого-либо персонажа(обычно из YouTube): реального (предизента, актера, управляющего крупной компанией или просто чем-то известного живущего или жившего человека) или вымышленного (из фильмов, книг, игр). Джинн Акинатор будет задавать вам вопросы про персонажа, а вы должны отвечать на них. Вариантов для ответа всегда пять: Да, Нет, Я не знаю, Возможно (частично), Скорее нет (не совсем). Первые вопросы, как правило общие, и они будут касаться того, является ли персонаж человеком, реальным или вымышленным, какого пола, из видеоигры или книги и т.п. После этого он будет задавать более конкретные вопросы про внешность персонажа, его особенности, характер. Бывает иногда, что вопросы повторяются. Это бывает, когда вы даете неопределенные или противоречивые друг другу ответы. Когда джинн отгадывает персонажа, то он спрашивает, отгадал или нет. Если нет, то игра продолжается, и джинн задает еще вопросы. Если и в третий раз Акинатор не отгадал, то он признает игрока победителем.
Честно говоря, такое бывает довольно редко. Обычно джинн угадывает популярных персонажей сразу, иногда со второй или третьей попытки. Если это очень не популярный персонаж, то джинн, вероятно, не отгадает его и выберет другого, близкого ему по свойствам персонажа.
Важной особенностью игры является то, что если джинн не смог отгадать персонажа и сдался, то он предложит игроку самому «создать» этого персонажа, и он потом сможет фигурировать в общем огромном словаре персонажей; джинн сможет отгадывать этого персонажа и у других игроков. Таким образом, библиотека персонажей постоянно увеличивается, делая игру разнообразнее и интереснее.
В целом, игра получила положительные отзывы благодаря своей неповторимости и динамичности!
Но написанное выше, увы, устарело начиная с 2019 года, поскольку программа значительно поглупела, и спустя 2-3 вопроса Акинатор начинает задавать те же вопросы. что были при отгадывании предыдущих персонажей. И нередко он задаёт одинаковые вопросы, а также те, которые связаны с нынешними трендами. Это значительно усложняет задачу «отгадай кого-нибудь за 30 вопросов», поскольку лишь последние 5-9 будут осмыленными.
Вдобавок, игра сделала сильный уклон в микротранзакции, на которые сильно взлетела цена. А без них все загадываемые «непопулярные» персонажи скрыты, и без просмотра рекламы (которая может и не работать даже с отключенным адблоком) персонажи не будут открыты, и игрок не получит монеты вообще.
Как акинатор угадывает? На чем основан принцип его распознавания?
Sergey Litvinov дал ссылку на исчерпывающее описание общей сути алгоритма.
Если же вы хотели получить ответ простыми словами, то можно ответить так.
Но это уже детали. А общий принцип таков: каждый раз после вашего ответа у Акинатора «в голове» остаётся список персонажей, которые соответствуют вашим ответам. И каждый раз он старается задать вопрос, который вычеркнет наибольшее число вариантов, пока не останется один вариант.
В реальности алгоритм Акинатора гораздо масштабнее и хитрее описанного. Он учитывает разные нюансы, в том числе, насколько я заметил, он учитывает тренды (например, допустим, персонажей из сериалов чаще загадывают после того, как закончилась очередная серия). Если много других людей незадолго перед вами вдруг загадали какого-то персонажа, высока вероятность, что и вы тоже решили его загадать. Он даже подстраивается под ваши личные интересы. Если вы, например, любите задавать вопросы о вымышленных персонажах (как мой племянник), Акинатор будет ожидать этого и в следующий раз.
Может казаться чудом, что Акинатор за 20 вопросов часто умудряется отгадать вашего персонажа, ведь он, вроде, и вопросов никаких особых не задал. Однако математика нам говорит, что если бы на каждом из 20 вопросов удавалось подобрать такой вопрос, чтобы ответ всегда отсеивал половину вариантов (как вопрос «женщина ли она»?), то 20 вопросов было бы достаточно, чтобы правильно отличать больше миллиона разных персонажей. А 40 вопросов было бы достаточно, чтобы отличить свыше триллиона (!) персонажей. Акинатор спроектирован так, чтобы как можно лучше находить нужные вопросы, и у него это весьма хорошо получается.
Все, что вы хотели знать об Акинаторе
Как мне играть с Акинатором?
Чтобы играть с ним, думаю, задумайте персонажа, реального или вымышленного, хорошо его запомните, а затем выберите в меню «играть > персонажи».
Акинатор начнет задавать вам ряд вопросов, на которые вы должны ответить так правдиво, насколько это возможно. После этого ряда вопросов, он ответит вам, кого вы задумали.
В чем секрет Акинатора?
Как я могу загрузить картинку?
В конце игры, когда Акинатор отгадал задуманного вами персонажа, вы можете добавить или предложить картинку для данного персонажа.
Пользователь соглашается не загружать фотографии, которые нельзя использовать бесплатно и без ограничений.
1. Добавить картинку:
Персонаж, которого вы загадывали, не имеет изображения. Если вы хотите добавить картинку, вы должны нажать на кнопку «Отправить изображение» и следовать инструкциям.
2. Предложить картинку:
Персонаж, которого вы загадывали, уже имеет изображение. Если вы хотите предложить новое, вы должны нажать на кнопку «Предложить изображение» и следовать инструкциям.
— Вы должны заявить, что «Вы прочитали и приняли условия предоставления услуг. Загружая это изображение, вы заявляете, что вы имеете право опубликовать его.»
— Новое изображение будет видно только тогда, когда модератор примет и утвердит его (см. статью 4. Модерация).
Как я могу добавить персонажа?
Персонажи, которые могут быть добавлены в базу данных Акинатора, должны быть известными личностями. Пользователю предлагается не добавлять людей, которые не принадлежат к этой категории, в частности, людей, которых пользователь знает лично, даже если эти люди согласны на это.
1. В конце игры, когда Акинатор отгадал персонажа, которого вы задумали, вы можете изменить имя этого персонажа. Вы должны нажать на кнопку «Предложить новое имя». Вам будет предложено ввести новое имя, очень краткое описание (два-три слова), чтобы не перепутать данного персонажа с его однофамильцем и необязательный комментарий, объясняющий, почему вы хотите изменить имя персонажа. Ваше предложение будет учтено лишь после проверки модератором (см. статью 4. Модерация).
2. В конце игры, если Акинатор не отгадал задуманного вами персонажа, вы можете добавить этого персонажа в базу данных Акинатора.
— Если Акинатор находит сходство с другими персонажами из своей базы данных, он даст вам список этих персонажей.
• Если ваш персонаж присутствует лишь один раз в списке, вам просто нужно выбрать его.
• Если ваш персонаж присутствует несколько раз в списке, вы должны нажать на кнопку «Мой персонаж виден несколько раз», а затем выделить все экземпляры данного персонажа в списке.
• Если ваш персонаж отсутствует в списке, вы должны нажать на кнопку «Мой персонаж отсутствует в списке» и ввести его имя и короткое описание.
— Если Акинатор не может найти сходство ни с одним персонажем из его базы данных, вы сможете добавить своего персонажа, введя его имя и короткое описание.
— В любом случае, то, что вы добавили, будет немедленно внесено в базу, но может быть удалено модератором позже (см. статью 4. Модерация).
Как я могу добавить вопрос?
В конце игры, когда Акинатор отгадал персонажа, которого вы задумали, вы можете добавить вопрос, нажав на кнопку «Добавить вопрос». Вы должны будете ввести одно или несколько ключевых слов из вашего вопроса.
— Если Акинатор находит сходство с существующим в его базе данных вопросом, он выдаст вам список вопросов.
1. Если ваш вопрос присутствует в списке, вы должны выбрать его и добавить информацию к нему.
2. Если ваш вопрос отсутствует в списке, вы должны нажать на кнопку «Нажать сюда», чтобы добавить свой вопрос и добавить информацию к нему.
— Если Акинатор не находит сходства с любой из существующих в его базе данных вопросом, вы сможете добавить свой вопрос и добавить информацию к нему.
— Все предлагаемые вопросы будет добавлены в базу лишь после утверждения их модератором (см. статью 4. Модерация).
Акинатор и математика
Функциональные требования
Алгоритмы
Если бы не прощение ошибок, добиться желаемого можно было бы довольно просто. Например, можно было бы хранить дерево ответов на вопросы, в котором внутренние вершины соответствовали бы вопросам, а листы — ответам. Процесс игры тогда выглядел бы как спуск от корня к одному из листов. Тем не менее, с прощением ошибок этот алгоритм справляться не будет. Да и вопросы балансировки дерева возникают.
В каком-то смысле дерево — это очень «механистический», «машинный» способ игры, крайне неустойчивый к малейшим неточностям. Нам же нужно играть так, как стал бы играть рациональный человек. Тем, кто более-менее знаком с теорией вероятности, должно быть известно, что у нее существует так называемая Байесовская интерпретация, а также основанный на ней Байесовский подход. В основе этого подхода лежит описание знаний с помощью распределений случайных величин с последующим преобразованием априорных знаний в апостериорные на основе наблюдений при помощи знаменитой формулы Байеса. Более того, такой подход является единственным обобщением классической алгебры логики на случай неопределенности (об этом можно прочитать, например, тут). Это наводит многих ученых на мысль, что Байесовский подход является эталоном рационального мышления. Что же, нам только этого и нужно. Попробуем применить его к нашей задаче.
Байесовская модель
Итак, вспоминаем формулу Байеса: P(A|B) = P(B|A)P(A)/P(B). А теперь словами. Пусть нам нужно оценить вероятность того, что произошло событие A, при условии, что событие B точно произошло (то есть мы его гарантированно пронаблюдали; именно поэтому B часто называют наблюдением). По формуле Байеса эта вероятность пропорциональна произведению двух других. Первая из них, P(B|A), называется правдоподобием и показывает, с какой вероятностью событие B происходит при условии, что произошло A. Второй множитель, P(A), — это так называемая априорная вероятность события A, то есть вероятность, что оно в принципе произойдет (вне зависимости от B). По сути, эта вероятность отражает информацию, которую мы знали об A до того, как узнали о том, что произошло B. В знаменателе формулы также присутствует величина P(B), которая в данном случае просто играет роль нормировочного коэффициента и может быть проигнорирована.
Априорную вероятность P(Ai) можно рассматривать как частный случай P(Ai|B) при k=0. Иначе говоря, это вероятность, что игрок загадал объект i при условии, что вопросов задано не было, и мы вообще ничего не знаем. С одной стороны, можно было бы дать всем объектам равные P(Ai), т.к. это честно. С другой стороны, Барака Обаму наверняка будут загадывать намного чаще, чем Холдена Колфилда. Поэтому при прочих равных (то есть когда мы не можем различить объекты), следует выбирать именно Обаму. Следовательно, естественной оценкой P(Ai) будет отношение числа игр, когда был загадан X, к общему их числу.
Правдоподобие P(B|Ai) тоже получает удобную интерпретацию. Только прежде нужно воспользоваться одним небольшим трюком — предположить условную независимость ответов на вопросы при условии Ai (несколько грубое, но очень удобное для нас упрощение). В переводе на русский это значит, что по предположению вероятность P(B|Ai) может быть записана в виде произведения (по j) вероятностей P(Bj|Ai), где Bj — событие вида «На вопрос Qj был дан ответ Aj». P(Bj|Ai) в этом случае будет отношением числа раз, когда при загаданном объекте i на вопрос Qj был дан ответ Aj к числу раз, когда при загаданном объекте i в принципе был задан вопрос Qj. В целях избежания нулевых и неопределенных вероятностей предлагаю дополнительно считать, что изначально на каждый из вопросов каждый из вариантов ответов был дан по разу. То есть в случае, если вопрос Qj еще ни разу не задавался об объекте i, P(Bj|Ai) будет равно 1/Nj, где Nj — число вариантов ответа на вопрос Qj (я, к слову, использовал для всех вопросов одни и те же 4 варианта ответа: «да», «нет», «не знаю» и «вопрос не имеет смысла»).
Подведем промежуточный итог. Мы нашли простую формулу, которая отображает набор пар вопрос/ответ и некоторую сущность в вероятность, что при данных ответах на вопросы была загадана именно эта сущность. Пересчитав эту вероятность для всех объектов в нашей базе данных после ответа на новый вопрос можно видеть, какие из них больше похожи на загаданный объект на настоящий момент. Более того, обучение нашей модели реализуется довольно просто: нужно просто для каждой сущности в базе хранить информацию о том, какие вопросы про нее задавались и сколько ответов каждого из типов дали пользователи. После каждой игры эту информацию можно обновлять, основываясь на ответах пользователя. Также, для учета «популярности» персоны в базе нужно хранить число раз, которое персона была загадана.
Выбор вопросов, информация и энтропия
Ну что же, осталось только понять, какие вопросы лучше задавать. Естественно, задавать нужно те вопросы, которые дают больше информации. Но разве мы можем как-то эту информацию измерить? Оказывается, что да. Для этого можно воспользоваться понятием информационной энтропии. Если говорить грубо, но понятно, то информационная энтропия — это такая характеристика распределения случайной величины (измеряемая, как и информация, в битах), которая показывает, насколько мы не уверены в том, какое значение эта случайная величина примет. Например, если случайная величина принимает значение 1 с вероятностью 0.99, и значение 0 — с вероятностью 0.01, то энтропия такого распределения будет очень близка к нулю. Если же случайная величина принимает, к примеру, значения 0 и 1 с равными вероятностями 0.5 (орел или решка), то энтропия такой случайной величины будет равна 1 биту (это как раз то количество информации, которое мы должны получить, чтобы устранить неопределенность).
Ладно, давайте выбирать каждый раз тот вопрос, ответ на который сильнее всего уменьшит энтропию распределения P(Ai|B), которое как раз и отвечает за наши знания о том, кого загадал игрок. Тут сразу возникает еще одна проблема: вообще говоря, разные ответы на один и тот же вопрос могут уменьшать энтропию по разному. Что же делать? Предлагается находить тот вопрос, для которого ожидаемое уменьшение энтропии будет максимальным. Ожидаемое уменьшение энтропии показывает, насколько «в среднем» уменьшится энтропия, если мы зададим некоторый вопрос. Чтобы не писать здесь еще несколько абзацев текста, приведу формулу, по которой эту величину можно посчитать. Желающие без труда поймут, почему она имеет такой вид. Итак, нужно каждый раз задавать такой вопрос j, для которого величина H[P(Ai|B, )]P( ) +… + H[P(Ai|B, )]P( ) минимальна. Через H[P] тут обозначена энтропия распределения вероятности P, а через » » — событие «на вопрос Qj дан ответ Ans». Величину P( ) можно легко найти по формуле полной вероятности, просуммировав ее, обусловленную по всем известным объектам. То есть P( ) = sum(i) P( |Ai) P(Ai|B).
Оказывается, что такой подход позволяет очень быстро отбрасывать нерелевантные вопросы, сосредотачиваясь на самом главном. В каком-то смысле этот метод является обобщением метода «деления пополам» в вероятностной постановке. Посмотреть, как все это работает вместе, можно на видео ниже.
Как работает акинатор? (длиннопост)
Будь как Сергей!
Соседи
В понедельник было. Поднимаюсь в лифте, подхожу к двери своей квартиры. Около соседней двери ребенок лежит. Девочка, лет 8- 9. Думал инфаркт хватит. Меня.
Подбежал; толкаю. Спит. Тормошу, просыпайся..
— Тебя как зовут? Где живешь?
Молчит. Что делать? ХЗ.
Стучу в дверь.
Не открывают.
Звоню на горячую линию Департамента соц. защиты населения по решению проблем безпризорности.
Спасибо Гугл. Девочку к себе завел, после того, когда звонок приняли и сказали, что едут.
Приехали минут через 40. Мы пока чай попили, познакомились. Варя, 9 лет. Живет с мамой, пришла со школы (примерно в 14:00), дверь мама не открыла, но она дома ( со слов ребенка). Пошла, погуляла. Еще пришла, дверь не открывают. Причем у ребенка есть ключи, но закрыто на внутренний замок.
Приехала соц.защита, поговорили с Варей, забрали её, увезли.
Сегодня, среда 01.12.21.
Стук в дверь (звонка нет)
Открываю. Стоит мадам ( лет 30 с прицепом, лицо уставшее от синьки, прям утомленное)
— Это ты вызвал ментов, чтобы мою девочку забрали?
— Да, не ментов, а органы соц.защиты
И еще 5 минут отборного мата и ругани. Пообещали машину сжечь ( не знаю чью, у меня нет), короче. соседи попались такие, что врагов не надо.
Аренда
По поводу алкоголя в Чечне
Вот и всё. Уехал и ничего не выгружал. Также наезжаю на чехов.
Вот и всё. Шлите их лесом. Только без мата. Аккуратно и красиво. Мы в своей стране и не надо нам тут навязывать свои правила. Идиоты, блин.
На волне национальностей
Суд оставил на свободе жителя Кавказа за убийство сестры, «опозорившей» семью
Магомедбашир Могушков зарезал младшую сестру Лизу после того, как увидел видео с ней в интернете.
Когда 6 февраля 2020 года к Исе в квартиру в Магасе ворвались полицейские, 33-летняя Елизавета Евлоева (Могушкова) была там. Запись допроса, где видно ее лицо, и та называет свое имя, один из сотрудников «слил» в сеть. Ролик показали у себя кавказские сообщества с многотысячной аудиторией.
И тем не менее в марте 2021 года суд приговорил экс-сотрудника лишь к 1 году и 9 месяцам колонии-поселения. Но сразу же освободил, зачтя срок, отбытый в СИЗО.
На Магомедбашира Могушкова в феврале 2020 года завели уголовное дело по статье «Убийство». Приговор ему вынесли только теперь. Об этом «КП-Северный Кавказ» узнала в нидерландском правозащитном центре Stichting Justice Initiative*. За лишение жизни родной сестры Магасский районный суд назначил Могушкову два года ограничения свободы, расценив преступление как «убийство в состоянии аффекта».
То есть Магомедбашир не сможет покидать место постоянного проживания (пребывания) в определенное время суток, посещать какие-то места и выезжать за пределы обозначенной судом территории.
Мне нужен кран!
Ну и через пару дней привёз мне на работу шикарный подъёмный кран. Спасибо ему огромное за такой поступок, правда, в сам момент звонка я чуть инфаркт не заработал.»
Ну и от меня спасибо за этот чудесный кран, с ним теперь уже мой сын играет)
Кино в одного.
Я не баянист, а классик
В Китае открыли моноклональное антитело, нейтрализующее все штаммы коронавируса
Молекулярные биологи из Китая открыли антитело 35B5, способное соединяться с самым стабильным регионом в структуре S-белка коронавируса и нейтрализовать все его штаммы, в том числе вариацию «омикрон». Первые итоги опытов с этими молекулами были раскрыты в статье в электронной библиотеке bioRxiv.
Группа медиков из Китая под руководством Дена Кая, профессора университета Сунь Ятсена в Гуанчжоу (Китай), обнаружила в образце крови одного из переболевших жителей Китая уникальное антитело, одинаково эффективно нейтрализующее все распространенные штаммы SARS-CoV-2.
Эта молекула, получившая имя 35B5, была открыта в ходе масштабного исследования, направленного на изучение большого количества образцов крови жителей Китая, перенесших COVID-19 в тяжелой форме. Ученые выделяли из них культуры B-клеток, производящих антитела, и наблюдали за тем, какие вирусные частицы те могут атаковать.
Подобные поиски помогли медикам выделить две молекулы, 35B5 и 32C7, даже небольшие концентрации которых активно нейтрализовали частицы первых вариаций SARS-CoV-2. Последующие опыты показали, что антитело 35B5 столь же эффективно боролось с бета- и дельта-штаммом коронавируса, тогда как сила действия второй молекулы резко снизилась.
Схожие результаты ученые получили в ходе опытов на мышах, зараженных всеми распространенными штаммами коронавируса. Антитело 35B5 защитило всех грызунов от гибели и серьезных повреждений легких, тогда как эффективность второй молекулы заметно упала при борьбе с новыми вариациями SARS-CoV-2.
Универсальный характер действия антитела 35B5, как показали фотографии с криоэлектронного микроскопа, было связано с тем, что данная молекула соединяется с той частью S-белка коронавируса, которая почти не меняется по мере эволюции SARS-CoV-2. Ее структура одинакова для всех разновидностей коронавируса, в том числе и для недавно выявленного штамма «омикрон».
Этот же участок, как считают профессор Ден Кай и его коллеги, можно использовать в качестве «мишени» для создания универсальных вакцин, способных подавлять все уже существующие штаммы коронавируса, а также последующие вариации SARS-CoV-2, которые могут возникнуть в ближайшие месяцы и годы.