Програмна інженерія
Програмна інженерія
Дослідження методів і алгоритмів визначення тональності природно-мовного тексту
Text.ru
Antiplagiat.ru
Advego Plagiatus
Etxt Антиплагіат
За останні кілька років кількість інформації в світі зросло. Кожен день з'являється більше і більше інформації (Рисунок 1). Для зберігання інформації використовують різні засоби: книги, журнали, мережа Інтернет. Для знаходження корисної інформації з такої величезної кількості джерел необхідно її сортувати, вивчати.
На сьогоднішній день не завжди є час для того, щоб її впорядкувати, вибрати ту, яка дійсно важлива. Для таких цілей можна використовувати комп'ютери в якості детекторів характеристик інформації: тональність тексту, обсяг, ступінь унікальності і так далі. У магістерській роботі пропонується розробити програму на C # для визначення тональності тексту засобами Text Mining, модернізуючи при цьому стандартні алгоритми, а також доповнюючи алгоритм механізмами для визначення інших характеристик тексту, наприклад, помилок.
Ця тема є актуальною задачею, так як далеко не всі кошти Text Mining вміють визначати тональність тексту, а також і деякі інші характеристики тексту одночасно. Більш того, коштів за визначенням тональності тексту майже немає.
Правильне визначення тональності тексту дозволяє захистити користувача від прочитання літератури, яка є депресивно налаштованої, що призведе до зіпсованому настрою.
Метою дослідження є:
Основні завдання дослідження:
Об'єкт дослідження : Визначення тональності тексту.
Предмет дослідження : Ефективність методів визначення тональності тексту.
В рамках магістерської роботи планується отримання актуальних наукових результатів за наступними напрямками:
Для експериментальної оцінки отриманих теоретичних результатів і формування фундаменту наступних досліджень, як практичних результатів планується розробка настроюється і функціональної системи за визначенням деяких характеристик тексту:
заводнённостітексту;
Планується, що дана система буде мати:
Розглянемо основні поняття, які необхідно розуміти для визначення тональності тексту, слідом розглянемо два підходи (алгоритму) для визначення тональності тексту, розглянемо засоби, які використовують алгоритми Text Mining.
Text Mining – це напрямок в штучному інтелекті, метою якого є отримання інформації з колекцій текстових документів, які є практичними на практиці з точки зору машинного навчання і обробки природної мови [2].
Ключовими групами завдань є:
Важливо розуміти, що таке категоризація документів.
Категоризація документів – це вибір документів з одного або кілька груп (клас, кластер) зі схожими текстами (наприклад, по темі або стилю). Категоризація може відбуватися як за участю людини, так і без нього.
В першому випадку, якщо говорити про класифікаційних документах, система повинна класифікувати документи вже за певними класами. Так що користувач повинен надати системі все класи і зразки документів, належать до цих класів [3].
Другий випадок категоризації називається кластеризацией документів. А також сама система повинна визначати набір кластерів, яким потрібно вчити без вчителя. У цьому випадку користувач повинен повідомити кількість кластерних систем, які слід використовувати для збору атрибути процесу [4].
Text Mining застосовується в багатьох областях науки кожен день. з'являються нові можливості. Як мінімум, Text Mining використовується в область безпеки і допомагає аналізувати текст новинних сайтів, а в програмне забезпечення досліджує технології аналізу тексту, щоб майбутня автоматизація процесів аналізу та відновлення. Також Text Mining можна використовувати в комерційних цілях [5].
Основні етапи Text Mining (Рисунок 2):
Тональність – це емоційне ставлення автора висловлювання до будь-який об'єкт, виражений в тексті. Цей об'єкт може бути об'єкт реального світу, процес, властивість, атрибут, подія [7].
Тональний аналіз тексту – це клас методів контент-аналізу (аналізу даних) в комп'ютерній (обчислювальної) лінгвістики, призначених для автоматичного пошуку в текстах емоційно забарвленої лексики і думки авторів щодо об'єкта, які обговорюються в тексті [8].
Основними завданнями аналізу тональності є:
Оцінку тональності можна задавати наприклад, у відсотках (%).
Таким чином тональність може бути:
Так само може бути:
Вибір варіанту оцінки залежить від реалізації. У другому випадку все негативні слова і пропозиції будуть віднімати загальну оцінку тексту, позитивні додавати, а нейтральні нічого не змінювати.
Існує безліч методів визначення тональності тексту, існує багато бібліотек для різних мов програмування. Усе методи і бібліотеки мають свої переваги і недоліки.
Розглянемо простий приклад роботи даної моделі для розуміння.
Припустимо, ми маємо пропозицію:
Тепер, ігноруючи знаки пунктуації та регістр (дані кроки повинна виконувати бібліотека), слідом провівши лінгвістичну обробку тексту, ми можемо виявити за пропозиції безліч слів:
много,
люд,
в,
этом,
зал,
я,
тоже,
в,
зал,
я,
огорчиться];
Також іноді є
сенс прибрати слова, нічого не значущі в мові, наприклад, англійське слово
the
, так як вони не впливають на оцінку.
Наступним кроком необхідно порахувати кількість входжень однакових слів у реченні (таким чином ми спростимо швидкість роботи програми: не буде необхідності запам'ятовувати кожне слово окремо, хоча іноді це і може привести до нових результатів при зміненої реалізації). Уявімо результат цього кроку у вигляді формату JSON:
много:1,
люд:1,
в:2,
этом:1,
зал:2,
я:2,
тоже:1,
огорчиться};
Як видно, слова в векторі (масиві) – це унікальні слова тексту, який аналізується. Тому даний вектор можна назвати словником (в нього поміщаються тільки унікальні значення, але з урахуванням кількості). Якщо говорити мовою множин, вектор тексту буде дорівнює об'єднанню (сумою) векторів пропозицій, але з урахуванням кількості (кратності).
Дана модель використовується в основному для вилучення (parsing)
інформації з тексту. Після цього етапу є кілька варіантів того, що
можна дізнатися про текст. Наприклад, найпростішим варіантом є
вилучення самого зустрічається слова або, наприклад, визначення
відсотка водності
тексту, але нас цікавить на даний момент визначення
тональності.
Наступним кроком для визначення тональності нам необхідно використовувати (підключити до системи) словники, в яких будуть міститися оцінки тональності для більшості слів, в нашому випадку росіян. Саме від словника і залежить як саме варто інтерпретувати оцінку тональності. У більшості випадків словники також містять не тільки оцінку тональності слова, а й інші характеристики для слів. Залежно від словника, а також від зв'язку слів в ньому застосовуються різні підходи [9].
Модель Bag-of-words ( Мішок слів
) – це спрощене уявлення,
що використовується при обробці природної мови і пошуку інформації. В
цієї моделі текст (такий як пропозиція або документ) представлений як
мішок
(мультімножество) його слів, ігноруючи граматику і навіть порядок
слів, але зберігаючи при цьому множинність [10].
Модель зазвичай використовується в методах класифікації документів, де частота входження кожного слова використовується в якості опції для навчання класифікатора.
Часто модель зустрічається у вигляді матриці, в якій рядки відповідають одному тексту, а стовпці – це слова, включені в нього. Усе ці слова у відповідному документі [11].
При цьому підході (методі) словник представляє з себе слова і оцінки тональності до кожного з них.
Наприклад, нехай в нашому підключеному словнику будуть оцінки тональності у наших слів, представлені в таблиці 1.
Слово | Оцінка тональності |
---|---|
много | 0,01 |
люд | 0,01 |
в | 0 |
этом | 0 |
зал | 0 |
я | 0,01 |
тоже | 0,01 |
огорчиться | -0,02 |
В нашому представленому випадку, оцінка тональності вказує на
скільки відсотків збільшується емоційне забарвлення тексту (оцінка з
знаком +
збільшує загальну оцінку текст в позитивну частину, а 0 – нічого
не змінює в оцінці тексту, оцінка зі знаком -
веде текст до негативної
оцінці тональності).
Після підключення словника необхідно виконати порівняння слів і порахувати загальну оцінку. У нашому випадку, якщо використовувати такий словник, то спочатку оцінка 0,5 – нейтральна (50%).
Також для простоти в словнику часто у кожного слова є індекс, їх
вставляються замість слів у векторі. Таким чином легше порівнювати слова.
Виконуємо рахунок ( 0
не вважаємо):
Таким чином видно, що наш текст є позитивним
по
тональності. Однак слід також врахувати, що дана оцінка є не
точної (об'єктивної). Для більш точної оцінки потрібні більш точні словники.
Повний алгоритм із застосуванням Bag-of-words в графічному вигляді
представлений на рисунку 3 [9].
Роблячи висновки, можна сказати, що модель bag-of-words є досить простою моделлю для визначення характеристик тексту.
Переваги:
Недоліки:
людиі
человек– різні слова, не враховується контекст).
Word2Vec – це загальна назва для набору моделей на основі штучних нейронних мереж, призначених для отримання векторних уявлень слів на природній мові. Він використовується для аналізу семантики природних мов, заснованої на розподільчій семантиці, машинному навчанні та векторному поданні слів [12][13].
Даний підхід має на увазі наявність не просто слів і оцінок до них,
а ще й семантичних зв'язків між словами. семантично однакові
слова утворюють семантичні групи і порівняння виконується між
групою і словом з тексту. Наприклад, слова животные
і звери
семантично однакові і належать одній групі (гідність алгоритму). Однак тут же і
виникає проблема (нестача) даного поширеного методу: семантика схожих
слів буває різна. Наприклад, слова тёмный
і чёрный
в різних
пропозиціях матимуть як різну, так і однакову семантику [14][15].
В нашому випадку, даний підхід також порівнює все слова тексту, але з групами слів і обчислює оцінку.
Існує безліч засобів для виявлення (визначення) характеристик тексту, але не одне з коштів не отпределяет тональність. Розглянемо засоби, які вміють визначати відразу кілька характеристик тексту.
Text.ru
Даний сервіс перевіряє текст на унікальність, порівнюючи з різними джерелами. Унікальність – відсоток унікального тексту, який не збігся із джерелами. Також даний сервіс дозволяє перевірити текст на орфографію, виконати SEO-аналіз тексту [16].
Переваги сервісу:
Недоліки:
Antiplagiat.ru
Даний сервіс – це перша система для виявлення текстових запозичень. Вона надає 2 варіанти роботи: студентам і організаціям. При роботі з режимом студент, необхідно зареєструватися в системі, куди і будуть відправлені результати перевірки [17].
Переваги:
Недоліки:
Advego Plagiatus
Сервіс надає програму, за допомогою якої є можливість досконально (в повній мірі) перевірити текст на унікальність. Даний сервіс славиться тим, що дуже довго сканує текст на плагіат, на виході користувач отримує якісну оцінку (так як перевірка була досить довгої) [18].
Переваги:
Недоліки:
Etxt Антиплагиат
Це програма з пошуку плагіату в мережі і оцінці унікальності текстів. З її допомогою Ви зможете перевірити текст на унікальність швидко і ефективно. Дозволяє провести детальний аналіз унікальності тексту і визначити оригінальність статті в процентному співвідношенні. Показує неунікальні фрази, виділивши їх різними кольорами і дозволяє відразу відредагувати їх і відправити текст на повторну перевірку. [19].
Переваги:
Недоліки:
Розглянемо дослідження, котоире проводяться на світовому рівні в даній області за допомогою вивчення різних джерел (статті, реферати, курсові роботи і т.д.).
Наприклад, в статті Moshe Koppel, Jonathan Schler, Kfir Zigdon Determining an Author's Native Language by Mining a Text for Errors
розглядається визначення рідної мови шляхом пошуку помилок в тексті. Для вирішення даного завдання використовуються кошти DataMining. Стилістичні особливості тексту можуть бути використані для визначення рідної мови анонімного автора з високою точністю.
У статті Yuejin Xu, Noah Reynolds Using Text Mining Techniques to Analyze Students 'Written Responses to a Teacher Leadership Dilemma
розглядається методи інтелектуального аналізу тексту для аналізу письмових відповідей учнів на дилему лідерства вчителя. У даній статті також розглядаються засоби Text Mining. Метою цього дослідження було перевірити точність категорій, створених IBM SPSS Text Analytics for Surveys.
У статті Bing Liu Sentiment Analysis and Subjectivity
розглядаються взаємозв'язки і відмінності фактів і думок. Думки зазвичай являють собою суб'єктивні висловлювання, які описують почуття, оцінки або почуття людей по відношенню до об'єктів, подій та їх властивостями. Факти – це об'єктивні вираження про сутності, події і їх властивості.
У статті Bo Pang, Lillian Lee A Sentimental Education: Sentiment Analysis Using Subjectivity Summarization Based on Minimum Cuts
вивчається аналіз тональності спрямований на виявлення точки зору (точок), що лежать в основі діапазону тексту. Щоб визначити полярність настроїв, пропонується новий метод машинного навчання, який застосовує методи категоризації тексту тільки до суб'єктивних частинам документа.
У статті Emmanuel Dufourq, Bruce A. Bassett Automated Classification of Text Sentiment
розглядається автоматичне визначення тональності з використанням двох нових генетичних алгоритмів Genetic Algorithms (GAs). Ці алгоритми дізнаються: чи є слова в тексті тонкими або підсилюють і їх відповідну величину. Цей підхід створює словник настроїв. Результати показують, що пропонований підхід зміг перевершити кілька алгоритмів аналізу громадського та / або комерційного настрою.
У статті Omri Koshorek Adir Cohen Noam Mor Michael Rotman Jonathan Berant Text Segmentation as a Supervised Learning Task
формулюється сегментація тексту як проблема контрольованого навчання і представляється великий новий набір даних для сегментації тексту, який автоматично витягується і маркується з Вікіпедії. Більш того, ми розробляється модель сегментації на основі цього набору даних і показується, що вона добре узагальнюється на невидимий природний текст.
На національному рівні проводиться досить багато досліджень на цю тему для вирішення різних завдань, тому можна сказати, що дана задача є досить актуальною.
У статті А.С. Романова, М.І. Васильєвої, А.В. Куртукова, Р.В. Мещерякова Анализ тональности текста с использованием методов машинного обучения
наводяться результати дослідження методики аналізу тональності тексту з використанням методів машинного навчання, таких як метод опорних векторів, наївний Байєсівський класифікатор, методи випадкових дерев. Наводиться огляд досліджень, методів і програмних продуктів в області аналізу тональності тексту, описуються етапи моделювання процесу проведення експериментів і визначення тональності тексту, наводяться описи створених корпусів текстів і словників, а також отримані результати досліджень.
У статті А.Є. Єрмакова, С.Л. Кисельова Лингвистическая модель для компьютерного анализа тональности публикаций СМИ
висвітлюється досвід практичного вирішення завдання визначення тональності тексту по відношенню до заданого об'єкта, систематизуються засоби, що використовуються автором тексту для формування тонально пофарбованого образу об'єкта, і будується лінгвістична модель для виділення всіх складових цього образу, описується схема оцінки тональності позитив / негатив
з урахуванням тих місць, які займають в складі пропозицій тональні і нейтральні слова, засоби вираження заперечення і інверсії сенсу.
У статті А.Г. Пазельской, А.Н. Соловйова Метод определения эмоций в текстах на русском языке
розглядаються методи автоматичного визначення емоційної складової (тональності) в тексті і описується досвід здійснюваної в даний момент практичної реалізації системи для текстів ЗМІ російською мовою, в основі якої лежать словники лексичної тональності і набір комбінаторних правил об'єднання окремих слів і словосполучень. В роботі вперше запропонований метод визначення тональності, заснований на предікаціонних відносинах в пропозиції. У зв'язку з цим нами запропоновано класифікацію дієслів в залежності від їх емотивного впливу і місця розташування об'єкта тональності.
У статті В.В. Осокіна, М.В. Шегай Анализ тональности русскоязычного текста
в якості класифікатора використовується наївний байесовский класифікатор. Використовуються різні методи для відбору ознак, проводиться порівняння отриманих результатів з результатами класифікації англомовного тексту.
У статті Открытое тестирование систем анализа тональности на материале русского языка
(Н.В. Лукашевич, І.І. Четверкин) описаний досвід проведення відкритої оцінки методів аналізу російськомовних текстів за тональністю на базі семінару РОМІП в 2011 – 2012 роках. В рамках проведення доріжки було створено кілька навчальних колекцій, які тепер перебувають у вільному доступі. Наводиться огляд поточного стану справ в обробці оціночних текстів російською мовою, опис основних завдань, характеристик колекцій, а також заходів для вимірювання якості.
У статті Разработка системы анализа тональности текстовой информации
(В.В. Гаршина, К.С. Калабухов, В.А. Степанцов, С.В. Смотров) проаналізовані підходи для автоматичного визначення тональності текстових даних, проведений порівняльний аналіз методів і алгоритмів машинного навчання для вирішення задачі класифікації тональності тексту, наводиться опис розробленого програмного забезпечення для виділення тональності текстових даних, що реалізує підхід на основі методу машинного навчання з учителем з оптимальним набором параметрів для класифікації.
У статті Использование синтаксиса для анализа тональности твитов на русском языке
(Ю.В. Адаскіна, П.В. Паничева, А.М. Попов) Представлений підхід до вирішення завдання аналізу тональності в рамках тестування SentiRuEval – відкритого змагання систем аналізу тональності російською мовою. Описаний алгоритм був застосований в доріжці з аналізу тональності твітів про банки і телекомунікаційних компаніях. Для цих даних була розроблена і оцінена класифікація на три класи: позитивний, негативний і нейтральний.
У статті Entity Based Sentiment Analysis Using Syntax Patterns and Convolutional Neural Network
(Karpov IA, Kozhevnikov MV, Kazorin VI, Nemov NR) пропонується альтернативний метод вилучення суб'єктивної тональності в текстових повідомленнях, заснований на модифікованому методі, раніше запропонованому Мінгбо, в якому спочатку аналізується синтаксис, а потім зіставляємо тональність з об'єктом аналізу. Показуються два підходи до класифікації полярності настроїв: шаблони синтаксичних правил і сверточное нейронну мережу (CNN).
У статті Сентимент-анализ текста
(Звєрєва П. П.) досліджується емоційна оцінка тексту, зокрема емоційна оцінка текстів засобів масової інформації. Розглядаються такі поняття, як медіатекст, медіалінгвістіка, тональність (сентимент) тексту. Проводиться сентіментаналіз фрагментів друкованих статей одного з провідних видань США, витягнутих з корпусу методом текстологічного аналізу і ключові слова. Отримані в результаті сентимент-аналізу дані порівнюються з результатами анкетного опитування, проведеного серед групи респондентів.
У статті Применение сентимент-анализа текстов для оценки общественного мнения
(Посевкіна Р. В., Безсмертний І. А.) Описується підхід до оцінки емоційного забарвлення природно-мовних текстів на основі словників тональності. Запропоновано метод автоматичної оцінки громадської думки за допомогою сентимент-аналізу відгуків та обговорень опублікованих документів в мережі Інтернет, що базується на статистиці використання слів. Розроблено дослідний прототип програмної системи, що виробляє сентимент-аналіз природно-мовного тексту російською мовою на основі лінійної шкали.
В роботі Анализ тональности текстов на основе ДСМ-метода
(Вичегжанін С. В., Котельников Є. В.) розглядається аналіз тональності тексту на основі ДСМ-методу. Перевагою ДСМ-методу в порівнянні зі статистичними методами є прозорість і коректність процесу логічного висновку, хороша интерпретируемость генеруються гіпотез, відсутність необхідності великого числа прикладів для навчання.
В роботі Анализ тональности текстов с использованием нейросетевых моделей
(Нефедова Е. А., Мишенин А.Н.) розглянуто визначення тональності тексту за допомогою нейронних мереж (нейромережевих моделей).
На локальному рівні (в роботах магістрів) не було знайдено такий же завдання (визначення тональності тексту), проте були знайдені роботи, в яких вивчаються засоби Text Mining.
В роботі Разработка распределенного поискового робота
(Пранскевічус В. А.) вивчаються пошукові роботи, їх пристрій, а також їх переваги та недоліки і пропонується ефективна реалізація.
В роботі Методы и алгоритмы извлечения структурированных данных из текстов новостей
(Сари Н. А.) пропонується алгоритм для вилучення структурованих даних з новинних засобів, наводиться актуальність даного завдання, розглядаються реалізації на різних рівнях, а також пропонується реалізація алгоритму для вилучення даних з новин про науку.
В роботі Разработка и исследование алгоритмов для повышения эффективности интеллектуального анализа web-контента
(Арбузова О. В.) розглядаються алгоритми для отримання даних з web-контенту, вивчаються їхні переваги і недоліки, пропонується більш оптимізований, оптимальний алгоритм для виконання даного завдання.
В роботі Разработка и исследование алгоритма формирования семантического ядра веб-сайта на основе методов Data Mining
(Кісніченко Е. А.) розглядаються засоби Data Mining для реалізації поставлених цілей (створення алгоритму для формування семантичного ядра сайту). Передбачається, що даний алгоритм буде впроваджений в системи адміністрування сайтів або в засоби підтримки роботи SEO фахівців для підвищення повноти, точності і зниження часу розробки СЯ сайтів з динамічним контентом.
В роботі Разработка алгоритмического обеспечения интеллектуального модуля анализа эмоционального содержания естественно языковых сообщений блогов и форумов
(Прокаповіч А. А.) розглядаються алгоритми для визначення тональності тексту, наукова новизна визначення тональності тексту, а також пропонується специфічний алгоритм для пошуку емоційності в блогах і форумах.
Исследование методов и алгоритмов определения жанра литературных произведений на основе технологии Text Mining
(Сторожук Н. О.). Пошук семантичного подібності між текстами є серйозною проблемою для автоматичної обробки тексту. Необхідність пошуку відстані між документами виникає в різних завданнях, таких як виявлення плагіату, визначення авторства документа, пошук інформації, машинний переклад, формування тестів і завдань, автоматична побудова рефератів тощо. Пропонується реалізувати алгоритм для визначення літературного жанру російського тексту засобами Data Mining.
Як видно з прикладів, сервісів, які визначають тональність тексту майже немає, тому дана задача є актуальною, а для того, щоб сервіс (програма) мала більший інтерес, необхідно також реалізувати додаткові алгоритми для отримання характеристик тексту.
В даній роботі:
Також планується:
Робота ще не закінчена і планується, що буде готова к Детально 29 травня 2021 року. Повну інформацію про роботу можна отримати у розробника даної програми або у наукового керівника, консультанта.
Efficient visual search of videos cast as text retrieval(PDF) // IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 31, NO. 4. IEEE. pp. 591 – 605;
Distributional Structure// Word. 10 (2/3): 146 – 62. doi: 10.1080 / 00437956.1954.11659520.
And this stock of combinations of elements becomes a factor in the way later choices are made ... for language is not merely a bag of words but a tool with particular properties which have been fashioned in the course of its use;
Text.ru// https://text.ru/antiplagiat – Загл. з екрану;
АНТИПЛАГИАТ// https://www.antiplagiat.ru – Загл. з екрану;
ADVEGO// https://advego.com/plagiatus – Загл. з екрану;
Etxt Антиплагиат// https: // www .softportal.com / software-17702-etxt-antiplagiat.html – Загл. з екрану.