Поисковая система и машинное обучение

Содержание

Слайд 2

Цели и вопросы Мои цели Переход из мира магии в мир

Цели и вопросы

Мои цели
Переход из мира магии в мир науки
Станет понятней

как работает алгоритмы поиска, мо и в какую сторону смотреть
Наконец-то узнать что LSA - это не частотный словарь)))
Накопление опыта
Слайд 3

Чего не будет Я не могу за 2 часа сделать вас

Чего не будет

Я не могу за 2 часа сделать вас Data

Science спецами
Четких рецептов из мира магии
Ответов на вопросы: "Какое нужно количество вхождений", "Сколько нужно купить ссылок..." и т.д.
Мы сделали какую-то фигню, смотрите какой красивый график
Слайд 4

Как устроен поиск?

Как устроен поиск?

Слайд 5

Слайд 6

Слайд 7

Слайд 8

Ранжирование Ранжирование - процесс упорядочивания документов в соответствии со степенью их соответствия поисковому запросу.

Ранжирование

Ранжирование - процесс упорядочивания документов в соответствии со степенью их

соответствия поисковому запросу.
Слайд 9

Ранжирующие признаки Запросо-независимые или статические признаки — зависящие только от документа,

Ранжирующие признаки
Запросо-независимые или статические признаки — зависящие только от документа, но

не от запроса. Например, PageRank или длина документа.
Признаки, зависящие только от запроса. Например, «запрос про порно или нет».
Запросо-зависимые или динамические признаки — зависящие и от документа, и от запроса. Например, TF-IDF.
Слайд 10

Как происходит поиск Запрос токенизируется, к словам запроса применяется морфологический анализ,

Как происходит поиск

Запрос токенизируется, к словам запроса применяется морфологический анализ, ищутся

синонимы
Из документов индекса отбираются те, которые с большой вероятностью отвечают на запрос
Для отфильтрованных документов рассчитываются признаки (фичи)
К признакам применяется формула, дающая конечную оценку релевантности
Слайд 11

Общая функция релевантности Функция релевантности документа d относительно запроса q fr(q,d)=a1h1(q,d)+a2h2(q,d)+...+anhn(q,d)

Общая функция релевантности

Функция релевантности документа d относительно запроса q
fr(q,d)=a1h1(q,d)+a2h2(q,d)+...+anhn(q,d)
количество функций hk(q,d)

достаточно большое, десятки тысяч. Коэффициенты ak – малые величины.
hk(q,d) - мономы факторов
Слайд 12

Качество поиска Ассесоры нужны не для ручного управления, а для оценки

Качество поиска

Ассесоры нужны не для ручного управления, а для оценки качества

алгоритма
Определяют фичи
Постоянное переобучение
Типы запросов и регионы
Слайд 13

Выводы Среднее по топу не всегда покажет порог релевантности Никто не

Выводы

Среднее по топу не всегда покажет порог релевантности
Никто не знает

какие факторы как влияю на конкретный топ
Все факторы важны, один может помочь вытянуть другой
Нет смысла считать все факторы, если релевантных документов мало
Факторы дают + или - в ранжирование
Слайд 14

Ссылочный антиспам Вероятность что текст анкора коммерческий Вероятность что сайт продает

Ссылочный антиспам

Вероятность что текст анкора коммерческий
Вероятность что сайт продает ссылки
Вероятность что

сайт покупает ссылки
Тематика дорона-акцептора
Длинна текста в блоке
и т.д.
Слайд 15

Текстовый антиспам ПФ на странице с текстом Вероятность встретить слово в

Текстовый антиспам

ПФ на странице с текстом
Вероятность встретить слово в тексте
Тематический вектор

текста документа и сайта
Статические признаки спама(сжимаемость текста, количество знаков препинания и т.д)
Перечисление запросов и пр. фичи.
Слайд 16

Поведенческие факторы и антиспам Поведение в топе Поведение на странице и хосте Ласт-клик.

Поведенческие факторы и антиспам

Поведение в топе
Поведение на странице и хосте
Ласт-клик.


Слайд 17

Тематические фичи Количество и частота новыйх объявлений - для класифайдов Наличие

Тематические фичи

Количество и частота новыйх объявлений - для класифайдов
Наличие интентов на

странице(купить, скачать и т.д.)
Общая релевантность сайта запросу
Для авто-сайтов не нужна кнопка "купить"
Слайд 18

Про поиск и МО Антиспам построены на МО У яндекса алгоритм

Про поиск и МО

Антиспам построены на МО
У яндекса алгоритм ранжированя работает

на МО
Все задачи по кластеризации и классификации текстов - МО
Слайд 19

Типы задач Классификация Кластеризация Регрессия Понижение размерности данных Восстановление плотности распределения

Типы задач

Классификация Кластеризация Регрессия Понижение размерности данных Восстановление плотности распределения вероятности по набору данных Одноклассовая

классификация и выявление новизны Построение ранговых зависимостей
Слайд 20

Класическая задача: Кредитный скоринг Объект - человек доход, есть квартира, есть

Класическая задача: Кредитный скоринг

Объект - человек
доход, есть квартира, есть жена у

которой есть машина и т.д. - признаки
Задача: Найти вероятность того что клиент вернет кредит.
Слайд 21

Алгоритмы. Деревья решений

Алгоритмы. Деревья решений

Слайд 22

Random Forest

Random Forest

Слайд 23

k-means

k-means

Слайд 24

Коллаборативная фильтрация

Коллаборативная фильтрация

Слайд 25

МО для текстов Катеригоризация Кластеризация Таксономия Классификация

МО для текстов

Катеригоризация
Кластеризация
Таксономия
Классификация

Слайд 26

AlchemyLanguage API http://www.alchemyapi.com/products/demo/alchemylanguage

AlchemyLanguage API

http://www.alchemyapi.com/products/demo/alchemylanguage

Слайд 27

Классификация текстов http://docs.aylien.com/docs/addon-introduction

Классификация текстов

http://docs.aylien.com/docs/addon-introduction

Слайд 28

Пример. Как найти похожие документы Пацаны сказали что LSA - это

Пример. Как найти похожие документы

Пацаны сказали что LSA - это круто.


(на самом деле нет, Дирихле - рулит)
Слайд 29

LSA? Как работает: удаление стоп-слов, стемминг или лемматизация слов в документах;

LSA?

Как работает:
удаление стоп-слов, стемминг или лемматизация слов в документах;
исключение слов, встречающихся

в единственном экземпляре;
построение матрицы слово-документ (бинарную есть/нет слова, число вхождений или tf-idf);
разложение матрицы методом SVD (A = U * V * WT);
выделение строк матрицы U и столбцов W, которые соответствуют наибольшим сингуляр­ным числам (их может быть от 2-х до минимума из числа терминов и документов). Конкретное количество учитываемых собственных чисел определяется предполагаемым количеством семантических тем в задаче.
Слайд 30

LSA

LSA

Слайд 31

Пример. Как найти похожие документы LSA: На выходе получаем координаты в

Пример. Как найти похожие документы

LSA:
На выходе получаем координаты в тематическом пространстве
LDA:
На

выходе получаем вероятность принадлежности слова к тематике, и тематики пренадлежащие документам
Слайд 32

Как найти схожие документы. Обучение. LDA Пример обучения: http://pastebin.com/PMrCAQpz

Как найти схожие документы. Обучение. LDA

Пример обучения:
http://pastebin.com/PMrCAQpz

Слайд 33

Мера схожести Косинусная мера Коэффициент корреляции Пирсона Евклидово расстояние Коэффициент Танимото Манхэттенское расстояние и т.д.

Мера схожести

Косинусная мера
Коэффициент корреляции Пирсона
Евклидово расстояние
Коэффициент Танимото
Манхэттенское расстояние и т.д.

Слайд 34

Пример работы

Пример работы

Слайд 35

Gensim

Gensim

Слайд 36

Сложность фраз. Задача и ограничения Ограничения: Нужно посчитать за вменяемое время

Сложность фраз. Задача и ограничения

Ограничения:
Нужно посчитать за вменяемое время "сложность" для

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

Сложность фразы. Параметры. SEO-score = вхождение фразы в разные участки снипета.

Сложность фразы. Параметры.

SEO-score = вхождение фразы в разные участки снипета.


Вспомагательные параметры:
число главных страниц
число результатов в выдаче
длина фразы + число подсказок и запросов в базе
сила домена
частота запроса
стоимость клика в контексте
конкуренция в контексте
и т.д.
Слайд 38

Сложность фраз Поиск признаков Разметили обучающую выборку Отдельно обучили SEO-score Нормализовали

Сложность фраз

Поиск признаков
Разметили обучающую выборку
Отдельно обучили SEO-score
Нормализовали другие параметры и

обучили
Проверили результат на 2 выборках НК и ВК
Обучали пока небыло заметной разницы между НК и ВК
Еще раз проверили на другой группе
Слайд 39

Сложность фразы

Сложность фразы

Слайд 40

Полином fr(q,d)=a1h1(q,d)+a2h2(q,d)+...+an

Полином

fr(q,d)=a1h1(q,d)+a2h2(q,d)+...+an

Слайд 41

Нормировка линейная

Нормировка линейная

Слайд 42

Апроксимация

Апроксимация

Слайд 43

Виды апроксимации

Виды апроксимации

Слайд 44

Итоговая формула score=af(тиц)+bf(pr)+cf(ВС)+d

Итоговая формула

score=af(тиц)+bf(pr)+cf(ВС)+d

Слайд 45

Как найти коэффициенты a,b,c

Как найти коэффициенты a,b,c

Слайд 46

Таблица для поиска коэффициентов

Таблица для поиска коэффициентов

Слайд 47

Поиск решения

Поиск решения

Слайд 48

Поиск решения

Поиск решения

Слайд 49

Конец)

Конец)

Слайд 50

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

Усовершенствованный алгоритм

Выбираем параметры
Нормируем
Находим корреляцию с правильными результатами
Строим формулу
Помним про эффект переобучения

Слайд 51

Реальный пример https://docs.google.com/spreadsheets/d/1KSXignNr7SvNGhUU0W_uWCaxp5Ka3ea1jHRiWQKOFrM/edit#gid=573531330

Реальный пример

https://docs.google.com/spreadsheets/d/1KSXignNr7SvNGhUU0W_uWCaxp5Ka3ea1jHRiWQKOFrM/edit#gid=573531330

Слайд 52

Рекомендации kime, rapidminer - комбайны Gensim - библиотека python SciPy -

Рекомендации

kime, rapidminer - комбайны
Gensim - библиотека python
SciPy - библиотека python
Национальный корпус

русского языка - http://www.ruscorpora.ru/
Обработка текста http://www.alchemyapi.com/products/demo/alchemylanguage
http://www.wordfrequency.info/ - ENG корпус
https://github.com/buriy/python-readability - очистка текстов