На Хабре много статей по этой теме, но они не рассматривают практических задач. Я попытаюсь исправить это досадное недоразумение. Формула Байеса применяется для фильтрации спама, в рекомендательных сервисах и в рейтингах. Без нее значительное число алгоритмов нечеткого поиска было бы невозможно. Кроме того, это формула явилась причиной холивара среди математиков.
Рубрика «теория вероятностей» - 6
О формуле Байеса, прогнозах и доверительных интервалах
2014-08-10 в 0:13, admin, рубрики: Алгоритмы, Байес, байесовский подход, математика, теория вероятностей, теория вероятности, терверВероятностные модели: LDA, часть 2
2014-07-16 в 15:52, admin, рубрики: data mining, байесовские сети, Блог компании Surfingbird, искусственный интеллект, классификация, кластеризация, математика, математическое моделирование, теория вероятностей Продолжаем разговор. В прошлый раз мы сделали первый шаг на переходе от наивного байесовского классификатора к LDA: убрали из наивного байеса необходимость в разметке тренировочного набора, сделав из него модель кластеризации, которую можно обучать ЕМ-алгоритмом. Сегодня у меня уже не осталось отговорок – придётся рассказывать про саму модель LDA и показывать, как она работает. Когда-то мы уже говорили об LDA в этом блоге, но тогда рассказ был совсем короткий и без весьма существенных подробностей. Надеюсь, что в этот раз удастся рассказать больше и понятнее.
Читать полностью »
Вероятностные модели: от наивного Байеса к LDA, часть 1
2014-07-02 в 10:49, admin, рубрики: data mining, байесовские сети, Блог компании Surfingbird, искусственный интеллект, классификация, кластеризация, математика, математическое моделирование, теория вероятностейПродолжаем разговор. Прошлая статья была переходной от предыдущего цикла о графических моделях вообще (часть 1, часть 2, часть 3, часть 4) к новому мини-циклу о тематическом моделировании: мы поговорили о сэмплировании как методе вывода в графических моделях. А теперь мы начинаем путь к модели латентного размещения Дирихле (latent Dirichlet allocation) и к тому, как все эти чудесные алгоритмы сэмплирования применяются на практике. Сегодня – часть первая, в которой мы поймём, куда есть смысл обобщать наивный байесовский классификатор, и заодно немного поговорим о кластеризации.
Вероятностные модели: сэмплирование
2014-06-20 в 11:52, admin, рубрики: data mining, Алгоритмы, байесовские сети, Блог компании Surfingbird, искусственный интеллект, математика, математическое моделирование, сэмплирование, теория вероятностей, метки: data mining, байесовские сети, математика, математическое моделирование, сэмплирование, теория вероятностей И снова здравствуйте! Сегодня я продолжаю серию статей в блоге Surfingbird, посвящённую разным методам рекомендаций, а также иногда и просто разного рода вероятностным моделям. Давным-давно, кажется, в прошлую пятницу летом прошлого года, я написал небольшой цикл о графических вероятностных моделях: первая часть вводила основы графических вероятностных моделей, во второй части было несколько примеров, часть 3 рассказывала об алгоритме передачи сообщений, а в четвёртой части мы кратко поговорили о вариационных приближениях. Цикл заканчивался обещанием поговорить о сэмплировании — ну что ж, не прошло и года. Вообще говоря, в этом мини-цикле я поведу речь более предметно о модели LDA и о том, как она помогает нам делать рекомендации текстового контента. Но сегодня начну с того, что выполню давнее обещание и расскажу о сэмплировании в вероятностных моделях — одном из основных методов приближённого вывода.
Читать полностью »
Теория вероятностей против интуиции
2014-05-31 в 8:07, admin, рубрики: математика, теория вероятностей, метки: теория вероятностейНачну я этот пост с того, что устрою небольшой холивар. Рассмотрим такую задачу (которая может показаться очень знакомой):
Вы участвуете в телевизионном шоу. В последнем раунде перед вами три двери, за одной находится овца, за другой — козел, а за третьей — Феррари. Вы хотите Феррари, и не хотите ни кого из крупного рогатого скота. Ведущий предлагает вам выбрать дверь, и вы указываете на одну из дверей. Далее ведущий решает открыть одну из двух оставшихся дверей. Он выбирает одну из них (допустим, подбросив монетку), открывает ее, и за ней оказывается овца. Тогда ведущий предлагает вам поменять ваш выбор. Вопрос: основываясь на доступной вам информации, имеет ли смысл менять выбор.
Ответ: совершенно не важно, поменяете ли вы выбор, Феррари равновероятно спрятана за одной из двух закрытых дверей.
Если вы согласны с этим ответом, то статья вам покажется не очень интересной. А если не согласны, то может понравиться.
Читать полностью »
Алгоритм построения покрывающих наборов
2014-01-20 в 18:45, admin, рубрики: Алгоритмы, комбинаторика, математика, парадокс, собеседование, теория вероятностей, тестирование, метки: Алгоритмы, дискретная математика, тестированиеОткровенно говоря, ранее я ни разу не занимался в серьезной мере методами тестирования программного обеспечения. Однако, понимаю, что для полной уверенности в том, что программа будет работать, нужно перепробовать всевозможные варианты её использования. Также очевиден для меня и тот факт, что сделать это не всегда возможно. Если имеются конкретные варианты использования, но невозможно проверить их всех в силу их количества, стараются построить набор, который покроет все самые используемые варианты. Но что делать, если использование всех вариантов равновероятно? Как за минимальное число времени обнаружить все ошибки, на которые есть большая вероятность наткнуться? Данная задача действительно известна, и с ней нередко сталкиваются, ну хотя бы, в Яндексе.
Чтобы стало понятно о чем идет речь, представим, что нам необходимо протестировать какую-либо программу или сайт. Очень хорош пример с тестированием веб-формы, скажем для регистрации или для поиска. Возникает вопрос, с какими ошибками в ней скорее всего встретится пользователь? Пускай у нас в форме имеется 6 вопросов, для каждого из которых возможны 10 вариантов ответа. Допустим, на страницу зашел целый миллион пользователей, и каждый из них ответил уникально. Теперь представим, что в форме для заполнения ответами скрывается ошибка. Если ошибка обнаруживается только при определенной комбинации ответов на все 6 вопросов, то на неё наткнется лишь один человек. Если же ошибка вылетает при наборе определенных ответов на какие-то 3 вопроса, то количество людей, обнаруживших ошибку возрастет до тысячи. Очевидно, что чем меньше элементов в комбинации, требуемой для ошибки, тем больше людей с ней встретится. Соответственно, перед нами теперь стоит задача: если мы не можем обнаружить все ошибки, то давайте хотя бы найдем самые критичные, то есть те, на которые наткнется больше всего пользователей.
Таким образом мы должны сформировать тест-кейсы (и чем меньше, тем лучше), при переборе которых мы наткнемся на самые легкодоступные ошибки. Допустим, у нас имеется множество вопросов A, которое мы задаем количеством вариантов ответа на каждый из них: А = {2, 3, 5, 2, ...}. Пусть n — количество вопросов, а 1≤m≤n — степень критичности ошибок, она же степень покрытия или глубина покрывающего набора. Чем меньше значение m, тем критичнее ошибка. Задавая степень покрытия мы строим тестовый набор, который позволит обнаружить все ошибки, степень критичности которых меньше данного m. Если m = n, то поиск ошибок сводится к перебору всех вариантов. Чем меньше задаем степень, тем меньше тест-кейсов будет сформировано и тем меньше ошибок мы найдем.
Читать полностью »
Лекции от Яндекса для тех, кто хочет провести каникулы с пользой. Дискретный анализ и теория вероятностей
2014-01-04 в 10:49, admin, рубрики: Блог компании Яндекс, математика, теория вероятностей, Учебный процесс в IT, школа анализа данных, Яндекс.Почта, метки: теория вероятностей, школа анализа данных, Яндекс.ПочтаДля тех, кому одного курса на праздники мало и кто хочет больше, продолжаем нашу серию курсов от Школы анализа данных Яндекса. Сегодня подошла очередь курса «Дискретный анализ и теория вероятностей» – даже более фундаментального, чем предыдущий. Но без него нельзя представить ещё большую часть современной обработки данных.
В рамках курса рассматриваются основные понятия и методы комбинаторного, дискретного и асимптотического анализа, теории вероятностей, статистики и на примере решения классических задач демонстрируется их применение.
Читает курс Андрей Райгородский. Доктор физико-математических наук. Профессор кафедры математической статистики и случайных процессов механико-математического факультета МГУ им. М. В. Ломоносова. Заведующий кафедрой Дискретной математики ФИВТ МФТИ. Профессор и научный руководитель бакалавриата кафедры «Анализ данных» факультета инноваций и высоких технологий МФТИ. Руководитель отдела теоретических и прикладных исследований компании «Яндекс». (Ещё больше можно узнать в статье о нём на Википедии).
Парадокс Монти Холла и Excel
2013-11-12 в 4:23, admin, рубрики: математика, парадокс монти холла, теория вероятностей, метки: парадокс монти холла, теория вероятностейНесчастны те люди, кто не умеет программировать хотя бы на уровне формул Excel! Например, им всегда будет казаться, что парадоксы теории вероятностей – это причуды математиков, неспособных понимать реальную жизнь. Между тем, теория вероятностей как раз-таки моделирует реальные процессы, в то время как человеческая мысль часто не может в полном объеме осознать происходящее.
Возьмем парадокс Монти Холла, приведу здесь его формулировку из русской Википедии:
Представьте, что вы стали участником игры, в которой вам нужно выбрать одну из трёх дверей. За одной из дверей находится автомобиль, за двумя другими дверями — козы. Вы выбираете одну из дверей, например, номер 1, после этого ведущий, который знает, где находится автомобиль, а где — козы, открывает одну из оставшихся дверей, например, номер 3, за которой находится коза. После этого он спрашивает вас, не желаете ли вы изменить свой выбор и выбрать дверь номер 2. Увеличатся ли ваши шансы выиграть автомобиль, если вы примете предложение ведущего и измените свой выбор?
Читать полностью »
Вероятностные модели: борьба с циклами и вариационные приближения
2013-08-02 в 16:03, admin, рубрики: data mining, байесовские сети, Блог компании Surfingbird, искусственный интеллект, математика, математическое моделирование, теория вероятностей, метки: data mining, байесовские сети, математика, математическое моделирование, теория вероятностейВ четвёртой серии цикла о графических вероятностных моделях (часть 1, часть 2, часть 3) мы продолжим разговор о том, как справляться со сложными фактор-графами. В прошлый раз мы изучили алгоритм передачи сообщений, который, правда, работает только в тех случаях, когда фактор-граф представляет собой дерево, и в каждом узле можно без проблем пересчитать распределения грубой силой. Что делать в по-настоящему интересных случаях, когда в графе есть большие содержательные циклы, мы начнём обсуждать сегодня – поговорим о паре относительно простых методов и обсудим очень мощный, но непростой в использовании инструмент – вариационные приближения.
Вероятностные модели: искусство расставлять скобки
2013-07-04 в 17:20, admin, рубрики: data mining, байесовские сети, Блог компании Surfingbird, искусственный интеллект, математика, математическое моделирование, теория вероятностей, метки: data mining, байесовские сети, математика, математическое моделирование, теория вероятностейПосле большого перерыва продолжаем цикл о графических вероятностных моделях (часть 1, часть 2). Сегодня мы наконец-то от постановок задач перейдём к алгоритмам; поговорим мы о самом простом, но часто полезном алгоритме вывода на фактор-графах – алгоритме передачи сообщений. Или, как его ещё можно назвать, алгоритме правильной расстановки скобок.