Code Monkey home page Code Monkey logo

Comments (5)

ita9naiwa avatar ita9naiwa commented on May 27, 2024

한번 확인해볼게요. 제가 구현할 때는 ml-100k,1m,20m에서 lightFM보다 대강 5퍼센트 정도 일관되게 좋았었습니다. 그리고 이 성능차이는 buffalo에서는 adam optimizer를 써서 생기는 것 같았어요.

저렇게 차이가 나는 건 이상하네요. 한번 확인해 볼게요.

from buffalo.

ita9naiwa avatar ita9naiwa commented on May 27, 2024
  1. validation 부분에 오타가 있습니다.

    buffalo/benchmark/models.py

    Lines 351 to 363 in 411aecd

    def warp(self, database, **kwargs):
    from lightfm import LightFM
    opts = self.get_option('lightfm', 'warp', **kwargs)
    data = self.get_database(database, **kwargs)
    warp = LightFM(loss='warp',
    learning_schedule='adagrad',
    no_components=kwargs.get('num_workers'),
    max_sampled=100)
    elapsed, mem_info = self.run(warp.fit, data, data, **opts)
    if kwargs.get('return_instance'):
    return warp
    bpr = None
    return elapsed, mem_info

    no_components=kwargs.get('d')이 되야 할 것 같습니다.

  2. buffalo warp는 default regularization이 있고, epoch 100은 너무 큰 값인 것 같습니당.

이걸 수정해도 이유는 모르겠는데, 여전히 잘 되지 않네요...;
buffalo/benchmark/test_accuracy.py 말고 따로 돌려봤을 때는 lightFM도 잘 됩니다.
버팔로는 scipy.sparse_matrix를 입력으로 받기 힘들어서 같은 데이터로 비교는 못 해봤습니다.

from buffalo.

ummae avatar ummae commented on May 27, 2024

확인 고마워요. BPR로 돌리면 정상적인 수준의 정확도가 나와서 더 이상하네요. 제가 더 살펴보겠습니다.

from buffalo.

ummae avatar ummae commented on May 27, 2024

@ita9naiwa 문제 수정했습니다. d074757

d074757#diff-8e34054f85758613e7b359c945ef4c8cR361

data를 두 번 전달해서 fit이 이상하게 호출된 것 같아요. 수정하고 정상적인 범주로 학습이 되는거 확인했습니다.

from buffalo.

ummae avatar ummae commented on May 27, 2024

LightFM에 대한 BPRMF 퍼포먼스 측정도 다시 해서 교정했습니다.
b5e8621

이슈 종료할께요.

from buffalo.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.