0

Are there any out-of-the-box stemming algorithms which remove y from the ends of words? If not how is making funky = funk generally dealt with?

user3494047
  • 1,643
  • 4
  • 31
  • 61

1 Answers1

1

I'd stick to lovins English stem filter. You can set-up your mapping via following setting:

curl -XPUT http://localhost:9200/my_test_01 -d '
{
  "settings": {
    "analysis": {
      "analyzer" : {
        "my_analyzer" : {
          "tokenizer" : "standard",
          "filter" : ["standard", "lowercase", "my_stemmer"]
        }
      },
      "filter" : {
        "my_stemmer" : {
          "type" : "stemmer",
          "name" : "lovins"
        }
      }
    }
  },
  "mappings": {
    "stem": {
      "properties": {
        "name": {
          "type": "text",
          "analyzer": "my_analyzer"
        }
      }
    }
  }
}'

I've tested it and it does good job for:

  • funky -> funk
  • funny -> fun
  • generally -> general
  • prohibitively -> prohibit
  • singlehandedly -> singlehanded
  • nifty -> nift
Pavel Vasilev
  • 1,002
  • 1
  • 10
  • 11