Как создать класс индивидуальности, используя пилицен? - PullRequest
0 голосов
/ 26 декабря 2018

В Java настраиваемая функция оценки сходства создается путем расширения класса SimilarityBase и переопределения метода оценки.Тем не менее, я не могу найти способ сделать то же самое с помощью пилюцена.

Я пытался расширить класс SimilarityBase так же, как мы делаем в Java.

class CustomSimilarity(SimilarityBase):
        def __init__(self):
        SimilarityBase.__init__(self)

    def score(self,stats,termfreq,doclen):
        return termfreq

    def toString(self):
        return "Term Frequency Scoring"

Однако я получаюошибка при назначении класса CustomSimilairity моему поисковику индекса

lucene.JavaError: <super: <class 'JavaError'>, <JavaError object>>
    Java stacktrace:
java.lang.InstantiationException: 

1 Ответ

0 голосов
/ 26 декабря 2018

Я нашел решение.Я не понимаю, почему это так.

class CustomSimilarity(SimilarityBase):
    def __init__(self):
        #self.super = SimilarityBase()
        pass

    def score(self,stats,termfreq,doclen):
        return termfreq

    def toString(self):
        return "Term Frequency Scoring"
...