Русский
Русский
English
Статистика
Реклама

Теория вероятностей

Из песочницы Байесовские сети при помощи Питона что и зачем?

11.07.2020 10:23:53 | Автор: admin
Дисклеймер: данная статья является адаптированным переводом. Оригинал можно прочесть здесь.

Байесовские сети при помощи Питона объяснение с примерами


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

Основываясь на данном факте, эта статья полностью посвящена работе Байесовских сетей и тому, как они сами могут не формировать проблемы, а применяться в их решении, даже если решаемые проблемы крайне запутаны.

Структура статьи


  • Что такое Байесовская сеть?
  • Что такое направленные ациклические графы?
  • Какая математика лежит в Байесовских сетях
  • Пример, отражающий идею Байесовской сети
  • Суть Байесовской сети
  • Байесовская сеть в Питоне
  • Применение Байесовских сетей

Погнали.

Что такое Байесовская сеть?


Байесовские сети входят в категорию вероятностных графических моделей (ВГМ). ВГМ используются для вычисления изменчивости для применения в концепциях вероятности.
Общепринятое название Байесовских сетей Глубокие сети. С их помощью моделируются направленные ациклические графы.

Что такое направленные ациклические графы?


Направленный ациклический граф (как и любой граф в статистике) представляет собой структуру узлов и ссылок, где узлы отвечают за некоторые значения, а ссылки отражают отношения между узлами.

Ациклический == не имеющих направленных циклов. В контексте графов это прилагательное означает, что начиная путь от одной точки, мы пройдем не полностью всю схему графа, а только её часть. (То есть, например если мы начнем с узла 2 на картинке, мы точно не попадем в узел 1).



Что же моделируют эти графики и какое выходящее значение дают?

Модели неопределенных направленных графов в том числе базируются на изменении вероятностного происхождения события для каждого из рандомных значений. Для представления и интерпретации каждого значения применима таблица условной вероятности и, таким образом мы можем смоделировать разветвление вероятности последовательно-происходящих событий.

Всё ок. Я тоже сначала запуталась. Для пущего понимания разберем математическую составляющую Байесовских сетей.

Математика Байесовских сетей


Как уже было сказано в определении, Байесовские Сети основываются на теории вероятности, следовательно до начала работы с Байесовскими сетями надо разобраться с двумя вопросами:

Что такое условная вероятность?

Что такое совместное среднее распределение вероятностей?

Условная вероятность

Условная вероятность некоторого Х события это численное значение вероятности того, что событие Х произойдет при условии, что некоторое событие У уже произошло.

Стандартная формула вероятности для одного значения (не приводится в статье): P(X) = n(x) / N, где n исследуемые события, а N все возможные события.

Для двух значений применимы следующие формулы:

Если Х и У зависимые события:
P (X или Y) = P (X Y) / P (Y), пересечение вероятность X и У / на вероятность У. (Знак в числителе означает пересечение вероятностей)

Если события Х и У независимы:
P(X или Y) = P (X), то есть наступление исследуемых событий равновероятно друг другу.

Совместная вероятность

Совместная вероятность определение статистической меры для двух или более событий, происходящих единовременно. То есть события Х, У и, допустим С происходят вместе и мы отражаем их совокупную вероятность, используя значение P(X У С).

Как же это работает в Байесовских сетях? Разберемся на примере.

Пример, отражающий суть Байесовской сети


Допустим, что нам нужно смоделировать вероятность получения одной из градаций оценки студента на экзамене.

Оценка складывается из:

  • Уровня сложности экзамена (е): дискретная переменная с двумя градациями (тяжелый, лёгкий)
  • IQ студента: дискретная переменная с двумя градациями (низкий, высокий)

Полученное значение оценки будет использоваться в качестве предиктора (предсказательного значения) вероятности поступления студента или студентки в университет.

При этом на допуск к поступлению также будет влиять переменная IQ.

Представим все значения при помощи направленного ациклического графа и таблицы распределения условной вероятности событий.

Используя такое представление, мы сможем рассчитать некоторую совокупную вероятность, формирующуюся из произведения условных вероятностей пяти переменных.

Совокупная вероятность: $inline$p(a, m, i, e, s) = p(i)*p(e)*p(s|i)*p(a|m)*p(m| i,e)p(a, m, i, e, s) = p(i)*p(e)*p(s|i)*p(a|m)*p(m| i,e)$inline$



На иллюстрации:

p(e) распределение вероятностей для градаций переменной экзамен (влияет на оценку p(m|i,e)))

p(i) распределение вероятностей для градаций переменной IQ (влияет на оценку p(m|i,e)))

p(m |i, e) распределение вероятности для градаций оценок, базирующаяся на уровне IQ и сложности экзамена (зависит от p(i) и p(e))

p(s| i) коэффициенты вероятности для способностей студента, базирующиеся на уровне его IQ (зависит от переменной IQ p(i))

p(a | m) вероятность зачисления студента в университет, базирующаяся на его оценках p(m|i,e)

Здесь напомню, что свойство ациклического графа отражение взаимосвязи. На рисунке мы четко видим, как родительские узлы влияют на дочерние и как дочерние зависят от родительских.

Отсюда вырисовывается формулировка множества значений, генерируемых при помощи Байесовских сетей.

Суть Байесовской Сети




Где вероятность X_i зависит от вероятности соответствующего родительского узла и может быть представлена любым рандомным значением.

Звучит просто и это справедливо Байесовские сети являются одним из наиболее простых методов, применяемых в описательном (дескриптивном) анализе, прогнозном моделировании и пр.

Байесовская Сеть в Питоне


Давайте рассмотрим применение Байесовской сети к задаче, именуемой парадокс Монти Холла.

Суть: представьте, что вы участник апдейт-формата игры поле Чудес. Барабан больше не крутиться теперь вы должны не прилагать свою F, а играть с p.

Перед вами три двери, за которыми равновероятно может расположиться один автомобиль. Двери же, за которыми нет автомобиля приведут вас к козам.
После выбора, ведущий из оставшихся открывает ту, что ведет к козе (например, вы выбрали дверь 1, значит ведущий открывает либо 2, либо 3 дверь) и предлагает вам сменить выбор.

Вопрос: шо делать?

Решение: изначально вероятность выбрать дверь с автомобилем = 33%, а с козой = 66%.

  1. Если вы попали в 33%, смена двери ведет к проигрышу => вероятность выиграть == 33%
  2. Если попали в 66% смена ведет к выигрышу => вероятность выиграть == 66%

С точки зрения математической логики, смена двери совокупно в 66% процентах ведет к выигрышу, а в 33% к проигрышу. Следовательно верная стратегия менять дверь.
Но мы тут о сети говорим, да и дверей может быть очень много, поэтому переложим решение в модель.

Построим направленный ациклический граф с тремя узлами:

  • Дверь с призом (всегда с авто)
  • Выбираемая дверь (либо с авто, либо с козой)
  • Открываемая дверь в событии 1 (всегда с козой)



Чтение графа:

На дверь, которую откроет Монти строго влияют две переменные:

  • Дверь, выбираемая гостем (вами) тк Монти 100% НЕ откроет ваш выбор
  • Дверь с призом, тк Монти всегда открывает непризовую дверь.

По математическим условиям классического примера приз равновероято может быть расположен за любой из дверей, ровно как и вы равновероятно можете выбрать любую дверь.

#Импорт пакетов для работыimport mathfrom pomegranate import * # Отражаем вероятность события "Гость выбирает дверь" (равновероятно одну из 3х)guest =DiscreteDistribution( { 'A': 1./3, 'B': 1./3, 'C': 1./3 } ) # Отражаем вероятность события "За дверью есть приз" (равновероятно за одной из трёх)prize =DiscreteDistribution( { 'A': 1./3, 'B': 1./3, 'C': 1./3 } ) # Поскольку дверь, которую выберет Монти зависит от двух други,  для данной переменной # строим таблицу распределния вероятностейmonty =ConditionalProbabilityTable([[ 'A', 'A', 'A', 0.0 ],[ 'A', 'A', 'B', 0.5 ],[ 'A', 'A', 'C', 0.5 ],[ 'A', 'B', 'A', 0.0 ],[ 'A', 'B', 'B', 0.0 ],[ 'A', 'B', 'C', 1.0 ],[ 'A', 'C', 'A', 0.0 ],[ 'A', 'C', 'B', 1.0 ],[ 'A', 'C', 'C', 0.0 ],[ 'B', 'A', 'A', 0.0 ],[ 'B', 'A', 'B', 0.0 ],[ 'B', 'A', 'C', 1.0 ],[ 'B', 'B', 'A', 0.5 ],[ 'B', 'B', 'B', 0.0 ],[ 'B', 'B', 'C', 0.5 ],[ 'B', 'C', 'A', 1.0 ],[ 'B', 'C', 'B', 0.0 ],[ 'B', 'C', 'C', 0.0 ],[ 'C', 'A', 'A', 0.0 ],[ 'C', 'A', 'B', 1.0 ],[ 'C', 'A', 'C', 0.0 ],[ 'C', 'B', 'A', 1.0 ],[ 'C', 'B', 'B', 0.0 ],[ 'C', 'B', 'C', 0.0 ],[ 'C', 'C', 'A', 0.5 ],[ 'C', 'C', 'B', 0.5 ],[ 'C', 'C', 'C', 0.0 ]], [guest, prize] ) d1 = State( guest, name="guest" )d2 = State( prize, name="prize" )d3 = State( monty, name="monty" ) #Создаём Байесовскую сетьnetwork = BayesianNetwork( "Solving the Monty Hall Problem With Bayesian Networks" )network.add_states(d1, d2, d3)network.add_edge(d1, d3)network.add_edge(d2, d3)network.bake()

Во фрагменте значения:

  • А дверь, выбранная гостем
  • B призовая дверь
  • С дверь, выбранная Монти

На фрагменте мы рассчитываем значение вероятности для каждого из узлов графа. Два верхних узла подчиняются в нашем примере равному распределению вероятностей, а третий отражает зависимое распределение. Поэтому, чтобы не потерять значения, для С рассчитаны вероятности каждой из возможных комбинаций игры.

Подготовив данные, создаём Байесовскую сеть.

Здесь важно отметить, что одно из свойств такой сети выявления влияния скрытых переменных на наблюдаемые. При этом ни скрытые, ни наблюдаемые переменные не нужно указывать или определять заранее модель сама исследует влияние скрытых переменных и сделает это тем точнее, чем больше получаемых ею переменных.

Приступаем к предсказаниям.

beliefs = network.predict_proba({ 'guest' : 'A' })beliefs = map(str, beliefs)print("n".join( "{}t{}".format( state.name, belief ) for state, belief in zip( network.states, beliefs ) )) guest Aprize {"class" :"Distribution","dtype" :"str","name" :"DiscreteDistribution","parameters" :[{"A" :0.3333333333333333,"B" :0.3333333333333333,"C" :0.3333333333333333}],} monty {"class" :"Distribution","dtype" :"str","name" :"DiscreteDistribution","parameters" :[{"C" :0.49999999999999983,"A" :0.0,"B" :0.49999999999999983}],}

Разберем фрагмент на примере переменной А.

Допустим, гость выбрал её (А).
Событие за дверью есть приз на этапе выбора двери гостем имеет распределение вероятностей == (тк каждая дверь равновероятно можем быть призовой).

Далее добавим значение вероятностей двери быть призовой на этапе, когда дверь выбирает Монти. Поскольку мы не знаем, призовую ли дверь исключили собственным (гостевым) выбором на шаге 1, вероятность двери быть призовой на данном этапе распределиться 50/50

beliefs = network.predict_proba({'guest' : 'A', 'monty' : 'B'})print("n".join( "{}t{}".format( state.name, str(belief) ) for state, belief in zip( network.states, beliefs ))) guest Aprize {"class" :"Distribution","dtype" :"str","name" :"DiscreteDistribution","parameters" :[{"A" :0.3333333333333334,"B" :0.0,"C" :0.6666666666666664}],}monty B

На этом этапе мы модифицируем входные значения для нашей сети. Теперь она работает с распределением вероятностей, полученным на шагах 1 и 2, где

  • шансы быть призовой у двери, выбранной нами, не изменились (33%)
  • шансы быть призовой у двери, которую открыл Монти (В) аннулировались
  • шансы быть призовой у двери, которая осталась без внимания приняли значение 66%

Следовательно, как и было заключено выше, верной стратегией со стороны гостям для данной игры является смена двери те, кто поменяет дверь математически имеют шансов на победу против тех, кто дверь не сменит ().

В примере с тремя узлами, несомненно, хватает расчетов вручную, но при увеличении числа переменных, узлов и факторов влияния Байесовская сеть способна решить задачу прогностического значения.

Применение Байесовских сетей


1. Диагностика:

  • предсказание наличия болезни на основе симптоматики
  • моделирование симптоматики для исходной болезни

2. Поиск в Сети интернет:

  • формирование выдачи на основе анализа пользовательского контекста (намерений)

3. Классификация документов:

  • спам-фильтры на основе анализа контекста
  • распределение документации по категориям/классам

4. Генная инженерия

  • моделирование поведения сетей регуляции генов на основе взаимосвязей и взаимоотношений сегментов ДНК

5. Фармацевтика:

  • мониторинг и прогностическое значение допустимых доз

Изложенные выше примеры факты. Для полнного понимания релевантно попредставлять, на каком этапе подключается создание Байесовской сети и из каких узлов состоит граф, её описывающий.

Задача о парадоксе Монти Холла лишь фундамент, который позволяет на пальцах проиллюстрировать работу цепей, основанных на комбинации зависимого и независимого распределения вероятностей. Надеюсь, у меня это получилось.

P.S. я не являюсь асом Питона и только учусь, поэтому не могу отвечать за код автора. Публикация данной статьи на Хабре преследует больше выпуск в мир интеллектуального труда перевода. Думаю, в будущем смогу и генерировать собственные туториалы в них уже буду рада видеть конструктивные мысли насчет кода.
Подробнее..

Квантовая теория. Вселенная из волн вероятностей

18.10.2020 04:15:28 | Автор: admin
Квантовая теория является одной из самых точных моделей, описывающих окружающий нас мир, а технические решения, разработанные благодаря применению аппарата квантовой механики, прочно вошли в повседневную жизнь современного общества. И тем удивительнее, что понимание даже базовых концепций этой сферы знаний вступает в серьезные противоречия с интуицией, не только людей далеких от науки, но и самих исследователей, подтверждением чему является большое количество различных интерпретаций. В этой статье, предлагаю рассмотреть основные понятия квантовой теории с показавшейся автору наиболее интуитивно-понятной точки зрения, несколько модифицированной теории вероятностей.

imageЧто будет, если по аналогии с двущелевым опытом, все пространство на пути частицы до экрана будет заполнено щелями?



Теория вероятности единственный доступный математический инструмент, помогающий составить карту неизвестного и неконтролируемого.

Фрактальная геометрия природы Бенуа Мандельброт


Cодержание:

  1. Введение: Демон Лапласа и Бог Эйнштейна
  2. Принцип неопределенности, татуировка и каллиграфия
  3. Волны материи и их амплитуды
  4. Комплексные числа и фаза вероятности
  5. Реальный мир и мнимые единицы
  6. Волновая функция и плотность вероятности
  7. Квантовый шлагбаум декогеренции
  8. Немного квантовой криптографии
  9. Заключение


Введение: Демон Лапласа или Бог Эйнштейна


В начале 19-го века, в научной картине мира доминировал детерминизм учение о том, что начальные параметры системы полностью определяют её дальнейшее развитие. Ньютоновская механика, позволяла очень точно предсказывать поведение не слишком больших тел, двигающихся со скоростями намного меньшими скорости света, а появившиеся затем специальная и общая теория относительности сделали возможным подобные расчёты и для очень массивных объектов, двигающихся со скоростями близкими к скоростям света.

И только вопросом времени казалось создание демона Лапласа гипотетического вычислительного устройства, которое будет способно получить на вход изначальные параметры любой системы и вычислить её стояние в любой момент. Ученые уже начали предвкушать практически полную победу над неопределенностью и торжество человеческого разума, хотя парадоксы, связанные с самой возможностью существования демона Лапласа, уже тогда вызывали большие сомнения.

image

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

Исходя из этих представлений, ни одно событие нельзя было предсказать с абсолютной точностью, поскольку в любых измерениях оставалась некоторая неточность и этот факт пришелся не по душе многим участникам научного сообщества того времени. Лагерь критиков возглавлял, уже имевший в то время мировой авторитет, Альберт Эйнштейн, который в переписке со своим оппонентом и коллегой Гейзенберга Максом Борном, так отозвался о возможности существования принципа неопределенности: " Во всяком случае, я убеждён, что [Бог] не играет в кости."

image

Принцип неопределенности, татуировка и каллиграфия


Действие принципа неопределенности часто списывают на свойства самого процесса измерения, но есть и более фундаментальные причины и проще всего их продемонстрировать на примере двух параметров: импульса и координаты частицы. Подобно тому, как один и тот же рисунок можно выполнить двумя принципиально разными способами: векторным и растровым, то есть либо в виде линий, как, например, в каллиграфии, либо в виде набора точек, как в случае с татуировкой. Также и движение частицы можно описать двумя альтернативными способами: с помощью импульса вектора массы-скорости $\vec p=m\vec v$ или с помощью набора пространственно-временных координат ${(x_1,t_1);(x_2,t_2);...;(x_n,t_n)}$.

image
Слева: мастер каллиграфии рисует символ Энсо (яп. ,), источник. Справа: процесс нанесения татуировки на кожу человека, источник.


И согласно принципу неопределенности, чем точнее мы будем фиксировать координату объекта в пространстве-времени $x$, тем меньше информации мы сможем получить о его импульсе. Представьте, что подброшенный вверх мячик, фотографируют несколько фотографов, у каждого на фотоаппарате стоит разная выдержка. Если выдержка большая, то на фотографии положение мяча получится смазанным, но зато будет хорошо виден вектор его движения. А чем меньше будет выдержка, тем чётче будет локализация объекта съемки и в пределе мы получим четкий подвешенный в воздухе мяч и совершенно ничего не сможем сказать о том, по какой траектории он двигался.

image
Три альтернативных снимка движущегося объекта, слева на право, показано как с увеличением пространственно-временного интервала (выдержки фотоаппарата), уменьшается количество информации об импульсе (траектории частицы).


В мире макроскопических объектов, этот эффект не составляет большой проблемы, и если мы захотим задать координату автомобиля с точностью, сопоставимой с размерами самого автомобиля, то никаких проблем не будет машина может спокойно заехать в тоннель и при этом сохранить свою предсказуемую траекторию. Но если мы попробуем проделать тоже самое, например, с фотонами и начнем пропускать их через уменьшающуюся щель, то сначала пятно света ожидаемо будет становится все более узким, но когда размер щели станет сопоставим с длиной волны фотона, то траектории фотонов на выходе из щели станут все менее предсказуемыми и световое пятно начнет расплываться в ширину. Иными словами, чем точнее мы будем знать где пролетела частица, тем меньше мы будем знать о том, куда она двинется дальше.

image
Вверху, слева на право: интерференционные картины получаемые при последовательном уменьшении щели, источник. Внизу: схема экспериментальной установки, источник.


Волны материи и их амплитуды


Но интерференцией луча света сложно кого-то удивить, ведь все и так знают, что свет это волна, а каждая точка волнового фронта тоже будет являться источником волны и уменьшая щель мы, согласно принципу Гюйгенса Френеля, получаем вторичный фронт, который с уменьшением размера щели все больше будет походить на волну от точечного источника.

image
Дифракция прямого волнового фронта, проходящего через отверстие, источник.


Действительно, любая волна по своей геометрической природе не локализуется в одной точке, ведь для создания даже у самой простой волны всегда будет два измерения амплитуда и длина. И если мы начнем сжимать волну по высоте, то она будет расползаться в длину и наоборот. Но более интересно, что подобные эксперименты были поставлены и с частицами материи: электронами, атомами и даже с органическими молекулами и все они также демонстрировали волновую дифракцию.

Впервые идею о том, что не только фотоны, а вообще любая материя обладает волновыми свойствами высказал в 1923 году, французский физик Луи де Бройль в своей работе "Волны и кванты". Эта гипотеза была частично подтверждена уже в 1927 году, в результате опыта Дэвиссона-Гермера, который показал волновую дифракцию электронов, что принесло Луи де Бройлю заслуженную нобелевскую премию по физике в 1929 году.

Позднее с электронами был поставлен и известный двущелевой опыт который показал, что волны частиц материи могут не только испытывать дисперсию, образуя вторичные волновые фронты, но и эти вторичные волны могут усиливать друг друга, встречаясь в одной фазе или наоборот, взаимно гасится, встречаясь в противофазе, создавая интерференционную картину, подобно тому как ведут себя макроскопические волны на воде или акустические звуковые волны.

image
Слева: интерференция волн на воде, источник. Справа: интерференционная картина, полученная в результате регистрации одиночных электронов, проходящих через двойную щель источник.


Но если волны на воде это колебательные движения частиц воды вверх и вниз, звуковые волны это аналогичные движения молекул воздуха, то колебанием чего является волна материи, которая может быть фотоном, атомом, молекулой, человеком? Формально, ученые так и не пришли к единому мнению на этот счет, тем не менее научились вычислять функцию, которая эту волну описывает в зависимости от координаты или любого другого параметра, который можно измерить и обнаружили, что квадрат модуля этой функции являет собой точную оценку вероятности результатов измерения. Поэтому многие учёные, в числе которых был и выдающийся физик Ричард Фейнман, так и называли волновые функции амплитудами вероятности. И это может показаться довольно странным, что вся материя и излучение являются волнами каких-то абстрактных математических понятий, но как мы постараемся показать далее, приняв это утверждение можно получить довольно понятное объяснение многих квантовых эффектов.

Комплексные числа и фаза вероятности


Из экспериментов с одной и двумя щелями мы уже знаем, что во многом амплитуды вероятностей ведут себя как самые обычные волны и даже могут, проходя через двойную щель накладываться друг на друга, усиливая или наоборот уменьшая вероятность появления частицы в точке, что создает интерференционную картину.
image
Демонстрация принципа интерференции волн. Слева: конструктивная интерференция встреча пиков волн совпадающей фазе даёт более высокую результирующую амплитуду. Справа: деструктивная интерференция при встрече пиков волн в противоположной фазе. Источник.


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

А что, если мы добавим волнам вероятности такое свойство, благодаря которому они смогут интерферировать? Представим прямую и каждая точка на ней будет соответствовать координате частицы, тогда от каждой точки перпендикулярно будем откладывать вероятность соответствующую нахождению частицы в этой точке. Соединив точку $x$ и соответствующую ей вероятность мы получим вектор чем больше длина вектора, тем больше вероятность, нахождения частицы в этой точке, а чтобы эти векторы могли взаимодействовать, к длине еще добавим угол поворота и будем учитывать его при сложении.

Наверное, вы уже догадались что такая конструкция очень напоминает комплексные числа, которые так же имеют модуль длину и фазу угол. Тогда каждой координате будет соответствовать комплексная плоскость, в которой вектора вероятностей будут крутится как стрелки часов и если они будут смотреть в одном направлении, то они будут складываться, а если в противоположных, то наоборот вычитаться. Соединив концы этих стрелок, мы получим форму волновой функции или амплитуду вероятности для движения частицы по прямой в одном измерении.

image
Анимация последовательных преобразований, которые позволяют получить волновую функцию как сумму амплитуд вероятности в точках на пути частицы (зеленая линия), сначала задается вещественная часть амплитуды, а затем фаза (угол поворота) в комплексной плоскости. Источник.


Комплексные числа имеют вид $z=x+y*i$, где первая часть $x$ называется вещественной, а вторая $y*i$ мнимой. Эти две компоненты никогда не смешиваются, а в остальном подчиняются тем же правилам, что и обычные вещественные числа, с тем учётом, что $i$ это мнимая единица и равна $\sqrt{-1}$.

Одна из основных аксиом квантовой теории, под названием правило Борна, утверждает, что квадрат модуля волновой функции даёт нам функцию плотности вероятности, то есть в нашем примере распределение вероятностей нахождения частицы в зависимости от координаты.

Кратко освежим в памяти, модуль комплексного числа это расстояние от начала координат $(0, 0i)$ до точки с координатами $(x;yi)$, то есть: $\sqrt{x^2+(y\sqrt{-1})^2}$, видно, что $(\sqrt{-1})^2=1$, но не будем пока списывать мнимую единицу, а найдем квадрат модуля:
$\left(\sqrt{x^2+(y\sqrt{-1})^2}\right)^2=x^2+(y\sqrt{-1})^2=(x+y\sqrt{-1})(x-y\sqrt{-1})$

Получаем, что квадрат модуля комплексного числа это его произведение на такое же комплексное число, которое отличается только знаком перед коэффициентом мнимой части $z=x-y*i$. Такие пары чисел называются комплексно сопряженными и представляют собой зеркальные отражения друг друга, соответствующие повороту векторов в комплексной плоскости на равные углы, но в противоположные стороны.
image
Где: $\overline z$ комплексно сопряженное число


Реальный мир из мнимых единиц


Вот что мы уже поняли: волновая функция ставит в соответствие каждой координате некоторое комплексное число. Собственно, это и есть то чем занимаются волновые функции ставят в соответствие какому-то измеряемому параметру комплексное число, угол поворота которого называется фазой. Фазы комлексных чисел отвечают за эффекты интерференции усиления и ослабления вероятностей, которые получаются путем умножения волновой функции на её же зеркальное отражение комплексное сопряжение.

На вопрос почему квадрат модуля волновой функции даёт плотности вероятности, квантовая теория, обычно отвечает заткнись и считай потому, что квадрат модуля делает из комплексного числа вещественное. Конечно такой ответ нас совершенно не устраивает, ведь из комплексного числа можно получить вещественное и просто взяв его модуль, поэтому хотелось бы понять смысл возведения модуля в квадрат.

Представим, что мы ничего не знаем ни о волновой функции, ни о функции плотности вероятности, а просто провели много наблюдений и отметили точками где и с какой частотой появляется частица. При этом мы понимаем, что получившееся распределение должно описываться каким-то графиком функции плотности вероятности и было бы крайне полезно узнать саму эту функцию.

Чтобы узнать какая функция соответствует нашим точкам, пойдем самым простым путём и начнем подгонять ответ под данные, то есть подбирать полиномы, которые будут проходить через максимальное количество имеющихся точек. Начнем с двух точек и подберём для них коэффициенты полинома первой степени, то есть линейной функции $y = ax + b$ ведь линия точно пройдет через наши две точки. Если остаются точки которые не лежат на этой прямой, то мы возьмем полином второго порядка $y = ax^2 + bx + c$ графиком которого являются различные параболы, подобрав коэффициенты мы гарантировано попадём, как минимум в три точки, одна из которых будет вершиной, а две других будут лежать на сторонах. Затем снова проверим остались ли еще точки лежащие вне графика если да повторим увеличив степень полинома еще на единицу и так далее, логика понятна, полином степени $n$ гарантировано проходит через $n+1$ точек и в результате мы можем подобрать полином, который покроет все наши точки. Есть даже специальная теорема апроксимационная теорема Вейерштрасса, которая подтверждает, что это возможно.

image
Пример подгонки точек, взятых из функции плотности вероятности нормального распределения, полиномами различной степени, от линейного, до полинома 18-й степени, с использованием функции numpy.polyfit. Можно убедится, что степень полинома соответствует количеству точек, через которые проходит его график.
Код Python:
from numpy import *from matplotlib.pyplot import *from mpl_toolkits.axes_grid.axislines import SubplotZeromu, sigma = 0, 0.1x = np.arange(-1,1,0.02)y = 1/(sigma * np.sqrt(2 * np.pi))*np.exp( - (x - mu)**2 / (2 * sigma**2) )y1 = poly1d(polyfit(x,y,1))# lineary2 = poly1d(polyfit(x,y,2))# quadraticy3 = poly1d(polyfit(x,y,3))# cubicy4 = poly1d(polyfit(x,y,4))# 4th degreey5 = poly1d(polyfit(x,y,10))# 10th degreey6 = poly1d(polyfit(x,y,18))# 18th degreefig = figure(figsize=(20,8), facecolor='#f4efcb', edgecolor='#f4efcb')ax = SubplotZero(fig,111)fig.add_subplot(ax)ax.plot(x,y1(x),'r',label=u'линейный')ax.plot(x,y2(x),'g',label=u'квадратичный')ax.plot(x,y3(x),'orange',label=u'кубический')ax.plot(x,y4(x),'b',label=u'$4$ степени')ax.plot(x,y5(x),'c',label=u'$10$ степени')ax.plot(x,y6(x),'m',label=u'$18$ степени')ax.plot(x,y,'k.',label=u'данные')ax.set_xlabel(u'x')ax.set_ylabel(u'y')ax.set_facecolor('#f4efcb')ax.minorticks_on()ax.legend(frameon=False,loc=8,labelspacing=.2)ax.annotate('коэффициенты полинома 18 степени:'+'\n'+str(y6.coeffs), xy = (-1,1.2))setp(ax.get_legend().get_texts(), fontsize='large')fig.savefig("Curve fitting.svg",bbox_inches="tight",pad_inches=.15)



А раз плотность вероятности можно приблизить многочленом, то наверняка у этого многочлена есть и корни и еще одна замечательная теорема основная теорема алгебры говорит, что таки да любой полином обязательно имеет решения в комплексных числах, а если корни вещественные, то это значит просто, что мнимая часть равна нулю (вектора будут иметь нулевой угол поворота), поскольку множество вещественных чисел полностью содержится во множестве комплексных $\mathbb{R} \subset \mathbb{C}$.

И если любое комплексное число $z=x+y*i$ является корнем какого-либо полинома, то автоматически корнем этого же уравнения является и сопряженное ему число $\overline z=x-y*i$, об этом нам говорит еще одна теорема теорема о комплексно-сопряженных корнях.

Для примера представим, что плотность вероятности описывается полином второй степени $x^2+5*x+6,5$ и найдем его корни. По формуле корней квадратного уравнения $x_{1,2} = \frac{-b \pm \sqrt{b^2-4ac}}{2a}$, подставив коэффициенты $a=1, b=5, c=6,5$ и получим в виде решения два сопряженных комплексных числа $x_1=-5/2 + i/2$, $x_2=-5/2 - i/2$, как нам и утверждала теорема о сопряженных корнях.

С другой стороны, зная корни и воспользовавшись формулами Виета мы можем разложить тот же квадратный трехчлен следующим образом: $x^2+bx+c=(x-x_1)(x-x_2)$ легко проверить, что это верно, подставив полученные значения и раскрыв скобки мы получим исходный полином. Но в тоже время в правой части формулы Виета мы получили произведение двух сопряженных комплексных чисел, что есть квадрат модуля. В принципе эту же логику можно расширить и на остальные степени полиномов, главное, что всегда корни будут идти в паре, а для получения исходного полинома будет использоваться их перемножение.

Конечно это очень нестрогие рассуждения, призванные как-то осмыслить происходящее и на простом примере показать, что комплексные числа вполне обоснованы, а их сопряженные произведения могут давать что-то похожее на плотность вероятности.

image
Комикс с шуткой на тему действительных чисел (англ. real numbers) и умножения волновой функции на собственное комплексное сопряжение. Источник


Хорошо, будем считать, что у нас появилось некоторое представление о том, как устроены амплитуды вероятностей, почему они комплексные и как из них получаются обычные вероятности. И мы можем перейти к вопросу о том, что нам предсказывают эти вероятности, то есть о результатах измерений.

Волновая функция и плотность вероятности


Получая плотность вероятности нахождения частицы в определенной координате, мы предсказываем то, с какой частотой мы будем наблюдать частицу в разных точках. Например, если плотность вероятности будет описываться гауссовой кривой, как на левой части рисунка ниже, то в $68\%$ случаев мы увидим, что частица появится на отрезке от $-1\sigma$ до $+1\sigma$, а в $95\%$ случаев на отрезке от $-2\sigma$ до $+2\sigma$ и так далее. Что в случае двумерного симметричного распределения, показанного справа, даст большую плотность обнаружения частицы в некотором круглом участке в центре и низкую плотность по мере удаления от центра:

image

Довольно понятная схема: волновая функция от координаты задаёт форму распределения, которая затем говорит нам вероятности измерения частицы в точке пространства. Тем не менее такая интерпретация может приводить к странным противоречиям и иногда более естественно думать о частицах, как о волнах амплитуд вероятности. Например, на картинке ниже, слева показано, как выглядит плотность вероятности для электрона, находящегося во взаимодействии с ядром водорода. В соответствие с этим графиком можно получить форму, так называемых, электронных орбиталей областей вокруг ядра атома, в которых взаимодействие с электроном наиболее вероятно, показанных справа:

image
Слева: кривые плотности вероятности нахождения электрона вокруг единичного протона, для трёх энергетических уровней $1s, 2s, 3s$. Справа: показан пример как выглядели бы распределения точек при проведении измерения координаты электрона. Источник.

На рисунке выше можно заметить, как меняются формы орбиталей в зависимости от энергетического уровня электрона чем выше энергия электрона, тем, во первых, больше радиус оболочки, что вполне понятно, ведь чем больше энергия, тем сильнее электрон может сопротивляться притяжению ядра и тем дальше от ядра он может взаимодействовать, но вместе с этим, к каждому новому уровню энергии добавляется участок с нулевой вероятностью, называемый узлом (node), так, например, орбиталь электрона на 3 энергетическом уровне имеет форму слоеной сферы, содержащей внутри себя две зоны, вероятность обнаружения электрона в которых равна нулю.

image
Контур вероятности нахождения электрона в окрестности ядра атома водорода для трех энергетических уровней слева на право: 1s, 2,s 3s. Источник.

Такое распределение вероятности выглядит очень странно, ведь попасть из одной сферы в другую, не пересекая вложенную между ними невозможно.

Но если думать об электроне, как об амплитуде вероятности, то все объясняется вполне естественно, на картинке ниже волновая функция от радиуса электрона вокруг ядра водорода, рассчитанная в одном измерении, для трех энергетических уровней.

image

Глядя на графики волновой функции легче понять, что электрон удерживаемый ядром атома представляет собой стоячую волну и как у любой стоячей волны, у неё будут появляться, так называемые, узлы (node) зоны где амплитуда в результате интерференции с отраженной волной будет нулевой.

imageПример образования узлов интерференции (красные точки) в одномерной стоячей волне, источник.

И если одномерная волна, как на анимации выше, всё еще не напоминает форму слоёной трёхмерной электронной оболочки атома водорода, то предлагаю представить волну на двумерной плоскости, распространяющуюся от точечного источника. Так, чтобы увидеть полную форму такой двумерной волны потребуется смотреть на неё в трех измерениях. А для жителя двумерного мира такая волна будет просто набором расходящихся от центра кругов. Аналогично и с трехмерными волнами живут они в четырех измерениях, но для нас они будут выглядеть расходящимися трехмерными сферами.

image
Справа: анимация волны, распространяющейся по двумерной поверхности. Слева: пример того, как будет выглядеть проекция этой волны на плоскость.

Квантовый шлагбаум декогеренции


Авраам Паис (Abraham Pais) выдающийся физик и историк науки, совместно работавший с целой плеядой из легенд науки 20 века, в числе которых: Джон фон Нейман, Альберт Эйнштейн, Нильс Бор, Макс Борн, Пол Дирак, Вольфганг Паули и многие другие, описывая один из диалогов, касающихся проблемы наблюдателя в квантовой физике, приводил вопрос, заданный ему Эйнштейном:
Вы правда считаете, что Луна существует только тогда, когда вы на неё смотрите? (Rev. Mod. Phys. 51, 863914 (1979), p. 907).

И действительно древняя философская дилемма о существовании объективной реальности, с открытием квантовых свойств нашего мира стала еще актуальнее. Волновая функция даёт возможность с необходимой точностью предсказать результат измерения, но существует ли она в отрыве от контекста измерения и наблюдателя и как это проверить?

Прежде всего необходимо определить, что такое наблюдение и измерение. Чтобы измерить размер объекта, мы прикладываем к нему линейку, чтобы измерить температуру прикладываем градусник, чтобы измерить скорость отправляем на встречу электромагнитную волну.

Во всех этих случаях нам необходимо взаимодействие измеряемого объекта с каким-то другим объектом, состояние которого мы можем предварительно подготовить, такой объект назовем измерительной системой. Стряхнули градусник подготовили измерительную систему, поставили подмышку произвели взаимодействие, и затем оценили насколько изменилось состояние контрольной системы. Это общий принцип, любое измерение это взаимодействие измеряемой системы с контрольной.

Любое наблюдение, также является измерением, наблюдая что-либо мы получаем информацию об объекте с помощью встроенных в наше тело измерительных систем, которые также взаимодействуют с объектом. Если мы смотрим на предмет значит взаимодействуем с фотонами испущенными этим объектом, которые, попадая на сетчатку глаза, приводят к сложному каскаду взаимодействий и запуску нервного сигнала, поступающего в мозг.

Тогда какова размерность клубка ниток? С большого расстояния клубок представляет собой не более чем точку с нулевыми размерами. Приближаясь, можно увидеть, что это шар, который заполняет пространство в трех измерениях. Еще ближе можно увидеть саму нить, и объект становится фактически одномерным Мандельброт без математики апеллировал к теории относительности: Представление о том, что числовой результат должен зависеть от отношения объекта к наблюдателю, в духе физики нашего столетия и даже является образцовой её иллюстрацией.

Хаос. Создание новой науки Джеймс Глейк

Принцип суперпозиции волн говорит нам, что когда две или более волн встречаются в одной точке пространства, то результатом взаимодействия будет новая волна, являющаяся суммой их амплитуд. Тогда, результатом измерения всегда будет всегда некоторая суперпозиция волновых функций измеряемой и измерительной системы.

Теперь возникает резонный вопрос: если мы примем утверждение о том, что все состоит из волн амплитуд вероятности, то почему мы так скучно живем не наблюдаем волновых свойств таких, как суперпозиция и интерференции у макроскопических объектов, окружающих нас?

Чтобы ответить на этот вопрос, снова взглянем на двухщелевой опыт: электроны по одному пролетают через двойную щель и попадая на экран, отмечаются на нем точкой, при многократном повторении этого процесса, точки образуют интерференционную картину, которая соответствует прохождению волны через две щели.

image
Слева: анимация интерференционной картины от прохождения волны через двойную щель, источник. Справа: результаты эксперимента по регистрации одиночных электронов после прохождения двойной щели. Источник: New Journal of Physics, Volume 15, March 2013.

Но если мы захотим узнать, через какую из щелей проходит электрон и поставим на против одной из них измерительный прибор, то интерференционная картина на экране пропадет, и мы увидим на экране только два пика. Все это вызывает недоумение, и может сложится впечатление, что существует какое-то особое правило, которое говорит электрону, что если никто не смотрит, то он распространяется в виде волны, а когда его пытаются измерить превращается в локализованную частицу. Звучит очень странно, ведь держать столько сложных правил, для одного простого электрона это совсем не в духе природы.
image
Карикатура, высмеивающая разделение явлений на квантовые и классические. Источник (http://personeltest.ru/away/www.bourbaphy.fr/zurek.pdf)

А что если мы применим только принцип суперпозиции, сможем ли мы получить те же наблюдаемые эффекты? Так если сначала мы имеем волновую функцию, которая описывает координату взаимодействия одиночного электрона с экраном $|\psi \rangle$, то после прохождения через двойную щель, она будет представлять собой сумму двух волновых функций прошедшей через щель $1$ и через щель $2$, тогда общее состояние можно записать как суперпозицию этих двух состояний $|\psi \rangle =|\psi_1 \rangle +|\psi_2 \rangle $.

В случае с одной волновой функцией, чтобы найти вероятность взаимодействия частицы в точке x_j мы находим произведение j-тых компонент бра и кет вектора, мнимые единицы при этом сокращаются, и мы получаем классическую вероятность:
$p(x_j)=|\psi(x_j)|^2= z _j^* z_j= |z_j|^2 $


В случае с суперпозицией двух возможных маршрутов мы перемножаем уже сумму волновых функций:

$p(x_j)=|\psi_1(x_j)+\psi_2(x_j)|^2=$
$= (z1 _j^*+ z2 _j^*)(z1 _j+ z2 _j)=$
$ = |z1 _j|^2+z1 _j^*z2 _j+z2 _j^*z1 _j+|z2 _j|^2$

В выражении выше кроме модулей комплексных чисел мы получили еще слагаемые вида: $ z1 _j^*z2 _j$ и $z2 _j^*z1 _j $ произведения разных комплексных чисел, результат которого будет зависеть от угла фазы $$ этих комлексных чисел:
$inline$z1z2=|z1||z2|[cos(1+2)+isin(1+2)]$inline$

Чтобы понять, как будут взаимодействовать фазы двух альтернативных маршрутов, представим фазу как стрелку, которая будет вращаться с заданной скоростью, мере распространения волны, один полный оборот стрелки будет соответствовать длине волны, а скорость вращения частоте.
image
Черной стрелкой показано сравнение скорости вращения фаз двух волновых пакетов с разной частотой источник.

Поскольку две альтернативные волновые функции, получены в результате деления одной исходной, то разумно предположить, что их частота и длина волны будут одинаковыми и стрелки полученных волн будут вращаться с одинаковой скоростью. Исходя из этого, разность фаз, при встрече в точке на экране, будет зависеть только от разности расстояния пройденного волной до этой точки.

А значит, в точке, находящейся на равном удалении от каждого из отверстий, волны будут встречаться с одинаковым положением стрелок, то есть в одной фазе и в этом месте мы увидим пик в интерференционной картине, а в точке, где разность пройденных расстояний составит половину длинны волны стрелки волн встретятся в противоположных положениях и произойдет деструктивная интерференция, что даст тёмное пятно. Если сместиться еще немного в точку, где разность составит целую длину волны, стрелки снова совпадут и так далее.

image
Появление двух альтернативных возможностей попадания на экран, приводит к разделению исходной волновой функции на две с одинаковыми фазами, показанными в виде циферблата со стрелкой. Одинаковая фаза подразумевает одинаковую скорость вращения стрелки. При попадании в точку на экране в момент одинакового положения стрелок волны интерферируют конструктивно, если же стрелки направлены в противоположные стороны происходит деструктивная интерференция.


Куда исчезает интерференция, когда мы проводим измерение, того через какую щель проходит электрон? После прохождения детектора появляется уже не две, а намного больше различных альтернативных вариантов волновой функции, поскольку даже если детектор микроскопический, он все равно будет состоять из огромного количества атомов, например даже в одной сотой грамма железа содержится порядка $10^{20}$ атомов, но конкретное число нам сейчас не важно, главное, что появляется огромное разнообразие разных вариантов взаимодействия, которые зависят от конкретного состояния частиц детектора, и каждое альтернативное состояние будет давать свою альтернативную версию волновой функции.

Также возьмем $p(x_j)=|\psi(x_j)|^2$ вероятность попадания электрона в координату $x_j$ на экране, после прохождения детектора и снова распишем эту вероятность через суперпозицию всех возможных альтернативных траекторий:

$\psi(x) = \psi_1(x)+\psi_2(x)+...+\psi_n(x)$, где $n$ очень большое количество различных вариантов состояния детектора.
$p(x_j)=|\psi_1(x_j)+\psi_2(x_j)+...+\psi_n(x_j)|^2=$
$= (z1 _j^*+ z2 _j^*+...zn _j^*)(z1 _j+ z2 _j+...+zn _j)=$
$ = (\sum_{j=1}^n z_j^*)(\sum_{j=1}^n z_j)$

Для наглядности запишем результат перемножения этих сумм в виде матрицы из $n^2$ элементов:
$\begin{bmatrix} (z1^*)(z1) & (z1^*)(z2) & \cdots & (z1^*)(zn) \\ z2^*)(z1) & (z2^*)(z2) & \cdots & (z2^*)(zn) \\ \vdots & \vdots & \ddots & \vdots \\ (zn^*)(z1) & (zn^*)(z2) & \cdots & (zn^*)(zn) \end{bmatrix}$

Итого мы получили $n$ классических вероятностей по диагонали и $(n^2-n)$ итерференционных членов, и все это в сумме даёт вероятность попадания электрона для одной точки. Но в этом случае интерференционные члены уже не будут иметь одинаковую фазу, как в предыдущем случае, когда волна либо проходила через щель без взаимодействия, либо полностью отражалась. Сейчас, проходя через детектор, состоящий из различных не синхронизированных друг с другом частиц, получившиеся в результате волновые функции, будут иметь также случайные некогерентные фазы.

Такие рассинхронизированные состояния называют смешанным (mixed states). И хотя волновые функции смешанных состояний тоже будут интерферировать, но результат интерференции уже не будет зависеть от пройденного волной расстояния и в каждой точке экрана можно ожидать одинаковое и очень большое количество как конструктивно, так и деструктивно интерферирующих слагаемых, что в среднем будет давать их нулевой вклад. Подобно тому, как удары молекул газа не сдвигают предмет с места, поскольку в каждый момент времени на предмет приходится примерно равное количество ударов со всех сторон.

image
Потеря когерентности волновой функции $1$ после прохождения детектора $d$ приводит к обнулению вклада интерференционных членов в точках на экране и появлению картины соответствующей наложению двух гауссовых пиков.

В общем случае любое взаимодействие квантовой системы с внешней средой неизбежно и очень быстро приводит к смешиванию состояний, и в результате к рассинхронизации фазы и усреднению альтернативных состояний декогеренции.

Поэтому наш вариант ответа на вопрос: почему мы не наблюдаем квантовых эффектов в макроскопических объектах в нормальных условиях чтобы получить суперпозицию состояний макроскопического объекта, необходимо полностью изолировать его от взаимодействия с внешней средой, включая помещение в полный вакуум, охлаждение до сверхнизких температур и экранирования от различных полей, что на практике очень трудно реализуемо. Иными словами, кот Шредингера погиб бы еще при подготовке условий необходимых для создания его суперпозиции, задолго до того, как распалась бы радиоактивная частица, разбивающая ампулу с ядом.

Немного квантовой криптографии


В том, что в вашем смартфоне, до сих пор, не стоит квантовый процессор, также нужно винить декогеренцию. Ведь даже самые современные из реализаций квантовых компьютеров занимают целую комнату, а основную часть их конструкций составляют системы криогенного охлаждения и экранирования.

image Схема конструкции квантового компьютера D-Wave 2000Q, источник.


Но если при создании квантовых компьютеров декогеренция является большой проблемой, то в криптографии неизбежное изменение волновой функции при измерении пришлось очень кстати. Например, если мы возьмем в качестве квантового бита фотон, то в зависимости от угла его поляризации можем выбрать два различных варианта кодировки нуля и единицы:
  • $0$ вертикальная поляризация, $1$ горизонтальная;
  • $0$ диагональная поляризация, $1$ антидиагональная.

Обозначим два этих способа кодировки как два базиса: $VH$ и $DA$, соответственно. Тогда если отправитель Алиса кодирует бит в базисе $VH$, то есть отправляет либо горизонтально поляризованный фотон или вертикальный, то получателю Бобу нужно будет пропустить полученный фотон через линейный поляризационный фильтр, который полностью блокирует вертикальную поляризацию.

Тогда если фотон пролетит поляризатор и попадет детектор значит мы точно знаем что это был горизонтально поляризованный $0$, а если не пролетит вертикальный $1$. Аналогично если развернуть поляризационный фильтр в вертикальное положение, то он будет блокировать $100\%$ горизонтально поляризованных фотонов.
image
Слева: вертикально ориентированный фотон блокируется линейным поляризационным фильтром. Справа: при повороте поляризационного фильтра на $90 $ вертикально поляризационный фотон проходит свободно. Источник.

Пока все полностью соответствует классической системе кодировки картине. Но в силу принципа суперпозиции мы можем представить диагональный фотон как композицию горизонтальной и вертикальной поляризации, и если затем его пропустить через поляризатор, ориентированный на фильтрацию вертикальных фотонов, то на выходе будет оставаться только горизонтальная компонента с амплитудой $1/2$ от исходной, что в случае одиночного фотона будет соответствовать $50\%$ вероятности прохождения через фильтр.
image
В левой части: диагональный фотон (красная стрелка) представленный в виде композиции горизонтальной и вертикальной компоненты (розовая и фиолетовая стрелка) электромагнитного поля. В правой части: линейный поляризационный фильтр блокирует вертикальную компоненту диагонального фотона и на выходе получается горизонтально поляризованный фотон. Источник

А значит, если мы кодируем каждый следующий бит в случайно выбранном базисе, то получателю также необходимо будет менять поворот поляризационного фильтра, ведь если он будет измерять фотон, закодированный в горизонтально вертикальном базисе $VH$ с помощью фильтра, повернутого под $45$, то он будет получать $0$ и $1$ случайным образом с вероятностью $50\%$, что аналогично полной потере информации.
image
Проходя через вертикальный линейный поляризатор, диагональный и антидиагональный фотоны теряют горизонтальную компоненту и на выходе получается горизонтальный фотон с амплитудой $1/2$ от исходной. Источник.

На этом принципе основан первый протокол квантовой криптографии $BB84$, позволяющий передавать ключ шифрования по открытому каналу. Так если Алисе нужно передать Бобу сообщение состоящее из n символов, то самым надежным способом будет перевести каждый из символов двоичный код, а затем взять такую же по длине последовательность случайных нулей и единиц и выполнить операцию побитового сложения XOR, то есть если символы с одинаковыми индексами совпадают то в результате получаем 0, а если различаются то $1$.

Так, Алиса получает зашифрованное сообщение и ключ, если у получателя Боба также есть ключ, то он может сделать снова операцию XOR и получить исходное сообщение. Квантовая криптография физика как раз позволяет обменяться ключом, так в алгоритме $BB84$ генерируется не одна а сразу две последовательности случайных битов с некоторым запасом относительно сообщения. Первая последовательность указывает на то, в каком базисе будет кодироваться фотон, являющийся квантовым битом ключа, отправляемого Алисой-Бобу. Затем Боб, получая фотоны, также с помощью случайной последовательности выбирает в каком базисе измерять каждый фотон, при этом он будет получать неверный результат с вероятностью $25\%$.

После завершения передачи квантового ключа, необходимо избавиться от ошибок, для этого применяется процедура так называемого просеивания ключа, когда Алиса отправляет Бобу последовательность базисов, в которых кодировался ключ просто по классическому каналу, после чего Боб сверяет эту последовательность с той, в которой он измерял фотоны при получении ключа и отправляет обратно Алисе те позиции, которые оказались ошибочными. Алиса вычеркивает ошибочные позиции и полученный ключ используется дальше при шифровании.

Квантовый фокус состоит в том, что если к каналу подключился подслушиватель, скажем Ева, которая будет перехватывать фотон измерять его направлять дальше Бобу, то измеряя перехваченные фотоны при неправильно выбранном базисе она также неизбежно будет разрушать суперпозицию. Таким образом, даже после просеивания, в ключе Боба все еще останутся ошибки, которые можно будет выявить в процессе сверки, когда Алиса отправляет Бобу по классическому каналу фрагмента своего ключа, если в результате сверки ошибок не будет выявлено, то можно будет с уверенностью пользоваться ключом для обмена сообщениями.

image
Логическая схема алгоритма шифрования $BB84$. Источник.


Заключение



Надеюсь, что из этой статьи вам удалось почерпнуть, некоторую информацию и получить общее впечатление о том, как квантовая теория из экстравагантной идеи стала одной из самых полных и точных физических моделей нашей Вселенной. И в завершение, для желающих более глубоко погружения в тему хотелось бы порекомендовать несколько ресурсов и книг:

  • Физика и философия Вернер Гейзенберг, осмысление квантовой теории, как её видел один из наиболее видных её основоположников.
  • КЭД странная теория света и вещества классическая книга гениального Ричарда Фейнмана, которая написана по мотивам научно-популярных лекций, прочитанных им в 60-е годы в калифорнийском технологическом институте (Caltech).
  • Как понимать квантовую механику более современная и содержащая чуть больше формул, но также изложенная понятным, человеческим языком книга, за авторством доцента кафедры теоретической физики МФТИ Иванова Михаил Геннадьевича.
  • Квантовые вычисления со времен Демокрита книга написанная профессором компьютерных наук Скоттом Ааронсоном и которая является чем-то средним между учебником и популярной книгой, для получения наибольшей пользы от чтения которой, рекомендуется выполнять самостоятельные упражнения.
  • Physics Videos by Eugene Khutoryansky YouTube канал инженера микроэлектроники, живущего в США, в своих роликах Евгений наглядно демонстрирует сложные физические концепции, благодаря чему многие из его видео набирают больше миллиона просмотров.
  • Minute phisics еще один отличный канал по физике, на котором отдельный плэйлист посвящен квантовой механике, не смотря на название, видео достаточно подробно и с нуля разбирают такие сложные темы как: теорему о запрете клонирования, парадокс Харди и даже квантовый алгоритм Шора, позволящий находить простые множители числа за полиномиальное время.
  • 3Blue1Brown канал выпускника Оксфорда Гранта Сандерсона, отлично сочетания понятного изложения и уникальной визуализации концепций из: квантовой физики, линейной алгебры, нейронных сетей. Также Грант является автором курса по многопараметрическому исчислению, доступному на площадке некоммерческого проекта Khan Academy.
Подробнее..

Анализ и построение ROC-кривых связь с РЛС

28.03.2021 18:07:46 | Автор: admin

Постановка задачи

Многие слышали о ROC-кривой, которая часто используется в ML. Расшифровывая данную аббревиатуру мы получаем, что ROC (англ. receiver operating characteristic). При переводе с английского это означает РХП (рабочая характеристика приемника). Данное понятие позаимствовано из теории обнаружения сигналов. ROC-кривую можно связать с радиолокационной станцией (РЛС), рассматривая ее с точки зрения обнаружения объекта. Опишем это более формально.

РЛС посылает импульсы, которые отражаются от объектов. Отражённый сигналXвоспринимается приёмной антенной радара (Рис. 1). Если есть какой-либо объект, находящийся в зоне обнаружения (ЗО)^1 , то отраженный сигнал будет выше порога детектирования\lambdaи это будет означать наличие объекта(D_1). Если отражённый сигнал ниже порога детектирования, то это означает отсутствие объекта(D_0).

Рис. 1 Поясняющий рисунок!Рис. 1 Поясняющий рисунок!ЗО

^1Зоной обнаружения РЛС называется область пространства, в пределах которой РЛС обеспечивает обнаружение объектов с вероятностями правильного обнаружения не хуже требуемых.

Наличие объекта обозначим как гипотезаH_1, а его отсутствие как гипотезаH_0. СигналX это непрерывная случайная величина. Предположим, что мы имеем условные распределения(1), которые нам известны.

\Large f_{(X|H_0)} (xH_0 ), \ f_{(X|H_1)}(xH_1)\ \ \ \ (1)

Очевидно, что мы можем говорить о том, чтоXимеет одинаковое распределение для обоих гипотез, но математические ожидания условных распределений(1)будут различными. Так же реалистично предположить, что

\Large E[XH_0]<E[XH_1]\ \ \ \ (2)

Учитывая отклонения X , возникающие из-за шума, получаем:

Рис. 2 Условные плотностей (1)Рис. 2 Условные плотностей (1)

На Рис. 2 \eta_0, \eta_1 есть условные математические ожидания случайной величиныXпри условии гипотезы H_0 иH_1 соответственно. При этом, согласно(2), получаем, что _0<_1 .

Как уже было сказано ранее, сигнал X сравнивается с неким порогом, который мы обозначили как . Решение о том есть ли объект в ЗО РЛС или нет обозначим как D_1 и D_0 соответственно. Дополняя Рис. 2 , D_1 иD_0, получаем:

Рис. 3 Условные распределения плотностей (1) c обозначением уровня порога и диапазонов принятия решений D и DРис. 3 Условные распределения плотностей (1) c обозначением уровня порога и диапазонов принятия решений D и D

Получаем следующие условные вероятности:

\Large \begin{array}{l} P_{d}=P\left(D_{1} \mid H_{1}\right)=\displaystyle \int_{D_{1}} f_{X \mid H_{1}}\left(x \mid H_{1}\right) d x \\ P_{f a}=P\left(D_{1} \mid H_{0}\right)= \displaystyle \int_{D_{1}} f_{X \mid H_{0}}\left(x \mid H_{0}\right) d x \end{array} (3)

Условные вероятности(3)можно интерпретировать так:

  • P_d есть вероятность обнаружения объекта при условии, что выполняется гипотеза H_1 , т.е. объект действительно находится в ЗО.

  • P_{fa} есть вероятность ложной тревоги, т.е. мы утверждаем D_1 , которое означает принятие решения о наличии объекта в ЗО, когда в действительности выполняетсяH_0, т.е. объекта в ЗО нет.

Визуализируя интегралы (3) , получаем:

Рис. 4 Вычисление значений P_d и P_fa как площади под кривыми (1)Рис. 4 Вычисление значений P_d и P_fa как площади под кривыми (1)

Очевидно, что с уменьшением порогаплощадь под кривыми будет больше, а значит, чтоP_dиP_{fa}будут увеличиваться.

Кривая, показывающая зависимость P_d как функцию от P_{fa} для различных , называется ROC-кривая (англ. Receiver Operating Characteristic, рабочая характеристика приёмника).

Дисперсия случайной величиныXопределяется характеристикой Отношение сигнал-шум (ОТШ, англ. Signal-to-Noise Ratio, сокр. SNR ), которая записывается как:

\Large S N R=10 \log _{10}\left(\frac{P_{\text {signal }}}{P_{\text {noise }}}\right)[dB] \ \ \ (4)
  • P_{signal} мощность сигнала;

  • P_{noise} мощность шума.

Принимая в (4) P_{signal}=1 , а P_{signal}=^2 дисперсия, получаем:

\Large S N R=10 \log _{10}\left(\frac{1}{\sigma^{2}}\right)[d B]\ \ (5)

ПостроениеROC-кривых и их анализ

Пусть заданы следующие начальные условия:

\Large \begin{array}{c} f_{X \mid H_{0}}\left(x \mid H_{0}\right)= \frac{1}{\sqrt{2 \pi \sigma^{2}}} e^{-\frac{x^{2}}{2 \sigma^{2}}} \\ f_{X \mid H_{1}}\left(x \mid H_{1}\right)=\frac{1}{\sqrt{2 \pi \sigma^{2}}} e^{-\frac{(x-1)^{2}}{2 \sigma^{2}}} \end{array} \ \ \ (6)\Large S N R \in[-1,5]\ \ \ (7) \\ \Large \lambda \in[0,1]\ \ \ (8)

Из(6)видно, что мы делаем предположение о том, что условные плотности имеют нормальное распределение, т.е. X \mid H_{0} \sim \mathcal{N}\left(0, \sigma^{2}\right) и X \mid H_{1} \sim \mathcal{N}\left(1, \sigma^{2}\right) , где \mathcal{N}\left(\mu, \sigma^{2}\right) обозначение нормального распределения с математическим ожиданием \mu и дисперсией \sigma^{2} . Ранее мы обозначали _0, _1 как условное математическое ожидание случайной величины X . Исходя из (6) , получаем, что _0= [XH_0 ]=0 , а _1= [XH_1 ]=1 .

Из диапазона (7) мы можем понять, какой у нас диапазон дисперсии \sigma^2 . Для этого выразим из (5) \sigma :

\Large \begin{array}{c} S N R=10 \log _{10}\left(\frac{1}{\sigma^{2}}\right)=10 \log _{10}\left(\sigma^{-2}\right)=-2 \cdot 10 \log _{10} \sigma=-20 \log _{10} \sigma \\ -\frac{S N R}{20}=\log _{10} \sigma \\ \sigma=10^{-\frac{S N R}{20}} \ \ (9) \end{array}

Подставляя граничные точки отрезка из (7) , получаем:

\Large \begin{aligned} &\sigma \in\left[\left.10^{-\frac{S N R}{20}}\right|_{S N R=5},\left.10^{-\frac{S N R}{20}}\right|_{S N R=-1}\right]\\ &\sigma \in\left[10^{-\frac{5}{20}}, 10^{-\frac{-1}{20}}\right]\\ &\sigma \in\left[\sqrt[4]{\frac{1}{10}}, \sqrt[20]{10}\right] (10)\end{aligned}

Зададим вектор значений SNR для построения ROC-кривой для каждого из них:

\Large \overrightarrow{{S N R}_{\text {values }}}=(-1,0.5,1,1.5,2,2.5,3,3.5,4,4.5,5)^{T} \text { (11) }

Шаг изменения значений вектора (11) возьмем равным \scriptsize \frac{1}{2} , т.е. \small _{SNR}=\frac{1}{2} . Определим теперь ROC-кривую как параметрическую функцию P_d от P_{fa} , где в качестве параметра выступает [0,1] . Из (3) и (6) , получаем:

\Large \text { ROC }_{\text {curve }}(\sigma, \lambda)=\left\{ \begin{array}{r} P_{f a}= \displaystyle\frac{1}{\sqrt{2 \pi \sigma^{2}}} \displaystyle \int_{\lambda}^{+\infty} e^{-\frac{x^{2}}{2 \sigma^{2}}} d x \\ P_{d}= \displaystyle\frac{1}{\sqrt{2 \pi \sigma^{2}}} \displaystyle \int_{\lambda}^{+\infty} e^{-\frac{(x-1)^{2}}{2 \sigma^{2}}} d x \end{array} \right. (12)

\sigma задает конкретную ROC-кривую из семейства ROC-кривых.

Зададим теперь вектор значений :

\Large \overrightarrow{\lambda_{\text {values }}}=(0,0.01,0.02, \ldots, 0.98,0.99,1)^{T} (13)

Шаг изменения значений вектора (13) возьмем равным \small \frac{1}{100} , т.е. \small _=\frac{1}{100} . Вектор (13) содержит 101 значение, т.е. имеем 101 точку для каждого графика. Таким образом, графики будут визуально выглядеть гладкими.

Имеющихся данных достаточно для построения ROC-кривых.

Воспользуемся для этого языком Python.

Подключение библиотек
# подключение дополнительных библиотекfrom scipy.stats import normfrom scipy.misc import derivativeimport numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns; sns.set()%matplotlib inline
Дополнительные функции и начальные условия
# зададим вектор SNR и lambdaSNR_values = np.arange(-1, 5.5, 1/2) lambda_values = np.arange(0, 1.01, 1/100) # функция, которая возвращает значение sigma по заданному значению SNRdef snr_to_sigma(SNR):    return np.power(10, -SNR/20)  # функция, которая возвращает значения Pfa и Pd по заданным sigma и lambdadef roc_curve(sigma, lambda_):    return 1 - norm.cdf(lambda_/sigma), 1 - norm.cdf((lambda_ - 1)/sigma)# создание DataFrame в котором будут храниться значения Pfa, Pd, SNRdata = []for SNR in SNR_values:    for lambda_ in lambda_values:        Pfa, Pd = roc_curve(snr_to_sigma(SNR), lambda_)        data.append([Pfa, Pd, str(SNR)])        data = pd.DataFrame(data, columns=['Pfa', 'Pd', 'SNR'])
Код для построения графика
fig, ax = plt.subplots(figsize=(18, 14))sns.set_context('poster')plt.title('$ROC$-кривые в зависимости от значения $SNR$', fontsize=40)plt.xlabel('$P_{fa}$', fontsize=40)plt.xticks(np.arange(0, 0.7, 0.05), fontsize=30)plt.yticks(np.arange(0.5, 1, 0.05), fontsize=30)plt.ylabel('$P_d$', fontsize=40, rotation=0, labelpad=40)sns.lineplot(x='Pfa', y='Pd', hue='SNR',              data=data, palette='gist_ncar', ax=ax)ax.annotate("Возрастание $\lambda$", xy=(0.15, 0.81),  xycoords='data',            xytext=(90, 150), textcoords='offset points',            size=30, ha='left',             arrowprops=dict(arrowstyle="->", color='black',                            connectionstyle="arc3,rad=0.1"))plt.grid(color='black', linestyle='--', linewidth=1, alpha=0.3)plt.legend(fontsize='small', shadow=True, title='$SNR(dB)$',           borderpad=0.9, fancybox=True);
Рис. 5 ROC-кривые в зависимости от значения SNRРис. 5 ROC-кривые в зависимости от значения SNR

Из графика видно следующее:

  1. Все кривые начинают свое движение с линии P_{fa}=0.5 и заканчивают на линии P_d=0.5 ;

  2. Чем больше значение SNR , тем ближе ROC-кривая к точке (0,1) ;

  3. Все кривые выпуклы вверх;

  4. ROC - кривая монотонно не убывает. Чем выше лежит кривая, тем лучше качество РЛС.

Первое объясняется ограниченностью значения порога детектирования (8) . Посмотрим, как будут выглядеть ROC-кривые, если увеличить диапазон , например, до [-10,10] .

Дополнительный код
# создание DataFrame в котором будут храниться значения Pfa, Pd, SNRdata2 = []for SNR in SNR_values:    for lambda_ in np.arange(-10, 10.1, 1/10) :        Pfa, Pd = roc_curve(snr_to_sigma(SNR), lambda_)        data2.append([Pfa, Pd, str(SNR)])        data2 = pd.DataFrame(data2, columns=['Pfa', 'Pd', 'SNR'])
Код для построения графика
fig, ax = plt.subplots(figsize=(18, 14))sns.set_context('poster')plt.title('$ROC$-кривые в зависимости от значения $SNR$', fontsize=40)plt.xlabel('$P_{fa}$', fontsize=40)plt.xticks(np.arange(0, 1.05, 0.1), fontsize=20)plt.yticks(np.arange(0, 1.05, 0.1), fontsize=20)plt.ylabel('$P_d$', fontsize=40, rotation=0, labelpad=40)sns.lineplot(x='Pfa', y='Pd', hue='SNR',              data=data2, palette='gist_ncar', ax=ax)ax.annotate("Возрастание $\lambda$", xy=(0.15, 0.81),  xycoords='data',            xytext=(90, 110), textcoords='offset points',            size=20, ha='left',             arrowprops=dict(arrowstyle="->", color='black',                            connectionstyle="arc3,rad=0.1"))plt.grid(color='black', linestyle='--', linewidth=1, alpha=0.3)plt.legend(fontsize='small', shadow=True, title='$SNR(dB)$',           borderpad=0.9, fancybox=True);
Рис. 6 ROC-кривые в зависимости от значения SNR c увеличенным диапазоном .Рис. 6 ROC-кривые в зависимости от значения SNR c увеличенным диапазоном .

Второе объясняется тем, что можно достичь большего значения P_d при меньшем значении P_{fa} . Это происходит потому, что при увеличении значения SNR , уменьшается значение , что видно из (9) . Посмотрим, как визуально изменяются кривые условных плотностей (6) при разных значениях SNR .

Дополнительный код
# функция, которая возвращает значение условных плотностей в зависимости от sigma def conditional_density(x, sigma):    return norm.pdf(x/sigma), norm.pdf((x - 1)/sigma)      # создание DataFrame в котором будут храниться значения условных плотностей и SNRdata3 = []x_range = np.linspace(-5, 5, 100)for SNR in SNR_values:    for x in x_range :        cond_dens1, cond_dens2 = conditional_density(x, snr_to_sigma(SNR))        data3.append([cond_dens1, cond_dens2, str(SNR), x])        data3 = pd.DataFrame(data3, columns=['cond_dens1', 'cond_dens2', 'SNR', 'x'])
Код для построения графика
fig, ax = plt.subplots(figsize=(20, 10))sns.set_context('poster')plt.title('Условные распределения в зависимости от значения $SNR$',           fontsize=30)plt.xlabel('$x$', fontsize=40)plt.xticks(np.arange(-5, 5.5, 0.5), fontsize=20)plt.yticks(np.arange(0, 0.45, 0.05), fontsize=20)plt.ylabel('Значение условной плотности', fontsize=20,            labelpad=30)sns.lineplot(x='x', y='cond_dens2', hue='SNR',              data=data3, palette='gist_ncar', ax=ax)sns.lineplot(x='x', y='cond_dens1', hue='SNR',              data=data3, palette='gist_ncar', ax=ax, legend=False)ax.legend(fontsize='small', shadow=True, title='$SNR(dB)$',           borderpad=0.9, fancybox=True, loc='upper left')ax.annotate("$f_{X|H_0}(x|H_0)$", xy=(-0.6, 0.35),  xycoords='data',            xytext=(-90, 20), textcoords='offset points',            size=30, ha='right',             arrowprops=dict(arrowstyle="->", color='black',                            connectionstyle="arc3,rad=0.1"))ax.annotate("$f_{X|H_1}(x|H_1)$", xy=(1.6, 0.35),  xycoords='data',            xytext=(100, 20), textcoords='offset points',            size=30, ha='left',             arrowprops=dict(arrowstyle="->", color='black',                            connectionstyle="arc3,rad=0.1"))plt.grid(color='black', linestyle='--', linewidth=1, alpha=0.3);
Рис. 7 Условные распределения (6) в зависимости от SNRРис. 7 Условные распределения (6) в зависимости от SNR

По Рис. 7 видно, что при увеличении SNR , кривые становятся уже, а, значит, пересекаются в меньшей степени. Посмотрим теперь на зависимость вероятности обнаружения P_d от :

Дополнительный код
data4 = []for SNR in SNR_values:    for lambda_ in lambda_values:        Pfa, Pd = roc_curve(snr_to_sigma(SNR), lambda_)        data4.append([Pfa, Pd, str(SNR), lambda_])        data4 = pd.DataFrame(data4, columns=['Pfa', 'Pd', 'SNR', 'lambda'])
Код для построения графика
fig, ax = plt.subplots(figsize=(16, 12))sns.set_context('poster')plt.title('Кривые $P_d$ от $\lambda$ при разных $SNR$', fontsize=40)plt.xlabel('$\lambda$', fontsize=40)plt.xticks(np.arange(0, 1.05, 0.1), fontsize=20)plt.yticks(np.arange(0.5, 1.05, 0.1), fontsize=20)plt.ylabel('$P_d$', fontsize=40, rotation=0, labelpad=40)sns.lineplot(x='lambda', y='Pd', hue='SNR',              data=data4, palette='gist_ncar', ax=ax)ax.annotate("Возрастание $\lambda$", xy=(0.5, 0.85),  xycoords='data',            xytext=(-10, 50), textcoords='offset points',            size=20, ha='right',             arrowprops=dict(arrowstyle="->", color='black',                            connectionstyle="arc3,rad=-0.2"))plt.grid(color='black', linestyle='--', linewidth=1, alpha=0.3)plt.legend(fontsize='small', shadow=True, title='$SNR(dB)$',           borderpad=0.9, fancybox=True);
Рис. 8 Кривые зависимости P_d от при различных значениях SNRРис. 8 Кривые зависимости P_d от при различных значениях SNR

P_d достигает максимального значения при =0 и SNR=5 . Но при таком низком пороге детектирования мы получаем:

Код для построения графика
fig, ax = plt.subplots(figsize=(16, 12))sns.set_context('poster')plt.title('Кривые $P_{fa}$ от $\lambda$ при разных $SNR$', fontsize=40)plt.xlabel('$\lambda$', fontsize=40)plt.ylabel('$P_{fa}$', fontsize=40, rotation=0, labelpad=40)sns.lineplot(x='lambda', y='Pfa', hue='SNR',              data=data4, palette='gist_ncar', ax=ax)ax.annotate("Возрастание $\lambda$", xy=(0.5, 0.35),  xycoords='data',            xytext=(-10, 90), textcoords='offset points',            size=30, ha='right',             arrowprops=dict(arrowstyle="->", color='black',                            connectionstyle="arc3,rad=0.2"))plt.grid(color='black', linestyle='--', linewidth=1, alpha=0.3)plt.legend(fontsize='small', shadow=True, title='$SNR(dB)$',           borderpad=0.9, fancybox=True);
Рис. 9 Кривые зависимости P_{fa} от при различных значениях SNR.Рис. 9 Кривые зависимости P_{fa} от при различных значениях SNR.

При =0 получается, что вероятность ложной тревоги равна \small \frac{1}{2} , так как определенный интеграл от условной плотности распределения

\large \left.\frac{1}{\sqrt{2 \pi \sigma^{2}}} \int_{\lambda}^{+\infty} e^{-\frac{x^{2}}{2 \sigma^{2}}} d x\right|_{\lambda=\eta_{0}}

считается от значения математического ожидания до + , что в точности равно \small \frac{1}{2} , в силу симметричности плотности нормального распределения.

Третье объясняется тем, что тангенс угла наклона ROC-кривой в некоторой ее точке равен значению плотностей (6) от порога детектирования , необходимому для достижения P_d и P_{fa} в этой точке.

Пусть

\Large \tan \left(\alpha_{\lambda}\right):=\frac{\left(\frac{d P_{d}}{d \lambda}\right)}{\left(\frac{d P_{f a}}{d \lambda}\right)} \ \ ,(14)

тогда:

\Large \begin{aligned} &\tan \left(\alpha_{\lambda}\right)= \frac{\frac{d}{d \lambda}\left(\frac{1}{\sqrt{2 \pi \sigma^{2}}} \displaystyle \int_{\lambda}^{+\infty} e^{-\frac{(x-1)^{2}}{2 \sigma^{2}}} d x\right)}{\frac{d}{d \lambda}\left(\frac{1}{\sqrt{2 \pi \sigma^{2}}} \displaystyle \int_{\lambda}^{+\infty} e^{-\frac{x^{2}}{2 \sigma^{2}}} d x\right)}=\frac{-\frac{1}{\sqrt{2 \pi \sigma^{2}}} e^{-\frac{(\lambda-1)^{2}}{2 \sigma^{2}}}}{-\frac{1}{\sqrt{2 \pi \sigma^{2}}} e^{-\frac{(\lambda)^{2}}{2 \sigma^{2}}}}=\\ &=\frac{e^{-\frac{(\lambda-1)^{2}}{2 \sigma^{2}}}}{e^{-\frac{(\lambda)^{2}}{2 \sigma^{2}}}}=e^{-\frac{(\lambda-1)^{2}}{2 \sigma^{2}}+\frac{(\lambda)^{2}}{2 \sigma^{2}}}=e^{\frac{-\lambda^{2}+2 \lambda-1+\lambda^{2}}{2 \sigma^{2}}}=e^{\frac{2 \lambda-1}{2 \sigma^{2}}} \ \ \ (15) \end{aligned}

Исследуем функцию (15) :

\Large \begin{array}{l} \displaystyle \lim _{\lambda \rightarrow-\infty}\left(\tan \left(\alpha_{\lambda}\right)\right)=\lim _{\lambda \rightarrow-\infty}\left(e^{\frac{2 \lambda-1}{2 \sigma^{2}}}\right)=0 \\ \displaystyle \lim _{\lambda \rightarrow+\infty}\left(\tan \left(\alpha_{\lambda}\right)\right)= \lim _{\lambda \rightarrow+\infty}\left(e^{\frac{2 \lambda-1}{2 \sigma^{2}}}\right)=+\infty \end{array} (16)

Из (15) и (16) следует, что тангенс угла наклона ROC-кривой монотонно изменяется от 0 до + при от - до + . Таким образом, начиная построение графика от =- \ tan(_ )=0 и, следовательно, _=0 . Заканчивается все в точке =+ , когда tan(_ )=+ , т.е. _=90 (касательная в данной точке перпендикулярна оси абсцисс).

Дополнительный код
# функция, которая возвращает значения Pfa и Pd по заданным sigma и lambdadef dif_roc_curve(sigma, lambda_):    return (derivative(lambda x: 1 - norm.cdf(x/sigma), lambda_, dx=1e-10),           derivative(lambda x: 1 - norm.cdf((x - 1)/sigma), lambda_, dx=1e-10))data5 = []for SNR in SNR_values:    for lambda_ in [0, 0.5, 1]:        dPfa, dPd = dif_roc_curve(snr_to_sigma(SNR), lambda_)        Pfa, Pd = roc_curve(snr_to_sigma(SNR), lambda_)        tan = dPd/dPfa        for i in np.arange(0.01/tan, 0.2/tan, 0.01/tan):            data5.append([tan*(i - Pfa) + Pd, i, str(SNR), lambda_])        data5 = pd.DataFrame(data5, columns=['y', 'x', 'SNR', 'lambda'])
Код для построения графика
fig, ax = plt.subplots(figsize=(18, 14))sns.set_context('poster')plt.title('$ROC$-кривая с $3^{мя}$ касательными', fontsize=40)plt.xlabel('$P_{fa}$', fontsize=40)plt.xticks(np.arange(0, 1.05, 0.1), fontsize=20)plt.yticks(np.arange(0, 1.05, 0.1), fontsize=20)plt.ylabel('$P_d$', fontsize=40, rotation=0, labelpad=40)sns.lineplot(x='Pfa', y='Pd', hue='SNR', legend=False,             data=data[data['SNR']  == '5.0'], palette='gist_ncar', ax=ax)sns.lineplot(x='x', y='y', hue='lambda', linestyle='--',             data=data5[data5['SNR']  == '5.0'],              palette='dark:b', legend=True,  ax=ax)plt.grid(color='black', linestyle='--', linewidth=1, alpha=0.3)plt.legend(fontsize='small', shadow=True, title='Касательная для $\lambda=$',           borderpad=0.9, fancybox=True, loc=4);

/

Рис. 10 ROC-кривая SNR=5 с тремя касательными в точках. Рис. 10 ROC-кривая SNR=5 с тремя касательными в точках.

На рис. 10 рассматриваются точки \left(P_{f a}(0), P_{d}(0)\right),\left(P_{f a}(0.5), P_{d}(0.5)\right),\left(P_{f a}(1), P_{d}(1)\right) .

Вывод

В ходе исследования были построены множество ROC-кривых на основе аналитического выражения (12) . Были также получены свойства ROC-кривых на основе графиков и аналитических выражений. То, каким образом будет выглядеть характеристика рабочего приемника, зависит от значения SNR , из которого однозначно определяется значение . Также область, в которой определена ROC-кривая, зависит от диапазона .

Использованная литература

  • Ван-Трис Гарри Л. Теория обнаружения, оценок и модуляции. Том 1. Теория обнаружения, оценок и линейной модуляции -Нью-Йорк, 1968, Пер, с англ. , под ред. проф. В. И. Тихонова. М., Советское радио, 1972, 744 с.

  • Тяпкин В.Н. Основы построения радиолокационных станции радиотехнических воиск: учебник / В.Н. Тяпкин, А.Н. Фомин, Е.Н. Гарин [и др.]; под общ. ред. В.Н. Тяпкина. Красноярск : Сиб. федер. ун-т. 2011. 536 с.

Дополнительно

Ссылка на github с исходным кодом.

Подробнее..

Из песочницы Каков вопрос таков ответ формализуя задачу мы уже предопределяем возможный ответ

19.09.2020 18:15:27 | Автор: admin
В интересной и поучительной статье Случайный трамвай посреди незнакомого города предлагается такой эксперимент:
Представьте себе, что некто взял полоску фотографической пленки длинной N см и решил пронаблюдать за тем, как на ней будут оставлять свой след приходящие из космоса частицы. В масштабах эксперимента плотность вероятности попадания частиц на пленку будет описываться равномерным распределением на отрезке от 0 до N. В этом опыте экспериментатор сообщает вам расстояние k между левым краем пленки и точкой, куда угодила первая зарегистрированная частица. Как и прежде, от вас требуется дать приемлемую оценку для неизвестного вам N.

Для решения этой задачи было сделано такое предположение:
Представьте теперь, что в одном эксперименте расстояние от места попадания частицы до левого края фотопленки было равным Р1, а в другом эксперименте Р2, причем Р1<Р2. Не будет ли тогда разумным, длине фотопленки в первом эксперименте дать меньшую оценку, чем во втором?

Мне стало интересно в цифрах всегда ли и насколько это разумно?

Эти заметки не продолжение и не обсуждение статьи из которой взята цитата, это попытка посмотреть как сама постановка задачи, введенные ограничения, допущения и условия принимаемые на этапе формализации отразятся на полученном ответе. Я не буду приводить формулы и постараюсь не использовать специальные термины, мне кажется так будет отчетливей видна сама проблема зависимости результата от принятых или не принятых допущений.

Для начала, я изменю, упрощу и приземлю эксперимент


Судьба или наш помощник имеет мешочек в котором лежат пронумерованные по порядку бочонки, как в лото. Помощник (мне его представить легче чем судьбу) в тайне от нас достает наугад бочонок и насыпает в первый сундук пронумерованных шаров по числу на бочонке. Затем он повторяет процедуру случайного извлечения бочонка и насыпает соответствующее число пронумерованных по порядку шаров во второй сундук. Перед нами стоят два сундука с неизвестным количеством шаров в каждом из них. Мы достаем наугад один шар из первого и один шар из второго сундука, и делаем разумное предположение, что шару с большим номером соответствует сундук с большим количеством шаров.
Оценим насколько предположение разумно?

Формализуем и уточним задачу


1. Раз уж бочонки лежат в мешочке, то они должны быть ограничены каким-то числом. Помня о первоисточнике про число трамвайных линий, ограничил пока число бочонков в 30.

2. А как поступить если мы вынули из сундуков шары с одинаковыми номерами? У нас есть варианты:

2.1 признать исход неудачным, не принимать решения и попросить помощника сделать новое заполнение сундуков.

2.2 бросить монетку и наугад решить в каком сундуке шаров больше. В этом варианте не будет неудачных исходов.

2.3 решить что раз номера одинаковые, то и количество шаров в сундуках тоже одинаковое. В этом варианте тоже не будет неудачных исходов.

Тут я хочу заметить, что я не выбираю какой вариант лучше. Моя цель посмотреть как разные варианты скажутся на полученном ответе.

3. Раз у нас появилось разное количество исходов, то встает вопрос: А от какого количества исходов считать долю правильных ответов? От всех опытов или только от удачных исходов? Посчитаем оба варианта.

4. Вот вынул помощник первый бочонок, посмотрел номер, насыпал соответствующее число шаров в первый сундук. Стоп! А что он сделал с вынутым бочонком затем? У него два варианта: положить бочонок назад в мешок, а можно не класть назад в мешок. Или что тоже самое, помощник мог достать сразу два бочонка и насыпать шары в сундуки по вынутым числам на бочонках, помощники бывают ленивые, а мы не видим что он там творит. В этом случае у нас никогда не будет равное число шаров в сундуках, и следовательно неудачных исходов. Этот пункт явным образом отступает от задачи из цитаты, там бочонок возвращается назад в мешок, но у меня другие цели, да и невозвращение бочонка это типичная ситуация в жизни, посчитаем и такой вариант.

Итак, у нас есть три варианта как считать исходы опыта при которых номера шаров одинаковы, два варианта подсчета доли правильных ответов и два варианта наполнения сундуков шарами. Итого 12 вариантов результатов эксперимента!

Как вероятность правильного ответа будет зависеть от количества бочонков в мешке судьбы, то есть от максимально возможного числа шаров в сундуке? Может быть все варианты будут одинаковыми? Может быть варианты будут иметь одинаковую тенденцию? Вот в этот момент я попробовал проверить свою интуицию заполнив такую табличку:



Оказалось, забегая вперед, что тренировать и тренировать мне еще интуицию. Я подчистил табличку от многих своих соображений.

Чтобы не утомлять формулами, которые хоть и красивы, но рекуррентны, а свести рекуррентные формулы к замкнутым мне не под силу, опишу общий алгоритм расчета:

1. Для каждого числа бочонков в мешке, мы можем составить список всех вариантов наполнения сундуков шарами.

Пример: Если число бочонков 4, то получим 16 вариантов наполнения двух сундуков по количеству шаров: 1и1, 1и2, 1и3, 2и1, 2и2 4и4.

2. Для каждого варианта наполнения сундуков подсчитываем число правильных ответов для трех вариантов подсчета равных шаров.

Пример: Для наполнения сундуков 2и3, (в первом сундуке 2 шара, во втором 3) получится следующая таблица.



3. Для выбранного числа бочонков складываются все правильные ответы для каждого варианта наполнения сундуков.

4. Вычисляем долю правильных для двух вариантов подсчета (по отношению к общему числу опытов и к числу успешных).

5. Считаем так же пункты с 3 по 4 для варианта когда бочонок не возвращается в мешок, то есть когда у нас не может быть равное число шаров в сундуках.

Я подсчитал для числа бочонков с 1 до 8 и 30, чтобы была видна тенденция. Приведу графики.

Сначала для варианта когда бочонок возвращается в мешок




При увеличении числа бочонков в мешке, а следовательно увеличении возможного числа шаров в сундуках вероятность правильной оценки растет и разница между вариантами уменьшается. Любопытно, что вероятность не всегда выше 0,5. Так же любопытен желтый график, на нем есть спад и только потом подъем. Вообще, диапазон от 1 до 7 оказался не очевидным для меня.

Получается, что если шаров меньше 8, то для варианта подсчета Равные считаются неудачей. Доля правильных считается от всех опытов случайный ответ даст лучший результат чем следование правилу Больше номер шара, значит сундук содержит больше шаров.

Графики для варианта когда бочонок не возвращается в мешок и следовательно в сундуках не может быть одинаковое число шаров




Графика три, так как два совпадают, они обозначены красным цветом.

Для четырех вариантов вероятность правильного ответа падает и стремится, видимо, к 0,5!(?) Другими словами, в этих вариантах для большого числа шаров в сундуках, можно вообще не проводить опыта, а просто подбрасывать монетку результат одинаков. Собственно, вот ради этого я и решил просчитать различные варианты, я ждал каких-то неожиданностей. Я не имею строгого доказательства, что вероятность стремится именно к 0,5. Это опять моя интуиция, а она часто подводит.

Хочу еще раз подчеркнуть, что эти заметки не посвящены выбору правильной стратегии или оценке какой вариант лучше. Интерес заключался в том чтобы посмотреть влияние разных вариантов задания условий на получаемый результат.

P.S. Как и хотелось, мне удалось не использовать формул и употребить специальный термин рекуррентная формула всего один раз.

P.P.S. Если лень смотреть Википедию, то рекуррентная формула это когда вам требуется прийти в дом 30, но вы обязаны предварительно посетить все предыдущие дома с номерами от 1 до 29.
Подробнее..

Закон больших чисел и то, чем он не является

18.10.2020 14:09:04 | Автор: admin
О законе больших чисел (збч) написано много (например, на английском, тут и тут, также [1]). В этом тексте я попробую рассказать о том, чем закон больших чисел не является об ошибочном восприятии этого закона и потенциальных ловушках, спрятанных в математических формулировках.

Начнем с того, что же такое закон больших чисел. Неформально, это математическая теорема о том, что вероятность отклонений среднего по выборке от математческого ожидания мала и что эта вероятность стремится к нулю при увеличении выборки. Совсем неформально, теорема утверждает, что с мы можем быть в достаточной степени уверены, что среднее по нашей выборке достаточно близко к настоящему среднему и таким образом хорошо его описывает. Разумеется, предполагается наличие традиционного статистического багажа наши наблюдения из выборки должны описывать одно и то же явление, они должны быть независимы, и мысль о том, что есть некоторое настоящее распределение с настоящим средним, не должна вызывать у нас существенных сомнений.

При формулировке закона мы говорим среднее по выборке, и все что может быть математически записано как такое среднее, попадает под действие закона. Например, доля событий в общей массе может быть записана как среднее, нам достаточно записать наличие события как 1 и отсутствие как 0. В итоге среднее будет равно частоте и частота должна быть близка к теоретическому среднему. Именно поэтому по ожидаем, что доля орлов при подрасывании идеальной монеты будет близка к .

Рассмотрим теперь ловушки и ошибочные представления об этом законе.

Во-первых, ЗБЧ не всегда верен. Это всего лишь математическая теорема с входными данными предположениями. Если предположения неверны, то и закон не обязан выполняться. Например, это так если наблюдения зависимы, или если нет уверенности в том, что настоящее среднее существует и конечно, или если изучаемое явление меняется во времени и мы не можем утверждать, что мы наблюдаем одну и ту же величину. По правде говоря, в определенной степени ЗБЧ верен и в этих случаях, например, для слабокоррелированных наблюдений или даже в том случае когда наблюдаемая величина меняется во времени. Однако, для корректного приложения этого к непосредственной реальности нужен хорошо тренированный специалист-математик.

Во-вторых, кажется верным, что ЗБЧ утверждает среднее по выборке близко к настоящему среднему. Однако, такое утверждаение остается не полным: надо обязательно добавлять с высокой долей вероятности; и эта вероятность всегда меньше 100%.

В-третьих, хочется сформулировать ЗБЧ как среднее по выборке сходится к настоящему среднему при неограниченном росте выборки. Однако, это неверно, потому что среднее по выборке вообще никуда не сходится, так как оно случайное и остается таковым для любого размера выборки. Например, даже если подбросить симметричную монету миллион раз, все равное есть шанс, что доля орлов будет далека от или даже равна нулю. В определенном смысле, всегда есть шанс получить что-то необычное. Надо признать, однако, что наша интуиция все-таки подсказыает нам что ЗБЧ должен описывать какую-то сходмость, и так есть на самом деле. Только сходится не среднее, а вероятность отклонения выборочного среднего от его истинного значения, и сходится к нулю. Так как эта идея интуитивно очень удобна (шансы увидеть что-то необычное стремятся к нулю), матетматики придумали для этого особый тип сходимости сходимость по вероятности.

В-четвертых, ЗБЧ не говорит ничего о том, когда выборочное среднее можно считать достаточно близким к теоретическому. Закон больших чисел только постулирует существование определенного явления, он ничего не говорит о том, когда его можно использовать. Получается, на ключевой вопрос с точки зрения практики могу ли я использовать ЗБЧ для моей выборки размера n?, закон больших чисел не отвечает. Ответы на эти вопросы дают другие теоремы, например, Центральная Предельная Теорема. Она дает представление о том, в каких пределах выборочное среднее может отклонятся от своего истинного значения.

В заключение следует отметить центральную роль ЗБЧ в статистике и теории вероятностей. История этого закона началась тогда, когда ученые заметили, что частоты некоторых повторяющихся явлений стабилизируются и перестают существенно менятся, при условии многократного повторения опыта или наблюдения. Поразительным было то, что эта стабилизация частот наблюдалась для совершенно несвязаных явления от бросания игральной кости до урожайности в сельском хозяйстве, указывая на возможное существование закона природы. Интересно, что этот закон природы оказался частью математики, а не физики, химии или биологии, как обычно бывает с законами природы.

[1] Illustrating the Law of Large Numbers (and Confidence Intervals) Jeffrey D Blume & Richard M Royall
Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru