Hkey

Hkey
Рейтинг
222
Регистрация
30.09.2006
Интересы
Java
Maximalist:
да тут дело не только в морфологии...
тут она есть, а толку? нормальных текстов всё равно не получится (даже число (в данном случае: множественное и единственное) не всегда верно подставляет)

Ответьте честно сколько текстов вы перебирали, чтобы увидеть лажу?

На счет числа, это ошибка в базе (строковая замена не в той словоформе).

vtomas:
P.S. Похоже битву синонимайзеров вы проиграете, победа будет за "БАЗАМИ", морфология падет перед словарем во всех склонениях и падежах. :)

Нет, вы не правы. Словарь во всех склонениях:

1. Сложно составлять

2. Сложно редактировать

3. Он в некоторых случаях дает неправильное склонение (омонимия)

Hkey добавил 22.06.2009 в 07:35

Maximalist:

к примеру, у нас есть супер-пупер база
программа знает к данному слову есть 3 синонима, которые подходят на 100% (в одном тексте один синоним подходит на 100%, в другом второй, в третьем - третий... ), но вот какое из них выбрать для замены (ей-то всё равно)?

для того, чтобы она верно меняла слова, нужно анализировать текст до и после ;)

Для этого есть оператор контекста

действующий {вулкан|гейзер}%активный

действующий {макет|установка}%работающий

Для этого также есть исключения. Для этого также есть замены более высокого уровня.

aprok:
наверно пива перепил , но заумно как-то это все выглядит =)

WScript это расширение синтаксиса. Я могу дать ссылку, где расписывается одна детерминанта (одно правило) для снятия омонимии на 7 страниц. В WScript такая детерминанта занимает одну строку.

Вы можете как и обычно писать:

красивый%прекрасный

или так

красивый +женщина%+красавица

WScript позволяет накладывать дополнительные ограничения.

+результаты::<число==мн>%+данные

Либо использовать если синоним глагола управляет другим падежом.

Например в словарях синонимов для человека, есть падежные вопросы (например, кого, что). И эти падежные вопросы не совпадают у синонимов. Счас я немного занят. Чуть позже напишу пример.

Hkey добавил 20.06.2009 в 01:33

Вот пример. В русском есть много полумодальных глаголов. Например, "планировать". Планировал отдохнуть - это модальная форма синоним: "собирался". Планировал отдых - не модальная форма. Прошлый синоним не применим (собирался отдых - полный бред).

В других синомайзерах нужно писать что-то вроде


"планировать отдохнуть"%собираться отдохнуть
"планировала отдохнуть"%собиралась отдохнуть
...
"планировать найти"%собираться найти
"планировала найти"%собиралась найти
...
Итак далее для наиболее популярных глаголов.

В WSript это делается так.


+планировать W2::<часть_речи==инфинитив>%+собираться W2::<>

Для справки. Инфинитив - это базовая форма глаголов. Например, найти, вернуться, мочь, кинуть.... Именно в инфинитиве слова стоят после модальных глаголов.

Этот пример заменит планировать + СЛОВО_В_ИНФИНИТИВЕ на собираться + СЛОВО_В_ИНФИНИТИВЕ. Это заменит "планировал сделать" на "собирался сделать". Но не будет заменять "планировал дело" на "собирался дело".

vtomas:
И снова ни чего не понял. :)
Сделайте по пунктам:
1. здесь вводим слово (словосочетание);
2. здесь выбираем род (число или что еще)
3. жмем кнопку ...
4. получаем результат
Сделайте хоть скрин с цифрами и пояснениями к ним
+предпочитать W2::<часть_речи==сущ, число==мн,падеж==рд> W3::<часть_речи==сущ, число==мн,падеж==дт>%больше +любить W3::<падеж=рд> чем W2::<>
+предпочитать

ищем слово предпочитать в любой словоформе (предпочитать,предпочитал и других). Плюсик указывает, что мы его словоформу запомним и потом используем.

W2::<часть_речи==сущ, число==мн,падеж==рд>

произвольное слово с наложенными условиями (существительное, множественное число, родительный падеж). Порядок условий не важен. "часть_речи==сущ, число==мн,падеж==рд" тоже самое что и "падеж==рд, число==мн, часть_речи==сущ"

W3::<часть_речи==сущ, число==мн,падеж==дт>

произвольное слово с наложенными условиями (существительное, множественное число, дательный падеж)

больше +любить

выводим слово "больше". Выводим слово любить в той же словоформе, что и предпочитать. Можно было вместо плюсиков использовать любить::<согл_рпч=w1> согласовать по роду числу и падежу с первым словом. (Хотя лучше использовать плюсики). ссылки w1,w2 ... w9 и заглушки в правой части W1,W2 ... W9 говорят не о индексе заглушек в левой части, а о номере слова в исходном тексте. Как вы видите W1 не встречается в замене, но это не значит, что нельзя использовать w1.

W3::<падеж=рд>

выводим третье слово, преобразуя его падеж в родительный

W2::<>

выводим второе слово без изменений

Fitless:
Ого! Слишком сильное заявление.
1. В демке я читаемого текста, "СДЛ уровня", не вижу.
2. В личке отписывал, давненько уже.

1. В настройках есть такая опция как флаг. При флаге "-А -" каких-то лаж практически нет.

2. Сделаю добавление, через всплывающее меню.

vtomas:
Вот я тупой, что делать не пойму, сделайте хелп для не столь далеких, ну и другие поля как заполнять?

На скрине в колонке добавления. слева параметр, справа константа, посередине оператор. Затем идет кнопка вставить вставляющая этот текст вверх. Это мастер который ведет параметры и константы движка нужен для удобства.

вид - это вид глагола есть совершенный вид (сделать), есть несовершенный вид (делать).

Fitless:

Только толку то с того? Читаемого текста для СДЛ всё равно не получится и у него.

Имхо читаемость текста СДЛ уровня он уже сейчас выдает.

Fitless:

А по удобству работы с базой, он далеко не впереди.

А здесь подробнее.

Hkey добавил 19.06.2009 в 19:56

kapow_expert:
Неправда. Например мой синонимайзер умеет также перефразировать текс, проводит синтаксический анализ и синтез, понимает морфологию. Дело уже далеко не в базе. Базы у всех уже обширные. Качество базы не должно быть основополагающим фактором при заменах. Только для тех кто в лоб заменяет это важно. Остальным же важно лишь отсуствие некорректных синонимов, да и то другие средства помогают их отсеивать.

Можно пример перефразирования. На основе чего оно идет общих правил или каких-то ситуативных?

vtomas:
Сказавши "А", говорите и "Б". Это я о WScript как им пользоваться не понял.

В помощи есть. Ну в двух словах.

+предпочитать W2::<часть_речи==сущ, число==мн,падеж==рд> W3::<часть_речи==сущ, число==мн,падеж==дт>%больше +любить W3::<падеж=рд> чем W2::<>

превратит

"предпочитать брюнеток блондинкам" в "больше любить блондинок чем брюнеток"

"предпочитал лекарства травам" в "больше любил травы чем лекарства"

Fitless:
Так может лучше сделать не соревнование синонимайзеров, а соревнование баз синонимов?

Ведь синонимайзер - это лишь инструмент.

А так как сейчас на форуме много продается баз синонимов, странного происхождения - отправлять всех сюда на тест. Это было бы действительно интересно.

Можно потом провести.

Maximalist:
имелось ввиду окончания, знаки препинания, лишние слова, регистр и т.д.
если бы Вы прочитали всё тему, то поняли бы... ;)

11 страниц )) Нет, спасибо. Я лучше какой-то рассказик Бабеля прочту.

Всего: 2639