有沒有辦法從令牌n-gram中去除前導和尾隨停用詞?Solr/Lucene令牌n-gram:僅去除前導和尾隨停用詞
目前,我有如下組合,從而消除任何正克含有禁用詞:
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.ShingleFilterFactory" minShingleSize="2" maxShingleSize="3"
outputUnigrams="true" outputUnigramsIfNoShingles="false" tokenSeparator=" "/>
<filter class="solr.PatternReplaceFilterFactory" pattern=".*_.*" replacement=""/>
</analyzer>
例如,如果我的文檔中包含這些n元語法:
「倫敦塔」,「塔在倫敦」,‘倫敦’,‘倫敦’,
用‘的,在’爲停止詞,瓦板過濾器會產生:
塔_倫敦,塔_倫敦,_倫敦,倫敦
(注意,然而,第二個「塔_倫敦」是從第一,但這個信息比特被丟失不同)
,然後將圖案濾波器將刪除所述第一3的n-gram 。
我真正想要做的是保持「倫敦塔」,「倫敦塔」,「倫敦」,「倫敦」。
這可能嗎?
非常感謝!
如果您擔心信息丟失,爲什麼要刪除停用詞?在我看來,常見的停用詞在句子的開頭或結尾並不比中間的影響小。畢竟「在途中」和「在途中」的意義明顯不同。爲什麼不直接從分析儀中徹底刪除'StopFilterFactory'? – femtoRgon