TTS книги  Проверялка  ФорумФорум  RSS  ПоискПоиск  РегистрацияРегистрация  ВходВход  



Словарь замены для числительных и физических величин

Предыдущая тема Следующая тема Перейти вниз
На страницу : 1, 2  Следующий
АвторСообщениеСловарь замены для числительных и физических величин
Вадим Романько
Посетитель


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

 Вадим Романько :: Чт Авг 20 2009, 21:49
Чт Авг 20 2009, 21:49

Международная система единиц (СИ) для программы чтения текстов "Балаболка" и речевого синтезатора "Алёна"

  ОПИСАНИЕ
Речевой синтезатор "Алёна" прекрасно справляется с чтением художественных текстов, 
но с научными, техническими, историческими, экономическими текстами,
когда встречаются цифры, единицы измерения, даты, деньги - возникают проблемы. 
Это дополнение корректно обрабатывает и склоняет:
 - Основные единицы СИ: длина, вес, ток, температура...
 - Приставки к единицам СИ
 - Производные единицы СИ
 - Основные единицы не вошедшие с СИ
 - Время: эра, тысячелетие, век, год, сутки, час, мин, сек 
 - Единицы информации: биты, байты, боды, bps
 - Деньги: рубли, доллары, гривны, копейки
 - Корректирует произношение цифр
 - и т.д.
Приставки СИ: 
  да, da, г, h, к, k, М, M, Г, G, Т, T, П, P, Э, E, З, Z, И, Y, 
  д, d, с, c, м, m, мк, µ, u, н, n, п, p, ф, f, а, a, з, z, и, y
Единицы измерения: 
  м, m, г, гр, g, с, s, А, A, К, K, кд, cd, моль, mol, рад, rad, ср, sr, 
  °C, °C, Гц, Hz, Н, N, Дж, J, Вт, W, Па, Pa, лм, lm, лк, lx, Кл, C, В, V, 
  Ом, Om, Ф, F, Вб, Wb, Тл, T, Гн, H, См, S, Бк, Bq, Гр, Gy, Зв, Sv, кат, kat, 
  мин, min, ч, h, сут, d, °, л, l, L, т, t, Нп, Np, Б, B, эВ, eV, а.е.м., u, 
  а.е., ua, миля, mile, уз, knot, га, ha, бар, bar, б, b

  УСТАНОВКА
1. Скачать словарь замены
2. Файл "СИ (Вадим Романько).ini" надо скопировать в рабочий каталог программы "БАЛАБОЛКА",   который находится: "\\Мои документы\Balabolka"
3. Перегрузить программу "БАЛАБОЛКА"
4. На панели словарей поставить галочку напротив словаря "СИ (Вадим Романько).ini".

Вернуться к началу Перейти вниз
Alex.Gray
Наблюдатель


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

 Alex.Gray :: Чт Авг 20 2009, 23:52
Чт Авг 20 2009, 23:52

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

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


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

 Вадим Романько :: Пт Авг 21 2009, 14:30
Пт Авг 21 2009, 14:30

Улучшена работа с единицами информации: биты, байты, боды, bps.

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


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

 evilone_ :: Вс Авг 23 2009, 13:52
Вс Авг 23 2009, 13:52

ух ты, класс, попробуем, пасибки ruku

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


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

 Вадим Романько :: Вс Авг 23 2009, 16:53
Вс Авг 23 2009, 16:53

 КОРРЕКЦИЯ ПРОИЗНОШЕНИЯ ЧИСЕЛ

 - Добавлено чтение окончаний чисел –е и –м.
 Пример: 1-е изд. читается первое издание, а не один-еизд;
 В 2001-м году читается в две тысячи первом году.

 - Числа от 1000 до 1999 читаются как тысяча, а не одна тысяч:
 Пример: 1900 читается тысяча девятьсот, а не одна тысяча девятьсот.

 -Числа с суффиксом <-ж> читаются в женском числе:
 Пример: 1<-ж> читается одна, а не один.

 - Корректно читаются числа разбитые на группы:
 Пример: 1 000 читается одна тысяча, а не один-ноль-ноль-ноль.

 - Откорректировано чтение числовых сокращений: тыс., млн., млрд.
 Пример: 1 тыс. читается одна тысяча, а не один тысяч;
 2 млн. читается два миллиона, а не два милионов.

 - Распознаются числа записанные с стандартной форме:
 Пример: Пример: 1.0000E-001 читается ода целая ноль десятых на десять в минус первой, а не ода-целая-ноль-ноль-ноль-ноль ноль-ноль-один;
 1 10 -6 читается один на десять в минус шестой.

 - Степени чисел:
 Пример: 10^2 читается десять в квадрате;
 5^3 читается пять в кубе;
 7^4 читается семь в четвертой степени.

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


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

 evilone_ :: Вс Авг 23 2009, 19:21
Вс Авг 23 2009, 19:21

вот сразу походу нашлись неоднозначности словаря:
пример:
на 28 марта
на двадцать восьмого марта
вместо
на двадцать восьмое марта
...

выписали основные формы из словаря замен, тот что в теме про словари, с арабскими цифрами, может будет интересно свериться
форма=пример
https://dl.dropboxusercontent.com/u/41088892/numbers.7z
чуть позже сделаем для римских чисел

да, кстати, словарь вроде универсальный т.е. им можно пользоваться не только применительно к речевому синтезатору "Алёна" но так же и к другим русским голосам?

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


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

 Вадим Романько :: Вс Авг 23 2009, 20:09
Вс Авг 23 2009, 20:09

Не проблема по строчке добавил для сочетаний:
на 28 марта - на двадцать восьмое марта;
по 28 марта 2000 - по двадцать восьмое марта двухтысячного;
на 28 марта 2000 г. - на двадцать восьмое марта тысяча двухтысячного года.
Всего три строчки для "на" и "по".

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


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

 Вадим Романько :: Пн Авг 24 2009, 01:48
Пн Авг 24 2009, 01:48

КОРРЕКЦИЯ ПРОИЗНОШЕНИЯ АНГЛИЙСКИХ АББРЕВИАТУР

В русскоязычных текстах несколько больших английских букв подряд в большинстве случаев обозначают аббревиатуру.
Пример: IBM читается Ай-Би-Эм, а не ибм;
  FBI читается ЭФ-Би-Ай, а не фби.

Вынесено в отдельный продукт: http://mytts.forum2x2.ru/forum-f11/tema-t333.htm

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


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

 evilone_ :: Пн Авг 24 2009, 14:00
Пн Авг 24 2009, 14:00

Vadim спасибо, можно еще попросить добавить вот такое:

Цитата :
*-летней=десятилетней
* летней=десятилетней
*-летним=одиннадцатилетним
* летним=одиннадцатилетним
*-летнего=пятнадцатилетнего
* летнего=пятнадцатилетнего
*-летнюю=пятидесятилетнюю
* летнюю=пятидесятилетнюю
*x*=5на5
*-ти=пятнадцати (5,6,7....)
* ти=пятнадцати (5,6,7....)
5-ю=пятую (1,2,3...) хотя тут может быть пятью
время
1 час, 2-4 часа, 5-20 часов, 21 час, 22-23 часа, 00 часов (от 1 до 3) минута, 4-минуты, 5...59 минут
Цитата :
** ч ** м
**ч **м
*ч * мин
*ч *мин
* ч. * м
* ч. * мин
* час * мин
* час. * мин

Цитата :
* томный=одно, двух, трех, четырех,пяти..+ти томный
* глава=вторая глава
Цитата :
* этаже=девятнадцатом этаже
с * этажа=с девятнадцатого этажа
до * этажа=до девятнадцатого этажа
с * по * этаж=с первого по пятый этаж
Цитата :
** век=девятнадцатый век (если написано арабскими)
** века=девятнадцатого века (если написано арабскими)
** веку=девятнадцатому веку (если написано арабскими)
** веком=девятнадцатым веком (если написано арабскими)
Цитата :
* квартал=второй квартал
* кварталом=вторым кварталом
* кварталу=второму кварталу
* квартале=втором квартале
Цитата :
* класс=второй класс
* класса=второго класса

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


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

 Вадим Романько :: Вт Авг 25 2009, 12:10
Вт Авг 25 2009, 12:10

Произношение составных слов начинающихся с цифры

- Добавлено чтение цифр заканчивающихся на союз -и и его склонения (-но, -ух, -ех, -ми, -ти)
Пример: 1-и, 1-но читается одно;
  52-и, 52-ух читается пятьдесят двух;
  4-и, 4-ех читается четырех;
  107-и, 107-ми читается сто семи;
  1009-и, 1009-ти читается тысяча девяти;
  100-и, 1000-и читается сто, тысяча.

- Слова начинающиеся с цифры и имеющие размер более трех букв после дефиса соединяются союзом -и
Пример: 1-летний читается однолетний;
  7-этажный читается семиэтажный.

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


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

 Вадим Романько :: Ср Авг 26 2009, 04:35
Ср Авг 26 2009, 04:35

Склонения

Добавлены склонения чисел: -ом, -ем, -ым, -ое, -ее, -ю, -ую
Пример: 1-ое читается первое
  1-го читается первого
  1-му читается первому
  1-ым читается первым
в 1-ом читается в первом
103-ю читается сто третью
3 – 7-й читается третий седьмой

Склонения единиц измерения по числам:
Пример: 1 сек. читается одна секунда
  2 мин. читается две минуты
  23 ч. читается двадцать три часа
  104 м читается сто четыре метра
  104 дм читается сто четыре дециметров
  27 нСм читается двадцать семь наносименсов
  100 мм3/м2 читается сто миллиметров в кубе на метр в квадрате
  1000 Кл читается тысячу Кулонов
  Корпус 7х5х2 см читается корпус семь на пять и на два сантиметра

Склоняются по падежам число со словами: этаж, дом, подъезд, проспект, век, квартал, класс, курс, номер, стол, поезд, маршрут, бус, автобус, троллейбус.
Пример: после 22 этажа читается после 22-го этажа (с, по, для, от, после)
  1 курсу читается первому курсу
  11 автобусом читается 11-м автобусом
  В 31 доме читается в 31-ом доме

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


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

 evilone_ :: Ср Авг 26 2009, 17:43
Ср Авг 26 2009, 17:43

хотелось бы еще попросить добавить закомментированное правило для простановки пробела или тире между цифрой и буквой если буква заглавная и стоит справа от цифры?
аленка по-умолчанию читает некоторые буквы после цифр как те же величины например:
74Л=74 литра
74М=74 метра
и т.д.

и иногда фраза в которой стоит название что-то типа АК-74М или СПП-99М читается с метрами литрами и т.д. Smile

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

например вот так:
Цитата :
Это аббревиатура названия программы, появившейся после того, как руководство Объединенными силами независимых государств вместе с войсками НАТО поняло, что центр Зоны не уничтожить массированными ракетными ударами и атаками крупных военных формирований. <tag1>Special Trust Action Liquidator Knocking Evil Riot <tag2>
где <tag1><tag2> нужные программе строки например:
<voice required="name = Heather22k">
<voice required="name = Alyona22k">
или
\vce=speaker="Heather"\
\vce=speaker="Alyona"\
и т.д.

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


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

 lev55 :: Ср Авг 26 2009, 19:21
Ср Авг 26 2009, 19:21

Вадим Романько
Здорово!
Для тёти Оли тоже пристроим.

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


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

 antokuzmina :: Ср Авг 26 2009, 21:38
Ср Авг 26 2009, 21:38

Подключила последнюю версию в балаболке. После этого текст "Глава 1" стал произноситься "глава первая Я". При отключении СИ(Вадим Романько).ini читается правильно. пользуюсь Алёной. Может подскажете в чём может быть причина.Спасибо.

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


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

 evilone_ :: Чт Авг 27 2009, 03:10
Чт Авг 27 2009, 03:10

antokuzmina
это из-за нестыковки со "словарем замен" для аленки
дело в том что там замены похожего вида были изначально и при использовании одновременно двух словарей происходит наложение правил
скоро подправим
словарь СИ(Вадим Романько) тут не при чем Embarassed

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


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

 antokuzmina :: Чт Авг 27 2009, 07:56
Чт Авг 27 2009, 07:56

evilone
Какие "словари замен" вы имеете ввиду? С версией от 21.08 всё читалось правильно. С версией от 26.08 я отключала все подключённые словари в Балаболке кроме .ini и всё равно читала неправильно.

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


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

 evilone_ :: Чт Авг 27 2009, 16:22
Чт Авг 27 2009, 16:22

antokuzmina
имелось в виду omograph.dic
а в нем правила
Спойлер:
 
если с двумя словарями сразу то сперва делается замена
глава 1=глава 1-я
а потом
глава 1-я=глава первая...я
в общем нужно просто удалить эти правила из omograph.dic и будет нормально читать

у меня только при подключенном этом ini словаре читает глава 1 как глава первая.

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


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

 antokuzmina :: Чт Авг 27 2009, 21:34
Чт Авг 27 2009, 21:34

evilone
версия от 26.08 удалила в omograph.dic все записи приведённые вами в спойлере. Алёна стала произносить:
Глава 1 = глава один и т.д.
Версия от 21.08 ничего не удаляла в omograph.dic произносит:
Глава 1 = глава первая.

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


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

 antokuzmina :: Чт Авг 27 2009, 22:38
Чт Авг 27 2009, 22:38

evilone
Сравнила ini файлы неправильное произносится из-за записи и ini:
([^A-Za-zА-я]|^)(гл\.|глв\.|глава)\s*(\d+)=$1глава $3-я

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


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

 evilone_ :: Пт Авг 28 2009, 03:00
Пт Авг 28 2009, 03:00

antokuzmina
ага точно, самая последняя версия теперь стала читать как "глава один" Sad
вот версия от 25-го которая читает "глава вторая". В новой где-то есть косяк.

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


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

 antokuzmina :: Пт Авг 28 2009, 07:45
Пт Авг 28 2009, 07:45

evilone

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

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


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

 evilone_ :: Пт Авг 28 2009, 11:13
Пт Авг 28 2009, 11:13

antokuzmina
а метод применения правил в балаболке какой стоит? быстрый или обычный?

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


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

 antokuzmina :: Пт Авг 28 2009, 18:51
Пт Авг 28 2009, 18:51

evilone
Метод стоит "стандартный". Я кажется нашла причину. В omograph.dic надо исправить записи типа:
глава 1=глава первая...
на
глава 1=глава первая
тогда всё произносится верно.

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


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

 evilone_ :: Пт Авг 28 2009, 22:34
Пт Авг 28 2009, 22:34

antokuzmina
да, но если без omograph.dic то все равно же неправильно Smile

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


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

 Вадим Романько :: Сб Авг 29 2009, 01:10
Сб Авг 29 2009, 01:10

Проблема с главами прекрасно решена в omograph.dic (по крайней мере до «Глава 40»). Поэтому я эту функцию отключил.
А проблема в том, что метод замены, используемый в словарях типа .dic. не позволяет отличить «1-я» от «1», поэтому он не может отличить «глава 1-я» от «глава 1» и допускает ошибку («Глава 1-я» читается омографом, как «глава первая...-я»). Поддержку чтения числового окончания «-я» я не делал, так как его поддерживает Алёна. 

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


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

 Вадим Романько :: Сб Авг 29 2009, 02:04
Сб Авг 29 2009, 02:04

Добавлено правило Evilone: простановки пробела между цифрой и буквой, если буква заглавная и стоит справа от цифры. По-умолчанию Аленка читает некоторые буквы после цифр как те же величины, например: 74Л=74 литра, 74М=74 метра.

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


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

 Вадим Романько :: Сб Авг 29 2009, 03:01
Сб Авг 29 2009, 03:01

  РИМСКИЕ ЦИФРЫ

1. Добавлено склонение и чтение римских цифр после имен исторических личностей:
Пример: Екатерина I - Екатерина первая;
  Евгения XX - Евгения двадцатая;
  Карл X - Карл десятый.

2. Римские цифры отрабатываются при чтении исторических дат:
Пример:
 В I – V в - В первом – пятом веке
 IV – I тыс. до н.э. – Четвертого – первого тысячелетия до нашей эры
 I столетие - Первое столетие, а не первый столетие

3. Чтение структуры книг:
Пример: КНИГА I - Книга первая;
 ЧАСТЬ II - Часть вторая, а не часть второй;
 Глава L - Глава пятидесятая;
 Раздел X - Раздел десятый, а не раздел екс.

Чтение английских аббревиатур временно отключено.

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


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

 Вадим Романько :: Сб Авг 29 2009, 04:36
Сб Авг 29 2009, 04:36

Добавлено превращение в текст числовых окончаний: –я, -й (-ая, -ый, -яя, -ий). Чтение этих числовых окончаний (-я, -й) поддерживаются Алёной, но превращение чисел в текст позволяет решить проблему со словарями замен .dic. см. выше. Также это дает возможность использовать данное дополнение на других движках, которые не поддерживают, чтение данных числовых окончаний.
Теперь чтение «Глава ххх» опять включено.

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


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

 antokuzmina :: Сб Авг 29 2009, 09:04
Сб Авг 29 2009, 09:04

А нельзя ли ввести правило для записи обозначения времени:

17.30= семнадцать тридцать

сейчас произносит "семнадцать целых тридцать сотых"

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


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

 evilone_ :: Сб Авг 29 2009, 15:52
Сб Авг 29 2009, 15:52

antokuzmina
так оно правильно читает, а как оно тогда будет читать числа с точкой как время? Smile
время так никто не обозначает
нужна замена с 17.30 на 17:30
покажи как оно в тексте стоит может можно будет сделать замену по соседним словам потому что 17.30 может в тексте быть и числом.

а вот что нашлась еще одна неточность
замена для 01.01.2001 г. читается неправильно тогда как для 01.01.2001 правильно
т.е. если после даты указана буква "г" или "г." или "год" то название числа и месяца читаются неправильно Sad

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


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

 antokuzmina :: Сб Авг 29 2009, 17:04
Сб Авг 29 2009, 17:04

evilone

Я согласна. Читает правильно, но в художественной литературе, особенно в детективах пишется, например:

"Электричка прибывает в 17.30". Почему-то в большинстве текстах время обозначаеся в таком виде. Вылавливать такие записи и менять в тексте на "17:30" муторно. Может у кого-нибудь появится идея создания правила для этих записей.

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


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

 Вадим Романько :: Сб Авг 29 2009, 17:57
Сб Авг 29 2009, 17:57

Все найденые замечания исправлены.

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


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

 evilone_ :: Сб Авг 29 2009, 19:30
Сб Авг 29 2009, 19:30

antokuzmina
если в тексте нету дробных чисел тогда можно вот такой словарик подключить отдельно, только это не решит проблему если в тексте есть и числа и время с точкой Sad

Вадим Романько
01.01.2001 г.
01.01.2001 г
читает как первого января 2000 первого года гэ Smile

01.01.2001 года
читает как ноль одна целая один сотая 2000 первого года

01.01.2001 год
читает как первого января двухтысячного года первый год

может как вариант искать в тексте все шаблоны
**.**.**** г
**.**.**** г.
**.**.**** год
**.**.**** года
**.**.**** году
**.**.**** годом
и преобразовывать к виду **.**.****, т.е. удалять сокращение после цифр?
тогда будет хорошо читать

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


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

 antokuzmina :: Вс Авг 30 2009, 09:53
Вс Авг 30 2009, 09:53

evilone

Спасибо!

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


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

 Вадим Романько :: Вс Авг 30 2009, 19:57
Вс Авг 30 2009, 19:57

  ДАТЫ
1. Добавлено чтение дат формата ДД.ММ.ГГГГ и Д.М.ГГ:
Пример: 01.01.2001 года - первого января две тысячи первого года;
  а не первого января две тысячи первого года года;
  или с .dic словарем - ноль одна целая один сотая две тысячи первого года;
  на 1.2.01 - на первое февраля две тысячи первого ;
  а не на первого февраля две тысячи первого года;
  по 1.2.99 г. - по первое февраля девяносто девятого года;
  а не по первого февраля тысяча девятсот ддевяносто девятого года гэ.
   
2. Чтение дат формата ДД месяц ГГГГ г.
Пример: "01" декабря 99 г. - первого декабря девяносто девятого года;
  по «5» мая 1990 - по пятое мая тысяча девятьсот девяностого;
  1 - 5 января - первого - пятого января.

3. Чтение дат формата: месяц ГГГГ г.
Пример: В сентябре 00 г. - В сентябре двухтысячного года;
  К августу 2001 - К августу две тысячи первого.

4. Формат ГГГГ:
Пример: В 2000 - 2004 гг. - В двухтысячном – две тысячи четвертом годах;
  (2001) - две тысячи первый;
  (2000 - 2003) - с двухтысячного по две тысячи третий;
  в 90 годах - в девяностых годах;
  30 годы - тридцатые годы;
  85-95 годах - восемьдесят пятом - девяносто пятом годах;
  на 7-8 годы - седьмой - восьмой годы.

5. Добавлено чтение цифрового окончания -го что позволяет использовать данное 
дополнение на старых движках не поддерживающих чтение окончания -го.

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


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

 Вадим Романько :: Вт Сен 01 2009, 13:38
Вт Сен 01 2009, 13:38

Протестирован на совместимость с Николаем и omograph.dic.
Исправлены ошибки.

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


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

 evilone_ :: Вс Сен 06 2009, 17:01
Вс Сен 06 2009, 17:01

надо поправить опечатку, строки 509-510
Цитата :
@(\d*[02-9]|\D|^)6-(ого|ому|ом|ым|ых|ое|и|ая|ую)([^А-я\-]|$)=<дес$10> шёст$2 $3
@(\d*[02-9]|\D|^)6-(ой|ый)([^А-я\-]|$)=<дес$10> шёстой $3
вместо
Цитата :
@(\d*[02-9]|\D|^)6-(ого|ому|ом|ым|ых|ое|и|ая|ую)([^А-я\-]|$)=<дес$10> шест$2 $3
@(\d*[02-9]|\D|^)6-(ой|ый)([^А-я\-]|$)=<дес$10> шестой $3
строка 567
Цитата :
<дес1990>=тысяча девять сот девяносто
вместо
Цитата :
<дес1990>=тысяча девятьсот девяносто
так читает лучше
+
и добавить еще
Спойлер:
 

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


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

 Вадим Романько :: Вс Сен 06 2009, 20:08
Вс Сен 06 2009, 20:08

Исправлено. (Убрана коррекция произношения)

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


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

 Вадим Романько :: Вс Сен 13 2009, 05:24
Вс Сен 13 2009, 05:24

СКЛОНЕНИЕ ЧИСЛИТЕЛЬНЫХ С СОКРАЩЕНИЕМ ЕДИНИЦ ВРЕМЕНИ ПО ПАДЕЖАМ
Лингвистическим предпроцессором отрабатываются склонение римских и арабских чисел по падежам (И. Р. Д, П.) со следующими единицами времени: сек., сек, мин., мин, час., час, нед., нед, мес., мес, кв., кварталы, секунды, минуты, часы, недели, месяца, дни, г., года, год., века, в., тыс., тысячелетия, ст., столетия.
На основании предлогов (в, к, по, после, для, до, с) определяются падежи числительных и сокращений единиц времени.
Так же падежи определяются на основании слов (итогам, этому, конец, конца, начало, начала,
середина, середину, началом, срединой, концом, начале, средине, конце), что находятся перед числом.
Примеры:
в 1111 году =в 1111-ом годУ
до 1111 г. =до 1111-ого года
итогам 1111 г. =итогам 1111-ого года
к 1111 году =к 1111-ому году
в I кв. = в первом квартале
конец 20-го в. = конец 11-ого века
в начале XV в. =начало 15-ого века
серединой XV в. =конец 15-ого века
по 1111 году =по 1111-ому годУ
по этому 2009 году =по этому 1111 ому гОду

Относительно сокращений «нач.», «кон.», «кв.» перед цифрой, а также «т. е.» и т. п. Балаболка рассматривает точку, как конец предложения, поэтому невозможно выделить такой шаблон для замены. Надо попросить Илью исправить алгоритм разбивки на предложения. Предложение начинается, если следующее слово после точки пишется с большой буквы. В противном случае точка обозначает сокращение.

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


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

 evilone_ :: Вс Сен 13 2009, 06:53
Вс Сен 13 2009, 06:53

наше к вашему алаверды Smile
строка 238
Цитата :
([^A-Za-zА-я]|^)(ст\.|стт\.|стаьтя)\s*(\d+)([^0-9A-ZaА-я\-]|$)=$1статья $3-я<...>$4
вместо
Цитата :
([^A-Za-zА-я]|^)(ст\.|стт\.|статья)\s*(\d+)([^0-9A-ZaА-я\-]|$)=$1статья $3-я<...>$4

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


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

 lev55 :: Вс Сен 13 2009, 18:35
Вс Сен 13 2009, 18:35

Вадим Романько
Было бы не плохо делать
в 1111 году =в 1111-ом годУ
до 1111 г. =до 1111-ого гОда
вместо -
в 1111 году =в 1111-ом годУ
до 1111 г. =до 1111-ого года
Тогда и для других голосов подойдёт.
Большую букву не составляет труда перевести в другой вид ударений.
А круче "+" плюсом.

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


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

 Вадим Романько :: Пн Сен 14 2009, 13:39
Пн Сен 14 2009, 13:39

СОВМЕСТИМОСТЬ С ДРУГИМИ СИНТЕЗАТОРАМИ
1. Добавлено чтение цифрового окончания -го, -й... (всех), что позволяет использовать данный лингвистический предпроцессор на старых синтезаторах, не поддерживающих чтение окончаний к числам.
2. Добавлено простановка ударений большими буквами.
Пример: гОда, пЕрвый, миллимЕтр;
3. Протестировано с синтезатором Николай.

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


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

 evilone_ :: Чт Сен 17 2009, 06:54
Чт Сен 17 2009, 06:54

возник такой вопрос а сравнивался ли словарь с тем то аленка умеет читать сама или брались все возможные варианты написания? что-то аленка умеет читать сама, причем намного лучше чем с заменой, например для тех же замен разрядов есть:
Цитата :

The rules for grouping of numbers are the following:
• Numbers are grouped in groups of three starting at the end.
• The first group in a number may consist of one, two, or three digits.
• If a group, other than the first, does not contain exactly three digits, the sequence of digits is not interpreted as a full number.
• The highest number read is 99999999999 (eleven digits). Numbers higher than this are read as separate digits.

Full numbers are spelled out in most common Nominative/Acusative grammatical case. For the correct pronunciation of numbers in other grammatical cases, they should be spelled out as alphabetic characters. Unless stated differently, this also counts for the numbers in occurring in currencies, dates and metric units.
как показала практика чем меньше замен тем потом лучше Smile

может есть смысл разделить и оставить только те замены которые произносятся заведомо неправильно а ненужные убрать в другой словарь - общий для всех голосов? т.е. сделать вторую версию словаря "только для аленки" где будет меньше замен и только для правки ошибок?

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


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

 Вадим Романько :: Чт Сен 17 2009, 20:20
Чт Сен 17 2009, 20:20

СИ направлен на улучшение чтения текстов исключительно Алёной, но большинство проблем Алены имеют все другие синтезаторы.
Коррекция произношения чисел (за исключение склонений и единиц измерения) производится путем приведения их к стандартному числовому формату, и дальнейшему чтению их синтезатором по правилах приведенным выше.
Относительно правил чтения чисел Аленой (и другими синтезаторами), они в большинстве случаев не очень хороши. Например, из перечисленного выше, произношение чисел по цифрам для русского языка не свойственно.
Как пишет выше antokuzmina, произношение чисел с точкой и запятой (дробных) редко бывает корректным. Особенно напрягают размышление синтезатора о том, сколько целых, сколько десятых, а сколько сотых, не только в художественных, но и в технических текстах. Так, что видимо, произношение чисел надо откорректировать.
Относительно отдельного приложения для Алёны, надо подумать по той причине, что все фичи завязанные на особенности Алёны, которые не будут работать с другими синтезаторами, убраны.

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


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

 Вадим Романько :: Вс Сен 20 2009, 23:12
Вс Сен 20 2009, 23:12

КОРРЕКЦИЯ ПРОИЗНОШЕНИЯ ЧИСЕЛ
1. Произношение десятичных дробей.
Очень неприятно, когда в середине текста, синтезатор начинает размышлять о количестве целых, количестве десятых, сотых.
Особенно если речь идет о времени, пунктах текста, и т.д., где точка имеет совсем другое значение.
Поэтому метод чтения десятичных дробей заменен на альтернативный метод, который обычно используется в разговорной речи.
Код:
   «1.1» читается «один и одна»,  а не одна целая один десятых;
   «1,001» читается «один и ноль-ноль одна»;
   «5.101101» читается  «пять и сто одна сто одна», а не «пять целых один ноль один один ноль один».
   «-1.23456789012345601e-007» читается  «минус 1 и 23 456 789 012 345 шестьсот одна на десять в минус седьмой».
2. Произношение больших чисел.
Числа длиной более 12 знаков читаются группами по три цифры.
Код:
   «12345678901234567890» читается «12 345 678 901 234 567 890», а не «1 2 3 4 5 6 78 9 0 1 2 3 4 5 6 7 8 9 0».
3. Произношение пунктов текста.
В начале строки число с точкой считается пунктом текста (до 3-х цифр в группе).
Код:
   1.1  читается «один один», а не «одна целая один десятых»;
   1.2. 4 читается «один два четыре», а не «один точка два точка четыре».
4. Корректно читаются числа разбитые на группы
Код:
   1 000       читается    тысяча         ,а не       один-ноль-ноль-ноль
5. Откорректировано чтение числовых сокращений: тыс., млн., млрд.
Код:
   1 тыс.      читается   одна тысяча            ,а не       один тысяч
   2 млн.      читается   два миллиона            ,а не      два миллионов
6. Распознаются числа записанные с стандартной форме:
Код:
   1.0000E-001   читается   ода целая ноль десятых на десять в минус первой               
,а не      ода-целая-ноль-ноль-ноль-ноль  ноль-ноль-один
    1 10 -6        читается    один на десять в минус шестой
7. Степени чисел:
Код:
   10^2   читается   десять в квадрате
   5^3   читается   пять в кубе
   7^4   читается   семь в четвертой степени
8. Знаки дефис и тире распознаются, как минус:
Код:
   -1   читается   минус один,                  ,а не          один
9. Добавлено чтение цифр заканчивающихся на числовой союз -и и его склонения (-но, -ух, -ех, -ми, -ти)
Код:
        1-и, 1-но      читается        одно
        52-и, 52-ух    читается        пятьдесят двух
        4-и, 4-ех      читается        четырех
        107-и, 107-ми  читается        сто семи
        1009-и, 1009-ти читается        тысяча девяти
        100-и, 1000-и  читается        сто, тысяча

10. Слова начинающиеся с цифры и имеющие размер более четырех букв после дефиса соединяются числовым союзом -и
Код:
      1-летний      читается        однолетний
      7-этажный      читается        семиэтажный
11. Чтение окончаний чисел –е(-ое, -ее) и –м (-ом,ем), -й, -ого,-ому,-ом,-ым,-ых,-ое,-ая,-ую,-ый,-ой.
Код:
   1-е изд.    читается     первое издание         ,а не      один-еизд
   В 2001-м году    читается   в две тысячи первом году
12. Числа от 1000 до 1999 читаются как тысяча, а не одна тысяча
Код:
   1900      читается    тысяча девятьсот      ,а не       одна тысяча девятьсот
13. Числа с суффиксом -ж читаются в женском числе
Код:
   1-ж       читается   одна            ,а не      один      

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


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

 lev55 :: Пн Сен 28 2009, 18:32
Пн Сен 28 2009, 18:32

Такой вопрос.
Это "ini" заточено только под Алёну?
Кажется, что это ini могло бы пойти под другие голоса. СИ оно и в Африке =СИ.
Можно ли вместо ударения большой буквой - ставить +?
Я в принципе так и сделал (пользователь Ольги), несмотря на то что Олга числа произносит правильно, но только от части. Поэтому в 0omograph.dic были внесены такие компазиции - "XII и XIII веках=двенадцатом и тринадцатом века+х"
Предпологалось что 0omograph.dic будет подходить для всех голосов.
Поэтому имея в наличии СИ (Вадим Романько).ini можно значительно облегчить 0omograph.dic.
1. Кроме Алёны, большие буквы, другим голосам - по барабану.
2. В композициях "Печальная улыбка тронула ее губы." есть накладки.
а) С 0omograph.dic - Печальная улыбка тронула ее гу+бы.
б) С СИ (Вадим Романько).ini - Печальная улыбка тронула её губы.
в) Всё вместе - Печальная улыбка тронула её губы+.
Может быть убрать местоимения из ini, иначе надо в 0omograph.dic исправлять несколько тысяч записей.
Проще это прописать в лексиконе.
Однако, если это только для Алёны, - извиняйте.

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


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

 lev55 :: Вт Сен 29 2009, 12:05
Вт Сен 29 2009, 12:05

Вадим Романько
Обратите внимание на подобного типа ошибки.
XI и XII веках
С СИ (Вадим Романько).ini получаем

Цитата :
XI и двенАдцатый веках
Должно быть
Цитата :
оди+надцатом и двенадца+том века+х или одинадцатом и двенадцатом века+х.

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


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

 evilone_ :: Вт Сен 29 2009, 16:09
Вт Сен 29 2009, 16:09

281:
Код:
([^A-Za-zА-я]|^)табл\.\s*(\d+)([^0-9A-ZaА-я\-]|$)=$1таблМца $2-я$3
Код:
([^A-Za-zА-я]|^)табл\.\s*(\d+)([^0-9A-ZaА-я\-]|$)=$1таблИца $2-я$3
344:
Код:
(^|[^0-9A-Za-zА-я])(в)\s*([0-9]+)(-м|-ом)?\s*(час\.|час|нед\.|мес\.|мес|кв\.|квартале|часу|неделе|месяце|дне|г\.|году|год\.|веке|в\.|тыс.|тысчелетии|ст\.|столетии)([^0-9A-Za-zА-я\-]|$)=$1<сокр:$2> $3-ом <время-п:$5> $6
Код:
(^|[^0-9A-Za-zА-я])(в)\s*([0-9]+)(-м|-ом)?\s*(час\.|час|нед\.|мес\.|мес|кв\.|квартале|часу|неделе|месяце|дне|г\.|году|год\.|веке|в\.|тыс.|тысячелетии|ст\.|столетии)([^0-9A-Za-zА-я\-]|$)=$1<сокр:$2> $3-ом <время-п:$5> $6
348:
Код:
(^|[^0-9A-Za-zА-я])()\s*([0-9]+)(-е|-ое)?\s*(тыс.|тысчелетие|ст\.|столетие)([^0-9A-Za-zА-я\-]|$)=$1<сокр:$2> $3-ое <время-и:$5> $6
Код:
(^|[^0-9A-Za-zА-я])()\s*([0-9]+)(-е|-ое)?\s*(тыс.|тысячелетие|ст\.|столетие)([^0-9A-Za-zА-я\-]|$)=$1<сокр:$2> $3-ое <время-и:$5> $6

lev55 словарь пока вроде как универсальный там же пишется про совместимость, а ударения большой буквой для других движков роли особой играть не будут наверно, хотя из всех ударений что там есть для аленки имеют значение только векАх, гОду и томУ, а все остальное имхо лишнее и пользы от этого не сильно много, а может даже и вред Smile

Цитата :
XI и XII веках
Код:
@[Вв]\s*(X|XX|XXX|XL|L|LX|LXX|LXXX|XC|)(I|II|III|IV|V|VI|VII|VIII|IX|X|L|C)\s*и\s*(X|XX|XXX|XL|L|LX|LXX|LXXX|XC|)(I|II|III|IV|V|VI|VII|VIII|IX|X|L|C)\s*(веках|веке|век\.|в\.|вв\.)=в <$1+><+$2>-м - <$3+><+$4>-м векАх

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


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

 lev55 :: Вт Сен 29 2009, 16:59
Вт Сен 29 2009, 16:59

evilone_
Цитата :
а ударения большой буквой для других движков роли особой играть не будут
Это так.
Но где омографы это надо делать.
Просто было бы удобней иметь один фай а не дубликаты на каждый движок. Я пользуюсь для ёфикации и омографов одними и теми-же словарями, независимо от движков. Если пользоваться одним движком даже только для ольги, то переделать не сложно самому, хотя и "плюсы" расставить - тоже самое. Я так и сделал.
А это что?

Цитата :
Цитата:
XI и XII веках

Код:
@[Вв]\s*(X|XX|XXX|XL|L|LX|LXX|LXXX|XC|)(I|II|III|IV|V|VI|VII|VIII|IX|X|L|C)\s*и\s*(X|XX|XXX|XL|L|LX|LXX|LXXX|XC|)(I|II|III|IV|V|VI|VII|VIII|IX|X|L|C)\s*(веках|веке|век\.|в\.|вв\.)=в <$1+><+$2>-м - <$3+><+$4>-м векАх
Уже исправленно?
Поэтому пока я не стал удалять записи из 0omograph.dic. По мере исправления буду это делать.
Я правильно понимаю, что цифры 281:, 344:, 348: и т.д. это номера строк?
Может быть лучше выкладывать сразу откорректированный файл?
В примере:
XI и XII веках
я хотел обратить внимание на то что число 11 не обрабатывается.
Сейчас это сделано?

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


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

 evilone_ :: Вт Сен 29 2009, 17:05
Вт Сен 29 2009, 17:05

Цитата :
А это что?
это чтобы
Цитата :
В примере:
XI и XII веках
я хотел обратить внимание на то что число 11 не обрабатывается.
Сейчас это сделано?

Цитата :
Может быть лучше выкладывать сразу откорректированный файл?
это к автору
Цитата :
Я правильно понимаю, что цифры 281:, 344:, 348: и т.д. это номера строк?
и это тоже к автору

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




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


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

Словарь замены для числительных и физических величин

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

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