You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Zero/ZeroLevel/Services/Semantic/Contracts/README.txt

22 lines
1.4 KiB

6 years ago
Реализация основы для семантической работы с текстом.
LexProvider - реализует выделение токенов из текста, где под токеном понимается какое-либо приведение слова.
Например, токеном может являться непосредственно само слово, стем, лемма.
В качестве реализации созданы две фабрики:
SnowbolLexProviderFactory - возвращает провайдеры на основе стемминга 'Snowball'
JustWordLexProviderFactory - возвращает провайдер который принимает за токен непосредственно слово, без изменений (lower case)
Для реализации собственного провайдера потребуется создать класс на основе интерфейса ILexer и реализовать метод Lex,
в котором будет проведена необходимая нормализация слова в нужном семантическом контексте.
Например:
public class LemmaLexer: ILexer
{
public string Lex(string word) { return Lemmatizer.Lemma(word); }
}
После чего можно создать на его основе провайдер:
var provider = new LexProvider(new LemmaLexer());

Powered by TurnKey Linux.