Остання редакція: 23-03-2018
Тези доповіді
Математичний апарат рішення задачі типу добування текстових даних (text miming) передбачає використання інтелектуального аналізу даних і штучного інтелекту, в результаті чого буде отримана інформація з певних вибірок та колекція документів відформатованого належним чином тексту.
На даному етапі виникає перше завдання:
- отримання вхідного інформаційного вектора, що складається з одиниць природного мови, що отримується з i-ї вибірки (файлу).
Для вирішення цього завдання можна використовувати в будь-якій об`єктно-орієнтованій мові програмування, наприклад в Java, таких елементів:
a) серіалізацію (інтерфейс java.io.Serializable) - як механізм обміну та отримання даних
б) використання базового класу InputStream - представляє класи, які отримують дані з різних джерел: масив байтів; рядок (String); файл; канал (pipe): дані містяться з одного кінця і витягуються з другого, послідовність різних потоків, які можна об'єднати в одному потоці, інші джерела (наприклад, підключення до інтернету).
Наприклад, при серіалізації відбувається:
1) запис метаданих про клас асоційованим з об'єктом;
2) рекурсивний запис опису суперкласів, до тих пір поки не буде досягнутий java.lang.object;
3) після закінчення запису метаданих починається запис фактичних даних асоційованих з екземпляром, тільки цього разу починається запис з самого верхнього суперкласу;
4) рекурсивний запис даних асоційованих з екземпляром починаючи з найнижчого суперкласу.
Однак, мається один нюанс: серіалізація - процес збереження стану об'єкта в електронних даних; десеріалізація - це процес відновлення об'єкта. А робота з байтовими уявленнями природньої мови не завжди необхідна.
У практичних умовах інтелектуального аналізу піддаються текстові вибірки чіткої структури, які не вимагають байтового уявлення за винятком класичного алгоритму пошуку елементу в відсортованому масиві (векторі), який використовує дроблення масиву на половини - а це не є предметом даної бакалаврської роботи.
Слід враховувати, що класичний text mining (Data Mining) працює з базами або сховищами даних, а не електронними документами і корпусами тексту, тому немає необхідності опрацьовувати лінгвістичним процесором поля реквізитів документів (в них немає смислової інформації для mining).
Наступним етапом є:
- застосування методу машинного навчання і обробка природньої мови, тобто, отриманий вхідний інформаційний вектор, що складається з одиниць природньої мови, що отримується з i-ї вибірки (файлу) буде піддаватися безпосередньо інтелектуальному аналізу.
Реалізація штучного інтелекту (ШІ) можлива різними методами, наприклад:
- кластерним аналізом, який полягає в наступному:
Кластерний аналіз - багатовимірна статистична процедура, що виконує збір даних, що містять інформацію про вибірку об'єктів, і потім впорядковує об'єкти в порівняно однорідні групи. Далі однорідні групи обробляються з метою встановлення кількісних показників.
Завдання кластеризації належить до статистичної обробки, а також до широкого класу задач навчання без вчителя.
Загальноприйнятої класифікації методів кластеризації не існує, але можна виділити ряд груп підходів (деякі методи можна віднести відразу до декількох груп і тому пропонується розглядати дану типізацію як деяке наближення до реальної класифікації методів кластеризації):
- Імовірнісний підхід. Передбачається, що кожен даний об'єкт відноситься до одного з k класів;
- За допомогою байєсівського програмування, суть якого розглянемо на відомій моделі Байєса виявлення спаму.
Метою Байєсівської фільтрації спаму є усунення сміттєвих електронних листів.
Формулювання цього завдання досить проста. Електронні листи повинні класифікуватися по одній з двох категорій: не-спам і спам. Єдиною доступною інформацією для класифікації електронних листів є їх зміст: набір слів. Використання слів без прийняття до уваги їх порядку в реченні часто називають моделлю мішка слів.
Крім того, класифікатор повинен бути здатним адаптуватися до свого користувача і вчитися з досвіду. Починаючи зі стандартної початкової настройки, класифікатор повинен змінювати свої внутрішні параметри, якщо користувач не погоджується з його рішенням. Отже, він, буде адаптуватися до призначених для користувача критеріям відмінності між Не-спамом і спамом. Він буде покращувати власні результати, стикаючись з усе більшою кількістю класифікованих електронних листів.
Наступні змінні необхідні для написання цієї програми:
Spam: двійкова змінна, фальшива, якщо електронний лист не є спамом, чи істина в іншому випадку.
W0, W1, Wn-1, N - двійкові змінні.
Wn являє істину, якщо N-слово словника присутнє в уже згадуваному тексті. Після чого N+1 двійкові змінні сумуються по всьому тексту, по всій аналізованій фразі або елементів природньої мови.
Байєсова статистика для даного завдання потенційно може бути застосована.