lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tom Burton-West (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (LUCENE-4286) Add flag to CJKBigramFilter to allow indexing unigrams as well as bigrams
Date Mon, 06 Aug 2012 16:08:02 GMT

    [ https://issues.apache.org/jira/browse/LUCENE-4286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13429217#comment-13429217
] 

Tom Burton-West commented on LUCENE-4286:
-----------------------------------------

We haven't had a request for this specific feature from readers, we are just assuming that
the 10% of Han queries in our logs that consist of a single character represent real use cases
and we don't want such queries to produce zero results or produce misleading results.

Tom
                
> Add flag to CJKBigramFilter to allow indexing unigrams as well as bigrams
> -------------------------------------------------------------------------
>
>                 Key: LUCENE-4286
>                 URL: https://issues.apache.org/jira/browse/LUCENE-4286
>             Project: Lucene - Core
>          Issue Type: Improvement
>    Affects Versions: 4.0-ALPHA, 3.6.1
>            Reporter: Tom Burton-West
>            Priority: Minor
>             Fix For: 4.0, 5.0
>
>         Attachments: LUCENE-4286.patch, LUCENE-4286.patch
>
>
> Add an optional  flag to the CJKBigramFilter to tell it to also output unigrams.   This
would allow indexing of both bigrams and unigrams and at query time the analyzer could analyze
queries as bigrams unless the query contained a single Han unigram.
> As an example here is a configuration a Solr fieldType with the analyzer for indexing
with the "indexUnigrams" flag set and the analyzer for querying without the flag. 
> <fieldType name="CJK" autoGeneratePhraseQueries="false">
> −
> <analyzer type="index">
>    <tokenizer class="solr.ICUTokenizerFactory"/>
>    <filter class="solr.CJKBigramFilterFactory" indexUnigrams="true" han="true"/>
> </analyzer>
> <analyzer type="query">
>    <tokenizer class="solr.ICUTokenizerFactory"/>
>    <filter class="solr.CJKBigramFilterFactory" han="true"/>
> </analyzer>
> </fieldType>
> Use case: About 10% of our queries that contain Han characters are single character queries.
  The CJKBigram filter only outputs single characters when there are no adjacent bigrammable
characters in the input.  This means we have to create a separate field to index Han unigrams
in order to address single character queries and then write application code to search that
separate field if we detect a single character Han query.  This is rather kludgey.  With the
optional flag, we could configure Solr as above  
> This is somewhat analogous to the flags in LUCENE-1370 for the ShingleFilter used to
allow single word queries (although that uses word n-grams rather than character n-grams.)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message