lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Muir (Commented) (JIRA)" <>
Subject [jira] [Commented] (LUCENE-3767) Explore streaming Viterbi search in Kuromoji
Date Thu, 23 Feb 2012 01:15:48 GMT


Robert Muir commented on LUCENE-3767:

I've done some analysis of these cases and it's possible to add more heuristics to deal with
some that are obviouslt wrong, such a word starting with a long vowel sound in katakana. 
This is a slippery slope that I'm reluctant to pursue...

I've wondered about that also at least for the unknown katakana case: (though I don't know
all the rules that could be applied).

Adding such heuristics isn't really unprecedented, in a way its very similar to the compounds/
package (geared towards german, etc)
using TeX hyphenation rules to restrict word splits to hyphenation breaks; and similar to
DictionaryBasedBreakIterators in
ICU/your JRE that use orthographic rules in combination with a dictionary to segment southeast
asian languages like Thai, and 
not too far from simple rules like "don't separate a base character from any combining characters
that follow it", or "don't
separate a lead surrogate from a trail surrogate" that you would generally use across all

> Explore streaming Viterbi search in Kuromoji
> --------------------------------------------
>                 Key: LUCENE-3767
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: modules/analysis
>            Reporter: Michael McCandless
>            Assignee: Michael McCandless
>             Fix For: 3.6, 4.0
>         Attachments: LUCENE-3767.patch, LUCENE-3767.patch, LUCENE-3767.patch, compound_diffs.txt
> I've been playing with the idea of changing the Kuromoji viterbi
> search to be 2 passes (intersect, backtrace) instead of 4 passes
> (break into sentences, intersect, score, backtrace)... this is very
> much a work in progress, so I'm just getting my current state up.
> It's got tons of nocommits, doesn't properly handle the user dict nor
> extended modes yet, etc.
> One thing I'm playing with is to add a double backtrace for the long
> compound tokens, ie, instead of penalizing these tokens so that
> shorter tokens are picked, leave the scores unchanged but on backtrace
> take that penalty and use it as a threshold for a 2nd best
> segmentation...

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message