SlideShare a Scribd company logo
1 of 43
Download to read offline
Методологическое и программное
обеспечение трансформации табличных данных
от произвольной к реляционной форме*
Алексей Шигаров
ИДСТУ СО РАН
shigarov@icc.ru
Научная секция заседания Объединенного ученного совета по
Нанотехнологиям и информационным технологиям СО РАН
17 марта 2016, Новосибирск
* Работа выполнена при финансовой поддержке РФФИ (грант № 15-37-20042)
Содержание
• Проблема трансформации произвольных таблиц к реляционной форме
• Извлечение таблиц из неразмеченных PDF-документов
• Анализ и интерпретация произвольных таблиц
• Приложения
• Сравнение с другими и новизна
• Продолжающиеся и перспективные исследования
О таблицах
Таблицы в эпоху больших данных
• WebTables: 14.1B HTML таблиц из Google Crawl, из них 154M содержат реляционные данные
Cafarella, Halevy et al. (Google, Inc.) 2008, DOI:10.14778/1453856.1453916
• Senbazuru: 0.41M электронных таблиц в формате Excel из ClueWeb09
Chen & Cafarella (Univ. of Michigan) 2013, DOI:10.1145/2509908.2509909
• WikiTables: 1.4M таблиц из Википедии
Downey et al. (Northwestern Univ.) 2013, http://downey-n1.cs.northwestern.edu/public
• “600B фактов можно извлечь из 12B таблиц, собранных в Common Crawl”
Galkin, Mouromtsev & Auer (ITMO Univ. & Univ. of Bonn) 2015, DOI:10.1007/978-3-319-24543-0_4
• Dresden Web Tables Corpus: 125M таблиц из Common Crawl, фев. 2015
Eberius et al. (Technische Universität Dresden) https://wwwdb.inf.tu-dresden.de/misc/dwtc
• Web Data Commons - Web Table Corpora: 233M таблиц из Common Crawl, июль 2015
Ritze et al. (Univ. of Mannheim) http://webdatacommons.org/webtables
О таблицах
Произвольные таблицы
Таблица с сайта QQQ Software разработчика программы “TPL Tables”
http://www.qqqsoft.com
Таблица из работы Crick F.H.C. The Origin of the Genetic
Code. J. Mol. Biol. 1968.
• Cложная и разнообразная компоновка
О таблицах
Реляционные таблицы
Employee
Number
First
Name
Last
Name
Date of Birth
Car
Number
10001 John Washington 28-Aug-43 5
10083 Arvid Sharma 24-Nov-54 null
10120 Jonas Ginsberg 01-Jan-69 null
10005 Florence Wojokowski 04-Jul-71 12
10099 Sean Washington 21-Sep-66 null
10035 Elizabeth Yamaguchi 24-Dec-59 null
Таблица из официальной документации Java
“The Java Tutorials / JDBC Introduction”
Таблица из Википедии
“List of countries by population in 2010”
• Простая и однообразная компоновка
О таблицах
Одни из первых таблиц похоже имели реляционную форму
Таблица, Месопотамия, 1295 до н.р., рисунок из работы “The History of
Mathematical Tables: From Sumer to Spreadsheets” Oxford University Press.
2003.
Проблема трансформации произвольных таблиц
Неструктурированные данные
«Мы говорим «неструктурированные» [данные], поскольку они не включают явным
образом семантику («структуру»), необходимую компьютерным программам, чтобы
интерпретировать информацию так, как задумано автором, или как того требует
приложение» (перевод авт.)
Unstructured Information Management Architecture (UIMA) Version 1.0,
OASIS Standard, 2 March 2009. Basic Concepts and Terms
http://docs.oasis-open.org/uima/v1.0/uima-v1.0.html
Проблема трансформации произвольных таблиц
Неструктурированное против структурированного
Произвольные
таблицы
• ASCII-текст
• Электронных таблицы
• PDF-документы
• Веб-страницы
Просто
Сложно
Предназначены для
понимания человеком
Необходимая семантика
не представлена явным образом
Доступны для машинной
интерпретации (SQL, DM, OLAP)
Необходимая семантика
присутствует явно
Неструктурированные данные Структурированные данные
Реляционные таблицы
(Flat file databases)
Реляционные
базы данных
Проблема трансформации произвольных таблиц
Зачем их трансформировать к структурированной форме?
• Бизнес-аналитика
• Обнаружение знаний в базах данных | Knowledge Discovery in Databases
• Визуализация данных
• Формирование баз знаний | Knowledge Base Construction
• Генерация онтологий
• Извлечение информации из научных статей
• Доступность данных | Data Accessibility
Проблема трансформации произвольных таблиц
Наша цель
• Автоматизировать цепочку трансформации данных от произвольных таблиц
в PDF-документах к реляционным таблицам в CSV
Произвольные
таблицы в PDF
документах
Произвольные
таблицы в Excel
Реляционные
таблицы в CSV
Извлечение
таблиц
Анализ и
интерпретация
таблиц
Извлечение таблиц из неразмеченных PDF-документов
Почему PDF-документы?
• PDF, самый популярный формат данных в Вебе после HTML
• Запрос к Google (filetype:pdf) возвращает 1.33B результатов (13 марта 2016)
Рисунок “The 8 Most Popular
Document Formats on the Web”
с сайта Duff Johnson Strategy &
Communications
http://duff-johnson.com
Извлечение таблиц из неразмеченных PDF-документов
Неразмеченные PDF-документы
• «Неразмеченные» означает отсутствие машиночитаемой разметки, т.е. информация
представлена инструкциями вывода текста и графики для PDF интерпретатора
• PDF поддерживает разметку документов включая таблицы (с версии 1.4, 2001 года)
• 95,5% научных статей, публикуемых ведущими издателями, являются неразмеченными
PDF-документами (оценка 2015 года)*
* Nganji J. The Portable Document Format (PDF) accessibility practice of four journal publishers.
Library & Information Science Research. 2015.
Извлечение таблиц из неразмеченных PDF-документов
Интерпретация PDF-инструкций
• Сложность PDF-документов отпугивает от того, чтобы заниматься их анализом и распознаванием
/F1 12 Tf
1 0 0 1 85.104 774.48 Tm
0 g
0 G
[(A ta)4(ble is a)3( c)4(oll)-3(e)4(c)4(ti)-3(on of)3( )-
9(re)7(late)4(d da)4(t)-11(a)] TJ
ET
• Чтобы извлечь таблицы приходится интерпретировать
PDF-инструкции вывода текста q, Q, g, G, rg, RG, k, K, cs, CS, sc, SC, scn, SCN, cm, gs, Tc, Tw, Tz, TL, Tf, Tr,
Ts, BT, ET, BMC, BDC, EMC, Td, TD, Tm, T*, Tj, ', ", TJ, Do, w, J, j, M, d
PDF-инструкции вывода век. графики m, l, c, v, y, h, re, S
• Инструментальные средства: PDFBox (https://pdfbox.apache.org), iText (http://itextpdf.com),
pdf2html (http://pdftohtml.sourceforge.net)
Извлечение таблиц из неразмеченных PDF-документов
Генерация текстовых блоков и линеек разграфки
• Инструкции вывода текста → Текстовые блоки
• Инструкции вывода векторной графики → Линейки разграфки
Один блок = Одна инструкция
Один блок = Один символ
Один блок = Одно слово
Сегменты линеек объединяются
Прямоугольники разделяются
Извлечение таблиц из неразмеченных PDF-документов
Обнаружение таблиц
• Необходимо найти область ограничивающую таблицу или выбрать список всех
PDF-инструкций её вывода
Извлечение таблиц из неразмеченных PDF-документов
Распознавание структуры таблиц
• Необходимо восстановить
Линейки разграфки таблицы Структуру и содержание ячеек таблицы
или
Извлечение таблиц из неразмеченных PDF-документов
Распознавание структуры таблиц
• Шаг 1. Объединение текстовых блоков. Содержание одной ячейки = Один текстовый блок
• Решение об объединении двух блоков:
• Пробельное и межстрочное расстояние
• Обычно гориз. или верт. проекции блоков внутри одной ячейки пересекаются
• Обычно порядок вывода текста по крайней мере внутри одной ячейки совпадает с порядком его чтения
• Обычно внутри ячеек нет линеек
• Обычно внутри одной ячейки используется однообразное форматирование (шрифты, выравнивание)
Извлечение таблиц из неразмеченных PDF-документов
Распознавание структуры таблиц
• Шаг 2. Раскройка пространства таблицы с помощью промежутков пробельного пространства
1. Выделение верт. промежутков
• Первоначальное формирование
гипотез о линейках основано на
алгоритме Shigarov A., Fedorov R.
Simple Algorithm for Page Layout
Analysis. Pattern Recognition and
Image Analysis. 2011. 21(2). 324-327
• Для исключения неправдоподобных
гипотез используются “ad hoc”
эвристики
2. Выделение гориз. промежутков по
аналогии
Извлечение таблиц из неразмеченных PDF-документов
Распознавание структуры таблиц
• Шаг 2. Раскройка пространства таблицы с помощью проекций текстовых блоков
1. Выделение столбцов
• Столбцы выделяются по пересечениям
горизонтальных проекций блоков
• Проекции блоков предположительно
охватывающих несколько столбцов не
рассматриваются
2. Выделение строк по аналогии
Извлечение таблиц из неразмеченных PDF-документов
Две реализации
Реализация 1 Реализация 2
Пробельное расстояние = W*K1, где
W — ширина пробела левого
объединяемого текстового блока
K1 — коэффициент, K > 0
если D < T1, тогда = W, иначе = W*K, где
D — модуль расстояния между двумя
объединяемыми текстовыми блоками
T1 — порог, T1 > 0
W — ширина пробела левого объединяемого
текстового блока
K — коэффициент 0 < K < 1
Межстрочное расстояние = K2*H, где
K2 — коэффициент, K > 0
H — высота текстового блока
=T2, где
T2 — порог, T2 > 0
Основные эвристики Порядок вывода текста, линейки,
однообразные шрифты, пересечение
гориз. или верт. проекций
Порядок вывода текста, линейки, однообразные
шрифты, y2-координаты совпадают или гориз.
проекции пересекаются
Раскройка пространства таблицы Промежутки пробельного пространства Связность текстовых блоков
“Ad hoc” эвристики Символы списков, пробелы слева и
справа, висячие заголовки
Символы списков и заполнители, пробелы слева и
справа
Извлечение таблиц из неразмеченных PDF-документов
Система экспериментальной оценки
• Система оценки методов распознавания таблиц Göbel, Hassan, Oro & Orsi (2012)*,
http://tamirhassan.com/competition.html
* Göbel M., Hassan T., Oro E. & Orsi G. A methodology for evaluating algorithms for table understanding in PDF documents.
In Proc. of the ACM symposium on Document engineering. 2012.
• ICDAR2013 Table Competition**, впервые проведено
соревнование методов извлечения таблиц из
документов
** Göbel M., Hassan T., Oro E. & Orsi G. ICDAR 2013 Table
Competition. In Proc. of the 12th Int. Conf. on Document
Analysis and Recognition. 2013
• Nurminen (2013), реализация методологии Göbel et al.
(2012) с небольшими отличиями системы штрафов
Рисунок из работы Göbel et al. (2012)*
Оригинальная таблица
Некорректно распознанная таблица
Извлечение таблиц из неразмеченных PDF-документов
Настройка коэффициентов в Реализации 1
• Результаты для 2500 тестов на соревновательном наборе “ICDAR2013 Table Competition”
K1
K2
F-мера
max(F-score) = 0,9189 при K1=0.9 и K2=1.0
Извлечение таблиц из неразмеченных PDF-документов
Экспериментальная оценка
• Оценивается точность и полнота распознавания отношений между соседними ячейками
• Полнота = корректные отношения соседства / все отношения соседства
• Точность = корректные отношения соседства / обнаруженные отношения соседства
• Результаты получены на соревновательном наборе таблиц “ICDAR2013 Table Competition” с помощью реализации
Nurminen (2013) методологии Göbel, Hassan, Oro & Orsi (2012)
Оценки Реализация 1 Реализация 2
Полнота 91,57% 92,33%
Точность 92,21% 94,99%
F-мера 91,89% 93,64%
Результаты экспериментальной оценки
Анализ и интерпретация произвольных таблиц
Доступная информация о произвольной таблице с разметкой
Обычно мы знаем
• Компоновку (строки, столбцы, ячейки)
• Форматирование (шрифты, выравнивания, цвета и др.)
• Текстовое содержание
24
Анализ и интерпретация произвольных таблиц
Остаётся восстановить семантические отношения
2. Пары вида
вхождение-метка, метка-метка, метка-категория*
* Терминология заимствована из работы
Wang X. Tabular Abstraction, Editing, and
Formatting, PhD Thesis. 1996
25
1. Пары вида
ячейка-роль, где роль={вхождение, метка, категория} *
Анализ и интерпретация произвольных таблиц
Восстановленная семантика позволяет представить таблицу
в реляционной форме
В таком она может загружаться в реляционную базу данных известными ETL-средствами
26
Анализ и интерпретация произвольных таблиц
Основная идея
Тогда
• Можно использовать набор формальных
правил, воссоздающих интерпретацию автора,
для восстановления отсутствующих явно
семантических отношений
27
Поскольку
• Часто таблицы одного автора создаются в
рамках одного набора правил компоновки
и форматирования
• Поэтому они разделяют общие свойства,
отражающие его интерпретацию
Синтез
таблиц
Анализ и
интерпретация
таблиц
Нижняя часть рисунка взята с сайта
http://www.cse.unsw.edu.au/~billw/cs9414
Анализ и интерпретация произвольных таблиц
Правила анализа и интерпретации таблиц
• Могут выражаться на специализированном языке правил — CRL (http://cells.icc.ru/pub/crl/crl.dsl)
или языке правил общего назначения — DRL (http://drools.org)
• Могут исполняться в свободной системе Drools (http://drools.org)
• Отображают доступные факты (компоновку, форматирование и содержание ячеек) в отсутствующие семантические
отношения
rule
when
Условия: выбор известных фактов (ячейки, метки, вхождение и категории)
по заданным ограничениям
then
Действия: восстановление неизвестных фактов
(вхождений, меток, категорий, пар вхождение-метка, метка-метка и метка-категория)
end
28
Анализ и интерпретация произвольных таблиц
Таблица как набор фактов
• Доступные факты
• Ячейки
c1=(cl=1,rt=1,cr=1,rb=2,text=null)
c2=(cl=2,rt=1,cr=4,rb=1,text="Sent")
c5=(cl=3,rt=2,cr=3,rb=2,text="FY2010")
c8=(cl=1,rt=3,cr=5,rb=3,style.font.bold=true, text="Letters")
c9=(cl=1,rt=4,cr=1,rb=4,text="EU")
c24=(cl=1,rt=7,cl=1,rb=7,indent=4,text="Belgium")
c26=(cl=3,rt=7,cl=3,rb=7,type=Type.NUMERIC,text="341.1")
• Категории
d1=(name="OPERATION", labels={"Sent","Received"})
d2=(name="YEAR", constraints={"FY200[0-9]", "FY201[0-6]"})
d3=(name="MAIL_TYPE", labels={"Letters","Parcels"})
d4=(name="COUNTRY", labels={"Afghanistan",...,"Zimbabwe"})
29
Анализ и интерпретация произвольных таблиц
Таблица как набор фактов
• Восстанавливаемые факты
• Метки и пары метка-категория
l1=(value="Sent", cell=c2, category=d1)
l2=(value="2011", cell=c5, category=d2)
l3=(value="Letters", cell=c8, category=d3)
l4=(value="EU", cell=c9, category=d4)
l5=(value="Belgium", cell=c24, category=d4)
• Метки и пары метка-метка
l4=(value="EU", cell=c9, category=d4, children={l5,...})
l5=(value="Belgium", cell=c24, category=d4, parent=l4)
• Вхождения и пары вхождение-метка
e1=(value="341.1", cell=c26, labels={l1,l2,l3,l4,l5})
30
Анализ и интерпретация произвольных таблиц
Генерация реляционных таблиц
• Восстановленные отношения позволяют представить
таблицу в реляционной форме
<entries>={1,2,3,4,5,6,7,8}
<labels>={a1,a11,a12,a2,a21,a22,b1,b2}
<categories>={A,B}
<entry-label pairs>={(1,a11),(1,b1),(2,a12),
(2,b1),(3,a21),(3,b1),(4,a22),(4,b1),(5,a11),
(5,b2),(6,a12),(6,b2),(7,a21),(7,b2),(8,a22),
(8,b2)}
<label-label pairs>={(a11,a1),(a12,a1),
(a21,a2),(a22,a2)}
<label-category pairs>={(a1,A),(a11,A),
(a12,A),(a2,A),(a21,A),(a22,A),(b1,B),(b2,B)}
DATA A B
1 a1 | a11 b1
2 a1 | a12 b1
3 a2 | a21 b1
4 a2 | a22 b1
5 a1 | a11 b2
6 a1 | a12 b2
7 a2 | a21 b2
8 a2 | a22 b2
a11 a12 a21 a22
b1 1 2 3 4
b2 5 6 7 8
A
B
a1 a2
31
Произвольная
форма
Реляционная
(каноническая)
форма
Анализ и интерпретация произвольных таблиц
Очистка данных
• Очистка от символов заполнителей, перечислений и сносок
• {Income........, • Income, Income*, Income1} → Income
• Приведение к стандартизированным значениям
• {Москва, М., Мск, Moscow} → Москва
• {Ирк. обл., Иркутская обл., Иркутская область, Икрутская область} → Иркутская область
• Интерпретация значений в зависимости от контекста
• Слово “FY” (финансовый год) может иметь разный смысл:
в России начинается 1 января, в Великобритании — 1 апреля, в США — 1 октября
• Обнаружение и исключение вычислимых (агрегированных) значений
2015 2016 Total Average 2016/2015
2 6 8 4 3
Анализ и интерпретация произвольных таблиц
Экспериментальная оценка
Multi-row
hierarchical layout
Multi-column
plain layout
One-column
hierarchical
layout
Multi-column &
multi-row layout
One-column
plain layout
Category name cells
Row label cells
Column label cells
Entry cells
Table regions
One-column &
one-row layout
Multi-column &
one-row layout
One-row plain layout
Multi-row
plain layout
47,5%
47%
5,5% 100%
94,5% 5,5% 65,5%
26%
8,5%
33
• TANGO-200
все таблицы
• TANGO-SUB
все, кроме таблиц
с одноколонной
иерархической
компоновкой
строчных меток
Виды компоновок таблиц TANGO
• Тестовый набор данных проекта TANGO из 200 таблиц (http://tango.byu.edu/data)
Анализ и интерпретация произвольных таблиц
Экспериментальная оценка
• Оценивается абсолютная полнота и точность восстановления таблиц
(только отношения ячейка-роль, вхождение-метка, метка-метка)
• Оценка выполняется на основе консенсуса 3 экспертов
34
TANGO-200 TANGO-SUB
Таблиц 200 105
CRL-правил 16 13
Полнота 87% (174/200) 95,2% (100/105)
Точность 88,5% (177/200) 95,2% (100/105)
F-мера 87,74% 95,2%
Экспериментальные результаты Абсолютная
полнота
для таблицы
= 1, если абсолютно все отношения
исходной таблицы восстановлены
= 0, в противном случае
Абсолютная
точность
для таблицы
=1, если абсолютно все восстановленные
отношения являются отношениями
исходной таблицы
= 0, в противном случае
Полнота
полностью восстановленные таблицы /
всего таблиц
Точность
точно восстановленные таблицы /
всего таблиц
Приложения
SSDC: Трансформация произвольных электронных таблиц Excel к реляционной
форме (Приложение командной строки)
• Исходные коды опубликованы под свободной лицензией Apache License 2.0 и доступны по адресу
https://github.com/shigarov/cells-ssdc
Canonical form:
______________________________________
| DATA| First Name| Last Name| YEAR|
|====================================|
| c | gabriel | stone | 2016 |
| c | gabriel | stone | 2015 |
| b | vicky | vega | 2016 |
| b | vicky | vega | 2015 |
| c | sammy | castro | 2016 |
| c | sammy | castro | 2015 |
| b | kayla | jennings | 2016 |
| b | kayla | jennings | 2015 |
| a | becky | robinson | 2016 |
| a | becky | robinson | 2015 |
Number of
cells: 19
not empty cells: 19
labels: 12
entries: 10
label-label pairs: 0
entry-label pairs: 30
category-label pairs: 12
categories: 3
label groups: 0
Current rule firing time: 7
Command line parameters:
Excel file: “.examplesT011.xlsx"
Sheets in processing: ALL
DRL file: ".examplesT011.dslr"
Output directory: ".examplesres"
Debugging mode: deactivated
Приложения
WebSSDC: Трансформация произвольных электронных таблиц Excel
к реляционной форме (веб-сервис)
http://cells.icc.ru/ssdc
Приложения
WebPDFTE: Извлечение таблиц из неразмеченных PDF-документов
(веб-сервис)*
http://cells.icc.ru/pdfte
* В текущей версии доступно только распознавание структуры
Сравнение с другими и новизна
Типы таблиц
Фиксируются
(1-5 широко-распространенных типов)
Программируются
Методы
основанные
на знаниях
(Онтологии,
Глобальные
таксономии)
Предметно-независимые методы
(Компоновка, форматирование, текст)
Мы (2013-16)
• Оригинальный язык (CRL)
• Компоновка, форматирование, текст
и подключаемые словари
• Относительная адресация ячеек
• Электронные таблицы,
PDF-таблицы (реализуется)
• Очистка данных (реализуется)
Hung (2011)
• Оригинальный язык (TranSheet)
• Компоновка и текст
• Абсолютная адресация ячеек
• Электронные таблицы
38
Govindaraju (2013)
• PDF-таблицы
Chen&Cafarella (2013-14)
• электронные таблицы
Tijerino (2005)
Embley (2005)
WangJ (2012)
• Веб-таблицы (HTML)
Pivk (2005-07)
Gatterbauer (2007)
Kim (2008)
Embley, Nagy, Seth &
Krishnamoorthy (2014-16)
• Веб-таблицы (HTML)
Извлечение информации Интеграция данных
Ссылки
• Chen, Z., Cafarella, M.: Integrating spreadsheet data via accurate and low-effort extraction. In: Proc. 20th ACM SIGKDD Int. Conf. on
Knowledge Discovery and Data Mining. pp. 1126–1135. ACM, New York, NY, USA (2014)
• Embley, D.W., Krishnamoorthy, M.S., Nagy, G., Seth, S.: Converting heterogeneous statistical tables on the web to searchable databases.
Int. J. on Document Analysis and Recognition. pp. 1–20 (2016)
• Embley, D., Tao, C., Liddle, S.: Automating the extraction of data from HTML tables with unknown structure. Data & Knowledge Engineering
54(1), 3–28 (2005)
• Gatterbauer, W., Bohunsky, P., Herzog, M., Krpl, B., Pollak, B.: Towards domainindependent information extraction from web tables. In:
Proc. 16th Int. Conf. On World Wide Web. pp. 71–80. New York, US (2007)
• Govindaraju, V., Zhang, C., Ré, C.: Understanding tables in context using standard NLP toolkits. In Proc. of the 51st Annual Meeting of the
Association for Computational Linguistics. (2013)
• Hung, V., Benatallah, B., Saint-Paul, R.: Spreadsheet-based complex data transformation. In: Proc. 20th ACM Int. Conf. on Information and
Knowledge Management. pp. 1749–1754. CIKM ’11, ACM, New York, NY, USA (2011)
• Kim, Y.S., Lee, K.H.: Extracting logical structures from html tables. Computer Standards & Interfaces 30(5), 296–308 (2008)
• Pivk, A., Cimiano, P., Sure, Y., Gams, M., Rajkoviˇc, V., Studer, R.: Transforming arbitrary tables into logical form with tartar. Data &
Knowledge Engineering 60(3), 567–595 (2007)
• Tijerino, Y., Embley, D., Lonsdale, D., Ding, Y., Nagy, G.: Towards ontology generation from tables. World WideWeb: Internet and Web
Information Systems 8(3), 261–285 (2005)
• Wang, J., Wang, H., Wang, Z., Zhu, K.Q.: Understanding tables on the web. In: Proc. of the 31st Int. Conf. on Conceptual Modeling. pp. 141–
155. ER’12, Springer-Verlag, Berlin, Heidelberg (2012)
Ссылки на наши работы
• Shigarov A.O. Table understanding using a rule engine. Expert Systems with Applications. 2015. 42(2), 929-937.
• Shigarov A. Rule-Based Table Analysis and Interpretation. Communications in Computer and Information Science.
Springer. 2015. Vol. 538. pp. 175-186.
• Шигаров А.О., Бычков И.В., Парамонов В.В., Белых П.В. Анализ и интерпретация произвольных таблиц на основе
исполнения CRL-правил // Вычислительные технологии. 2015. Т.20, №6. C. 87-112.
• Шигаров А.О. Восстановление логической структуры таблиц из неструктурированных текстов на основе
логического вывода // Вычислительные технологии. 2014. Т. 19, № 1. С. 87-99.
• Шигаров А.О., Бычков И.В., Ружников Г.М., Хмельнов А.Е., Федоров Р.К. Система трансформации таблиц //
Информационные технологии и вычислительные системы. 2013. № 3. С. 15-26.
Продолжающиеся исследования
• Извлечение таблиц из неразмеченных PDF-документов
• Обнаружение таблиц
• Комплексная экспериментальная оценка
• Анализ и интерпретация произвольных таблиц
• Очистка данных в процессе понимания таблиц
• Концептуализация меток
• Комплексная экспериментальная оценка
• Приложения
• Веб-сервис извлечения таблиц из неразмеченных PDF-документов
• Веб-сервис трансформации произвольных таблиц к формату Google Charts
(https://developers.google.com/chart)
Перспективные исследования
• Системы оценки извлечения таблиц из PDF-документов
• Системы оценки анализа и интерпретации произвольных таблиц
• Языковые и визуальные средства разработки цепочек трансформации табличных данных
• Инструментальные платформы и утилиты извлечения информации из произвольных таблиц
(особенно PDF)
• Инструментальные платформы интеграции неструктурированных данных из произвольных таблиц
(особенно Excel)
Спасибо
Презентация доступна на SlideShare.net
http://www.slideshare.net/shig
Алексей Шигаров
shigarov@icc.ru
http://cells.icc.ru
43

More Related Content

Similar to Methodology and software for extracting and transforming data from arbitrary tables in untagged PDF-documents to the relational form (flat file databases) (in Russian)

Technology for tabular information extraction from documents in various formats
Technology for tabular information extraction from documents in various formatsTechnology for tabular information extraction from documents in various formats
Technology for tabular information extraction from documents in various formatsAlexey Shigarov
 
методические указания к выполнению лабораторных работ в Excel
методические указания к выполнению лабораторных работ в Excelметодические указания к выполнению лабораторных работ в Excel
методические указания к выполнению лабораторных работ в ExcelMKoryakina
 
System for tabular information extraction from documents in various formats
System for tabular information extraction from documents in various formatsSystem for tabular information extraction from documents in various formats
System for tabular information extraction from documents in various formatsAlexey Shigarov
 
программа курса тимуровцы.
программа курса тимуровцы.программа курса тимуровцы.
программа курса тимуровцы.На та ха
 
презентация современные технологии в научных исследованиях
презентация  современные технологии в научных исследованияхпрезентация  современные технологии в научных исследованиях
презентация современные технологии в научных исследованияхAnastasia Odintsova
 
Проект КомпАс
Проект КомпАсПроект КомпАс
Проект КомпАсvera2011s
 
Шаблоны проектирования баз данных — Введение
Шаблоны проектирования баз данных — ВведениеШаблоны проектирования баз данных — Введение
Шаблоны проектирования баз данных — ВведениеDenis Beskov
 
автоматическое построение оригинал макетов учебников как отч
автоматическое построение оригинал макетов учебников как отчавтоматическое построение оригинал макетов учебников как отч
автоматическое построение оригинал макетов учебников как отчanna_vereshchagina
 
Информационный поиск. Инвертированный индекс. Обработка булевых запросов.
Информационный поиск. Инвертированный индекс. Обработка булевых запросов.Информационный поиск. Инвертированный индекс. Обработка булевых запросов.
Информационный поиск. Инвертированный индекс. Обработка булевых запросов.Denis Samoylov
 
Ainl 2013 bogatyrev_математическая и лингвистическая
Ainl 2013 bogatyrev_математическая и лингвистическаяAinl 2013 bogatyrev_математическая и лингвистическая
Ainl 2013 bogatyrev_математическая и лингвистическаяAINL Conferences
 
Робота в Excel Excel 2007
Робота в Excel Excel 2007 Робота в Excel Excel 2007
Робота в Excel Excel 2007 irina tolstikova
 
Modern arch neznanov_2015_05_14
Modern arch neznanov_2015_05_14Modern arch neznanov_2015_05_14
Modern arch neznanov_2015_05_14Alexey Neznanov
 
Соединяя точки. Моделе-ориентированный процесс системного проектирования
Соединяя точки. Моделе-ориентированный процесс системного проектированияСоединяя точки. Моделе-ориентированный процесс системного проектирования
Соединяя точки. Моделе-ориентированный процесс системного проектированияYulia Madorskaya
 
Object-Relational Mapping for Dummies
Object-Relational Mapping for DummiesObject-Relational Mapping for Dummies
Object-Relational Mapping for DummiesGlobalLogic Ukraine
 
Бизнес и системный анализ весна 2013 лекция 5
Бизнес и системный анализ весна 2013 лекция 5Бизнес и системный анализ весна 2013 лекция 5
Бизнес и системный анализ весна 2013 лекция 5Technopark
 

Similar to Methodology and software for extracting and transforming data from arbitrary tables in untagged PDF-documents to the relational form (flat file databases) (in Russian) (20)

Technology for tabular information extraction from documents in various formats
Technology for tabular information extraction from documents in various formatsTechnology for tabular information extraction from documents in various formats
Technology for tabular information extraction from documents in various formats
 
Microsoft access 2007
Microsoft access 2007Microsoft access 2007
Microsoft access 2007
 
методические указания к выполнению лабораторных работ в Excel
методические указания к выполнению лабораторных работ в Excelметодические указания к выполнению лабораторных работ в Excel
методические указания к выполнению лабораторных работ в Excel
 
Excel
ExcelExcel
Excel
 
Stat 1 alpha
Stat 1 alphaStat 1 alpha
Stat 1 alpha
 
System for tabular information extraction from documents in various formats
System for tabular information extraction from documents in various formatsSystem for tabular information extraction from documents in various formats
System for tabular information extraction from documents in various formats
 
программа курса тимуровцы.
программа курса тимуровцы.программа курса тимуровцы.
программа курса тимуровцы.
 
презентация современные технологии в научных исследованиях
презентация  современные технологии в научных исследованияхпрезентация  современные технологии в научных исследованиях
презентация современные технологии в научных исследованиях
 
Проект КомпАс
Проект КомпАсПроект КомпАс
Проект КомпАс
 
Шаблоны проектирования баз данных — Введение
Шаблоны проектирования баз данных — ВведениеШаблоны проектирования баз данных — Введение
Шаблоны проектирования баз данных — Введение
 
автоматическое построение оригинал макетов учебников как отч
автоматическое построение оригинал макетов учебников как отчавтоматическое построение оригинал макетов учебников как отч
автоматическое построение оригинал макетов учебников как отч
 
базы данных
базы данныхбазы данных
базы данных
 
Информационный поиск. Инвертированный индекс. Обработка булевых запросов.
Информационный поиск. Инвертированный индекс. Обработка булевых запросов.Информационный поиск. Инвертированный индекс. Обработка булевых запросов.
Информационный поиск. Инвертированный индекс. Обработка булевых запросов.
 
Ainl 2013 bogatyrev_математическая и лингвистическая
Ainl 2013 bogatyrev_математическая и лингвистическаяAinl 2013 bogatyrev_математическая и лингвистическая
Ainl 2013 bogatyrev_математическая и лингвистическая
 
Word
Word Word
Word
 
Робота в Excel Excel 2007
Робота в Excel Excel 2007 Робота в Excel Excel 2007
Робота в Excel Excel 2007
 
Modern arch neznanov_2015_05_14
Modern arch neznanov_2015_05_14Modern arch neznanov_2015_05_14
Modern arch neznanov_2015_05_14
 
Соединяя точки. Моделе-ориентированный процесс системного проектирования
Соединяя точки. Моделе-ориентированный процесс системного проектированияСоединяя точки. Моделе-ориентированный процесс системного проектирования
Соединяя точки. Моделе-ориентированный процесс системного проектирования
 
Object-Relational Mapping for Dummies
Object-Relational Mapping for DummiesObject-Relational Mapping for Dummies
Object-Relational Mapping for Dummies
 
Бизнес и системный анализ весна 2013 лекция 5
Бизнес и системный анализ весна 2013 лекция 5Бизнес и системный анализ весна 2013 лекция 5
Бизнес и системный анализ весна 2013 лекция 5
 

Methodology and software for extracting and transforming data from arbitrary tables in untagged PDF-documents to the relational form (flat file databases) (in Russian)

  • 1. Методологическое и программное обеспечение трансформации табличных данных от произвольной к реляционной форме* Алексей Шигаров ИДСТУ СО РАН shigarov@icc.ru Научная секция заседания Объединенного ученного совета по Нанотехнологиям и информационным технологиям СО РАН 17 марта 2016, Новосибирск * Работа выполнена при финансовой поддержке РФФИ (грант № 15-37-20042)
  • 2. Содержание • Проблема трансформации произвольных таблиц к реляционной форме • Извлечение таблиц из неразмеченных PDF-документов • Анализ и интерпретация произвольных таблиц • Приложения • Сравнение с другими и новизна • Продолжающиеся и перспективные исследования
  • 3. О таблицах Таблицы в эпоху больших данных • WebTables: 14.1B HTML таблиц из Google Crawl, из них 154M содержат реляционные данные Cafarella, Halevy et al. (Google, Inc.) 2008, DOI:10.14778/1453856.1453916 • Senbazuru: 0.41M электронных таблиц в формате Excel из ClueWeb09 Chen & Cafarella (Univ. of Michigan) 2013, DOI:10.1145/2509908.2509909 • WikiTables: 1.4M таблиц из Википедии Downey et al. (Northwestern Univ.) 2013, http://downey-n1.cs.northwestern.edu/public • “600B фактов можно извлечь из 12B таблиц, собранных в Common Crawl” Galkin, Mouromtsev & Auer (ITMO Univ. & Univ. of Bonn) 2015, DOI:10.1007/978-3-319-24543-0_4 • Dresden Web Tables Corpus: 125M таблиц из Common Crawl, фев. 2015 Eberius et al. (Technische Universität Dresden) https://wwwdb.inf.tu-dresden.de/misc/dwtc • Web Data Commons - Web Table Corpora: 233M таблиц из Common Crawl, июль 2015 Ritze et al. (Univ. of Mannheim) http://webdatacommons.org/webtables
  • 4. О таблицах Произвольные таблицы Таблица с сайта QQQ Software разработчика программы “TPL Tables” http://www.qqqsoft.com Таблица из работы Crick F.H.C. The Origin of the Genetic Code. J. Mol. Biol. 1968. • Cложная и разнообразная компоновка
  • 5. О таблицах Реляционные таблицы Employee Number First Name Last Name Date of Birth Car Number 10001 John Washington 28-Aug-43 5 10083 Arvid Sharma 24-Nov-54 null 10120 Jonas Ginsberg 01-Jan-69 null 10005 Florence Wojokowski 04-Jul-71 12 10099 Sean Washington 21-Sep-66 null 10035 Elizabeth Yamaguchi 24-Dec-59 null Таблица из официальной документации Java “The Java Tutorials / JDBC Introduction” Таблица из Википедии “List of countries by population in 2010” • Простая и однообразная компоновка
  • 6. О таблицах Одни из первых таблиц похоже имели реляционную форму Таблица, Месопотамия, 1295 до н.р., рисунок из работы “The History of Mathematical Tables: From Sumer to Spreadsheets” Oxford University Press. 2003.
  • 7. Проблема трансформации произвольных таблиц Неструктурированные данные «Мы говорим «неструктурированные» [данные], поскольку они не включают явным образом семантику («структуру»), необходимую компьютерным программам, чтобы интерпретировать информацию так, как задумано автором, или как того требует приложение» (перевод авт.) Unstructured Information Management Architecture (UIMA) Version 1.0, OASIS Standard, 2 March 2009. Basic Concepts and Terms http://docs.oasis-open.org/uima/v1.0/uima-v1.0.html
  • 8. Проблема трансформации произвольных таблиц Неструктурированное против структурированного Произвольные таблицы • ASCII-текст • Электронных таблицы • PDF-документы • Веб-страницы Просто Сложно Предназначены для понимания человеком Необходимая семантика не представлена явным образом Доступны для машинной интерпретации (SQL, DM, OLAP) Необходимая семантика присутствует явно Неструктурированные данные Структурированные данные Реляционные таблицы (Flat file databases) Реляционные базы данных
  • 9. Проблема трансформации произвольных таблиц Зачем их трансформировать к структурированной форме? • Бизнес-аналитика • Обнаружение знаний в базах данных | Knowledge Discovery in Databases • Визуализация данных • Формирование баз знаний | Knowledge Base Construction • Генерация онтологий • Извлечение информации из научных статей • Доступность данных | Data Accessibility
  • 10. Проблема трансформации произвольных таблиц Наша цель • Автоматизировать цепочку трансформации данных от произвольных таблиц в PDF-документах к реляционным таблицам в CSV Произвольные таблицы в PDF документах Произвольные таблицы в Excel Реляционные таблицы в CSV Извлечение таблиц Анализ и интерпретация таблиц
  • 11. Извлечение таблиц из неразмеченных PDF-документов Почему PDF-документы? • PDF, самый популярный формат данных в Вебе после HTML • Запрос к Google (filetype:pdf) возвращает 1.33B результатов (13 марта 2016) Рисунок “The 8 Most Popular Document Formats on the Web” с сайта Duff Johnson Strategy & Communications http://duff-johnson.com
  • 12. Извлечение таблиц из неразмеченных PDF-документов Неразмеченные PDF-документы • «Неразмеченные» означает отсутствие машиночитаемой разметки, т.е. информация представлена инструкциями вывода текста и графики для PDF интерпретатора • PDF поддерживает разметку документов включая таблицы (с версии 1.4, 2001 года) • 95,5% научных статей, публикуемых ведущими издателями, являются неразмеченными PDF-документами (оценка 2015 года)* * Nganji J. The Portable Document Format (PDF) accessibility practice of four journal publishers. Library & Information Science Research. 2015.
  • 13. Извлечение таблиц из неразмеченных PDF-документов Интерпретация PDF-инструкций • Сложность PDF-документов отпугивает от того, чтобы заниматься их анализом и распознаванием /F1 12 Tf 1 0 0 1 85.104 774.48 Tm 0 g 0 G [(A ta)4(ble is a)3( c)4(oll)-3(e)4(c)4(ti)-3(on of)3( )- 9(re)7(late)4(d da)4(t)-11(a)] TJ ET • Чтобы извлечь таблицы приходится интерпретировать PDF-инструкции вывода текста q, Q, g, G, rg, RG, k, K, cs, CS, sc, SC, scn, SCN, cm, gs, Tc, Tw, Tz, TL, Tf, Tr, Ts, BT, ET, BMC, BDC, EMC, Td, TD, Tm, T*, Tj, ', ", TJ, Do, w, J, j, M, d PDF-инструкции вывода век. графики m, l, c, v, y, h, re, S • Инструментальные средства: PDFBox (https://pdfbox.apache.org), iText (http://itextpdf.com), pdf2html (http://pdftohtml.sourceforge.net)
  • 14. Извлечение таблиц из неразмеченных PDF-документов Генерация текстовых блоков и линеек разграфки • Инструкции вывода текста → Текстовые блоки • Инструкции вывода векторной графики → Линейки разграфки Один блок = Одна инструкция Один блок = Один символ Один блок = Одно слово Сегменты линеек объединяются Прямоугольники разделяются
  • 15. Извлечение таблиц из неразмеченных PDF-документов Обнаружение таблиц • Необходимо найти область ограничивающую таблицу или выбрать список всех PDF-инструкций её вывода
  • 16. Извлечение таблиц из неразмеченных PDF-документов Распознавание структуры таблиц • Необходимо восстановить Линейки разграфки таблицы Структуру и содержание ячеек таблицы или
  • 17. Извлечение таблиц из неразмеченных PDF-документов Распознавание структуры таблиц • Шаг 1. Объединение текстовых блоков. Содержание одной ячейки = Один текстовый блок • Решение об объединении двух блоков: • Пробельное и межстрочное расстояние • Обычно гориз. или верт. проекции блоков внутри одной ячейки пересекаются • Обычно порядок вывода текста по крайней мере внутри одной ячейки совпадает с порядком его чтения • Обычно внутри ячеек нет линеек • Обычно внутри одной ячейки используется однообразное форматирование (шрифты, выравнивание)
  • 18. Извлечение таблиц из неразмеченных PDF-документов Распознавание структуры таблиц • Шаг 2. Раскройка пространства таблицы с помощью промежутков пробельного пространства 1. Выделение верт. промежутков • Первоначальное формирование гипотез о линейках основано на алгоритме Shigarov A., Fedorov R. Simple Algorithm for Page Layout Analysis. Pattern Recognition and Image Analysis. 2011. 21(2). 324-327 • Для исключения неправдоподобных гипотез используются “ad hoc” эвристики 2. Выделение гориз. промежутков по аналогии
  • 19. Извлечение таблиц из неразмеченных PDF-документов Распознавание структуры таблиц • Шаг 2. Раскройка пространства таблицы с помощью проекций текстовых блоков 1. Выделение столбцов • Столбцы выделяются по пересечениям горизонтальных проекций блоков • Проекции блоков предположительно охватывающих несколько столбцов не рассматриваются 2. Выделение строк по аналогии
  • 20. Извлечение таблиц из неразмеченных PDF-документов Две реализации Реализация 1 Реализация 2 Пробельное расстояние = W*K1, где W — ширина пробела левого объединяемого текстового блока K1 — коэффициент, K > 0 если D < T1, тогда = W, иначе = W*K, где D — модуль расстояния между двумя объединяемыми текстовыми блоками T1 — порог, T1 > 0 W — ширина пробела левого объединяемого текстового блока K — коэффициент 0 < K < 1 Межстрочное расстояние = K2*H, где K2 — коэффициент, K > 0 H — высота текстового блока =T2, где T2 — порог, T2 > 0 Основные эвристики Порядок вывода текста, линейки, однообразные шрифты, пересечение гориз. или верт. проекций Порядок вывода текста, линейки, однообразные шрифты, y2-координаты совпадают или гориз. проекции пересекаются Раскройка пространства таблицы Промежутки пробельного пространства Связность текстовых блоков “Ad hoc” эвристики Символы списков, пробелы слева и справа, висячие заголовки Символы списков и заполнители, пробелы слева и справа
  • 21. Извлечение таблиц из неразмеченных PDF-документов Система экспериментальной оценки • Система оценки методов распознавания таблиц Göbel, Hassan, Oro & Orsi (2012)*, http://tamirhassan.com/competition.html * Göbel M., Hassan T., Oro E. & Orsi G. A methodology for evaluating algorithms for table understanding in PDF documents. In Proc. of the ACM symposium on Document engineering. 2012. • ICDAR2013 Table Competition**, впервые проведено соревнование методов извлечения таблиц из документов ** Göbel M., Hassan T., Oro E. & Orsi G. ICDAR 2013 Table Competition. In Proc. of the 12th Int. Conf. on Document Analysis and Recognition. 2013 • Nurminen (2013), реализация методологии Göbel et al. (2012) с небольшими отличиями системы штрафов Рисунок из работы Göbel et al. (2012)* Оригинальная таблица Некорректно распознанная таблица
  • 22. Извлечение таблиц из неразмеченных PDF-документов Настройка коэффициентов в Реализации 1 • Результаты для 2500 тестов на соревновательном наборе “ICDAR2013 Table Competition” K1 K2 F-мера max(F-score) = 0,9189 при K1=0.9 и K2=1.0
  • 23. Извлечение таблиц из неразмеченных PDF-документов Экспериментальная оценка • Оценивается точность и полнота распознавания отношений между соседними ячейками • Полнота = корректные отношения соседства / все отношения соседства • Точность = корректные отношения соседства / обнаруженные отношения соседства • Результаты получены на соревновательном наборе таблиц “ICDAR2013 Table Competition” с помощью реализации Nurminen (2013) методологии Göbel, Hassan, Oro & Orsi (2012) Оценки Реализация 1 Реализация 2 Полнота 91,57% 92,33% Точность 92,21% 94,99% F-мера 91,89% 93,64% Результаты экспериментальной оценки
  • 24. Анализ и интерпретация произвольных таблиц Доступная информация о произвольной таблице с разметкой Обычно мы знаем • Компоновку (строки, столбцы, ячейки) • Форматирование (шрифты, выравнивания, цвета и др.) • Текстовое содержание 24
  • 25. Анализ и интерпретация произвольных таблиц Остаётся восстановить семантические отношения 2. Пары вида вхождение-метка, метка-метка, метка-категория* * Терминология заимствована из работы Wang X. Tabular Abstraction, Editing, and Formatting, PhD Thesis. 1996 25 1. Пары вида ячейка-роль, где роль={вхождение, метка, категория} *
  • 26. Анализ и интерпретация произвольных таблиц Восстановленная семантика позволяет представить таблицу в реляционной форме В таком она может загружаться в реляционную базу данных известными ETL-средствами 26
  • 27. Анализ и интерпретация произвольных таблиц Основная идея Тогда • Можно использовать набор формальных правил, воссоздающих интерпретацию автора, для восстановления отсутствующих явно семантических отношений 27 Поскольку • Часто таблицы одного автора создаются в рамках одного набора правил компоновки и форматирования • Поэтому они разделяют общие свойства, отражающие его интерпретацию Синтез таблиц Анализ и интерпретация таблиц Нижняя часть рисунка взята с сайта http://www.cse.unsw.edu.au/~billw/cs9414
  • 28. Анализ и интерпретация произвольных таблиц Правила анализа и интерпретации таблиц • Могут выражаться на специализированном языке правил — CRL (http://cells.icc.ru/pub/crl/crl.dsl) или языке правил общего назначения — DRL (http://drools.org) • Могут исполняться в свободной системе Drools (http://drools.org) • Отображают доступные факты (компоновку, форматирование и содержание ячеек) в отсутствующие семантические отношения rule when Условия: выбор известных фактов (ячейки, метки, вхождение и категории) по заданным ограничениям then Действия: восстановление неизвестных фактов (вхождений, меток, категорий, пар вхождение-метка, метка-метка и метка-категория) end 28
  • 29. Анализ и интерпретация произвольных таблиц Таблица как набор фактов • Доступные факты • Ячейки c1=(cl=1,rt=1,cr=1,rb=2,text=null) c2=(cl=2,rt=1,cr=4,rb=1,text="Sent") c5=(cl=3,rt=2,cr=3,rb=2,text="FY2010") c8=(cl=1,rt=3,cr=5,rb=3,style.font.bold=true, text="Letters") c9=(cl=1,rt=4,cr=1,rb=4,text="EU") c24=(cl=1,rt=7,cl=1,rb=7,indent=4,text="Belgium") c26=(cl=3,rt=7,cl=3,rb=7,type=Type.NUMERIC,text="341.1") • Категории d1=(name="OPERATION", labels={"Sent","Received"}) d2=(name="YEAR", constraints={"FY200[0-9]", "FY201[0-6]"}) d3=(name="MAIL_TYPE", labels={"Letters","Parcels"}) d4=(name="COUNTRY", labels={"Afghanistan",...,"Zimbabwe"}) 29
  • 30. Анализ и интерпретация произвольных таблиц Таблица как набор фактов • Восстанавливаемые факты • Метки и пары метка-категория l1=(value="Sent", cell=c2, category=d1) l2=(value="2011", cell=c5, category=d2) l3=(value="Letters", cell=c8, category=d3) l4=(value="EU", cell=c9, category=d4) l5=(value="Belgium", cell=c24, category=d4) • Метки и пары метка-метка l4=(value="EU", cell=c9, category=d4, children={l5,...}) l5=(value="Belgium", cell=c24, category=d4, parent=l4) • Вхождения и пары вхождение-метка e1=(value="341.1", cell=c26, labels={l1,l2,l3,l4,l5}) 30
  • 31. Анализ и интерпретация произвольных таблиц Генерация реляционных таблиц • Восстановленные отношения позволяют представить таблицу в реляционной форме <entries>={1,2,3,4,5,6,7,8} <labels>={a1,a11,a12,a2,a21,a22,b1,b2} <categories>={A,B} <entry-label pairs>={(1,a11),(1,b1),(2,a12), (2,b1),(3,a21),(3,b1),(4,a22),(4,b1),(5,a11), (5,b2),(6,a12),(6,b2),(7,a21),(7,b2),(8,a22), (8,b2)} <label-label pairs>={(a11,a1),(a12,a1), (a21,a2),(a22,a2)} <label-category pairs>={(a1,A),(a11,A), (a12,A),(a2,A),(a21,A),(a22,A),(b1,B),(b2,B)} DATA A B 1 a1 | a11 b1 2 a1 | a12 b1 3 a2 | a21 b1 4 a2 | a22 b1 5 a1 | a11 b2 6 a1 | a12 b2 7 a2 | a21 b2 8 a2 | a22 b2 a11 a12 a21 a22 b1 1 2 3 4 b2 5 6 7 8 A B a1 a2 31 Произвольная форма Реляционная (каноническая) форма
  • 32. Анализ и интерпретация произвольных таблиц Очистка данных • Очистка от символов заполнителей, перечислений и сносок • {Income........, • Income, Income*, Income1} → Income • Приведение к стандартизированным значениям • {Москва, М., Мск, Moscow} → Москва • {Ирк. обл., Иркутская обл., Иркутская область, Икрутская область} → Иркутская область • Интерпретация значений в зависимости от контекста • Слово “FY” (финансовый год) может иметь разный смысл: в России начинается 1 января, в Великобритании — 1 апреля, в США — 1 октября • Обнаружение и исключение вычислимых (агрегированных) значений 2015 2016 Total Average 2016/2015 2 6 8 4 3
  • 33. Анализ и интерпретация произвольных таблиц Экспериментальная оценка Multi-row hierarchical layout Multi-column plain layout One-column hierarchical layout Multi-column & multi-row layout One-column plain layout Category name cells Row label cells Column label cells Entry cells Table regions One-column & one-row layout Multi-column & one-row layout One-row plain layout Multi-row plain layout 47,5% 47% 5,5% 100% 94,5% 5,5% 65,5% 26% 8,5% 33 • TANGO-200 все таблицы • TANGO-SUB все, кроме таблиц с одноколонной иерархической компоновкой строчных меток Виды компоновок таблиц TANGO • Тестовый набор данных проекта TANGO из 200 таблиц (http://tango.byu.edu/data)
  • 34. Анализ и интерпретация произвольных таблиц Экспериментальная оценка • Оценивается абсолютная полнота и точность восстановления таблиц (только отношения ячейка-роль, вхождение-метка, метка-метка) • Оценка выполняется на основе консенсуса 3 экспертов 34 TANGO-200 TANGO-SUB Таблиц 200 105 CRL-правил 16 13 Полнота 87% (174/200) 95,2% (100/105) Точность 88,5% (177/200) 95,2% (100/105) F-мера 87,74% 95,2% Экспериментальные результаты Абсолютная полнота для таблицы = 1, если абсолютно все отношения исходной таблицы восстановлены = 0, в противном случае Абсолютная точность для таблицы =1, если абсолютно все восстановленные отношения являются отношениями исходной таблицы = 0, в противном случае Полнота полностью восстановленные таблицы / всего таблиц Точность точно восстановленные таблицы / всего таблиц
  • 35. Приложения SSDC: Трансформация произвольных электронных таблиц Excel к реляционной форме (Приложение командной строки) • Исходные коды опубликованы под свободной лицензией Apache License 2.0 и доступны по адресу https://github.com/shigarov/cells-ssdc Canonical form: ______________________________________ | DATA| First Name| Last Name| YEAR| |====================================| | c | gabriel | stone | 2016 | | c | gabriel | stone | 2015 | | b | vicky | vega | 2016 | | b | vicky | vega | 2015 | | c | sammy | castro | 2016 | | c | sammy | castro | 2015 | | b | kayla | jennings | 2016 | | b | kayla | jennings | 2015 | | a | becky | robinson | 2016 | | a | becky | robinson | 2015 | Number of cells: 19 not empty cells: 19 labels: 12 entries: 10 label-label pairs: 0 entry-label pairs: 30 category-label pairs: 12 categories: 3 label groups: 0 Current rule firing time: 7 Command line parameters: Excel file: “.examplesT011.xlsx" Sheets in processing: ALL DRL file: ".examplesT011.dslr" Output directory: ".examplesres" Debugging mode: deactivated
  • 36. Приложения WebSSDC: Трансформация произвольных электронных таблиц Excel к реляционной форме (веб-сервис) http://cells.icc.ru/ssdc
  • 37. Приложения WebPDFTE: Извлечение таблиц из неразмеченных PDF-документов (веб-сервис)* http://cells.icc.ru/pdfte * В текущей версии доступно только распознавание структуры
  • 38. Сравнение с другими и новизна Типы таблиц Фиксируются (1-5 широко-распространенных типов) Программируются Методы основанные на знаниях (Онтологии, Глобальные таксономии) Предметно-независимые методы (Компоновка, форматирование, текст) Мы (2013-16) • Оригинальный язык (CRL) • Компоновка, форматирование, текст и подключаемые словари • Относительная адресация ячеек • Электронные таблицы, PDF-таблицы (реализуется) • Очистка данных (реализуется) Hung (2011) • Оригинальный язык (TranSheet) • Компоновка и текст • Абсолютная адресация ячеек • Электронные таблицы 38 Govindaraju (2013) • PDF-таблицы Chen&Cafarella (2013-14) • электронные таблицы Tijerino (2005) Embley (2005) WangJ (2012) • Веб-таблицы (HTML) Pivk (2005-07) Gatterbauer (2007) Kim (2008) Embley, Nagy, Seth & Krishnamoorthy (2014-16) • Веб-таблицы (HTML) Извлечение информации Интеграция данных
  • 39. Ссылки • Chen, Z., Cafarella, M.: Integrating spreadsheet data via accurate and low-effort extraction. In: Proc. 20th ACM SIGKDD Int. Conf. on Knowledge Discovery and Data Mining. pp. 1126–1135. ACM, New York, NY, USA (2014) • Embley, D.W., Krishnamoorthy, M.S., Nagy, G., Seth, S.: Converting heterogeneous statistical tables on the web to searchable databases. Int. J. on Document Analysis and Recognition. pp. 1–20 (2016) • Embley, D., Tao, C., Liddle, S.: Automating the extraction of data from HTML tables with unknown structure. Data & Knowledge Engineering 54(1), 3–28 (2005) • Gatterbauer, W., Bohunsky, P., Herzog, M., Krpl, B., Pollak, B.: Towards domainindependent information extraction from web tables. In: Proc. 16th Int. Conf. On World Wide Web. pp. 71–80. New York, US (2007) • Govindaraju, V., Zhang, C., Ré, C.: Understanding tables in context using standard NLP toolkits. In Proc. of the 51st Annual Meeting of the Association for Computational Linguistics. (2013) • Hung, V., Benatallah, B., Saint-Paul, R.: Spreadsheet-based complex data transformation. In: Proc. 20th ACM Int. Conf. on Information and Knowledge Management. pp. 1749–1754. CIKM ’11, ACM, New York, NY, USA (2011) • Kim, Y.S., Lee, K.H.: Extracting logical structures from html tables. Computer Standards & Interfaces 30(5), 296–308 (2008) • Pivk, A., Cimiano, P., Sure, Y., Gams, M., Rajkoviˇc, V., Studer, R.: Transforming arbitrary tables into logical form with tartar. Data & Knowledge Engineering 60(3), 567–595 (2007) • Tijerino, Y., Embley, D., Lonsdale, D., Ding, Y., Nagy, G.: Towards ontology generation from tables. World WideWeb: Internet and Web Information Systems 8(3), 261–285 (2005) • Wang, J., Wang, H., Wang, Z., Zhu, K.Q.: Understanding tables on the web. In: Proc. of the 31st Int. Conf. on Conceptual Modeling. pp. 141– 155. ER’12, Springer-Verlag, Berlin, Heidelberg (2012)
  • 40. Ссылки на наши работы • Shigarov A.O. Table understanding using a rule engine. Expert Systems with Applications. 2015. 42(2), 929-937. • Shigarov A. Rule-Based Table Analysis and Interpretation. Communications in Computer and Information Science. Springer. 2015. Vol. 538. pp. 175-186. • Шигаров А.О., Бычков И.В., Парамонов В.В., Белых П.В. Анализ и интерпретация произвольных таблиц на основе исполнения CRL-правил // Вычислительные технологии. 2015. Т.20, №6. C. 87-112. • Шигаров А.О. Восстановление логической структуры таблиц из неструктурированных текстов на основе логического вывода // Вычислительные технологии. 2014. Т. 19, № 1. С. 87-99. • Шигаров А.О., Бычков И.В., Ружников Г.М., Хмельнов А.Е., Федоров Р.К. Система трансформации таблиц // Информационные технологии и вычислительные системы. 2013. № 3. С. 15-26.
  • 41. Продолжающиеся исследования • Извлечение таблиц из неразмеченных PDF-документов • Обнаружение таблиц • Комплексная экспериментальная оценка • Анализ и интерпретация произвольных таблиц • Очистка данных в процессе понимания таблиц • Концептуализация меток • Комплексная экспериментальная оценка • Приложения • Веб-сервис извлечения таблиц из неразмеченных PDF-документов • Веб-сервис трансформации произвольных таблиц к формату Google Charts (https://developers.google.com/chart)
  • 42. Перспективные исследования • Системы оценки извлечения таблиц из PDF-документов • Системы оценки анализа и интерпретации произвольных таблиц • Языковые и визуальные средства разработки цепочек трансформации табличных данных • Инструментальные платформы и утилиты извлечения информации из произвольных таблиц (особенно PDF) • Инструментальные платформы интеграции неструктурированных данных из произвольных таблиц (особенно Excel)
  • 43. Спасибо Презентация доступна на SlideShare.net http://www.slideshare.net/shig Алексей Шигаров shigarov@icc.ru http://cells.icc.ru 43