Как стать оракулом
Для тех, кто интересуется темой смарт-контрактов, ответ на вопрос, заданный в заголовке, лежит на поверхности: на сегодняшний день контракты не имеют достоверного и полного источника информации о происходящем в реальном мире. Вследствие этого складывается прескверная ситуация: мы можем описать в смарт-контракте сложную логику, а блокчейн обеспечит нам её безоговорочное исполнение. И вот, казалось бы, мы в шаге от того, чтобы избавиться от необходимости в третьей стороне при заключении договоров — именно это имелось в виду под словами «изменить мир» в заголовке. Однако любой логике, описывающей процессы реального мира, нужно знать, что в этом мире происходит. Таким образом, от «революции доверия» нас отделяет последняя преграда в виде отсутствия поставщиков информации или оракулов, как их называют в мире смарт-контрактов. Решение этой задачи дало бы колоссальный импульс распространённости и применимости смарт-контрактов. В противном случае эта технология рискует навсегда остаться лишь площадкой для реализации ICO.
Способности, не находящие применения, превращаются в ничто.
Стен Надольный
Оракулы
Оракул — это поставщик информации, который по запросу контракта предоставляет из оффчейн мира достоверные данные, необходимые для корректной работы контракта. Основные требования к оракулу — это достоверность и полнота предоставляемой информации. Здесь под достоверностью подразумевается возможность подтвердить/проверить валидность данных, а под полнотой — способность предоставлять данные о широком круге событий из реального мира. Отметим отдельно, что оракул — это не источник информации, это именно её поставщик в блокчейн. Таким образом, выбор источника информации — это один из ключевых параметров оракула, ведь для того, чтобы оракул был достоверным и полным, источник тоже должен быть достоверным и полным (об источниках поговорим в следующем разделе).
Начнем со свойства достоверности оракула. На сегодняшний день существует два основных подхода к достижению достоверности оракулов. Первый — это консенсус оракулов. Как следует из названия, в этом подходе используется консенсус нескольких независимых валидаторов. Главная проблема этого подхода (с точки зрения достоверности) — в создании сети независимых валидаторов. С одной стороны, если мы будем выбирать/назначать участников консенсуса (оракулов), то они будут зависимы от механизма выбора/назначения. Таким образом, централизация сохранится, хотя, конечно, в меньшей степени и в другом обличии. С другой стороны, если участником консенсуса может стать любой желающий, то система становится уязвимой к Sybil-атаке. Кроме того, существует мнение, что компрометировать (взломать, подкупить) несколько мелких участников консенсуса может быть легче, чем компрометировать одного крупного валидатора, так как у крупного игрока меры безопасности значительно серьезней, а репутационные издержки значительно выше.
Компания Oraclize предоставляет альтернативное консенсусу оракулов решение: пользователь сам выбирает источник информации в сети Internet. А для доказательства корректной работы оракула используются TLSNotary-доказательства. Это криптографические доказательства того, что данные, полученные из выбранного источника, переданы смарт-контракту в неизмененном виде.
На данный момент проверить эти доказательства можно в интернете, используя сетевой монитор для Ethereum (на момент написания статьи работает нестабильно). В будущем планируется реализовать возможность проверки доказательств TLSNotary непосредственно контрактом в сети Ethereum.
Важно отметить, что у обоих подходов есть проблема доверия источнику/-кам информации: оба они в какой-то степени гарантируют нам честность передачи данных от источника к контракту, однако не гарантируют честность источника (даже если мы сами его выбрали).
Источники информации
В начале этого раздела затронем тему полноты предоставляемых оракулом данных. Достижение полноты значит расширение круга источников информации, а это влечет за собой еще большие вопросы к достоверности этих данных. Рассмотрим два простых примера: если вашему контракту необходима информация о текущем курсе ETH/USD, то в качестве источников можно рассматривать крупные криптовалютные биржи, консенсус которых будет достаточно достоверным. А в случае, если контракту необходимо знать, горит ли свет в вашей спальне, найти независимых очевидцев будет крайне сложно. Можно использовать физический источник, например, камеру в спальне, однако при желании её легко обмануть: наденьте на камеру мешок, и в вашей спальне для неё будет всегда темно. Таким образом, при увеличении полноты предоставляемой оракулом информации проблема поиска достоверных источников встает еще более остро.
Первый способ обойти недостатки централизованного источника — использовать консенсус источников. Подобный подход мы уже обсуждали выше, когда говорили о консенсусе оракулов. Как и в случае с оракулами, этот подход улучшает и достоверность, и полноту предоставляемой информации, однако его положительный эффект ограничен и имеет свои недостатки (см. предыдущий раздел).
Еще один подход к решению проблемы источников информации — это косвенный метод. Идея заключается в том, чтобы извлекать информацию об интересующем нас событии из косвенных источников.
Эти источники будут разными для каждого вида событий: для температуры в Москве — фото из инстаграма с соответствующей геопозицией и датой, для результата матча — посты в социальных сетях с соответствующими тегами и датой, и т.д. Успехи последних лет в области машинного обучения, вероятно, позволят нам с приемлемой точностью определять исходы прошедших событий по косвенным источникам. Какие модели машинного обучения для этого применимы, какой будет точность, независимы ли косвенные источники — все эти вопросы должны рассматриваться для каждого конкретного события отдельно, а факт их разрешимости и будет критерием применимости косвенного метода для этого события.
Для относительно простых задач, вроде определения результата матча по достаточной выборке постов любителей спорта, эти вопросы кажутся решаемыми. Предполагается, что контракт будет обращаться к узлу, на котором производятся вычисления (извлечение прогноза из косвенных источников). Достоверность вычислений предлагается подтверждать криптографически, как это реализовано, например, в проекте Golem.
Этот подход — второй шаг в сторону полноты оракулов. Это еще не про свет в спальне, но уже про погоду, про результаты выборов, про успешность запуска Falcon Heavy.
Для полноты картины источников информации затронем тему рынков предсказаний, таких как Augur. Рынок использует «мудрость толпы» для предсказания будущих событий. Пользователи предсказывают возможный исход этих событий, покупая доли вознаграждения за правильно угаданный результат (победители разделят призовой фонд пропорционально размерам своих ставок). Таким образом, этот подход подразумевает экономическую мотивацию для участников предсказания: за правильное предсказание пользователь получает вознаграждение, а в случае неправильного теряет вложенные средства. Прогноз в данном случае — это средневзвешенное ожидание всех пользователей. Использование рынков предсказаний довольно сильно увеличивает полноту предоставляемой информации, ведь предсказывать можно что угодно (если найдется достаточно желающих), а достоверность обеспечивает экономическая мотивация участников предсказания.
Однако не все так радужно, как может показаться на первый взгляд. Во-первых, предсказание — это лишь ожидание участников рынка (можно привести много примеров событий, наступления которых никто не ожидал). Во-вторых, в такой модели возможны манипуляции предсказанием, если издержки на изменение предсказания на ложное меньше, чем прибыль от неправильной работы контракта. Например, если в контракте предполагается крупная выплата в случае события A, а факт происхождения этого события определяет рынок предсказаний с небольшим оборотом средств, то злоумышленник может сфальсифицировать событие А, потратив лишь часть полученной выгоды на манипуляцию предсказанием.
Чтобы повышать свой статус на проекте, необходимо отвечать на вопросы, и не только. В-общем, нужно зарабатывать баллы.
✈ При определённом количестве баллов Ваш статус на проекте будет повышаться, и каждый раз
будут открываться новые возможности на проекте.
Главный и основной совет — старайтесь отвечать как можно лучше. Старайтесь отвечать в тех
категориях, где Вы можете дать Лучший ответ!
Вы, участвуя в этом проекте, получите бесплатно много новой и полезной информации. =)
Нажмите на свою фотографию или псевдоним (ник), и Вы попадёте к себе в Личный кабинет, где
собраны все Ваши ответы и вопросы.
В ЛК Вы увидите количество Ваших баллов на проекте «Ответы» на текущий момент, и сможете
подсчитать – сколько ещё баллов Вам нужно, чтобы достичь следующего уровня.
Примеры из того, чем нам дурят голову каждый день
Хотите больше. Хотите чего-то, про что знают все? Ну, возьмём великую и страшную машину, которой все боятся. Полиграф. Что, вы до сих пор верите что он работает? Ссылка ведёт на википедию. Пройдите и посмотрите критику. Почему это не работает и какие там достоверности. А до сих пор их многие используют. Чем вам не бог из машины?
Мне регулярно пишут разные компании, которые предлагают сделать распознавание лжи по лицу. Очень обижаются когда я прошу их сказать какого размера у них база. Рассказывают, что у них крутая модель, разработанная лучшими физиологами.
Особенно запомнилась одна компания с шикарным офисом в центре Москвы. Абсолютно неадекватным NDA и безумным пафосом о превосходстве их технологии… С тех пор прошло почти пять лет. У компании даже свой блог на Хабре с тех пор появлялся. Только вот продукты к распознаванию лжи не имели никакого отношения, и решают куда более приземлённые задачи (как я понимаю использовали они те же наработки, что хорошо).
Забавно, что потом выяснилось, что не только я их послал, но ещё и другие фирмы занимающиеся разработкой машинного зрения. Возможно это позволило им переосмыслить что они делали — и начать заниматься делом ^_^
Напоследок не могу не удержаться и не дать ссылку на анонс портала Superjob который был несколько дней назад. Хотелось бы предложить им другой 100% проверенный метод узнать про кандидата побольше.
Наверное пришло время приходить к каким-то выводам? Выводы которые я сделал для себя — любые работы начинать и делать только после полный верификации входных данных и методологии.
Не верить никому пока он не покажет верификации своего метода открытым статистическим исследованием/доступом к алгоритму.
Я уверен, что эти выводы не идеальны. Они не годятся для медицины. Скорее всего нигде нет верифицированного исследования аспирина. Уже тысячи лет люди знают, что экстракт ивовой коры помогает сбить температуру. Зачем это исследовать?
А обобщить выводы и понять универсальную стратегию доверие vs. проверка — я не могу.
Но наверное если вы начнёте задаваться вопросом «а можно ли доверять тому или иному методу» — статья уже выполнит свою цель.
Я сознательно старался не упоминать имена людей/названия компаний где есть хоть какой-то шанс на то, что люди добросовестно заблуждаются. Или где могу заблуждаться я. Наверное, по тому, что есть в тексте, — многих можно вычислить или нагуглить. Я бы просил не выкладывать это в комментариях. Все кому надо — сделают это сами/смогут спросить в личке.
Во многих ситуациях я могу не знать глубокие подробности решений, так что не считаю нужным клеймить каких-то людей. Но мне кажется важным показать на этих примерах что наше взаимодействие с современным миром порождает кучу ошибок сознания в людях.
Введение
Начну с байки своего научрука.
Однажды, ещё во времена Союза, проходило заседание совета нескольких КБ. Один из докторов наук, руководитель большого отдела в одном из КБ, презентовал новый метод для нахождения летающих объектов радаром. При этом точность нахождения была практически идеальной, превосходила существующие алгоритмы на порядки.
В основе была какая-то хитрая фрактальная математика. Никто на совете её не смог понять из доклада/сопутствующих бумаг. А человек, который презентовал алгоритм приводил всё больше и больше доводов, что на этот алгоритм нужно переводить все радары. И репутация у него была устоявшаяся. Все чувствовали подвох. Но понять где ошибка в математике — никто не мог.
И лишь один аспирант на совете, который попал туда случайно, заменяя своего начальника, спустя час обсуждения, решил спросить: «А какая вероятность ложного обнаружения если объектов нет»? Математики он не понимал, но явно чувствовал что не может точность скакнуть на порядок.
Все замолчали. Все были уверены что такая тривиальная вещь, очевидно, проверена. Но доктор, который защищал математику, побледнел, осунулся и лишь выдавил из себя «Мы забыли посмотреть. ».
Люди, пусть даже умные и титулованные — в первую очередь ищут подтверждения своей теории. И чем больше они в ней уверены, тем более злую шутку это может с ними сыграть.
Пример номер три, повседеневный
Мне кажется, что рассказы не должны повторяться, что каждый из них должен показать человеческую природу с какой-нибудь другой стороны. Так что перейду к другой стороне.
Автомобильные номера!
Чтоо?? Какие ошибки второго рода!? Какая магия?
А они проявляются тут весьма прикольно. Вот что скажете, какой это номер у авто:
Тут “М” или “Н”? А регион “71” или “21”?
И, тем не менее, на основании одиночных изображений такого плана люди начинают оценивать качество работы системы. Как вы думаете, почему? Обычно потому что человек видел номер такого авто. И ему сложно признать что на таком фото он может иметь другую трактовку.
Происходит коллапс сознания в пользу ближайшего решения которое известно. Я привел наиболее показательный пример, но если вдруг интересно, вот тут я ещё несколько разбираю.
И переубедить его, что номер мог быть другим зачастую почти невозможно. Проще сказать «это входит в процент ошибок алгоритма».
Это очень частая ловушка сознания при работе с изображениями и системами распознавания. Человек ожидает готовое решение. И всё что пришло к другому решению — неверно. Путь не интересен. Интересен лишь результат. Пару раз в месяц мне приходится объяснять что обученный алгоритм не обязан работать по кадрам с шумом.
Мне страшно думать как некоторые фирмы предлагают услуги такого плана. Даже на очень хороших снимках сложно найти очки/перчатки и отследить их обладателя. Даже если вы не алгоритм, а живой человек.
При этом инженеры на технических предприятиях это не те люди которые задаются философской задачей «а можно ли по этому видео понять есть ли у человека защитные очки, или нет».
А ещё многие люди считают что нечитаемые номера тоже хорошо распознаются. И разрешение можно повысить в сотни раз. На хабре была замечательная статья на эту тему. И порой очень обижаются что это не так. Магия из машины не работает;)
как стать Оракулом или высший разум? Сколько нужно набрать баллов чтобы стать Оракулом или высший разум? В Майл.
НО имейте ввиду как только Вы наберёте 250 баллов и станете Знатоком количество баллов начисляемых за каждый ответ будет зависеть от КПД.
КПД меньше 2% — 0 баллов за ответ.
КПД от 2% до 3,9% — 1 балл за ответ.
КПД от 4% до 11,9% — 2 балла за ответ.
КПД от 12% до 17,9% — 3 балла за ответ.
КПД от 18% до 29,9% — 4 балла за ответ.
КПД 30% и выше — 5 баллов за ответ.
Пример номер два, про жуликов
Ну, вот как вам такой проект? Использование Neurosky для оценки талантов ребёнка? Любому человеку более-менее разбирающемуся в технологиях понятно, что это разводка. Шумнейшие показания Neurosky еле-еле позволяют отличать игру на гитаре от чтения книги.
И это не говоря о том, что для детей всё в 100 раз сложнее. Дети неспокойны, что генерирует высокий уровень шумов. И, естественно, разработчики не приводят никаких доказательств алгоритма и статистической значимости. Работало бы это — это был бы прорыв. Но это лишь способ разводки.
После моей статьи про NeuroSky мне человек пять писали с аналогичными идеями в почту/личку. Кто-то был просто псих, а кто-то вполне цинично намекал что “ну, вы систему сделайте, ведь что-то она всё равно покажет, она же не может полную чушь после обучения давать”. А тот сайт что я привёл чуть выше — приводили как пример.
И чем вам это не гороскопы?
К чему это тут? Ну, есть одна контора которая разводкой занимается. Ну саентологи есть. Ведь это не массово!
Но, мне кажется, что не пара. Такие вещи наполняют повседневную жизнь. И технологии генерируют их каждый день. Ниже по тексту будет ещё несколько показательных примеров про которые вы все прекрасно знаете (успеете вспомнить до того как дочитаете?). А в комментариях вы сможете привести свои.
Ключевым мне кажется в данном случае то, что это показывает что много людей желают верить в технологию/методологию. И одно дело, когда верят люди которые не понимаю в ней. А второе дело — самообман создателей. Второе, к сожалению, прогрессирует.
И ещё пару примеров про врачей.
Знаете. Врачи это вообще благодатная тема. Когда пытаешься что-то распознать нейронными сетями — постоянно натыкаешься на это. Я работал с большим числом рентгенографических обследований: флюорограммы, маммограммы, общался и смотрел на КТ, видел разные зубы.
И почти везде (в разной мере) имеется одна и та же проблема: разные врачи читают снимки по-разному. Просишь двух врачей отметить патологии на снимках — а у них область пересечения 20-30 процентов. И каждый из них уверен в своем решении, показывает чёткие границы.
Обосновывает свой ответ. И опять же, проблема от того, что человек выстраивает в своей голове хорошую модель, проецирует её на изображение, а потом ищет подтверждение. Но очень часто — это неправильный ответ. Или недостоверный.
К сожалению, прошлые столетия медицина больше строилась не на “доказательстве каждого шага статистикой”, а на “логическом объяснении каждого шага”. Это очень глубоко сидит в психологии. Порой мне кажется, что врач-гомеопат и плохой терапевт работают по одному принципу. Есть набор базовых установок и вера в него. Без анализа откуда что пошло. Без осознания чему можно доверять. Скорее всего набор установок терапевта более приближен к реальности. Но глобально ни тот ни другой не могут доказать те схемы которые используют. Может даже оба назначат валидола или отправят попить пустырника.
Однажды меня попросили проконсультировать хирурга… Начальник какого-то отделения, видный специалист с 30-летней практикой. Дядечка мне рассказывал как с 100% точностью по опроснику уровня «дата рождения, дата первых месячных, число детей, ..» из 30 вопросов можно предсказать когда будет рак груди. Ну, это, конечно, смешно. Но этот опросник он предлагает заполнить всем своим пациентам, делая выводы на его основе.
Краткий гайд по созданию оракулов, богов из машины и ошибкам второго рода
Наверное, в этом тексте для многих не будет новизны. Наверное, другие скажут что такого не бывает в реальной жизни. Но, уже не первое апреля, а всё написанное тут — чистая правда, которая случалась со мной или с людьми вокруг. Возможно что-то из сказанного заставит вас переосмыслить окружающие вас феномены.
Если подходить к этим историям формально, то можно сказать что все они порождены тем что люди не учитывают ошибку второго рода. У Юдковского, с коим знакома четверть Хабра — эта ошибка обычно зовётся «Подтверждающее искажение».
Что это такое? В двух словах — «человек ищет подтверждение своей модели, а не её опровержение». Единственный шанс объяснить лучше, это примеры-примеры-примеры и опыт. Лишь так можно развить чувство что «что-то тут не так».
Мне кажется, что этот короткий рассказ позволит вам посмотреть на ошибки второго рода с совсем другой стороны. Со стороны того, как они уже вошли в нашу жизнь, влияют на практически каждое решение. И помогают нам делать богов из окружающих технологий. В машинном обучении я наталкиваюсь на это каждый день.
Прочувствовать на себе
Если статья продолжится так дальше, то тут не будет картинок! Но ведь я знаю, что статьи на Хабре открываются только ради класных картинок!
И по этой теме их много. Они подтверждают, что особенность доверять наиболее простому решению заложена в нас на уровне природы. Все вы их видели много раз. И, наверное, не надо объяснять:
Классическое желтое (синее ?) платье.
Куб Неккера, как тут без него
Вращение вправо/влево
Особенность этих иллюзий — они имеют двойное толкование. Мозг зацикливается только на одной точке зрения, которая разрешает задачу. И упускает из внимания другие точки зрения. И только скажите мне что можете удержать в голове одновременно два представления.
Это как религия, которая может объяснить природу феноменов. Как гороскопы, которые ни о чём, но человек ищет подтверждение. Зачастую нельзя определить что тебе насчитала умная система и как это сопоставить с реальностью. Не верите?
Пример номер четыре, или как можно оказаться в эпицентре
Я привёл три различных варианта. И на все можно ответить стандартным: “да ну его, это просто некомпетентные люди”. Или: “люди ошиблись, с кем не бывает”.
Но, такого рода ошибки куда более распространены, чем вам кажется. Как только мы имеем дело с неоднозначными решениями, с ситуациями где возможно 3-4 исхода — нельзя оценить уровень своей компетентности. Даже если вы очень крутой инженер.
Расскажу вам эпичную историю о том, как могут ошибаться (или не ошибаться) специалисты, находя себе бога из машины.
Однажды мне написали с просьбой устроить консультацию по распознаванию каких-то медицинских анализов. По телефону я не особо понял объяснения менеджера что надо распознавать. Тем более по его словам дело было о какой-то “абсолютно новой” методике. Так что договорились встретиться с врачами которые её разработали (скайп для врачей это слишком сложно).
На следующий день, спустя два часа встречи мой мозг вскипал. Я не понимал с кем я общался два часа. С абсолютными жуликами, с будущими нобелевскими лауреатами, или с людьми которые сошли с ума.
Группа из нескольких врачей изобрела универсальный тест, который позволял выявить десятки, если не сотни заболеваний. По моче, по крови, по слёзам и по слюне.
Метод был один и тот же: “замешать жидкость с реактивом (одним и тем же), посмотреть как оно засохнет и растрескается”. Диагноз ставился по тому как будут выглядеть трещины, тому какого цвета будет всё это дело, тому какой формы вырастут на засохшей капле кристаллы, как всё выглядит в поляризованном свете.
И надо сказать, что первая часть, которая была по моче — была достаточно неплохо обоснована.
Когда в следующие дни я пытался раскопать информацию по теме и опрашивал врачей — они подтвердили что многое это очень сильно передёрнутые стандартные тесты, которые имеют место быть в реальности. Хотя где-то про треть книги с сомнением качали головой.
Но вот вторая часть, по крови, была произведением безумия. Какой там Theranos! Просто надо было не какой-то там американке 4.5 миллиарда выделить, а этим товарищам.
Исследователи рассказывали мне как по капле крови они могут поставить рак на самых ранних стадиях. Всего лишь с помощью микроскопа, пары капель реактивов из любой лаборатории (если память не изменяет, то это был альбумин). И рассказывали как успешно применяют эти методологии в клинической практике для лечения пациентов медицинского центра (sic!). Вот небольшой список того что они детектировали:
(Кликабельно)
На мой несколько офигевший взгляд и вопрос про доказательную базу мне рассказали о сотнях статей в литературе, о двух отделах в России работающих по этой методике и развивающих её. Про десяток кандидатов и докторов наук защитившихся по теме. А на прощание подарили две книги по теме, где предисловие было написано каким-то академиком:
Правда ли это всё? Не знаю. Я понял что мне не хватает ни понимания того как работает химия и биология. Ни понимания того как найти эту информацию. А по формальным признакам. Ну да. Есть куча докторов и статей по теме. Ни одна из них не опубликована в рецензируемом международном журнале с высоким уровнем цитируемости. Есть академики которые рассказывают об успехах методологии. Но они, простите, академики РАМН. Нет ни одной критикующей статьи, только статьи отчитывающиеся об успехах (гуглил году в 2016, с тех пор могло что-то новое выйти).
Нет, ну я, конечно, нашёл e-mail председателя комиссии по лженауке, и какого-то их его заместителей. И написал про всё про это… Ответа не получил:)
А по личному общению. Я понимаю что эти люди верят в это. Блин, российская медицина это не то место где ты на обмане такого уровня можешь что-то сделать. Нужно реально верить в своё дело.
Но я понимаю, что при базах на которых они измеряют, при тех параметрах, которые там есть — как минимум половина рассказанного сомнительна. Но что-то реально может работать.
Та работа слава богу у меня не пошла. Возможно из-за того что я говорил что чтобы что-то автоматически распознать — надо сначала собрать большую базу и подтвердить независимой разметкой что оно существует. А может и правда из-за бюрократических формальностей.
Кто здесь прав? Врачи которые придумали себе теорию и верят в неё? Или я — человек со стороны, которому она кажется безумием? Я не знаю. Если врачи ошибаются- то это классическая ошибка “отсутствие проверки контраргументов”. А может я. И тогда это почти то же самое:)
Зато с тех пор у меня есть две эпичных книжки и фантосмогорическая история.
Читайте также: