Размер словаря

I
На сайте с 15.12.2000
Offline
80
#101
itman:
У Вас есть уверенность, что словарь ВСЕХ псевдооснов Зализняка?

Леня, чего там гадать. Эта старинная статья с Диалога-95, про то как была упакована моя морфология в эпоху Библейского Компьютерного Справочника. Там же все подробнейшим образом написано и ссылка на Макилроевcкий ispell имеется.

Идешь в Яндекс, смотришь на полку с книжками, открываешь тоненькую книжечку "Жемчужины стиля программирования" Бентли (оба русских издания и хоть старое МИР-овское, хоть новый "кошмар переводчика") и читаешь там изложенную на русском языке историю как МакИлрой делал испелл и как он упихал анлицкий словарь в 50 килобайт.

Вкратце: "VBC-упакованная" (*) "сблокированная, с субиндексом" (**) "кишка" (***) "хешей" (****) основ слов.

(*) "VBC-упакованная" = здесь наверное объяснять не надо

(****) "хеш" - хеш-функция по большому основанию, то есть в разреженной (sparsed) таблице, чтобы вероятность коллизии была близка к нулю: я брал в районе 2^12 умн. на размер словаря, что давало 2 или 3 коллизии, кажется, в статье есть. То есть 140 тысяч основ*4 тысячи = примерно 500 миллионов. Поскольку используется VBC, то грубо, столько примерно бит (12) и потребуется на 1 основу.

(***) "кишка" - отсортированный по возрастанию разностно-упакованный массив (внутрияндексный термин)

(**) "сблокированная, с субиндексом" - внутрь кишки в начало блоков по несколько килобайт, "смотрит" табличка указателей, то есть субиндекс. Чтобы при поиске слова не распаковывать всю кишку, а бежать только от начала блока

Естественно тексты там не хранятся, синтез невозможен, это все в статье есть, несловарные слова в БКС оставлялись текстами и тд

itman:
ok, если Вам так все понятно, то может объяснить навскидку
а) что такое блочно-слотовая организация данных? ссылки нет, а я так не и не смог понять, что в этом термине от блочности, а что от слотовости
б) что такое "и специальное представление текстов основы. Это представление заменяет текст основы на сответствующий ему бит из хэш-таблицы большого размера." надо думать, что это специальное представление - просто хеш-функция, но почему так запутанно написано? а все потому что конспирация непонятно от кого и непонятно зачем. Хотя не исключаю и недостаток времени. А теперь возьмите и почитайте оригинальную статью MclIroy
http://gpsis.utp.edu.co/downloads/a3udeloz_spell.pdf и Вы поймете, что понятно, а что не очень. :-)
в) ну и наконец последний вопрос (ссылку с PDF только чур не открывать): как называется оригинальная статья, на которую Илья ссылается? конечно, сейчас есть гугл скулар, просто гугл автокорректор в гугле, но раньше я бы, вполне возможно, не нашел бы эту статью, пользуясь альтавистой.

а) "Блочно-слотовая": это вот что. Тогда, в старые-старые времена (1993 год), диски были медленные и памяти было мало, а процессор торомзил. В память читали файл по "блокам". Внутри блоков (то есть единиц обмена информации с жестким диском) для скорости работы процессора и при этом все еще хорошей упаковки, часто устраивась более мелкая блокировка, которую можно условно назвать "слотами" (гнездами).

Например; "блок" - это килобайты (0.5-16, типично 4), а "слот" - скажем 32-256 (типично 32 или 64) байт.

В каждом слоте данные лежат с "инкрементальной упаковкой", так как весь блок распаковывать дорого.

Понятно, что "послотовый" обмен с диском слишком невыгоден: требуется слишком большое оглавление, а файловая система все равно производит обмен не меньше размера сектора или кластера.

Т.о. "Блок" - единица обработки данных для диска, а "слот" - единица обработки данных для процессора.

б) старался писать понятно.

в) Когда я писал эту статью (март 1995), у меня еще не было интернета (он у меня появился в сентябре, а читать статьи я начал в ноябре), статьи появились в сети гораздо позже (siteseer открыли году в 1998, а наполненным он стал не раньше 2000-го, pdf тогда еще не индексировались). Возможно, что я тогда, 10 лет назад, неточную ссылку поставил.

I
На сайте с 26.05.2001
Offline
64
#102

Да мы это уже все более или менее поняли, просто Зодчий невнимательно прочел статью и взбаламутил народ. А МакИлроя я уже в оригинале прочел, слава богу не только в Яндексе есть полки :-)

Ну что самое смешно, что ровно в 300 кб словарь запихнуть без искажений нельзя, потому как где-то 280-290кб это словарь запакованный префиксным кодом с правилами раскрутки суффиксов. А вот в 350-400 при очень большом желании можно.

Приходите завтра, завтра будет! (http://itman666.livejournal.com)
ЗодчийТеней
На сайте с 13.02.2006
Offline
11
#103

разжевали нарешти :-)

itman:
просто Зодчий невнимательно прочел статью и взбаламутил народ.

ну нифигаж себе наезды, а чем взбаламутил позвольте узнать? вопросом как удалось запихнуть словарь с морфологией в 300Кб?

Я, однако, не скажу, что все иллюзии или бред нашего ума нужно называть сумасшествием. Эразм Роттердамский "Похвала глупости".
I
На сайте с 26.05.2001
Offline
64
#104
ЗодчийТеней:
разжевали нарешти :-)

ну нифигаж себе наезды, а чем взбаламутил позвольте узнать? вопросом как удалось запихнуть словарь с морфологией в 300Кб?

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

ЗодчийТеней
На сайте с 13.02.2006
Offline
11
#105
itman:
но чтобы он там точно хранился :-)

можно процитировать где я это сказал? ну а насчет мучал... некто ведь не заставлял отвечать не такли?

I
На сайте с 26.05.2001
Offline
64
#106

Вот на первой странице

Как можно в такой объем запихнуть целый словарь да еще и с морфологией? Кто-то может прокомментировать?

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

ЗодчийТеней
На сайте с 13.02.2006
Offline
11
#107

Точный и целый разные вещи, нетакли? А насчет неточьности решения и «целого» словаря при этом, спорный вопрос

I
На сайте с 26.05.2001
Offline
64
#108
ЗодчийТеней:
Точный и целый разные вещи, нетакли? А насчет неточьности решения и «целого» словаря при этом, спорный вопрос

точный, целый, спорный, фиолетовый....

мне спать пора! счастливо.

AA
На сайте с 16.04.2001
Offline
70
#109
itman:
ровно в 300 кб словарь запихнуть без искажений нельзя, потому как...

Удивлен... Вроде бы, мы с Вами договорились, как это сделать можно (300К - словарь без морфоинформации, 350 - с ней).

С уважением, Антонов Александр.
I
На сайте с 26.05.2001
Offline
64
#110
AlexA:
Удивлен... Вроде бы, мы с Вами договорились, как это сделать можно (300К - словарь без морфоинформации, 350 - с ней).

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

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий