звіт2

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

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

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

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

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

Міністерство освіти та науки України Національний університет “Львівська політехніка” інститут комп’ютерних наук та інформаційних технологій Кафедра “Системи автоматизованого проектування” Звіт до лабораторної роботи № 2 з курсу «Комп’ютерна лінгвістика» на тему: «Вивчення бібліотеки прикладних програм NTLK, для опрацювання текстів природною мовою. Основи програмування на мові Python(частина 2)» Мета роботи: Вивчення основ програмування на мові Python. Ознайомлення з контрольними структурами та класом FreqDist. Короткі теоретичні відомості Програми, які згадувалися в лабораторній роботі №1, доволі прості, але дозволяють здійснювати операції над послідовностями слів і зокрема над кожним із них. Ми працювали зі списками, які містять декілька слів , але є потреба працювати з такими списками, які містять тисячі слів . Більшість мов програмування дозволяють виконання окремих блоків програми, коли використовуються умовні вирази або if твердження. If твердження, так як і For твердження - це керуючі (управляючі) структури, які керують виконанням програми. Вони вибирають, яка частина коду в тілі програми буде виконуватися. Стрічка з операторами If та For повинна завершуватися двокрапкою. Якщо потрібно, щоб щось відбувалося, коли умовний вираз не справджується, використовується оператор else в If – твердженні. Python підтримує такий тип даних, як словник, і він використовується для встановлення відповідності (відображення) між довільними типами даних. Визначимо pos як пустий словник і додамо до нього значення, які встановлюють частиномовну приналежність певних слів . Значення додаються із використанням квадратних дужок. Для автоматичного визначення слів, які є найбільш інформативними для текстів певного жанру або певної тематики спочатку інтуітивно виникає думка побудувати частотний список або частотний розподіл. Частотний розподіл вказує на частоту з якою в тексті зустрічається кожне зі слів. Такий частотний список називають розподілом тому, що він вказує яким чином загальна кількість слів розподіляється між словниковими статями (оригінальні слова) в тексті. Враховуючи що побудова частотних розподілів часто необхідна при обробці природної мови в NLTK реалізовано окремий клас FreqDist в модулі nltk.probability . Колокація - це словосполучення яке зустрічається дуже часто. Для того щоб побудувати колокації спочатку потрібно побудувати на основі тексту пари слів, або біграми. Виконання практичних завдань Варіант 2 [2] Створіть змінну sentence і присвойте їй значення ‘she sells sea shells by the sea shore’ та напишіть фрагмент програми для виведення на екран всіх сліва, довжина яких більша ніж 4 символи.  [6] Перегляньте результати виконання умовних виразів: ’row’ in ’brown’ та ’row’ in [’ brown’, ’cow’]. Напишіть програму для перевірки наявності в стрічці sent=’ ’colorless green ideas sleep furiously’ окремих слів та підстрічок.  [7] Виконати настіпні приклади і пояснити чому отримані різні результати (різні значення змінних) sorted(set([w.lower() for w in text1])) sorted([w.lower() for w in set(text1)])  Результати різні тому, що у змінній а спочатку відбувається пошук малих букв, а тоді виконується команда set, яка видаляє ті ж самі елементи. У змінній b спочатку виконується команда set (text1), яка видаляє ті ж самі елементи (S і s – це два різні елементи), а тоді повертається до маленьких літер, тому і величина більша. [12] Використайте вираз sum([len(w) for w in text1]) для знаходження середньої довжини слів в тексті.  [13] Перевірте виконання виразу set(sent3) < set(text1). Змініть аргументи функції. Результати поясніть.  У першому варіанті True тому, що набір унікальних елементів у реченні 3 менший ніж у всьому тексті 1. У другому варіанті все навпаки. [15] Побудуйте колокації для текстів №1 та №4. Результати порівняйте.   У двох прикладах наведено словосполучення,які зстрічаються дуже часто у поданих текстах. Колокації тексту 1 свідчать, що основна сюжетна лінія грунтується на подіях, які повязані з полюванням на великого кита. Колокації тексту 4 – це словосполучення, які найчастіше вживають американські президенти під час інавгурації. Самостійно:  За алфавітом посортовано слова в тексті 7, які складаються зі знаку ‘-‘ та слова ‘index’. Посортовано слова у тексті 3, які починаються з великої букви і складаються з більш ніж 10 символів. Посортовано слова у тексті 7, які не починаються з маленьких літер. Посортовано слова у тексті 2, які містять елементи ‘cie’ чи ‘cei’.  Знайдено найдовші слова у текстах 5 та 7. У тексті 4 немає слів довших за 20 символів. Висновок На лабораторній роботі ознайомилась циклами for та if , з функціями, якіпревіряють властивості окремих слів, з класом FreqDist для простих статистичних досліджень, частотним розподілом, з записом [f(w)for…] or [w.f() for…], який називвється “list comprehension” і є зручним у використанні. Навчилась будувати графічний частотний розподіл і графічний частотний розподіл з накопиченням, а також створювати біграми та колокації для текстів.
Антиботан аватар за замовчуванням

06.06.2013 21:07

Коментарі

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

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

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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