Upload
-
View
560
Download
1
Embed Size (px)
DESCRIPTION
Презентация Павла Егорова, СКб Контур
Citation preview
Машинное обучение
Kontur LabsПавел ЕгоровМихаил СамойленкоАлексей Буславьев
ЗадачаБухгалтерские документы:
акты, накладные, счета, договора, …
Excel
Установленных стандартных шаблонов — НЕТ!
Хотим извлекать «интересные» поля:• Тип документа, Номер, Дата• Сумма, НДС, Основание• Покупатель, Продавец• …
3
4
5
6
7
Куча хороших данных
→ PROFIT
Машинное обучение
Данные
Данные — это множество векторов:
vi = (1, 0.5, 1.37, 2.8, -1, -0.1, …)
Разметка — что-то, известное для каждого вектора обучающей выборки. Это то, что мы хотим научиться вычислять для произвольного вектора.
Классификаторы…тренируются классифицировать на обучающей выборке
• Нейронные сети• KNN (K nearest neighbors)• Линейное разделение• Дерево решений• Рандомизированный лес• SVM
Feature-engineeringЗадача:«Является ли данный кусок текста датой документа?»
Фичи, господа, фичи!
Фичи• Положение на странице• Размер шрифта• Жирность• Расстояние до ключевых слов• …и направление • Положение гипотезы внутри блока текста
(ячейки)• Выравнивание• На сколько далеко от Now?
Прагматичный взглядМашинное обучение — всего лишь способ объединения большого количества слабых признаков в сильный классификатор
Если фич мало — просто закодируйте эвристику.
Генеральный планИщем в документе поле, в котором Тип/Дата/Номер/…
Но постойте! Это же не задача классификации!
Двухходовка:Простая эвристика находит все гипотезыКлассификатор выбирает из них
правильную
Разметка базы
Demo
Обучение и
тестированиеРазмеченная база:• Обучающая выборка• Тестовая выборка
Метрики качества:• Точность = truePositive / allPositive• Полнота = truePositive / allTrue
Общая схема
Для каждого поля отдельно
Размечаем базу
документов
Делаем генератор
гипотез
Обучаем
Изучаем ошибки
Придумываем фичи
Отладка
Demo
ИКРРаспознаем всё, во всех форматах!
1. Новые типы документов, со своими полями2. Новые форматы3. Optical character recognition
Я тоже хочу так уметь!Machine learning @ Stanford university (www.coursera.org)
Классическая книга:Pattern Recognition and Machine Learning
Christopher M. Bishop
Книги попроще:Machine Learning in Action, Peter Harrington
Machine learning for Hackers, Drew Conway, John Myles White
Q&AЕгоров Павел, Kontur Labs@[email protected]
Excel• http://poi.apache.org (JAVA)• https://code.google.com/p/npoi/ (.NET port)
Текст-блок: X, Y, W, H, Font, VAlignment, HAllignmentИнтерпретация формул
Игнорируем:Картинки, объекты вне ячеек, границы,
…
Фичи. ИнвариантностьИнвариантность относительно некоторых трансформаций:
Шрифт, масштаб, положение, синонимы, выравнивание текста, …
Данные — наше всё!• «Повезло» — у нас уже есть 100К+
документов.• Грубые фильтры:
Неинтересные нам документы (отчеты, расчеты, …)Дубли и очень похожие документыТестовые, пустые, мусор
→ ~2К документов
RandomForest