Post reply

Note: this post will not display until it's been approved by a moderator.

Name:
Email:
Subject:
Message icon:

Verification:
Type the letters shown in the picture
Listen to the letters / Request another image

Type the letters shown in the picture:
√49 Напишите ответ строчными буквами:
«Сто одёжек, все без застёжек» — что это?:

shortcuts: hit alt+s to submit/post or alt+p to preview


Topic Summary

Posted by: gasyoun
« on: September 24, 2013, 10:55 »

В качестве корпуса можно взять http://opencorpora.org/?page=downloads, там есть части речи, но он очень маленький...

А большой это сколько? :)
Posted by: beaver
« on: March 6, 2013, 01:38 »

Задача называется part of speech tagging, она хорошо известна... Погуглите, там много найдётся.

Часто используюся статистические методы...

Например: берётся размеченный корпус, где каждому слову приписан тэг - его часть речи... И рассчитывается вероятность для каждого триграма по тегу q(t_n-2, t_n-2, t_n) (т.е. вероятность, сочетаний типа "глагол, глагол, глагол", "глагол, глагол, существительное", "глагол, прилагательное, глагол"... и так со всеми тегами) и вероятность e(w, t), что у конкретного слова w будет тег t.

Но сразу проблема: где взять тренировочный корпус для русского? :( В качестве корпуса можно взять http://opencorpora.org/?page=downloads, там есть части речи, но он очень маленький...
Posted by: Asteroth
« on: September 19, 2012, 22:55 »

Здравствуйте. Задача достаточно специфическая. Я программист, и ищу совета у вас.

Я хочу программным путем сделать алгоритм определения части речи заданного слова. Возможно кто сталкивался или знает нюансы по которым можно это определение как можно точнее.

Пока мысли были такие...
Прилагательные разделять по вхождению окончания  -ый -ай -ой и т.п.
Глаголы по -ать -ять и т.п.
Но так очень много слов будут не определены или ошибочно определены (это не так важно).

Точное определение части речи не столь важно, мне главное разграничить слова по важности (т.е. существительное, глагол, прилагательное и т.п.)

Здравствуйте! Я сейчас тоже занимаюсь написанием скрипта для определения части речи... но скрипт сейчас определяет не все слова, и иногда ошибается.
А как у Вас с этим? Может поделитесь идеей?
Спасибо!
Posted by: arseniiv
« on: February 28, 2010, 13:26 »

У нас очень омонимичные предлоги. Нужно значения слов учитывать.
Posted by: Phoenix
« on: February 28, 2010, 12:11 »

С частями речи немного разобрался. Теперь связи в предложениях...

Например:
На дереве растут листья
Листья с дерева
Дерево в листьях

Как я понял предлоги определяют принадлежность. Или еще есть способы определить? т.е. я пока думаю сделать анализ предлогов, что бы определить принадлежность одних существительных к другим.
Posted by: Евгений
« on: February 25, 2010, 20:04 »

Все морфологические анализаторы русского языка пользуются электрифицированным «Грамматическим словарём» А. А. Зализняка. Но такого морфологического анализатора, чтобы определял формы с нормальным КПД, не существует. Посмотрите на выдачу «с неснятой омонимией» в НКРЯ.
Posted by: Phoenix
« on: February 25, 2010, 19:59 »

Если разные формы, то вот ещё: зеваю — караваю. Вроде, до сих пор был один выход: словарь. Но вам тогда нужен будет словарь с кучей форм. Или попробовать по одной форме искать в словаре все возможные остальные. И тут придётся добавить мини-словарь, связывающий "совсем разные" формы: он — его — им — ... И т.д. с модификациями. (Мне кажется, сейчас вроде обычно так делают.)
О словарях я что то не подумал. Там по идее большая часть слов "распознана" может кому известны их системы распознавания? (т.к. все слова перебором не впишешь). Возможно есть свободные словари? с открытой базой слов...

Кстати, разбор на что-то типа ключевых слов или какой?
Я потом буду строить дерево зависимости от главных (слов) к зависимым (словам). Тем самым получая вложенную структуру, которая со временем будет описывать объект (главное слово) в полном объеме его возможных зависимостей.
Posted by: arseniiv
« on: February 25, 2010, 19:47 »

Точное определение части речи не столь важно, мне главное разграничить слова по важности (т.е. существительное, глагол, прилагательное и т.п.)
Даже тут уже плохо: кровать, магний... :what:

У меня в планах разбор предложений, книг и т.п.
Удачи вам и целеустремлённости!
Кстати, разбор на что-то типа ключевых слов или какой?

Если разные формы, то вот ещё: зеваю — караваю. Вроде, до сих пор был один выход: словарь. Но вам тогда нужен будет словарь с кучей форм. Или попробовать по одной форме искать в словаре все возможные остальные (а словарь с начальными формами). (Например, встретилось слово пароходом. Программа знает, что такой конец может быть как у типичных существительных (при том есть ещё слова в начальной форме — дом), так и прилагательных (розовом). Если слово не нашлось (а это не начальная форма) рограмма начинает перебирать, всё, что могло бы быть:
1. (сущ. в косв. падеже, в начальную форму его) пароход. Ура, нашли.
2. (сущ. в им. падеже) раз не найдено, значит, такого нету!
3. (прилаг. в косв. падеже, в н.ф.) *пароходый, *пароходий, *пароходой. Айяяй, не нашли.
4. (на худой конец откидывать будем буквы с конца) *пароходо, пароход. Но мы его нашли уже в первом варианте, сюда никогда не попадём здесь.
Способ 4 должен быть последним! Иначе дам превратится в да.
Если ничего вообще не нашлось (что маловероятно при наличии кучи служебных частей речи на разные буквы), оставим слово как есть и пометим непонятным.
Предупрежу ещё, что понять, где паро́́м, а где па́́ром, программа вряд ли сможет.) И тут придётся добавить мини-словарь, связывающий "совсем разные" формы: он — его — им — ... И т.д. с модификациями. (Мне кажется, сейчас вроде обычно так делают.)
Posted by: Phoenix
« on: February 25, 2010, 19:40 »

Слово должно быть задано только в начальной форме или в любой?

В любой, если будет решение для начальной, то тоже подойдет (как часть алгоритма). У меня в планах разбор предложений, книг и т.п.
Posted by: Евгений
« on: February 25, 2010, 19:36 »

Слово должно быть задано только в начальной форме или в любой?