Giter VIP home page Giter VIP logo

Comments (4)

EdwardRaff avatar EdwardRaff commented on August 19, 2024

Classifiers/Regessors with reasonable default parameters already have (or should) constructors that fill in the options for you. Otherwise use the guess methods of the class to determine a reasonable distribution to search from.

from jsat.

camdirigo avatar camdirigo commented on August 19, 2024

Thanks for the rapid reply, Edward. I have no problem with using a default constructor for classifiers such as NaiveBayes() and NewGLMNET(), but this does not seem to be the case with Kernel-based classifiers. For instance, I am trying to construct a Forgetron, but it requires the parameters KernelTrick kernel and int budget. These options do not appear to fill in for me. I attempted to construct a KernelTrick object like KernelTrick kernel = new KernelTrick(), but was not able to instantiate the object in this way. Could you please provide insight into this situation?

from jsat.

EdwardRaff avatar EdwardRaff commented on August 19, 2024

As I said, those do not have no-arg constructors because there is no reasonable default value. Such things usually require a hyper-parameter search.

JSAT provides help to make that easier, with the Grid/Random search objects - and can auto-populate some parameters based on the aforementioned guess methods some classes have. See this blog post for some details, but if you don't understand Machine Learning well you need to be especially careful not to over-fit using these methods.

KernelTrick kernel = new KernelTrick(), but was not able to instantiate the object in this way. Could you please provide insight into this situation?

Its an interface, you can't instantiate interfaces - they define the contract.

from jsat.

camdirigo avatar camdirigo commented on August 19, 2024

Thanks for directing me to your hyperparameter example. By looking at the example, I figured out KernelTrick objects need to be declared as a parameter with the following syntax:
Classifier classifier = new Forgetron(new RBFKernel(),500);

I will refer back to the original papers to determine the parameters as well as via grid search. Thanks again.

from jsat.

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.