You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@lucene.apache.org by Gong Li <ee...@gmail.com> on 2011/02/12 12:04:05 UTC

About WordNet synonyms search

Hi,

I am tying WordNet synonyms into an SynonymAnalyzer. But I find there is a
wrong in the search result as following:

input keywords: *browned fox*

query.toString(): (content:browned content:brown) (content:fox content:trick
content:throw content:slyboots content:fuddle content:fob content:dodger
content:discombobulate content:confuse content:confound content:befuddle
content:bedevil)

topDocs.totalHits: 2

doc.get("content"):
Result1: We can <b><font color = RED>*make*</font></b> it easy by Bluetooth
for the communications between computer
Result2: The quick <b><font color = RED>*brown*</font></b> <b><font color =
RED>*fox*</font></b> jump over the lazy dog

Result2 is desired result. WHY does it find *make *as the search result???
HOW can I fix the problem???

Re: About WordNet synonyms search

Posted by Erick Erickson <er...@gmail.com>.
Ah, you're expanding synonyms at query time. Missed that.

How is the indexing done in the first place? What analyzer is used? Have you
even tried using Luke to look into your index and see what's actually in there?

What is shown when you do an explain?

Most often this kind of thing is a result of your index not having what you
expect, but until you look you can only guess..

Best
Erick

On Sat, Feb 12, 2011 at 12:04 PM, Gong Li <ee...@gmail.com> wrote:
> I print out the synonym for browned fox shown as following. But NO "make" is
> in the list.
>
> I mean I can use synonym to search the contents. When I search for "browned
> fox", it should get "brown fox" as the result, but it get "make" as one of
> the results. make is not the synonym, so it should not in the result.
>
> What is wrong???
>
> browned  (content:browned content:brown)
> fox (content:fox content:trick content:throw content:slyboots content:fuddle
> content:fob content:dodger content:discombobulate content:confuse
> content:confound content:befuddle content:bedevil)
>
> 2011/2/13 Erick Erickson <er...@gmail.com>
>
>> At a guess make is a synonym for one of your search terms. doc.get
>> returns the original content, not synonyms.
>>
>>
>> So what are your synonyms that might be a factor here?
>>
>> Best
>> Erick
>>
>> On Sat, Feb 12, 2011 at 6:04 AM, Gong Li <ee...@gmail.com> wrote:
>> > Hi,
>> >
>> > I am tying WordNet synonyms into an SynonymAnalyzer. But I find there is
>> a
>> > wrong in the search result as following:
>> >
>> > input keywords: *browned fox*
>> >
>> > query.toString(): (content:browned content:brown) (content:fox
>> content:trick
>> > content:throw content:slyboots content:fuddle content:fob content:dodger
>> > content:discombobulate content:confuse content:confound content:befuddle
>> > content:bedevil)
>> >
>> > topDocs.totalHits: 2
>> >
>> > doc.get("content"):
>> > Result1: We can <b><font color = RED>*make*</font></b> it easy by
>> Bluetooth
>> > for the communications between computer
>> > Result2: The quick <b><font color = RED>*brown*</font></b> <b><font color
>> =
>> > RED>*fox*</font></b> jump over the lazy dog
>> >
>> > Result2 is desired result. WHY does it find *make *as the search
>> result???
>> > HOW can I fix the problem???
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
>> For additional commands, e-mail: java-user-help@lucene.apache.org
>>
>>
>

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


Re: About WordNet synonyms search

Posted by Gong Li <ee...@gmail.com>.
I print out the synonym for browned fox shown as following. But NO "make" is
in the list.

I mean I can use synonym to search the contents. When I search for "browned
fox", it should get "brown fox" as the result, but it get "make" as one of
the results. make is not the synonym, so it should not in the result.

What is wrong???

browned  (content:browned content:brown)
fox (content:fox content:trick content:throw content:slyboots content:fuddle
content:fob content:dodger content:discombobulate content:confuse
content:confound content:befuddle content:bedevil)

2011/2/13 Erick Erickson <er...@gmail.com>

> At a guess make is a synonym for one of your search terms. doc.get
> returns the original content, not synonyms.
>
>
> So what are your synonyms that might be a factor here?
>
> Best
> Erick
>
> On Sat, Feb 12, 2011 at 6:04 AM, Gong Li <ee...@gmail.com> wrote:
> > Hi,
> >
> > I am tying WordNet synonyms into an SynonymAnalyzer. But I find there is
> a
> > wrong in the search result as following:
> >
> > input keywords: *browned fox*
> >
> > query.toString(): (content:browned content:brown) (content:fox
> content:trick
> > content:throw content:slyboots content:fuddle content:fob content:dodger
> > content:discombobulate content:confuse content:confound content:befuddle
> > content:bedevil)
> >
> > topDocs.totalHits: 2
> >
> > doc.get("content"):
> > Result1: We can <b><font color = RED>*make*</font></b> it easy by
> Bluetooth
> > for the communications between computer
> > Result2: The quick <b><font color = RED>*brown*</font></b> <b><font color
> =
> > RED>*fox*</font></b> jump over the lazy dog
> >
> > Result2 is desired result. WHY does it find *make *as the search
> result???
> > HOW can I fix the problem???
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
> For additional commands, e-mail: java-user-help@lucene.apache.org
>
>

Re: About WordNet synonyms search

Posted by Erick Erickson <er...@gmail.com>.
At a guess make is a synonym for one of your search terms. doc.get
returns the original content, not synonyms.


So what are your synonyms that might be a factor here?

Best
Erick

On Sat, Feb 12, 2011 at 6:04 AM, Gong Li <ee...@gmail.com> wrote:
> Hi,
>
> I am tying WordNet synonyms into an SynonymAnalyzer. But I find there is a
> wrong in the search result as following:
>
> input keywords: *browned fox*
>
> query.toString(): (content:browned content:brown) (content:fox content:trick
> content:throw content:slyboots content:fuddle content:fob content:dodger
> content:discombobulate content:confuse content:confound content:befuddle
> content:bedevil)
>
> topDocs.totalHits: 2
>
> doc.get("content"):
> Result1: We can <b><font color = RED>*make*</font></b> it easy by Bluetooth
> for the communications between computer
> Result2: The quick <b><font color = RED>*brown*</font></b> <b><font color =
> RED>*fox*</font></b> jump over the lazy dog
>
> Result2 is desired result. WHY does it find *make *as the search result???
> HOW can I fix the problem???
>

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