На главную О компании Продукты Технологии Публикации Партнерам in English: in English
На главную

   Помощь
Главная
Продукты
Общий форум для всех продуктов

RCO Law Reference Extractor SDK











Расширения стандартных решений
RCO for Oracle: поиск на русском языке
RCO for BackOffice: поиск на русском языке



Инструментарий разработчика
RCO Fact Extractor SDK
RCO Text Categorization Engine
RCO Address Parser
RCO Database Record Cleaner
RCO Morphology SDK
RCO Morphology Professional SDK
RCO Information Extraction Service



Приложения RCO Fact Extractor SDK
RCO Deduplicator SDK
RCO TopExtractor SDK
RCO Glossary Maker SDK
RCO Block Parser SDK
RCO Law Reference Extractor SDK



Инструментарий аналитика
RCO Fact Extractor Desktop
RCO Zoom



Архив продуктов (более не поддерживаются)
RCO Syntactic Engine SDK
RCO Semantic Network SDK
RCO Pattern Extractor SDK
RCO Entity Extractor SDK




Форум

Аноним

 16.02.05, 20:18
Soundex
Добрый день.
У меня такой вопрос: возможно ли узнать примерный (без каких либо модных фишек и прибамбасов, коих наверняка хватает в RCO) алгоритм работы этой функции для русского языка?
Ответить

Плешко Владимир

 16.02.05, 20:51
re: Soundex
Функции Soundex, поиска близких по звучанию слов, в RCO нет. Есть функция поиска слов близких по написанию. В ней сравниваются биграммы (пары символов), составляющие слова, и порядок их следования. Точно не вспомню, кажется, допускается расхождение позиций биграмм в сравниваемых словах на 1 или 2 (это параметр алгоритма). Затем число различий относится, к общему числу сравниваемых биграмм, и масштабируется от 0 до 100.

Чтобы все быстро работало, строится, так называемый, биграммный индекс, который на логическом уровне состоит из четверок:
<Биграмма, ИД_Слова, Длина_Слова, Позиция_Биграммы>.

Перечень слов для построения биграммного индекса берется из входов в индекс Oracle Text.

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

Мог где-то слегка наврать...

"Разве все упомнишь, что помнишь"
из к-ф "Облако-рай"
Ответить

Плешко Владимир

 16.02.05, 22:36
re: re: Soundex
Гадский софт исказил часть текста (принял за тег и вырезал). Повторяю фрагмент:

Чтобы все быстро работало, строится, так называемый, биграммный индекс, который на логическом уровне состоит из четверок:
&lt;Биграмма, ИД_Слова, Длина_Слова, Позиция_Биграммы&gt;
Ответить

asdf

 17.02.05, 08:50
re: re: re: Soundex
Спасибо за консультацию, Владимир.
Еще вопрос: "функция поиска слов близких по написанию", понятно, отличается от soundex. "близкие по написанию слова" - можно чуть поподробнее в каком смысле "близкие"?
Ответить

Плешко Владимир

 17.02.05, 13:27
re: re: re: re: Soundex
"Близкие" - в смысле совпадения их фрагментов (биграмм). Это не расстояние редактирования (еще называют лексикографическое, Левенштейна), где считается число операций.

Между этими расстояниями есть очевидная зависимость:

BigrDist(s1,s2) <= 2*EditDist(s1,s2).

В идеале лучше использовать расстояние редактирования, но на больших объемах это очень накладно. Поэтому все используют более "грубые" биграммное и триграммное расстояния.
Ответить

Плешко Владимир

 17.02.05, 14:02
re: re: re: re: re: Soundex
Опять исказился мой текст. Там должно ьыит неравенство:


BigrDist(s1,s2) &lt;= 2*EditDist(s1,s2).
Ответить
Новое сообщение






Контакты

тел./факс: +7 495 287-9887    e-mail: info@rco.ru