mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-23 16:12:01 +00:00
3.5 KiB
3.5 KiB
toc_priority | toc_title |
---|---|
67 | NLP |
Функции для работы с ествественным языком
stem
Данная функция проводит стемминг заданного слова.
Синтаксис
stem('language', word)
Аргументы
language
— Язык, правила которого будут применены для стемминга. Допускается только нижний регистр. String.word
— Слово подлежащее стеммингу. Допускается только нижний регистр. String.
Examples
Query:
SELECT SELECT arrayMap(x -> stem('en', x), ['I', 'think', 'it', 'is', 'a', 'blessing', 'in', 'disguise']) as res;
Result:
┌─res────────────────────────────────────────────────┐
│ ['I','think','it','is','a','bless','in','disguis'] │
└────────────────────────────────────────────────────┘
lemmatize
Данная функция проводит лемматизацию для заданного слова.
Синтаксис
lemmatize('language', word)
Аргументы
language
— Язык, правила которого будут применены для лемматизации. String.word
— Слово, подлежащее лемматизации. Допускается только нижний регистр. String.
Примеры
Запрос:
SELECT lemmatize('en', 'wolves');
Результат:
┌─lemmatize("wolves")─┐
│ "wolf" │
└─────────────────────┘
Конфигурация:
<lemmatizers>
<lemmatizer>
<lang>en</lang>
<path>en.bin</path>
</lemmatizer>
</lemmatizers>
synonyms
Находит синонимы к заданному слову.
Синтаксис
synonyms('extension_name', word)
Аргументы
extension_name
— Название расширения, в котором будет проводиться поиск. String.word
— Слово, которое будет искаться в расширении. String.
Примеры
Запрос:
SELECT synonyms('list', 'important');
Результат:
┌─synonyms('list', 'important')────────────┐
│ ['important','big','critical','crucial'] │
└──────────────────────────────────────────┘
Конфигурация:
<synonyms_extensions>
<extension>
<name>en</name>
<type>plain</type>
<path>en.txt</path>
</extension>
<extension>
<name>en</name>
<type>wordnet</type>
<path>en/</path>
</extension>
</synonyms_extensions>