Author Topic: Разбиение фразы на словосочетания  (Read 130 times)

0 Members and 1 Guest are viewing this topic.

Offline 1nt3g3r

  • Newbie
  • Posts: 1
  • Gender: Male
Здравствуйте!

Меня уже месяц мучает тема - как програмно разбить фразу на смысловые словосочетания? Обьясняю на примере.

У нас есть фраза - "Корова дает молоко каждый день". Допустим, мы хотим найти все трехзначные словосочетания из этой фразы. Мы получим что-то вроде:

1) "корова дает молоко"
2) "корова дает каждый"
3) "корова дает день"
4) "дает молоко каждый"
...
N) "молоко день корова"

Я просто взял все возможные перестановки слов,  и получил набор словосочетаний. Легко заметить, что большинство из них неправильные ("молоко корова день").

Вопрос - как бы вы отсеяли такие некорректные словосочетания? Как определить, что словосочетание некорректно? То есть, человек видит, что это ерунда какая-то, но как формально определить, что словосочетание не несет смысла?

Offline Awwal12

  • Super Moderator
  • *
  • Posts: 49747
  • Gender: Male
Грамматически "корова даёт день" ничуть не менее корректно, чем "корова даёт молоко". Выражение абсолютно грамматично - оно просто бессмысленно. Но никакая программа не сможет отличить осмысленные выражения от бессмысленных - для этого нужен уже искусственный интеллект, понимающий выражения (разумеется, в контексте).

Что касается отсева неграмматичных выражений, то для этого ваша программа должна включать в себя полный словарь языка, включающий для каждого слова все грамматические формы и исчерпывающую модель управления, а помимо такого словаря - ту или иную формальную модель синтаксиса. Тот факт, что автоматические переводчики в наши дни сплошь и рядом порождают неграмматичные предложения, уже должен вам намекать, что в достаточной мере эту задачу тоже никто пока не решил (основная загвоздка в синтаксисе).
Фашиствующий имперец, асексуал и многожёнец, татарофоб, заслуженный функционер РПЦ. Слушает радио "Радонеж" и терпеть не может счастливых людей.

"Да здравствуют ДОЯРКИ!! Потому что доярки - это раса сверхчеловеков. За ними будущее планеты. Они переживут даже атомную войну, потому что доярки вечны, ибо хтоничны. И дадут потомство, которое тоже будет доярами и доярками. Ура, товарищи!.." (c) Awwal12

 

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Note: this post will not display until it's been approved by a moderator.
Name: Email:
Verification:
Type the letters shown in the picture
Listen to the letters / Request another image
Type the letters shown in the picture:
√49 Напишите ответ строчными буквами:
«Сто одёжек, все без застёжек» — что это?: