Giter Site home page Giter Site logo

Comments (4)

RiccardoNizzolo avatar RiccardoNizzolo commented on July 28, 2024 1

The init_fm parameter is initialized with value 0.2:
model = FM_FTRL(alpha=0.01, beta=0.01, L1=0.00001, L2=0.1, D=sparse_merge.shape[1], alpha_fm=0.01, L2_fm=0.1, init_fm=0.2, D_fm=200, e_noise=0.0001, iters=17, inv_link="identity", threads=4)

If i call model.__getstate__() just after the initialization I get init_fm=0 but the z array is randomly initialized:
log

The interesting fact is that the Nan came out dependently on the training set:
model.fit(train) -->converge
model.fit(train.sign()) --> get Nan values

from wordbatch.

anttttti avatar anttttti commented on July 28, 2024

I think this is an issue with your parameters.

" 1.0, 0.0, 1020688".. the 0.0 parameter in the middle means you've initialized the factor weights as 0. A init_fm=value of 0.01-0.001 usually works well.

from wordbatch.

SpongebBob avatar SpongebBob commented on July 28, 2024

I have the same problem

If i call model.getstate() just after the initialization I get init_fm=0

All predict values are nan

from wordbatch.

anttttti avatar anttttti commented on July 28, 2024

I could replicate this now. The problem is not with init_fm, that one you could set as 0, but with bad results. The issue is alpha_fm set too high compared to feature values, leading the updates to overflow. Try normalizing the input rows, or starting with very low alpha_fm, <0.01.

This could be fixed by gradient clipping, but in general you would still get low quality models in cases where this is happening. You should normalize the input rows or lower alpha_fm.

from wordbatch.

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.