4710

Вивчення методів доступу та роботи з лексичним ресурсами

Лабораторная работа

Информатика, кибернетика и программирование

Мета роботи: Вивчення основ програмування на мові Python. Вивчення методів доступу та роботи з лексичним ресурсами. Семантичний словник англійської мови WordNet. Короткі теоретичні відомості При програмуванні часто необхідно частин...

Украинкский

2012-11-25

261 KB

14 чел.

Мета роботи:

  •  Вивчення основ програмування на мові Python.
  •  Вивчення методів доступу та роботи з лексичним ресурсами.
  •  Семантичний словник англійської мови WordNet.

Короткі теоретичні відомості

При програмуванні часто необхідно частину програми виконати (використати) декілька разів. Наприклад, потрібно написати програму, яка здійснює утворення множини з однини іменників і вона буде виконуватись в різних місцях програми. Швидше ніж повторювати той самий код декілька разів і більш ефективно і надійно організувати цю роботу через функцію. Функція - це програмна конструкція, яку можна викликати з одним або більше вхідними параметрами, і отримувати результат на виході. Визначаємо функцію, використовуючи ключове слово def далі потрібно дати назву функції і визначити вхідні параметри, після двокрапки записується тіло функції. Ключове слово return використовується для відображення значення, яке ми хочемо отримати на виході функції.

Лексичний ресурс або просто словник це набір слів тa/або словосполучень, які асоціюються з такою інформацією, як частина мови та опис значення. Лексичні ресурси є вторинними по відношенню до текстів і зазвичай створюються і вдосконалюються з використанням текстів. Наприклад, якщо визначити текст my_text тоді vocab = sorted(set(my_text)) побудує словник тексту  my_text,  word_freq = FreqDist(my_text)  визначить частоту кожного слова в тексті. vocab та word_freq – приклад простих лексичних ресурсів. Так само конкорданс дає інформацію про використання слів і ця інформація може бути використана при побудові словників.

WordNet, це семантично орієнтований словник англійської мови, подібний до традиційних тезаурусів але з більш багатою структурою. У WordNet слова групуються у набори синонімів – синсети, кожен із своїм визначенням і зв’язками з іншими синсетами. WordNet 3.0 розповсюджується разом з NLTK  і містить 155287 слів та 117659 синсетів. Хоча WordNet розроблявся для психолінгвістики - цей словник широко використовується в NLP та в задачах інформаційного пошуку.


                                                   
Хід роботи

1. Дослідити зв’язки голонім-меронім для іменників. Знайти іменники для демонстрації наступних зв’язків: member_meronyms(), part_meronyms(), substance_meronyms(), member_holonyms(), part_holonyms(), та substance_holonyms().

>>> from nltk.corpus import wordnet as wn

>>> wn.synset('university.n.01').member_meronyms()

[Synset('graduate_school.n.01')]

>>> wn.synset('nose.n.01').part_meronyms()

[Synset('nostril.n.01'), Synset('internasal_suture.n.01'), Synset('bridge.n.04'), Synset('nasal_cavity.n.01'), Synset('turbinate_bone.n.01'), Synset('ethmoidal_artery.n.01')]

>>> wn.synset('tree.n.01').substance_meronyms()

[Synset('heartwood.n.01'), Synset('sapwood.n.01')]

>>> wn.synset('student.n.01').member_holonyms()

[Synset('teacher-student_relation.n.01')]

>>> wn.synset('limb.n.01').part_holonyms()

[Synset('appendicular_skeleton.n.01')]

>>> wn.synset('iron.n.01').substance_holonyms()

[Synset('iron_ore.n.01'), Synset('steel.n.01')]

4. Здійснити аналіз словника вимов. Знайти скільки різних слів він містить. Який відсоток слів з цього словника можуть мати різну вимову?

5. Який відсоток синсетів іменників не мають гіпонімів? До всіх синсетів можна доступитися за допомогою wn.all_synsets('n').  

7. Модифікувати програму генерації випадкового тексту для виконання наступного: зберігати можливі наступні слова у списку та вибирати їх за допомогою random.choice() попередньо виконавши import random.

12. Полісемія - це явище коли одне слово має декілька значень ( іменник dog має 7 значень, кількість яких визначити можна як len(wn.synsets('dog', 'n'))). Знайдіть середнє значення полісемії для дієслів.

16. Використовуючи один з методів визначення подібності слів побудуйте відсортований по спаданню список значень подібності для наступних пар слів: monk-oracle, cemetery-woodland, food-rooster, coast-hill, forest-graveyard, shore-woodland, monk-slave, coast-forest, lad-wizard, chord-smile, glass-magician, rooster-voyage, noon-string.

>>> monk = wn.synset('monk.n.01')

>>> oracle = wn.synset('oracle.n.01')

>>> oracle.path_similarity(monk)

0.125

>>> cemetery = wn.synset('cemetery.n.01')

>>> woodland = wn.synset('woodland.n.01')

>>> cemetery.path_similarity(woodland)

0.1111111111111111

>>> food = wn.synset('food.n.01')

>>> rooster = wn.synset('rooster.n.01')

>>> food.path_similarity(rooster)

0.0625

>>> coast = wn.synset('coast.n.01')

>>> hill = wn.synset('hill.n.01')

>>> hill.path_similarity(coast)

0.20000000000000001

>>> forest = wn.synset('forest.n.01')

>>> graveyard = wn.synset('graveyard.n.01')

>>> forest.path_similarity(graveyard)

0.071428571428571425

>>> shore = wn.synset('shore.n.01')

>>> woodland = wn.synset('woodland.n.01')

>>> shore.path_similarity(woodland)

0.20000000000000001

>>> slave = wn.synset('slave.n.01')

>>> monk.path_similarity(slave)

0.20000000000000001

>>> coast.path_similarity(forest)

0.090909090909090912

>>> lad = wn.synset('lad.n.01')

>>> wizard = wn.synset('wizard.n.01')

>>> lad.path_similarity(wizard)

0.20000000000000001

>>> chord = wn.synset('chord.n.01')

>>> smile = wn.synset('smile.n.01')

>>> chord.path_similarity(smile)

0.090909090909090912

>>> glass = wn.synset('glass.n.01')

>>> magician = wn.synset('magician.n.01')

>>> glass.path_similarity(magician)

0.1111111111111111

>>> voyage = wn.synset('voyage.n.01')

>>> rooster.path_similarity(voyage)

0.041666666666666664

>>> noon = wn.synset('noon.n.01')

>>> string = wn.synset('string.n.01')

>>> noon.path_similarity(string)

0.058823529411764705

>>>

Висновок:

на даній лабораторній роботі я ознайомилася з методами доступу та роботою з лексичним ресурсами, семантичним словником англійської мови WordNet, поняттями функції та модуля, словником з позначенням мови, лексичними зв’язками та оцінкою подібності WordNet.


 

А также другие работы, которые могут Вас заинтересовать

72881. Экологические биотические факторы среды: антагонистические (хищничество, паразитизм, конкуренция), неантагонистические (симбиоз - сожительство, мутуализм – взаимный, комменсализм – сотрапезник) 64 KB
  Экологические биотические факторы среды: антагонистические хищничество паразитизм конкуренция неантагонистические симбиоз сожительство мутуализм взаимный комменсализм сотрапезник. Конкуренция это использование ресурсов пищи воды света пространства одним организмом который тем самым...
72882. Экологические факторы и их классификация 59.5 KB
  Любой организм в природе испытывает на себе воздействие самых разнообразных компонентов внешней среды. Факторы среды экологические факторы разнообразны имеют разную природу и специфику действия. Абиотические факторы неживой природы: а климатические условия освещенности температурный режим и т.
72883. Метаболические процессы в живых организмах 62 KB
  Все происходящие в организме преобразования вещества и энергии объединены общим названием метаболизм обмен веществ. Он обеспечивает рост развитие обновление биологических структур а также накопление энергии синтез макроэргов.
72884. Экологические проблемы АЭС. Охрана окружающей среды 65.5 KB
  Иллюзия о безопасности ядерной энергетики была разрушена после нескольких больших аварий в Великобритании США и СССР апофеозом которых стала катастрофа на чернобыльской АЭС. При этом в отношении чернобыльского выброса многое остается неизвестным и риск здоровью населения от аварийных...
72885. Экологические проблемы ГЭС и способы их решения 61 KB
  ГЭС выполняют различные функции в общей системе энергообеспечения. ГЭС сокращают потребность в газомазутными топливе использование которого в качестве сырья в других отраслях промышленности химии металлургии дает значительно больший экономический эффект.
72886. Вредные выбросы ТЭС и методы их снижения 62.5 KB
  Методы химической очистки газов от NOХ бывают: окислительные основанные на окислении оксида азота в диоксид с последующим поглощением различными поглотителями; восстановительные основанные на восстановлении оксида азота до азота и кислорода с применением катализаторов...
72887. Экологические проблемы при добыче и переработке твердого топлива 62.5 KB
  Эти прогнозные оценки исходят из экономически извлекаемых запасов угля на самом деле их значительно больше. Прогнозные запасы угля доступного к разработке оцениваются в 25 3 трлн. Если исходить из современной ежегодной мировой добычи угля примерно 3 млрд. тонн то его хватит на 1000 лет...
72888. Радиоактивный газ радон и правила защиты от его воздействия 60 KB
  Радон это инертный тяжелый газ в 75 раз тяжелее воздуха который высвобождается из почвы повсеместно или выделяется из некоторых строительных материалов например гранита пемзы кирпича из красной глины. Продукты распада радона радиоактивные изотопы свинца висмута...
72889. Биологическое действие продуктов радиоактивности. Нормирование ионизирующих излучений и способы защиты от них 68 KB
  Степень биологического влияния ионизирующего излучения зависит от поглощения живой тканью энергии и ионизации молекул которая возникает при этом. Под влиянием ионизирующего излучения в организме нарушаются функции кровотворних органов растет хрупкость и проницаемость сосудов...