Giter Club home page Giter Club logo

Comments (4)

TTitscher avatar TTitscher commented on June 2, 2024

I mostly dealt with VB, so the VariationalBayesProblem, where the prior defines the start values, see e.g. here. The same should generally be true for Bayesian problems. So, technically, this start_vector is only present in a deterministic inference, right?

The LatentParameters is really just a mapping for multiple parameter lists to a global name, b in your example. So a latent['b'].set_value(...) would rather update all the individual parameter lists linked to that b (and not fill a start_vector).

So maybe you could first clarify, what you intend to do.

from bayem.

joergfunger avatar joergfunger commented on June 2, 2024

The start vector is (as you pointed out) for a deterministed problem. But it might also be relevant for testing, where you want to evaluate the model error for a specific set of parameters in the global problem. I agree that the set function would just set all values, we would probably have an extract function again. Or a function that somehow generates the global startvector

startvector = inference_problem.start_vector({'b':0, 'a':100})

The not defined variables will be extracted from the first parameter list that has this entry.

from bayem.

TTitscher avatar TTitscher commented on June 2, 2024

Except for VB (which is part of the lib itself), we decided to not have code to define an algorithm/tool specific prior. So if we interpret the start_vector as the prior of a deterministic inference, we should not have something like this. But this is really silly and, as you pointed out, also nice for testing.

And I like your code idea! As we strive for total clarity and unambiguousness, I would raise an exception like:

Global parameter "c" has value 42 in listA and value 6174 in listB [and I do not know which one to choose]. Please specify it in the argument dict.

from bayem.

joergfunger avatar joergfunger commented on June 2, 2024

The exception is even better in case there is some discrepancies.

from bayem.

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.