Лаба 3

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКНІ
Факультет:
Прикладна лінгвістика
Кафедра:
Системи автоматизованого проектування

Інформація про роботу

Рік:
2014
Тип роботи:
Лабораторна робота
Предмет:
Комп’ютерна лінгвістика
Група:
ПРЛс
Варіант:
3

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» Кафедра «Системи автоматизованого проектування» Звіт до лабораторної роботи №3 «Вивчення бібліотеки прикладних програм NLTK, для опрацювання текстів природною мовою. Доступ та робота з корпусами текстів» з курсу «Комп’ютерна лінгвістика» одному або декількох текстах, або навпаки – дізнатися весь перелік текстів, які належать до певної категорії. Більшість корпусів текстів є лінгвістично анотованими, тобто містять різного типу розмітку – морфологічну, синтаксичну, семантичну; у них можуть бути виділені власні назви, вказані семантичні ролі і т.п. NLTK забезпечує способи доступу до багатьох корпусів і розповсюджується з цими корпусами або їх фрагментами. Якщо тексти в корпусі поділені на різні категорії (за жанром, тематикою, авторами), то можна побудувати частотні розподіли для кожної з категорій. Такі дані дозволяють досліджувати відмінності між жанрами. Умовний частотний розподіл – це набір частотних розподілів, кожен з яких відповідає певній «умові». Такою умовою може бути категорія тексту. Частотний розподіл визначає числові значення для кожної події (подіями можемо вважати вживання слів в тексті). Умовний частотний розподіл поєднує в пари кожну подію та умову. Замість обробки послідовності слів обробляються послідовності пар. Кожна пара відповідає шаблону (condition, event). Тоді як для класу FreqDist() вхідними даними є список, то для класу ConditionalFreqDist() вхідними даними є список пар. Інтерпретатор виконує оператори програми відразу після їх введення. Часто виникає потреба спочатку написати програму, яка складається з багатьох рядків, використовуючи текстовий редактор, а потім запустити її на виконання. Використовуючи IDLE, можна це зробити, відкривши нове вікно за допомогою пункту меню File, зберігши текст програми у файлі *.py і запустивши програму на виконання за допомогою команди Run Module пункту меню Run. У програмуванні часто потрібно частину програми виконати (використати) декілька разів. Щоб більш ефективно і надійно організувати таку роботу, використовують функцію. Функція – це програмна конструкція, яку можна викликати з одним або більше вхідними параметрами, і отримувати результат на виході. Визначаємо функцію, використовуючи ключове слово def, далі потрібно дати назву функції і визначити вхідні параметри, після двокрапки записується тіло функції. Ключове слово return використовується для відображення значення, яке потрібно отримати на виході функції. Множина змінних і функцій, збережених у файлі, називаються в Python модулем. Множину пов’язаних між собою модулів називають пакетом. Програма обробки корпуса Brown є прикладом модуля, а множина програм для роботи зі всіма корпусами є прикладом пакету. NLTK – це множина пакетів, яку називають бібліотекою. Тексти програм Варіант №3 3.3 Прочитайте тексти з корпусу State of the Union addresses використовуючи state_union модуль читання. Визначити частоту вживання слів men, women, people в кожному з документів. Як змінилася частота вживання цих слів з часом?.  3.5 Виберіть пару текстів і дослідіть відмінності між ними (кількість оригінальних слів, багатство мови, жанр). Знайдіть слова, які мають різний зміст в цих текстах, подібно до слова monstrous в Mobbrowny Dick та у Sense and Sensibility.  3.7 Напишіть програму для знаходження всіх слів у корпусі Brown, які зустрічаються не менш ніж три рази.  3.8 Напишіть програму генерації таблиці відношень кількість слів/кількість оригінальних слів для всіх жанрів корпуса Brown. Проаналізуйте отримані результати та поясніть їх.  Перше числове значення позначає кількість слів у певному жанрі, друге значення – кількість оригінальних слів, а третє – відношення загальної кількості слів до кількості оригінальних слів. Останній параметр є заокругленим значенням. 3.11 Напишіть програму для створення таблиці частот слів для різних жанрів. Знайдіть слова, чия присутність або відсутність є характерною для певних жанрів (подібно до модальних дієслів).  3.12 Напишіть функцію word_freq(), яка приймає слово і назву частини корпуса Brown як аргументи і визначає частоту слова в заданій частині корпуса.  Висновок На цій лабораторній роботі я вивчив методи доступу до різних корпусів текстів, а також ознайомився з класом ConditionalFreqDist. Крім того, навчився використовувати можливості функцій для роботи у середовищі програмування Python. Для закріплення своїх навичок роботи з ними, виконав найпоширеніші та найпростіші задачі.
Антиботан аватар за замовчуванням

27.11.2014 04:11-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!