Рассказ о том, чем занимаются в Яндексе лингвисты. Мы обсудим, как лингвистические данные и методы помогают улучшать поиск и другие сервисы, а ещё поговорим о том, при чём здесь машинное обучение, что такое поисковые расширения и как расшифровывается NERQ.
Основные задачи математической статистики. Примеры задач
Выборка.Выборочное пространство. Примеры
Простой случайный выбор. Реальные виды выборов
Функция распределения выборки
Эмпирическая вероятностная мера
Теорема Гливенко-Кантелли
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №8 "Методы снижения размерности пространства"
Лектор - Владимир Гулин
Проблема проклятия размерности. Отбор и выделение признаков. Методы выделения признаков (feature extraction). Метод главных компонент (PCA). Метод независимых компонент (ICA). Методы основанные на автоэнкодерах. Методы отбора признаков (feature selection). Методы основанные на взаимной корреляции признаков. Метод максимальной релевантность и минимальной избыточности (mRMR). Методы основанные на деревьях решений.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Методы машинного обучения в физике элементарных частицAndrey Ustyuzhanin
рассмотрим основные этапы обработки данных физики высоких энергий на примере одного из экспериментов Большого Адронного Коллайдера — LHCb; мы увидим насколько похожими оказываются решения отдельных задач LHCb на решения, используемые в Яндексе.
Предлагаемый угол зрения на проблемы физики элементарных частиц позволяет увидеть возможности, открывающиеся от взаимного расширения спектра методов и технологий, а также возможность проведении междисциплинарных исследований, способных усилить каждую из этих областей.
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №11 "Основы нейронных сетей"
Лектор - Павел Нестеров
Биологический нейрон и нейронные сети. Искусственный нейрон Маккалока-Питтса и искусственная нейронная сеть. Персептрон Розенблатта и Румельхарта. Алгоритм обратного распространения ошибки. Момент обучения, регуляризация в нейросети, локальная скорость обучения, softmax слой. Различные режимы обучения.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Рассказ о том, чем занимаются в Яндексе лингвисты. Мы обсудим, как лингвистические данные и методы помогают улучшать поиск и другие сервисы, а ещё поговорим о том, при чём здесь машинное обучение, что такое поисковые расширения и как расшифровывается NERQ.
Основные задачи математической статистики. Примеры задач
Выборка.Выборочное пространство. Примеры
Простой случайный выбор. Реальные виды выборов
Функция распределения выборки
Эмпирическая вероятностная мера
Теорема Гливенко-Кантелли
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №8 "Методы снижения размерности пространства"
Лектор - Владимир Гулин
Проблема проклятия размерности. Отбор и выделение признаков. Методы выделения признаков (feature extraction). Метод главных компонент (PCA). Метод независимых компонент (ICA). Методы основанные на автоэнкодерах. Методы отбора признаков (feature selection). Методы основанные на взаимной корреляции признаков. Метод максимальной релевантность и минимальной избыточности (mRMR). Методы основанные на деревьях решений.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Методы машинного обучения в физике элементарных частицAndrey Ustyuzhanin
рассмотрим основные этапы обработки данных физики высоких энергий на примере одного из экспериментов Большого Адронного Коллайдера — LHCb; мы увидим насколько похожими оказываются решения отдельных задач LHCb на решения, используемые в Яндексе.
Предлагаемый угол зрения на проблемы физики элементарных частиц позволяет увидеть возможности, открывающиеся от взаимного расширения спектра методов и технологий, а также возможность проведении междисциплинарных исследований, способных усилить каждую из этих областей.
Техносфера Mail.ru Group, МГУ им. М.В. Ломоносова. Курс "Алгоритмы интеллектуальной обработки больших объемов данных", Лекция №11 "Основы нейронных сетей"
Лектор - Павел Нестеров
Биологический нейрон и нейронные сети. Искусственный нейрон Маккалока-Питтса и искусственная нейронная сеть. Персептрон Розенблатта и Румельхарта. Алгоритм обратного распространения ошибки. Момент обучения, регуляризация в нейросети, локальная скорость обучения, softmax слой. Различные режимы обучения.
Видео лекции курса https://www.youtube.com/playlist?list=PLrCZzMib1e9pyyrqknouMZbIPf4l3CwUP
Как научить роботов тестировать веб-интерфейсы. Артем Ерошенко, Илья Кацев, Я...yaevents
Артем Ерошенко, Яндекс
Закончил математико-механический факультет Санкт-Петербургского государственного университета, учится на 3 курсе аспирантуры по специальности «Теория управления». С 2008 года занимается автоматизацией тестирования выдачи поиска и околопоисковых сервисов в компании «Яндекс». С 2011 года координирует группу разработки инструментов тестирования.
Илья Кацев, Яндекс
Окончил математико-механический факультет Санкт-Петербургского государственного университета, защитил диссертацию по теории игр на степень PhD в VU University Amsterdam (Нидерланды). В Яндексе занимается автоматизацией тестирования (имитация действий пользователя и анализ результата).
Тема доклада
Как научить роботов тестировать веб-интерфейсы.
Тезисы
Речь пойдет об инструменте, который будет сам проверять веб-интерфейсы на наличие ошибок. Главное его качество – способность самостоятельно (автоматически) обнаруживать связанные элементы на странице, строить модели, которые потом можно будет тестировать автоматически. Мы не только предложим идеи, как использовать и развивать эту систему, но и покажем её прототип.
Построение сложносоставных блоков в шаблонизаторе bemhtml. Сергей Бережной, Я...yaevents
Сергей Бережной, Яндекс
С 2005 года работает веб-разработчиком в Яндексе. За это время успел поучаствовать в разработке целого ряда сервисов, например, Поиска по блогам, Я.ру, Яндекс.Почты, Поиска, Картинок, Видео. Помимо внешних проектов активно занимается развитием различных внутренних инструментов для полного цикла создания сайтов. Больше всего на свете любит жену и программирование.
Тема доклада
Построение сложносоставных блоков в шаблонизаторе bemhtml.
Тезисы
Предметно-ориентированный шаблонизатор bemhtml позволяет создавать шаблоны блоков согласно методологии БЭМ. После компиляции получаются быстрые plain JavaScript-шаблоны, которые можно исполнить как на сервере, так и на клиенте. Эта технология используется в библиотеке блоков bem-bl, а также на некоторых сервисах Яндекса. Мастер-класс демонстрирует одно из преимуществ шаблонизатора bemhtml — возможность построения сложносоставных блоков. Во время мастер-класса вы узнаете об идее и синтаксисе шаблонизатора, получите готовые рецепты для решения типовых задач и анализ возможностей bemhtml.
i-bem.js: JavaScript в БЭМ-терминах. Елена Глухова, Варвара Степанова, Яндексyaevents
Елена Глухова, Яндекс
Верстальщик, разработчик веб-интерфейсов. Работает в Яндексе с 2008 года.
Варвара Степанова, Яндекс
Закончила Петрозаводский государственный университет. Работает в Яндексе с 2008 года разработчиком интерфейсов. Разрабатывала проекты Яндекс.Ответы и Яндекс.Фотки. Последние полтора года Елена Глухова и Варвара Степанова совместно работают вместе над внутренним интерфейсным фреймворком, помогающим единообразно делать сервисы Яндекса. В последнее время также заняты разработкой подобного интерфейсного фреймворка в open source.
Тема доклада
i-bem.js: JavaScript в БЭМ-терминах.
Тезисы
Разрабатывая сайты по методологии БЭМ, мы используем единую предметную область во всех технологиях: CSS, шаблоны, JavaScript. Для того чтобы это было возможно, в библиотеке блоков bem-bl реализовано ядро клиентского JS-фреймворка, которое позволяет работать со страницей в терминах БЭМ, на следующем уровне абстракции над DOM-представлением. В этом мастер-классе показаны ключевые моменты использования такого подхода для написания клиентского JS. Мы создаём составной блок, использующий JS-функциональность входящих в него маленьких блоков. В результате всё работает, и никакого копипаста.
Дом из готовых кирпичей. Библиотека блоков, тюнинг, инструменты. Елена Глухов...yaevents
Елена Глухова, Яндекс
Верстальщик, разработчик веб-интерфейсов. Работает в Яндексе с 2008 года.
Варвара Степанова, Яндекс
Закончила Петрозаводский государственный университет. Работает в Яндексе с 2008 года разработчиком интерфейсов. Разрабатывала проекты Яндекс.Ответы и Яндекс.Фотки. Последние полтора года Елена Глухова и Варвара Степанова совместно работают вместе над внутренним интерфейсным фреймворком, помогающим единообразно делать сервисы Яндекса. В последнее время также заняты разработкой подобного интерфейсного фреймворка в open source.
Тема доклада
Дом из готовых кирпичей. Библиотека блоков, тюнинг, инструменты.
Тезисы
Все сайты немного похожи друг на друга. Если заниматься веб-разработкой долгие годы, накапливаются практики и типовые решения распространённых задач. Результатом наших накоплений становится open source библиотека блоков bem-bl , которую мы разрабатываем на GitHub. Библиотека реализована согласно методологии БЭМ и позволяет использовать блоки, уже имеющие шаблонную, CSS и JS-реализации, для построения web-страницы. Мастер-класс продемонстрирует, как можно использовать готовые блоки из этой библиотеки и как модифицировать их под нужды своего сайта. Для работы с файлами библиотеки используются консольные инструменты bem-tools.
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...yaevents
Александр Петренко, ИСП РАН
Профессор, доктор физико-математических наук, заведующий отделом технологий программирования Института системного программирования (ИСП РАН), профессор ВМК МГУ. Основные работы в областях: формализация требований, генерация тестов на основе формализованных требований и формальных моделей (model based testing – MBT). Приложения: тестирование операционных систем и распределенных систем, тестирование компиляторов, верификация дизайна микропроцессоров, формализация стандартов на API операционных систем и телекоммуникационных протоколов. Сопредседатель оргкомитетов International MBT workshop (http://www.mbrworkshop.org/), Spring Young Researcher Colloquium on Software Engineering – SYRCoSE (http://syrocose.ispras.ru), городского семинара по технологиям разработки и анализа программ ТРАП/SDAT (http://sdat.ispras.ru/).
Тема доклада
Модели в профессиональной инженерии и тестировании программ.
Тезисы
Model Based Software Engineering (MBSE) является расширением подхода к разработке программ на основе моделей. В MBSE в отличие, например, от MDA (Model Driver Architecture) существенное внимание уделяется не только задачам собственно проектирования и разработки кода, но и задачам других фаз жизненного цикла – анализу требований, верификации и валидации, управлению требованиями на всех фазах жизненного цикла. Model Based Testing (MBT) хронологически возник гораздо раньше, чем MBSE и MDA, однако его место в разработке программ в полной мере раскрылось вместе с развитием MBSE. По этой причине MBT и MBSE следует рассматривать в тесной связке. В докладе будут рассмотрены концепции MBSE-MDA-MBT, основные источники и виды моделей, которые используются в этих подходах, методы генерации тестов на основе моделей, известные инструменты для
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...yaevents
Роман Андриади, Яндекс
Работает в департаменте эксплуатации Яндекса с 2005 года. С 2010 года – руководитель группы администрирования коммуникационных, контент- и внутренних сервисов.
Тема доклада
Администрирование небольших сервисов, или Один за всех и 100 на одного.
Тезисы
Администрирование коммуникационных сервисов начиналось в 2004 году с обслуживания десятка серверов и десятка сервисов, на них располагающихся. Со временем сервисов становилось все больше, увеличивалось число задач по ним, а десяток серверов вырос в парк из сотен машин, разделенных на множество разношерстных кластеров. В докладе будет рассказано, как с ростом объемов кластера эволюционировали приемы администрирования, какие инструменты при этом использовались, как мы написали свой инструмент управления, как и чем он научился помогать нам за эти годы.
Истории про разработку сайтов. Сергей Бережной, Яндексyaevents
Сергей Бережной, Яндекс
С 2005 года работает веб-разработчиком в Яндексе. За это время успел поучаствовать в разработке целого ряда сервисов, например, Поиска по блогам, Я.ру, Яндекс.Почты, Поиска, Картинок, Видео. Помимо внешних проектов активно занимается развитием различных внутренних инструментов для полного цикла создания сайтов. Больше всего на свете любит жену и программирование.
Тема доклада
Истории про разработку сайтов.
Тезисы
Мы расскажем о том, какие задачи, связанные с разработкой сайтов, появлялись в Яндексе в разное время и как мы их решали. Выступление задумывается как диалог с разработчиками, которые тоже сталкиваются с похожими задачами. В итоге у нас получится некий сборник технологических историй для размышления.
Разработка приложений для Android на С++. Юрий Береза, Shturmannyaevents
Юрий Береза, Shturmann
Окончил факультет приборостроения Московской государственной академии приборостроения и информатики. В 2004 году пришел на работу в отдел мобильных разработок компании «Макцентр». Занимался разработкой под огромное число мобильных платформ: Windows Mobile, Symbian, Android, Embedded linux и iOS. В данный момент работает руководителем группы в компании «Контент Мастер», где занимается разработкой автомобильной навигации Shturmann.
Тема доклада
Разработка приложений для Android на С++.
Тезисы
Платформа Android становится популярнее с каждым годом. Несмотря на то, что основным языком разработки приложений для Android является Java, часто для написания кросс-платформенных приложений или при использовании сторонних библиотек программистам приходится использовать С или С++. К сожалению, разработка на С++ для платформы Android описана довольно скупо, и зачастую приходится тратить много времени на поиск нужной информации. В докладе будут представлены ответы на основные вопросы по всему циклу разработки: как писать С++ код, который будет работать на Android, как его отлаживать и находить ошибки во время падения приложений, есть ли возможность профилировать код и где искать дополнительную информацию по этим вопросам.
Кросс-платформенная разработка под мобильные устройства. Дмитрий Жестилевский...yaevents
Дмитрий Жестилевский, Яндекс
Закончил факультет экспериментальной и теоретической физики Московского инженерно-физического института в 2011 году. С 2006 года занимается разработкой приложений (игры, бизнес-приложения) под мобильные устройства на платформах J2ME, BREW, Windows Mobile, Android, iOS. В Яндексе с 2010 года, занимается разработкой архитектуры мобильных картографических сервисов. Область интересов: кросс-платформенная разработка под мобильные устройства, визуализация 3D.
Тема доклада
Кросс-платформенная разработка под мобильные устройства.
Тезисы
Разработка приложений под embedded-устройства сильно фрагментирована из-за обилия OS (Android, iOS, WM, WP7, Symbian, Bada). Независимая разработка под каждую платформу в отдельности приводит к пропорциональному росту количества участников процесса разработки и объема поддерживаемого CodeBase. Внедрение общего кода, который будет работать на всех платформах за счет использования Platform Abstraction Layer с унифицированным интерфейсом, способно сократить эти издержки. В то же время остается возможность использовать платформенно-зависимые сущности, например UI, для придания приложению native look and feel. В докладе рассматривается процесс внедрения общих компонентов в мобильные приложения Яндекса на примере Панорам улиц, а также трудности, с которыми мы столкнулись во время разработки, и пути их решения.
Сложнейшие техники, применяемые буткитами и полиморфными вирусами. Вячеслав З...yaevents
Вячеслав Закоржевский, Kaspersky Lab
Пришёл в «Лабораторию Касперского» в середине 2007 года на должность вирусного аналитика. В конце 2008 года занял позицию старшего вирусного аналитика в группе эвристического детектирования. В область интересов входит исследование полиморфных вирусов и сильно изменяющихся зловредов. Также следит за современными тенденциями в методах обфускации, антиэмуляции и прочих, применяемых вредоносным программным обеспечением.
Тема доклада
Сложнейшие техники, применяемые буткитами и полиморфными вирусами.
Тезисы
Бытует мнение, что современные зловреды достаточно просты и пишутся неподготовленными людьми. Данное выступление призвано развеять этот миф. В презентации будут описаны три зловреда, которые используют нетривиальные и сложные методы в процессе своего функционирования. В частности, будет рассмотрена схема работы современных буткитов, которые всё больше и больше набирают обороты. На двух других примерах мы проиллюстрируем изобретательность вирусописателей, которые пытаются максимально усложнить жизнь исследователям и антивирусным компаниям. В одном случае они использовали собственную виртуальную машину совместно с EPO техникой заражения. А в другом - «подключение» нулевых виртуальных адресов для размещения в них своих данных.
Сканирование уязвимостей со вкусом Яндекса. Тарас Иващенко, Яндексyaevents
Тарас Иващенко, Яндекс
Администратор информационной безопасности в Яндексе. Специалист по информационной безопасности, проповедник свободного программного обеспечения, автор Termite, xCobra и участник проекта W3AF.
Тема доклада
Сканирование уязвимостей со вкусом Яндекса.
Тезисы
В докладе будет рассказано о внедрении в Яндексе сканирования сервисов на уязвимости как одного из контроля безопасности в рамках SDLC (Secure Development Life Cycle). Речь пойдет о сканировании уязвимостей на этапе тестирования сервисов, а также о сканировании сервисов, находящихся в промышленной эксплуатации. Мы рассмотрим проблемы, с которыми столкнулись, и объясним, почему в качестве основного механизма решили выбрать открытое программное обеспечение (сканер уязвимостей w3af), доработанное под наши нужды.
Масштабируемость Hadoop в Facebook. Дмитрий Мольков, Facebookyaevents
Дмитрий Мольков, Facebook
Бакалавр прикладной математики Киевского национального университета им. Тараса Шевченко (2007). Магистр компьютерных наук Stony Brook University (2009). Hadoop HDFS Commiter с 2011 года. Член команды Hadoop в Facebook с 2009 года.
Тема доклада
Масштабируемость Hadoop в Facebook.
Тезисы
Hadoop и Hive являются прекрасным инструментарием для хранения и анализа петабайтов информации в Facebook. Работая с такими объемами информации, команда разработчиков Hadoop в Facebook ежедневно сталкивается с проблемами масштабируемости и эффективности Hadoop. В докладе пойдет речь о некоторых деталях оптимизаций в разных частях Hadoop инфраструктуры в Facebook, которые позволяют предоставлять высококачественный сервис. Это может быть, например, оптимизация стоимости хранения в многопетабайтных HDFS кластерах, увеличение пропускной способности системы, сокращение времени отказа системы с помощью High Availability разработок для HDFS.
Контроль зверей: инструменты для управления и мониторинга распределенных сист...yaevents
Александр Козлов, Cloudera Inc.
Александр Козлов, старший архитектор в Cloudera Inc., работает с большими компаниями, многие из которых находятся в рейтинге Fortune 500, над проектами по созданию систем анализа большого количества данных. Закончил аспирантуру физического факультета Московского государственного университета, после чего также получил степень Ph.D. в Стэнфорде. До Cloudera и после окончания учебы работал над статистическим анализом данных и соответствующими компьютерными технологиями в SGI, Hewlett-Packard, а также стартапе Turn.
Тема доклада
Контроль зверей: инструменты для управления и мониторинга распределенных систем от Cloudera.
Тезисы
Поддержание распределенных систем, состоящих из тысяч компьютеров, является сложной задачей. Компания Cloudera, которая специализируется на создании распределенных технологий, разработала набор средств для централизованного управления распределенных Hadoop/HBase кластеров. Hadoop и HBase являются проектами Apache Software Foundation, и их применение для анализа частично структурированных данных ускоряется во всем мире. В этом докладе будет рассказано о SCM, системе для конфигурации, настройки, и управления Hadoop/HBase и Activity Monitor, системе для мониторинга ряда ОС и Hadoop/HBase метрик, а также об особенностях подхода Cloudera в отличие от существующих решений для мониторинга (Tivoli, xCat, Ganglia, Nagios и т.д.).
Юнит-тестирование и Google Mock. Влад Лосев, Googleyaevents
Владимир Лосев, Google
Закончил математико-механический факультет Санкт-Петербургского государственного университета в 1995 году. Работал в компаниях Motоrola, Fair Isaac и Yahoo. С 2008 года работает в Google, в группе, занимающейся вопросами повышения производительности инженеров.
Тема доклада
Юнит-тестирование и Google Mock.
Тезисы
В модульных (юнит) тестах каждый элемент программы тестируется по отдельности, в изоляции от других. Такие тесты исполняются очень быстро, поэтому их можно запускать когда угодно, что позволяет отлавливать дефекты на самых ранних стадиях разработки. Однако для тестирования объекта в изоляции от других необходимо имитировать поведение связанных с ним объектов, что на C++ довольно утомительное занятие. Разработанная в Googlе библиотека для создания и использования mock-объектов — Google Mock — позволяет существенно упростить этот процесс и ускорить написание тестов. В докладе пойдет речь о принципах и возможностях библиотеки, примерах её использования и её внутреннем устройстве.
C++11 (formerly known as C++0x) is the new C++ language standard. Dave Abraha...yaevents
Dave Abrahams, BoostPro Computing
He is a founding member of Boost.org and an active participant in the ISO C++ standards committee. His broad range of experience in the computer industry includes shrink-wrap software development, embedded systems design and natural language processing. He has authored eight Boost libraries and has made contributions to numerous others. Dave made his mark on C++ standardization by developing a conceptual framework for understanding exception-safety and applying it to the C++ standard library. He created the first exception-safe standard library implementation and, with Greg Colvin, drafted the proposals that eventually became the standard library’s exception safety guarantees.
Presentation topic:
C++11 (formerly known as C++0x) is the new C++ language standard. Dave Abrahams, BoostPro Computing.
Key points:
The ISO C++ standardization committee has just unanimously approved its final draft international standard, and it's chock full of new features. Though a few of the features have been available for years, some are brand new, and nobody really knows what it's like to program in this new C++ language. As with C++03, Boost.org is expected to take a leading role in exploiting C++11. In this talk, I'll give an overview of the most important new developments.
Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...yaevents
Алексей Воинов, Яндекс
Закончил МГТУ им. Н.Э.Баумана в 1998 году. Посвятил часть своей жизни свободному программному обеспечению. Замечен в любви к языкам, как к алгоритмическим, так и к человеческим, как к естественным, так и к искусственным. Работает в Яндексе с 2009 года, занимается разработкой Яндекс.Почты.
Тема доклада
Зачем обычному программисту знать языки, на которых почти никто не пишет.
Тезисы
Есть категория алгоритмических языков, которые большинство программистов считает в лучшем случае странными. Это такие языки как Haskell, *ML, Lisp, Q. «Странные» языки не приживаются в промышленной разработке софта, потому что они не дают возможности писать стандартный «промышленный» код. Однако они бывают очень хороши для придумывания приёмов, которые помогают улучшить промышленный код. Впоследствии многие из них становятся стандартными промышленными. Знание «странных» языков очень полезно, когда в силу внешних обстоятельств сделать промышленный код радикально лучше невозможно, но его можно улучшать небольшими шагами.
В поисках математики. Михаил Денисенко, Нигмаyaevents
Михаил Денисенко, Нигма
Закончил факультет вычислительной математики и кибернетики МГУ. Завершает работу над диссертацией, посвященной математическим аспектам информационной безопасности. Занимался исследованиями в области обработки видеопоследовательностей и компьютерной безопасности в компании Intel. С 2009 года является старшим разработчиком математического сервиса в компании Nigma.ru. С 2011 года — системный архитектор поисковой системы ITim.vn.
Тема доклада
В поисках математики.
Тезисы
Nigma-Математика – это сервис, с помощью которого пользователи могут решать различные математические задачи (упрощать выражения, решать уравнения, системы уравнений и т. д.), вводя их прямо в строку поиска в виде обычного текста. Система распознает более тысячи физических, математических констант и единиц измерения, что позволяет пользователям производить операции с различными величинами (в том числе решать уравнения) и получать ответ в указанных единицах измерения. Помимо уравнений система решает все задачи, характерные для калькуляторов поисковых систем и конвертеров валют. В докладе будет описана общая схема функционирования сервиса, базовые и новые алгоритмы системы символьных вычислений (алгоритмы решения уравнений и неравенств, алгоритм учета области допустимых значений, алгоритм исследования функций и т.п.). Также будет рассказано об ускорении работы сервиса, распределении нагрузки на систему, распознавании математичности запроса, преобразовании валют и метрических величинах.
Using classifiers to compute similarities between face images. Prof. Lior Wol...yaevents
Prof. Lior Wolf, Tel-Aviv University
He is a faculty member at the School of Computer Science at Tel-Aviv University. Previously, he was a post-doctoral associate in Prof. Poggio's lab at MIT. He graduated from the Hebrew University, Jerusalem, where he worked under the supervision of Prof. Shashua. He was awarded the 2008 Sackler Career Development Chair, the Colton Excellence Fellowship for new faculty (2006-2008), the Max Shlumiuk award for 2004, and the Rothchild fellowship for 2004. His joint work with Prof. Shashua in ECCV 2000 received the best paper award, and their work in ICCV 2001 received the Marr prize honorable mention. He was also awarded the best paper award at the post ICCV workshop on eHeritage 2009. In addition, Lior has held several development, consulting and advisory positions in computer vision companies including face.com and superfish, and is a co-founder of FDNA.
Presentation topic:
Using classifiers to compute similarities between images of faces.
Key points:
The One-Shot-Similarity (OSS) is a framework for classifier-based similarity functions. It is based on the use of background samples and was shown to excel in tasks ranging from face recognition to document analysis. In this talk we will present the framework as well as the following results: (1) when using a version of LDA as the underlying classifier, this score is a Conditionally Positive Definite kernel and may be used within kernel-methods (e.g., SVM), (2) OSS can be efficiently computed, and (3) a metric learning technique that is geared toward improved OSS performance.
Using classifiers to compute similarities between face images. Prof. Lior Wol...
Логические алгоритмы классификации
1. Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логические алгоритмы классификации
К. В. Воронцов
vokov@forecsys.ru
www.MachineLearning.ru, Участник:Vokov
ЗАО Форексис ,
Вычислительный Центр им. А. А. Дородницына РАН
Научный семинар Яндекс
Москва, 9 июня 2010
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
2. Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Содержание
1 Понятия закономерности и информативности
Логическая закономерность
Требование интерпретируемости
Требование информативности
2 Методы построения логических алгоритмов
Индукция закономерностей
Композиция закономерностей
Взвешенное голосование
3 Вероятностное оценивание
Постановка задачи
Оценки надёжности закономерностей
Калибровка Платта
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
3. Понятия закономерности и информативности Логическая закономерность
Методы построения логических алгоритмов Требование интерпретируемости
Вероятностное оценивание Требование информативности
Задача классификации
X множество объектов; Y множество классов;
y: X →Y неизвестная целевая зависимость (target).
Дано: X ℓ = (xi , yi )ℓ
i=1 обучающая выборка, yi = y (xi )
f1 (x1 ) . . . fn (x1 ) y1
. . . . . . . . . . . . . . . . . . . . .
f1 (xℓ ) . . . fn (xℓ ) yℓ
Найти: классификатор функцию a : X → Y ,
приближающую y (x) на всём множестве x ∈ X .
′ ′
′
f1 (x1 ) . . . fn (x1 ) a(x1 )
. . . . . . . . . . . . . . . . . . . . .
′
f1 (xk ) . . . fn (xk ) ′ ′
a(xk )
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
4. Понятия закономерности и информативности Логическая закономерность
Методы построения логических алгоритмов Требование интерпретируемости
Вероятностное оценивание Требование информативности
Задача классификации: уточнение требований
Требования к классификатору:
интерпретируемость ответов
возможность объяснить классификацию;
интерпретируемость классификатора
понятность его внутренней структуры;
возможность оценивать риски
на выходе оценки вероятностей классов P(y |x);
обобщающая способность
высокое качество прогнозов на контрольных данных;
масштабируемость
миллионы объектов ℓ, тысячи признаков n;
Данной совокупности требований удовлетворяют
логические алгоритмы классификации.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
5. Понятия закономерности и информативности Логическая закономерность
Методы построения логических алгоритмов Требование интерпретируемости
Вероятностное оценивание Требование информативности
Логическая закономерность
Логическая закономерность (правило, rule) это предикат
R : X → {0, 1}, удовлетворяющий двум требованиям:
1) интерпретируемость:
R записывается на естественном языке;
R зависит от небольшого числа признаков (1–7);
2) информативность относительно одного из классов c ∈ Y :
p(R) = xi : R(xi )=1 и yi =c → max;
n(R) = xi : R(xi )=1 и yi =c → min;
Если R(x) = 1, то говорят R выделяет x (R covers x).
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
6. Понятия закономерности и информативности Логическая закономерность
Методы построения логических алгоритмов Требование интерпретируемости
Вероятностное оценивание Требование информативности
Часто используемые виды закономерностей
1. Конъюнкция пороговых условий (термов):
R(x) = aj fj (x) bj .
j∈J
2. Синдром когда выполнено не менее d термов из J,
(при d = |J| это конъюнкция, при d = 1 дизъюнкция):
R(x) = aj fj (x) bj d ,
j∈J
Синдромы обнаруживаются во многих прикладных областях:
в кредитном скоринге, в геологическом прогнозировании,
в медицинской диагностике [Переверзев-Орлов, 1990], и др.
Параметры J, aj , bj , d настраиваются по обучающей выборке.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
7. Понятия закономерности и информативности Логическая закономерность
Методы построения логических алгоритмов Требование интерпретируемости
Вероятностное оценивание Требование информативности
Часто используемые виды закономерностей
3. Полуплоскость линейная пороговая функция:
R(x) = wj fj (x) w0 .
j∈J
4. Шар пороговая функция близости:
R(x) = r (x, x0 ) w0 ,
АВО алгоритмы вычисления оценок [Ю. И. Журавлёв, 1971]:
r (x, x0 ) = max wj fj (x) − fj (x0 ) .
j∈J
SCM машины покрывающих множеств [M. Marchand, 2001]:
2
r (x, x0 ) = wj fj (x) − fj (x0 ) .
j∈J
Параметры J, wj , w0 , x0 настраиваются по обучающей выборке
путём оптимизации критерия информативности.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
8. Понятия закономерности и информативности Логическая закономерность
Методы построения логических алгоритмов Требование интерпретируемости
Вероятностное оценивание Требование информативности
Часто используемые критерии информативности
Проблема: надо сравнивать закономерности R.
Как свернуть два критерия в один критерий информативности?
p(R) → max ?
=⇒ I (p, n) → max
n(R) → min
Очевидные, но не всегда адекватные свёртки:
p
→ max (precision);
p+n
p − n → max (accuracy);
p − Cn → max (linear cost accuracy);
p n
− → max (relative accuracy);
P N
P = xi : yi =c число своих во всей выборке;
N = xi : yi =c число чужих во всей выборке.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
9. Понятия закономерности и информативности Логическая закономерность
Методы построения логических алгоритмов Требование интерпретируемости
Вероятностное оценивание Требование информативности
Часто используемые критерии информативности
Адекватные, но неочевидные критерии:
энтропийный критерий информационного выигрыша:
P p+n p ℓ−p−n P −p
h − h − h → max,
ℓ ℓ p+n ℓ ℓ−p−n
где h(q) = −q log2 q − (1 − q) log2 (1 − q);
критерий неслучайности FET (Fisher’s Exact Test):
p n p+n
CP CN /CP+N → min;
критерий бустинга [Cohen, Singer, 1999]:
√ √
p − n → max
нормированный критерий бустинга:
p/P − n/N → max;
предсказательные критерии на основе мета-обучения
[J. F¨rnkranz at al., 2001–2007].
u
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
10. Понятия закономерности и информативности Логическая закономерность
Методы построения логических алгоритмов Требование интерпретируемости
Вероятностное оценивание Требование информативности
Где находятся закономерности в (p, n)-плоскости
n p
Логические закономерности: p+n 0.1,
P+N 0.05.
p n p+n
Статистические закономерности: CP CN /CP+N 0.05.
n
100
P = 200
90
80
N = 100
70
60
50
40
30
20
10
0
0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 p
логические закономерности низкой информативности статистические закономерности
логические закономерности высокой информативности минимум информативности
Вывод: неслучайность ещё не значит закономерность.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
11. Понятия закономерности и информативности Логическая закономерность
Методы построения логических алгоритмов Требование интерпретируемости
Вероятностное оценивание Требование информативности
Парето-критерий информативности
Парето-фронт множество недоминируемых закономерностей
(точка R недоминируема, если правее и ниже точек нет)
50
45
6
, n(R)
40 5
4
35 3
2
30
1
25
20
15
10
5
0
0 50 100 150 200 250 300
, p(R)
задача UCI:german
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
12. Понятия закономерности и информативности Индукция закономерностей
Методы построения логических алгоритмов Композиция закономерностей
Вероятностное оценивание Взвешенное голосование
Поиск информативных наборов признаков
Проблема: как сократить перебор предикатов, захватив
побольше закономерностей из первых Парето-слоёв.
Это задача комбинаторной оптимизации.
Основные эвристические методы поиска:
поиск в глубину, метод ветвей и границ (КОРА);
поиск в ширину (ТЭМП);
стохастический локальный поиск (SLIPPER);
генетические (эволюционные) алгоритмы (DMEL);
случайный поиск с адаптацией (СПА);
Основной практический вывод:
Почти не важно, каким именно методом поиска пользоваться.
Гораздо важнее критерий отбора закономерностей.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
13. Понятия закономерности и информативности Индукция закономерностей
Методы построения логических алгоритмов Композиция закономерностей
Вероятностное оценивание Взвешенное голосование
Локальное улучшение найденных закономерностей
Редукция (pruning):
1: заранее выделить контрольную выборку;
2: для всех найденных закономерностей R(x)
3: для всех признаков fj из J
4: если удаление признака повышает информативность
закономерности на контроле, то
5: признак удаляется;
Стабилизация:
1: для всех найденных закономерностей R(x)
2: для всех признаков fj из J
3: оптимизировать пороги aj , bj по критерию
максимума информативности на всей выборке;
4: удалить дубликаты среди закономерностей;
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
14. Понятия закономерности и информативности Индукция закономерностей
Методы построения логических алгоритмов Композиция закономерностей
Вероятностное оценивание Взвешенное голосование
Композиция закономерностей
Каждое правило выделяет лишь небольшую долю объектов.
Следовательно, правил нужно много.
Две основные идеи:
1: покрытие 2: голосование
(комитеты старшинства, (комитеты большинства,
решающие списки и деревья) бустинг и бэггинг)
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
15. Понятия закономерности и информативности Индукция закономерностей
Методы построения логических алгоритмов Композиция закономерностей
Вероятностное оценивание Взвешенное голосование
Взвешенное голосование закономерностей
t
Пусть Ry (x), t = 1, . . . , Ty закономерности класса y .
Взвешенное голосование:
1) сумма голосов закономерностей за класс y :
Ty
t t
Γy (x) = ay Ry (x);
t=1
2) алгоритм классификации:
a(x) = arg max Γy (x).
y ∈Y
Методы настройки весов t
по обучающей выборке:
ay
t = 1/T ;
простое голосование: ay y
LR логистическая регрессия;
SVM метод опорных векторов;
бустинг.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
16. Понятия закономерности и информативности Индукция закономерностей
Методы построения логических алгоритмов Композиция закономерностей
Вероятностное оценивание Взвешенное голосование
Покрытие выборки
Перевес голосов (margin) за правильный класс yi на объекте xi :
M(xi ) = Γyi (xi ) − max Γy (xi ).
y =yi
Margin
0.8
0.6
пограничные эталонные
объекты объекты
0.4
шумы
надёжно классифицируемые объекты
0.2
0
-0.2
-0.4 ошибки
-0.6
0 20 40 60 80 100 120 140 160 180 200 i
Практический вывод: метод настройки весов не столь важен,
как обеспечение надёжного покрытия выборки и отсев шума.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
17. Понятия закономерности и информативности Постановка задачи
Методы построения логических алгоритмов Оценки надёжности закономерностей
Вероятностное оценивание Калибровка Платта
Задача вероятностного оценивания
Задача:
наряду с классификацией объекта a(x) вычислять оценки
вероятностей P(y |x) для всех классов y .
Основные методы решения:
оценивание надёжности отдельных закономерностей
(для решающих списков и деревьев);
калибровка Платта
(для взвешенного голосования);
нечёткие закономерности и др.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
18. Понятия закономерности и информативности Постановка задачи
Методы построения логических алгоритмов Оценки надёжности закономерностей
Вероятностное оценивание Калибровка Платта
Оценки надёжности закономерностей
Переобучение закономерностей:
p ′ (R) на контроле меньше, чем p(R) на обучении;
n′ (R) на контроле больше, чем n(R) на обучении;
Смещённость оценки вероятности:
если Ry (x) = 1, то вероятность того, что x из класса y :
p
P(y |x) = − δ(p, n, . . .) .
p+n
поправка на
переобученность
Способы несмещённого оценивания:
p′
По контрольным данным: P y (x)=c ≈ p ′ +n′ .
Метаобучение: строится регрессионная модель δ(p, n, . . .).
Точные комбинаторные оценки вероятности переобучения
(теория under construction).
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
19. Понятия закономерности и информативности Постановка задачи
Методы построения логических алгоритмов Оценки надёжности закономерностей
Вероятностное оценивание Калибровка Платта
Калибровка Платта
Пусть для простоты классов два, Y = {−1, +1}.
При некоторых (не слишком сильных) допущениях
вероятность P(y |x) связана с перевесом голосов
∆y (x) = Γy (x) − Γ−y (x) через сигмоидную функцию σ(z):
1.0
P(y |x) = σ(a∆y (x) + b), σ(z)
0.5
1
σ(z) = 0
1 + e −z
-6 -4 -2 0 2 4 6 z
Настройка коэффициентов a, b по контрольной выборке
методом максимума правдоподобия:
log 1 − p(xi ; a, b) + log p(xi ; a, b) → max
a,b
yi =−1 yi =+1
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
20. Понятия закономерности и информативности Постановка задачи
Методы построения логических алгоритмов Оценки надёжности закономерностей
Вероятностное оценивание Калибровка Платта
Сухой остаток
1 Закономерности это простые информативные правила.
Чаще всего применяются закономерности-конъюнкции.
2 Популярные критерии информативности не вполне адекватны.
Спасает расслоение Парето.
3 Поиск закономерностей сводится к отбору признаков.
Выбор конкретного метода отбора почти не важен.
4 Два основных типа композиций закономерностей.
Взвешенное голосование немного надёжнее покрытия.
5 Визуальный контроль граничных и шумовых объектов.
Калибровка Платта даёт вероятности классов.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
21. Понятия закономерности и информативности Постановка задачи
Методы построения логических алгоритмов Оценки надёжности закономерностей
Вероятностное оценивание Калибровка Платта
Литература
Ю. И. Журавлёв, В. В. Никифоров. Алгоритмы распознавания,
основанные на вычислении оценок // Кибернетика, Киев, 1971, № 3.
В. С. Переверзев-Орлов. Советчик специалиста: опыт создания
партнерской системы. Наука, Москва, 1990. 133 С.
W. W. Cohen, Y. Singer, A Simple, Fast and Effective Rule Learner //
16th National Conference on Artificial Intelligence, 1999, Pp. 335–342.
J. F¨rnkranz, P. A. Flach. ROC‘n’Rule Learning
u Towards a Better
Understanding of Covering Algorithms // Machine Learning, 2005, No. 1,
Vol. 58, Pp. 39–77.
F. Janssen, J. F¨rnkranz. Meta-Learning Rule Learning Heuristics //
u
Martin-Luther-University Halle-Wittenberg, 2007, Pp. 167–174.
Hsuan-tien Lin, Chih-Jen Lin, Ruby C. Weng. A Note on Platts
Probabilistic Outputs for SVM // Machine Learning, 2007, No. 3, Vol. 68,
Pp. 267–276.
M. Marchand, J. Shawe-Taylor. Learning with the Set Covering
Machine // ICML-18, 2001, Pp. 345–352.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации