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

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

У яндекса на сайте указаны указано:

«В частности, словарь, обеспечивающий поиск с учетом морфологии русского языка, занимал всего 300Кб, то есть целиком грузился в оперативную память и работал очень быстро.»

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

Я, однако, не скажу, что все иллюзии или бред нашего ума нужно называть сумасшествием. Эразм Роттердамский "Похвала глупости".
J
На сайте с 28.11.2005
Offline
46
#1

Имхо, это были правила (регекспы, допустим) и исключения ;)

Бесплатный скрипт обмена с внутренних (http://live2hack.info/2008/06/26/besplatnyiy-skript-dlya-obmena-ssyilkami-s-vnutrennih-stranits/)
ЗодчийТеней
На сайте с 13.02.2006
Offline
11
#2
Jazzina:
Имхо, это были правила (регекспы, допустим) и исключения ;)

регекспы может быть, но всеже 300Кб? Это ведь без компрессии

lagif
На сайте с 15.12.2004
Offline
30
#3

ЗодчийТеней, Это было, наверняка, дерево, по буквам, как у Андрея Коваленко.

Почитайте тут: http://linguist.nm.ru/ling/rus/help.htm (пункт 3 особенно)

Это тоже пройдет...
ЗодчийТеней
На сайте с 13.02.2006
Offline
11
#4

удалось разыскать список эээ, похоже что основ слов (говорили мне учиться в школе ;-() на основании словарей Зализняка, Мюллера объем порядка 14Кб

lagif:
ЗодчийТеней, Это было, наверняка, дерево, по буквам, как у Андрея Коваленко.
Почитайте тут: http://linguist.nm.ru/ling/rus/help.htm (пункт 3 особенно)

тоже как вариант

I
На сайте с 26.05.2001
Offline
64
#5
ЗодчийТеней:
удалось разыскать список эээ, похоже что основ слов (говорили мне учиться в школе ;-() на основании словарей Зализняка, Мюллера объем порядка 14Кб


тоже как вариант

пришлите если не сложно ссылочку. хотелось бы понять, как три тысячи основ формируют порядка 80-100 тысяч русских слов, среди которых куча слов треть-четверть минимум не пересекается по основам. я думаю, что это либо то, что я вам ответели в привате, либо словарь был очень покоцанный. ну скорее всего истина где-то посредине: немножечко и то и другого.

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

вот ссылочьку не дам, не сохранил увы, кроме словаря на сайте ничего интересного не нашел, сам словарик вот: http://partal.com.ua/files/dicts.EXE, качайте, узучайте.

I
На сайте с 26.05.2001
Offline
64
#7
ЗодчийТеней:
вот ссылочьку не дам, не сохранил увы, кроме словаря на сайте ничего интересного не нашел, сам словарик вот: http://partal.com.ua/files/dicts.EXE, качайте, узучайте.

У Вас есть уверенность, что словарь ВСЕХ псевдооснов Зализняка? У меня есть уверенность, что основ там как-то мало. Возьмем например слово чаинка. В этом файлике нет слов, начинающихся на ч или ча.

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

По поводу дерева букв (trie-дерево). Там в каждую точку ветвления нужно пихать пойнтеры размером 10-16 бит (по одному пойнтеру на каждое поддерево). То есть, скажем, вместо хранения префикса длиной 6-8 символов (30-40 бит) мы храним 10-16 бит (пойнтер). Итого экономия в три раза в самом лучшем случае.

Немного почесав то, что любим чесать, приходим к выводу, что 300 кб - это реально, но только для небольшого словаря, скажем, где тысяч 10 "словооснов" (вместо зализняковских 100-150 тысяч). Фишка в том, что для многих приложений и этого вполне достаточно.

lagif
На сайте с 15.12.2004
Offline
30
#8

itman, А я и не говорила, что дерево занимает 300 Кб. Больше.

I
На сайте с 26.05.2001
Offline
64
#9
lagif:
itman, А я и не говорила, что дерево занимает 300 Кб. Больше.

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

lagif
На сайте с 15.12.2004
Offline
30
#10

itman, Значит, либо словарь маленький, либо на одно слово уходит куда меньше 16 бит.

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