语音合成技术和文本语音转换 - Synthetic voice and Text to Speech technology - Синтетический голос и технологии преобразования текста в речь
 
TTS книги  Проверялка  ФорумФорум  RSS  ПоискПоиск  РегистрацияРегистрация  ВходВход  

Demagog (Демагог)

Предыдущая тема Следующая тема Перейти вниз
На страницу : Предыдущий  1, 2, 3, 4, 5  Следующий
АвторСообщениеDemagog (Демагог)
flegont
V.I.P.


Сообщений : 355

 flegont :: Вт Май 18 2010, 08:16
Вт Май 18 2010, 08:16

Цитата :
самое интересное что запись отличается даже для одного слова т.е. если просто записать одно слово
на слух все вроде одинаково звучит но файлы отличаются

Я тоже замечал такое явление для файлов mp3. Может ламе так работает?

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Вт Май 18 2010, 08:24
Вт Май 18 2010, 08:24

Цитата :
И я не одобряю решение Венедикта Ли сделать свой проект с открытым исходным кодом (по многим причинам)
НЕ одобряют плохие вещи! Кому от открытого проекта Демагог стало плохо? Огласите список пожалста! Wink Wink

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Вт Май 18 2010, 10:57
Вт Май 18 2010, 10:57

flegont пишет:
Я тоже замечал такое явление для файлов mp3. Может ламе так работает?
да в том то и дело что не mp3 а wav :nono: он же без потерь должно одинаковым быть, и главное не понятно оно хорошо или плохо rulzz

Вернуться к началу Перейти вниз
Lexus
Эксперт
avatar


Сообщений : 408
Репутация : 32

 Lexus :: Вт Май 18 2010, 11:50
Вт Май 18 2010, 11:50

Цитата :
Кому от открытого проекта Демагог стало плохо?
Это зависит от того, кто и с какой целью использует исходники. Насколько при этом идеи автора защищены от искажений через чур ретивыми пользователями. Да и просто отсутствует защита от элементарного воровства кода.
При соблюдении этики, открытые исходники только приветствую.

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Вт Май 18 2010, 13:48
Вт Май 18 2010, 13:48

flegont
Простите, у меня нет желания вступать в дискуссию по поводу публикации исходников программы "Демагог" на ее сайте. Это решение автора программного продукта, так что нам остается лишь принять его точку зрения.

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Вт Май 18 2010, 18:28
Вт Май 18 2010, 18:28

Lexus пишет:
При соблюдении этики, открытые исходники только приветствую.
В том то и дело, что этика сейчас не в ходу. Sad

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Вт Май 18 2010, 19:39
Вт Май 18 2010, 19:39

Цитата :
В том то и дело, что этика сейчас не в ходу.

Поправтьте если ошибаюсся: ос линукс - открытый проект? язык Питон - открытый проект? опен оффисе? и т.д. Хде толпы воров и негодяев элементарно воровающих ихние исходные коды? Хде злостное искажение идей афтаров? Мрачно глядите на жизнь, товарисч... Smile

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Вт Май 18 2010, 20:29
Вт Май 18 2010, 20:29

flegont пишет:
Мрачно глядите на жизнь, товарисч...
Уж какой есть. Жизнь научила Sad

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Вт Май 18 2010, 20:37
Вт Май 18 2010, 20:37

Да уж, розовые очки приходится иногдаснимать и в карман прятать Sad Smile

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Вт Май 18 2010, 20:49
Вт Май 18 2010, 20:49

Вот напр. вчера ночью слушаю книгу, заснул. А утром смотрю - велосипед украли! Twisted Evil
Как говорил п. Преображенский; "Разруха не в стране - а в головах".

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Вт Май 18 2010, 22:39
Вт Май 18 2010, 22:39

чччерт знает что! Скоро галоши без присмотра нельзя будет оставить... Sad

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Ср Май 19 2010, 00:00
Ср Май 19 2010, 00:00

evilone_ пишет:
да в том то и дело что не mp3 а wav он же без потерь должно одинаковым быть, и главное не понятно оно хорошо или плохо
Проверьте аудионастройки для SAPI5 в программах (например, "22 КГц, 16 бит, моно"). В "Демагоге" у Вас точно выбран "SAPI5" (переключение между версиями SAPI осуществляется клавишей F12)?

По идее, файлы WAV должны получаться одинаковыми, в программном коде "Демагога" и "Балаболки" не вижу никакой разницы в способе записи аудиофайлов. Загадка...

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Ср Май 19 2010, 02:47
Ср Май 19 2010, 02:47

balabolka пишет:
Проверьте аудионастройки для SAPI5 в программах
Спойлер:
 

мне интересно это только у меня оно так безобразничает? zombie

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Ср Май 19 2010, 09:38
Ср Май 19 2010, 09:38

Цитата :
мне интересно это только у меня оно так безобразничает?
Не только. Попробовал поэкспериментировать...

Текстовый файлик 5кб. Голос Николай 16кгц

Демагог сапи4 вав размером - 11 630 076
Демагог сапи5 22гц16битМоно - 15 875 668 (при повторных записях аудио последние 3 цифры немного меняются, например 15 875 584 и т.п неясно почему... )

Балаболка сапи4 вав размером - 1 201 024 (в 10 раз меньше?!)
Балаболка сапи5 22гц16битМоно -10 149 628 (намного ближе, но но все равно не то)
Повторный запуск под сапи5 с теми же параметрами - 1 200 086 (??!!)
Еще раз... закрыл балаболку, запустил заново - 1 201 024

Мяу-мяу-мяу... я не понеМяу... Sad Wink

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Ср Май 19 2010, 09:48
Ср Май 19 2010, 09:48

Глюки разные - суть одна: чем больше навешивать на прогу разных функций тем больше вероятность путаницы... Sad

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Ср Май 19 2010, 11:27
Ср Май 19 2010, 11:27

flegont, вроде все функции можно отключить но у меня все равно не получилось Crying or Very sad это случайно всплыло при проверке словарей к аленке
а возможно что это какая-то особенность голосового движка? Suspect

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Ср Май 19 2010, 11:33
Ср Май 19 2010, 11:33

flegont пишет:
Глюки разные - суть одна: чем больше навешивать на прогу разных функций тем больше вероятность путаницы...
При чем тут "навешивание разных функций"?! В данном конкретном случае функция одна - текст передается голосу для записи в аудиофайл; данное действие никак не зависит от того, сколько в программе пунктов меню или каких размеров главное окно. Причина в чем-то другом.

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Ср Май 19 2010, 14:49
Ср Май 19 2010, 14:49

Насчет Аленки не знаю, давно с ней не экспериментировал (тьфу, каламбур какой-то вышел Smile ).
С Николаем - загадка решена! Под сапи4 подключен был словарь микеланджело, пр переключении на сапи5 в Балаболке галочка на этом словаре так и остается. Ну а с "дикими" (DIC !!!) словарями под сапи5 текст читается и пишется! с агромадными пропусками, ну, тут мы все знаем, почему...
И я в енту ловушку да рылом с размаху Smile
(А в демагоге словарь автоматом отключается при смене сапи).
В общем, ничего страшного, надо только помнить про словари дик и отключать.

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Ср Май 19 2010, 15:48
Ср Май 19 2010, 15:48

flegont, ну без словарей ясное дело записывалось все Smile
со словарем и так понятно что будет разное
может кто-то догадается почему :surender:

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Вс Июл 18 2010, 23:02
Вс Июл 18 2010, 23:02

Обнаружилась дополнительная функция – программа способна расположить слова в столбик.
Как это работает; открываете текст, в Сервис\Общие настройки во вкладке Литературный текст определяете Максимальную длину строки 1, жмёте ОК. Затем выбираете Формат\Литературный текст, и всё – процесс пошёл.
Время обработки. будет различным, я работал с текстом на 30.8МБ. время – 5 ч. 12 м. Текст на 1МБ. располагается в столбик за 3 минуты.
Я хочу чтобы все возможные и НЕвозможныеSmile манипуляции с текстом любого размера, осуществлялись в Демагоге и Балаболке. Чтобы не открывать Word, Блокнот, Notepad++ и прочие т. редакторы – это непрактично.
За последние месяцы Балаболка и Демагог очень приблизились к этому моему желанию. Авторам большой плюс!

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пн Июл 19 2010, 09:46
Пн Июл 19 2010, 09:46

слова в столбик, столб, столбище Smile - полезный побочный эффект форматирования текста в Демагоге. Но, постоку-поскоку прога пытается при этом выполнять и остальные ф-ции форматирования (замена плохих символов, удаление поля слева и тп) то построение столбика занимает много больше времени чем должно бы.
М.б. лучше создать отдельную оппцию в меню... к-ря делала бы токо это (?)

PS. А сейчас большой текст лучше бить на части - это видно из приведенной статистики (спасибо evmir1). 1мб - 3 мин,
30 частей по 1мб: 30х3=90 мин = 1ч30 мин вместо 5 ч. Wink

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пн Июл 19 2010, 13:11
Пн Июл 19 2010, 13:11

"Товагищи! Социалистическая геволюция, о нобходимости котогой все вгемя говогили большевики... свегшигась!!"
Кажись свершилось Laughing
верс. 135
исправлена опция "правка - замена - заменить все"
добавлена опция "правка - замена - текст в столбик"

Текст: упомянутый 30.8 мб
замена около 3 млн запятых пробелами - 5 сек.
затем "текст в столбик" - 2.5 мин

ладно бум дальше играцца
Wink

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Пн Июл 19 2010, 13:16
Пн Июл 19 2010, 13:16

flegont пишет:
Текст: упомянутый 30.8 мб
замена всех запятых пробелами - 5 сек.
затем "текст в столбик" - 2.5 мин
Просто отличная новость. Ура, даёшь революцию!

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пн Июл 19 2010, 13:20
Пн Июл 19 2010, 13:20

Специально посмотрел сколько в стобике слов: 2.7 миллиона - значитца и запятых было столько же Smile

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Пн Июл 19 2010, 13:49
Пн Июл 19 2010, 13:49

Действительно всё работает быстро!!!
Я в "Полная акцентуированная парадигма по А. А. Зализняку" сделал всё что хотел з 11 минут (удалил апострофы, запятые, расположил в столбик)! А Word и Блокнот "кряхтели" больше часа - буржуи.Smile
Пускай теперь подвинутся.

Пользователи форума очень плотно работают с Быстрым и Стандартным методами слов и фраз. Это очень хорошо,Smile но иногда нужно просто заменить одни символы (запятые, тире, многоточия и т.д.) на другие (даже на пробелы), или совсем их удалить. Для этого есть опция Правка\Заменить\Заменить всё. Но эта опция на больших текстах работала медленно – до недавних пор. Автор Демагога её улучшил, теперь замена происходит за секунды!

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Вс Авг 08 2010, 15:45
Вс Авг 08 2010, 15:45

Секретный эксперимент-2
===================

Дано: текст объемом 16 мб
Требуется: получить список всех словоформ из данного текста

Инструментарий: комп Celeron 2.0 GHz, 1Gb
Софт: Демагог v.136

Решение

1. Загружаем текст

2. На всякий случай "Правка - Заменить символы - Табуляция -> 4 пробела"

3. "Правка - Текст в столбик", сохраняем результат в файл tmp.txt
В ентом промежуточном тексте 2334570 слов
Затраты времени - пока практически нулевые.

4. Для удаления дубликатов из tmp.txt воспользуемся упомянутым в справке
свойством Демагога: операции сравнения файлов выполняются с
удалением строк-дубликатов и алфавитной сортировкой результата.
"Сервис - Статистика - Сравнение файлов - Пересечение файлов"
"Выберните 1-й файл": tmp.txt
"Выберните 2-й файл": tmp.txt
По теории множеств - результат пересечения файла с самим собой - это
тот же самый файл.
По Демагогу - это тот же самый файл, но без строк-дубликатов.
Прога задумывается аж на полминуты, потом начинает ползти зеленая
полоска и через минуту с хвостиком в окне статистики появляется
результат.

5. Правой мышовой клавишей в окне статистики - меню - "Сохранить как..."
tmp1.txt

6. Загружаем файл tmp1.txt
В нем всего-то чуть больше 167000 слов.
Беглый просмотр показывает, что надо удалить мусор вроде кавычек,
скобок и т.п.
Это мигом, через опцию "Правка - Заменить - Заменить все".
Кстати, кавычки, точки, скобки и т.п. предпочтительнее убивать, заменяя
пробелами т.к. некоторые слова могут из-за очепяток в тексте
не разделяться пробелами, а лишь знаками препинания. Такие слова
могли сидеть в строке, как ОДНО слово и будут теперь разделены.

7. Повторить "Правка - Текст в столбик"

8. Для восстановления слегка нарушенной после пп. 6-7 алфавитной сорировки
применим опять тот же фокус со статистикой и самопересечением файла.
Теперь это происходит мгновенно.

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

10. В общем-то все...
------------------------
а
аахен
абаев
абаева
абаеву
абаевым
абажура
абажурами
абажуром
абажуры
абака
аббас
аббаса
аббасом
аббасу
аббат
аббата
аббатов
аббатом
аббату ...
(и т.д. 159 тысяч словоформ)
-------------------------------------

Затраты времени на всё про всё ~ 20 мин., включая попивание кофе и
почесывание репы.

ЗЫ. Таким же способом можно обработать любой другой корпус, а полученный
результат объединить с предыдущим через "Сервис - Статистика - Сравнение
файлов - Объединение файлов".
Дубликаты, как водится, будут в ходе слияния отброшены.

ЗЫ.ЗЫ. Конешно, так находятся не все теоретически возможные словоформы, а
лишь встречающиеся в реальных текстах. С ростом объема обработанных
текстов список словоформ тоже будет расти, но не пропорционально, а
намного медленнее.

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Вс Авг 08 2010, 19:47
Вс Авг 08 2010, 19:47

flegont, спасибо, очень удобная и быстрая штука
вот если бы "мусор" и "дубликаты" сами убирались только после нажатия "Правка - Текст в столбик" было бы до безобразия здорово Rolling Eyes

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Вс Авг 08 2010, 21:42
Вс Авг 08 2010, 21:42

flegont пишет:
Затраты времени на всё про всё ~ 20 мин., включая попивание кофе и
почесывание репы.
Отлично сработано!
Демагог растёт - это хорошо. Можно валяться, загорать, а прога всё сама сделает.:beach:

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пн Авг 09 2010, 11:59
Пн Авг 09 2010, 11:59

"Мечты сбываются. Газпром!" тьфу... Мечты сбываются... Демагог, вер. 137.

"Правка - Текст в столбик - Все слова, как есть"
"Правка - Текст в столбик - Без дубликатов, по алфавиту".

Новая опция от мусора вроде чистит. Слова из одних только лат. букаф - мусором не считаются. Вроде логично, вдруг кому-то словоформы аглицкого языка понадобится искать - зачем лишать такой возможности?

Комп Core 2 Duo 3.00GHz .
Текст тот же 16-метровый

Словоформы без дубликатов получаются за 25 секунд.

Кофий выпить - не успеть... да и коньяк приличные люди в эдакой спешке не пьють... Smile


Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Пн Авг 09 2010, 17:44
Пн Авг 09 2010, 17:44

flegont пишет:
Словоформы без дубликатов получаются за 25 секунд.
Можно ехать на Багамы, когда нобелевку дадут.beer

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Вс Авг 15 2010, 13:17
Вс Авг 15 2010, 13:17

Теперь Демагог поддерживает юникод!
Отличное улучшение.:+1:

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Вс Авг 15 2010, 14:18
Вс Авг 15 2010, 14:18

Имеется в виду автоматическое распознавание кодровки UTF-8 в загруженном тексте. Сохраняться текст будет (после редактирования или без) уже в обычной вин-кодировке Smile

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Чт Авг 26 2010, 09:46
Чт Авг 26 2010, 09:46

Опция "Пакетный конвертер DOC/HTM/FB2 -> TXT" сразила меня наповал!
Я не умею работать с командной строкой, как в случае с ZD2T,Sad
Рад, что Демагог конвертировал 105 рассказов о Мегре, за 6 минут!!!

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Чт Сен 09 2010, 15:00
Чт Сен 09 2010, 15:00

такой вопрос возник - а какая очередность применения правил программой если подключено несколько dic и ini словарей?
какие будут первыми а какие последними и можно ли как-то вручную указывать какой словарь должен быть применен первым а какой последним?

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пн Сен 13 2010, 23:01
Пн Сен 13 2010, 23:01

INI всегда применяется первыми, а DIC следом.

Очередность применения нескольких DIC-ов роли не играет, ибо перед применением они все объединяются в одну хеш-таблицу. Это равносильно тому, как если бы в один дик-словарь добавили содержиме остальных. Правила, попавшие в одно "слварное гнездо" хеш-таблицы, отсортированы в нём в порядке убывания длины.
Так что, если нет правил-дубликатов с одинаковой левой и разными правыми частями, то всё будет нормально.

А вот для INI-словарей важен даже порядок следования правил внутри словаря - от "перестановки мест слагаемых" рез-т очень даже измЕнится и может быть в корне неверным. Попрбуйте переставить, например, правила в словаре СИ...ini. Ужас што будет...

Поэтому, если надо применить несколько ини-словарей, то по очереди: открыжил первый, получил измененый текст, сохранил. Открыжил другой словарь и т.д. Скучная, но надежная процедура... И на каждом шаге можно проконтролировать - что получилось.
Или же учесть тот факт, что ини-словари располагаются в списке по алфавиту, и в этом же порядке будут применены. Тогда надо заранее дать им такие имена, чтобы порядок был правильный...
Wink

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Пн Сен 13 2010, 23:49
Пн Сен 13 2010, 23:49

flegont пишет:
Или же учесть тот факт, что ини-словари располагаются в списке по алфавиту, и в этом же порядке будут применены. Тогда надо заранее дать им такие имена, чтобы порядок был правильный...
ага, т.е. для ini получается верхний в списке это всегда первый а самый нижний - последний :sclerosis::yes:

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Пн Сен 27 2010, 22:07
Пн Сен 27 2010, 22:07

10 вкладок! Ну, теперь я разгуляюсь.drinking
Щиро дякую!

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Вт Сен 28 2010, 19:33
Вт Сен 28 2010, 19:33

возник такой вот вопрос, это было замечено, причем это уже давно, в балаболке, но скорее всего, потому что принцип работы один и тот же, присутствует и в демагоге, при обработке текста по словарю который содержит в правиле одно и тоже слово дважды, замена просто игнорируется

Правила в словаре:
Код:
все равно=всё равнО
я все=я всё

Текст:
Код:
Но я все равно увидела. а потом, уже днем, они сделали ящик.
Стандартный метод:
Код:
Но я всё равнО увидела. а потОм, уже днем, они сделали ящик.
Быстрый:
Код:
Но я всё равно увидела. а потОм, уже днем, они сделали ящик.

к примеру, на текст в ~1500 омографов (250 тыс. символов) получается 35 несовпадений по одному и тому же словарю, причем не в пользу быстрого метода Sad

а вопрос такой - это нормальная ситуация (те самые 2-3%) или что-то делается не так и есть какие-то тонкости в использовании таких правил в словаре?

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Вт Сен 28 2010, 20:35
Вт Сен 28 2010, 20:35

Код:
все равно=всё равнО
я все=я всё
В "стандартном" методе правила сортируются по их длине: сначала более длинные, затем более короткие. Поэтому срабатывает более длинное правило "все равно=всё равнО"; второе правило уже не срабатывает.

В "быстром" методе программа "перемещается" по тексту, слева направо, от слова к слову. Первым на пути программы встречается слово "я"; к этому слову подходит правило "я все=я всё"; оно и срабатывает. Другое правило не используется, так как слово "все" уже заменено на "всё".

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Вт Сен 28 2010, 21:22
Вт Сен 28 2010, 21:22

Пока я формулировал ответ, balabolka уже его дал: краткий, точный и практически исчерпывающий.

Осталось отметить лишь одну маленькую деталь: правило "я все=я всё" - неверное.
Вот элементарные контр-примеры:

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

Как только "шайтан-правило" в словаре закомментировать, так сразу срабатывает то, что надо: "все равно=всё равнО" Smile

Поэтому остается только тщательно выверять короткие правила, ибо они обладают вредным свойством: захватывать больше словесных комбинаций, чем на то рассчитывали их составители Smile

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Ср Сен 29 2010, 20:48
Ср Сен 29 2010, 20:48

flegont пишет:
правило "я все=я всё" - неверное.
да, но это пример для одной строки текста Smile
balabolka пишет:
В "быстром" методе программа "перемещается" по тексту, слева направо, от слова к слову. Первым на пути программы встречается слово "я"; к этому слову подходит правило "я все=я всё"; оно и срабатывает. Другое правило не используется, так как слово "все" уже заменено на "всё".
допустим, но разве эти два правила не входят в одно "словарное гнездо" со словом "все"? тогда почему в рекомендации указывается, что
Цитата :
Желательно правила, попадающие в одно словарное гнездо, располагать в порядке убывания их длины
пример - одно "словарное гнездо", правила расположены в порядке убывания, первым срабатывает правило с наименьшей длиной, почему?

как в быстром методе задать принудительную сортировку правил? например в стандартном методе можно было по длине задать какое из правил будет применено к тексту первым, как это правильно сделать сейчас для быстрого метода с учетом добавления к методу множественных замен?
другими словами как сделать так чтобы первым срабатывало правило все равно=всё равнО а не я все=я всё?

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Ср Сен 29 2010, 22:16
Ср Сен 29 2010, 22:16

evilone_ пишет:
разве эти два правила не входят в одно "словарное гнездо" со словом "все"?
Нет, не входят. В "быстром" методе самым главным словом - "словарным гнездом" - является самое первое слово в шаблоне. В выражении "я все" это будет слово "я", в выражении "все равно" - слово "все".

evilone_ пишет:
как сделать так чтобы первым срабатывало правило все равно=всё равнО а не я все=я всё?
Боюсь, это невозможно; мне ничего сейчас не приходит на ум. Другой вопрос - стоит ли активно использовать такое "наложение" правил?! Это может не сработать в "быстром" методе, но, если это сработает в "стандартном" методе, - результат может быть непредсказуемым.

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Ср Сен 29 2010, 22:36
Ср Сен 29 2010, 22:36

Если в словарь включить 2 варианта, вот так:

все равно=всё равнО
всё равно=всё равнО

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

я все=я всё

Вернуться к началу Перейти вниз
evilone_
Участник «online словари»
avatar


Сообщений : 859
Репутация : 317

 evilone_ :: Ср Сен 29 2010, 23:23
Ср Сен 29 2010, 23:23

т.е. получается сортировать правила в быстром методе не получится никак?
все равно не понятно, вот например такой словарь:
Код:
все равно=всё Равно
все равно=всё рАвно
все равно=всё раВно
все равно=всё равНо
все равно=всё равнО
получается:
Код:
Но я все равно увидела. а потом, уже днем, они сделали ящик.
# Список замен по "omograph.dic". Правил: 1, применены: 1 раз к тексту из 12 слов
все равно=всё равНо
т.е. сработало четвертое правило, почему так? wall

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Чт Сен 30 2010, 02:14
Чт Сен 30 2010, 02:14

Код:
все равно=всё Равно
все равно=всё рАвно
все равно=всё раВно
все равно=всё равНо
все равно=всё равнО
Да, вот тут довольно "тонкий" момент. В "Демагоге" правила сортируются ТОЛЬКО ПО ДЛИНЕ; поэтому в случае, подобному описанному Вами, - когда совпадают и длина правил, и первые слова в них, - правила будут отсортированы случайным образом (и поэтому четвертое правило вдруг стало первым).

Насколько помню, я тоже столкнулся с такой проблемой при сортировке правил, и чтобы обеспечить однозначный порядок строк в результирующем списке, программа сравнивает не только длины шаблонов, но, - если длины правил одинаковые, - сравнивает их ПОЗИЦИИ В ИСХОДНОМ СПИСКЕ правил. В "Балаболке" правило "все равно=всё Равно" всегда будет располагаться выше в результирующем списке, чем правило "все равно=всё равнО" из того же словаря, - потому что в исходном списке правил одно правило было выше другого.

Повторяю: если сравнивать только длины шаблонов правил, то процедура сортировки может расположить правила с одинаковыми длинами в совершенно произвольном порядке. Добавить одно правило в редакторе, удалить одну строку - и в следующий раз порядок правил будет уже другим. Это создаст проблемы при редактировании и применении словарей.

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Чт Сен 30 2010, 10:38
Чт Сен 30 2010, 10:38

Порядок правил в словарях - очень тонкая тема. Для ИНИ-словарей ответ однозначный - порядок - железно важен и не имеет значения, какие правила длиннее. Как, например, они в словаре СИ.ini расположены, в том порядке и работают. Иначе - просто работать не будут, так как задумано.
Со словарями ДИК - все намного таинственней. Smile Я не решаюсь определить в этом вопросе "единственно верный путь". Бывало, сталкивался с ситуациями (в классическом методе), когда боле короткое правило, хоть тресни, но должно было бы быть применено первым, иначе рез-ты получались из ряда вон... Sad
И что делать? Так что, сортировка дик-правил в порядке убывания длины - это просто выбор наименьшего из возможных зол, хоть какой-то маяк во тьме Smile
Может быть, каким-то образом некоторым правилам приписывать "рейтинг"? Есть рейтинг - стройтесь по рейтингу; нет рейтинга - стройтесь по росту... ???
Учет первоначального положения правил - это уже что-то вроде назначения рейтинга, хотя при неосторожной правке исходного словаря и тут возникнут проблемы.
В общем - вопрос открыт для обсуждения Wink

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Чт Сен 30 2010, 11:46
Чт Сен 30 2010, 11:46

flegont
Порядок правил в исходном списке - это единственное, что я смог придумать, единственное, за что можно "зацепиться" без серьезных изменений формата словаря (как мне кажется). Кстати, в этом случае играет роль и алфавитный порядок имен файлов словарей: при формировании исходного списка правил сначала считываются строки из первого словаря (они получают номера 1, 2, 3, ...), затем из второго по списку словаря (1001, 1002, 1003, ...) и т.д.

Вам придется как-то решать это проблему, тем более что пользователи в лице evilone_ уже обратили внимание на странности в сортировке одинаковых правил. Функция сортировки SortByLenDegrad в Вашей программе не должна просто возвращать "0" для одинаковых по длине правил - потому что сортировка строк при таком обилии "нулей" будет случайной. Подключили еще один словарь на панели словарей - будет один порядок правил, отключили - правила с одинаковой длиной поменяются местами или вообще перемешаются.

Я согласен с Вами, что нужно искать какое-то эффективное решение для этой проблемы. Совсем не наставиваю, что мой вариант идеальный и единственно правильный; просто я не смог придумать ничего другого.

Вернуться к началу Перейти вниз
balabolka
V.I.P.
avatar


Сообщений : 1228
Репутация : 986

 balabolka :: Чт Сен 30 2010, 16:43
Чт Сен 30 2010, 16:43

Конечно, не нужно и преувеличивать серьезность этой проблемы. Подавляющее большинство правил одной длины могут располагаться в абсолютно любом порядке, и их применение не зависит друг от друга. Сложности могут возникнуть только с теми парами правил, которые:

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

Еще может возникнуть проблема с теми правилами, которые активно меняют один и тот же текст, - тогда порядок применения правил играет роль.

Как автор программы, работающей со словарями формата DIC, я, естественно, заинтересован в единообразном порядке сортировки правил. Поэтому и описал так подробно, как именно решается проблема в "Балаболке"; использовать или нет мой способ - решать автору "Демагога".

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Пт Окт 01 2010, 03:23
Пт Окт 01 2010, 03:23

Изложенное решение - представляется вполне реалистичным, и, действительно, наилучшим на сегодняший день. Не обещаю, что включу его в Демагог быстро (что-то непредвиденные заботы навалились... Sad), но буду думать над этим.
Согласен с тем, что "быстрый метод" должен соответствовать некоему единому стандарту и не распадаться на "диалекты".

Вернуться к началу Перейти вниз
flegont
V.I.P.
avatar


Сообщений : 355
Репутация : 476

 flegont :: Сб Дек 11 2010, 12:00
Сб Дек 11 2010, 12:00

"Химические" опыты с INI-словарями

(в помощь изучающим английский язык)

Примеры мини-ini-словариков.
Отсутствие ошибок НЕ гарантируется Smile.
Исправления, доработки, новые идеи - приветствуются.

---------------------------------------

_По_словам.ini
#Чтение текста "по словам". После каждого слова ставится точка
(\w+)=$1.

----------------------------------------

_Слова_трижды.ini
#Каждое слово повторить 3 раза
(\w+)=$1 $1 $1

-----------------------------------------

_Строки_трижды.ini
#Каждую строку повторить 3 раза
([\w\x20\.\,\!\?"\-]+\r\n)=$1$1$1

------------------------------------------

Я_Билингва_SAPI5.ini
#Выделить английские фрагменты в тексте
([A-z\.\,\!\?\-\x20]+)=<eng>$1</eng>
<eng>([\!\?\.\,\-\x20]+)</eng>=$1
#И вставить теги конкретного английского голоса
#<eng>=<voice required="Name=Microsoft Anna">
#<eng>=<voice required="Name=Microsoft Mary">
#<eng>=<voice required="Name=Microsoft Sam">
<eng>=<voice required="Name=Microsoft Mike">
</eng>=</voice>

ЗЫ. Этот словарик не работает с версиями Демагога ниже 165.

ЗЫ.ЗЫ. Первые 3 словарика подключаются только по одному, а не все вместе. Но каждый из них можно комбинировать с Билингвой. Названия словарей выбраны так, чтобы Билингва всегда выполнялась в последнюю очередь, иначе будет ошибка.

ЗЫ.ЗЫ.ЗЫ. Больше всего мне понравились комбинации голосов Николай-Майк и Алена-Мери Smile. Но Майк и Мери не работают под Windows 7.
-------------------------------------------

ПРОВЕРОЧНЫЙ SIMPLE TEST ТЕКСТ

Выйду на поле в мятых трусах коричневых,
Знаю в футболе пару финтов гарринчевых,
На деревяшке выжгу тебя паяльником,
Скину рубашку, спрячусь под пододеяльником.

I love you, baby.
I just believe in what you say.
Yes. It is table. And it was table yesterday.
I love you, baby. Baby, you love my "имидж".
O-o. I am crazy. I can speak English!

Я - очень умный,
Есть во мне божья искра...
"О" - это буква,
"0" - это цифра!

Wink

Вернуться к началу Перейти вниз
evmir_troll-hunter
Admin
avatar


Сообщений : 616
Репутация : 208

 evmir_troll-hunter :: Сб Дек 11 2010, 16:40
Сб Дек 11 2010, 16:40

Жаль, что на моей висте Anna\Анька не работает.:46:
Вот поставлю 7-ку, тогда развернусь!

Вернуться к началу Перейти вниз
Спонсируемый контент




 Спонсируемый контент ::


Вернуться к началу Перейти вниз

Demagog (Демагог)

Предыдущая тема Следующая тема Вернуться к началу
Demagog (Демагог)
Страница 2 из 5Страница 2 из 5На страницу : Предыдущий  1, 2, 3, 4, 5  Следующий
Этот сайт не предоставляет электронные версии программного обеспечения и полнотекстовых электронных изданий, а занимается лишь
подборкой и каталогизацией ссылок, присылаемых и публикуемых на форуме нашими читателями.

Создать форум | ©phpBB | Бесплатный форум поддержки | Сообщить о нарушении
Создать форум | © phpBB | Бесплатный форум поддержки | Сообщить о нарушении | Создать свой блог