Главное меню
Мы солидарны с Украиной. Узнайте здесь, как можно поддержать Украину.

Ответ

Обратите внимание: данное сообщение не будет отображаться, пока модератор не одобрит его.
Ограничения: максимум вложений в сообщении — 3 (3 осталось), максимальный размер всех файлов — 300 КБ, максимальный размер одного файла — 100 КБ
Снимите пометку с вложений, которые необходимо удалить
Перетащите файлы сюда или используйте кнопку для добавления файлов
Вложения и другие параметры
Проверка:
Оставьте это поле пустым:
Наберите символы, которые изображены на картинке
Прослушать / Запросить другое изображение

Наберите символы, которые изображены на картинке:

√36:
ALT+S — отправить
ALT+P — предварительный просмотр

Сообщения в этой теме

Автор gasyoun
 - сентября 24, 2013, 09:55
Цитата: beaver от марта  5, 2013, 23:38В качестве корпуса можно взять http://opencorpora.org/?page=downloads, там есть части речи, но он очень маленький...

А большой это сколько? :)
Автор beaver
 - марта 5, 2013, 23:38
Задача называется part of speech tagging, она хорошо известна... Погуглите, там много найдётся.

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

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

Но сразу проблема: где взять тренировочный корпус для русского? :( В качестве корпуса можно взять http://opencorpora.org/?page=downloads, там есть части речи, но он очень маленький...
Автор Asteroth
 - сентября 19, 2012, 21:55
Цитата: Phoenix от февраля 25, 2010, 18:29
Здравствуйте. Задача достаточно специфическая. Я программист, и ищу совета у вас.

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

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

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

Здравствуйте! Я сейчас тоже занимаюсь написанием скрипта для определения части речи... но скрипт сейчас определяет не все слова, и иногда ошибается.
А как у Вас с этим? Может поделитесь идеей?
Спасибо!
Автор arseniiv
 - февраля 28, 2010, 12:26
У нас очень омонимичные предлоги. Нужно значения слов учитывать.
Автор Phoenix
 - февраля 28, 2010, 11:11
С частями речи немного разобрался. Теперь связи в предложениях...

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

Как я понял предлоги определяют принадлежность. Или еще есть способы определить? т.е. я пока думаю сделать анализ предлогов, что бы определить принадлежность одних существительных к другим.
Автор Евгений
 - февраля 25, 2010, 19:04
Все морфологические анализаторы русского языка пользуются электрифицированным «Грамматическим словарём» А. А. Зализняка. Но такого морфологического анализатора, чтобы определял формы с нормальным КПД, не существует. Посмотрите на выдачу «с неснятой омонимией» в НКРЯ.
Автор Phoenix
 - февраля 25, 2010, 18:59
Цитата: arseniiv от февраля 25, 2010, 18:47
Если разные формы, то вот ещё: зеваю — караваю. Вроде, до сих пор был один выход: словарь. Но вам тогда нужен будет словарь с кучей форм. Или попробовать по одной форме искать в словаре все возможные остальные. И тут придётся добавить мини-словарь, связывающий "совсем разные" формы: он — его — им — ... И т.д. с модификациями. (Мне кажется, сейчас вроде обычно так делают.)
О словарях я что то не подумал. Там по идее большая часть слов "распознана" может кому известны их системы распознавания? (т.к. все слова перебором не впишешь). Возможно есть свободные словари? с открытой базой слов...

Цитата: arseniiv от февраля 25, 2010, 18:47
Кстати, разбор на что-то типа ключевых слов или какой?
Я потом буду строить дерево зависимости от главных (слов) к зависимым (словам). Тем самым получая вложенную структуру, которая со временем будет описывать объект (главное слово) в полном объеме его возможных зависимостей.
Автор arseniiv
 - февраля 25, 2010, 18:47
Цитата: Phoenix от февраля 25, 2010, 18:29
Точное определение части речи не столь важно, мне главное разграничить слова по важности (т.е. существительное, глагол, прилагательное и т.п.)
Даже тут уже плохо: кровать, магний... :what:

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

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

В любой, если будет решение для начальной, то тоже подойдет (как часть алгоритма). У меня в планах разбор предложений, книг и т.п.
Автор Евгений
 - февраля 25, 2010, 18:36
Слово должно быть задано только в начальной форме или в любой?