【问题标题】:Snowball Stemming: defining Regions雪球词干:定义区域
【发布时间】:2015-08-06 06:13:36
【问题描述】:

我正在尝试理解 snoball 词干算法。该算法使用两个区域 R1 和 R2,定义如下:

R1 是元音后第一个非元音之后的区域,或者是 如果没有这样的非元音,则词尾的空区域。

R2 是 R1 中元音之后的第一个非元音之后的区域,或 如果没有这样的词,则为词尾的空区域 非元音。

http://snowball.tartarus.org/texts/r1r2.html

例子是

    b   e   a   u   t   i   f   u   l
                      |<------------->|    R1
                              |<----->|    R2

   b   e   a   u   t   y
                     |<->|    R1
                       ->|<-  R2

   a   n   i   m   a   d   v   e   r   s   i   o   n
        |<----------------------------------------->|    R1
                |<--------------------------------->|    R2

   s   p   r   i   n   k   l   e   d
                     |<------------->|    R1
                                   ->|<-  R2

    e   u   c   h   a   r   i   s   t
            |<--------------------->|    R1
                        |<--------->|    R2

我的问题是,为什么 springkled 中的“kled”和圣餐中的“harist”被定义为 R1?我认为正确的结果应该是“inkled”和“arist”?

【问题讨论】:

    标签: nlp stemming linguistics porter-stemmer snowball


    【解决方案1】:

    你应该再读一遍定义,上面写着:

    R1 是第一个非元音元音之后的区域。

    不是:后跟元音。

    sprinkled中,元音后面的第一个非元音是n,所以后面的区域是kled

    eucharist同理,元音后面的第一个非元音是c,所以后面的区域是harist

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-08
      • 1970-01-01
      • 2012-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多