Comments (5)
Updates to the manual should go with the PR that adds the new functions. We need to be checking that in code review in stan-dev/stan.
If the new functions have already been merged, then we'll have to do this through a separate PR. If they haven't been merged, then the manual updates shold be part of the PR for adding the function.
from docs.
Can we get log_mix
updated? I didn't even know that this was updated until a few days ago!
There's possibly some confusion (at least on my end) about how the manual specifies the erroneous attempt to vectorize mixtures with this "vectorized" implementation that I would like cleared up.
from docs.
I'm not even sure what the signature is here. I'm tagging @WardBrian who's been cleaning up all of our doc and should be able to figure out from the OCaml code what exactly is supported in the way of signatures.
I've used shorthand to describe complicated signatures, like reals
to denote scalars or 1D containers.
And yes, rewriting examples in the doc that use log_sum_exp
using log_mix
would be great.
from docs.
Sorry, this was one that I should have done a long time ago. If it's helpful, an example of the usage is in the example models repo here: https://github.com/stan-dev/example-models/blob/master/basic_estimators/normal_mixture_k.stan
Also, some discussion of the usage/syntax are in these comment threads from the original PRs:
from docs.
The supported signatures in stanc3 are:
log_mix(real, real, real) => real
log_mix(vector, vector) => real
log_mix(vector, row_vector) => real
log_mix(vector, array[] real) => real
log_mix(vector, array[] vector) => real
log_mix(vector, array[] row_vector) => real
log_mix(row_vector, vector) => real
log_mix(row_vector, row_vector) => real
log_mix(row_vector, array[] real) => real
log_mix(row_vector, array[] vector) => real
log_mix(row_vector, array[] row_vector) => real
log_mix(array[] real, vector) => real
log_mix(array[] real, row_vector) => real
log_mix(array[] real, array[] real) => real
log_mix(array[] real, array[] vector) => real
log_mix(array[] real, array[] row_vector) => real
I think the standard we use is to list the original function and then use the R
/T
syntax to list vectorized options, see e.g. https://mc-stan.org/docs/2_28/functions-reference/betafun.html
Though functions like beta seem to be much more vectorized than log_mix is. Here are all it's valid signatures in stanc3:
https://gist.github.com/WardBrian/0498ea88312fed7de4a3eaa439e6ec2c
from docs.
Related Issues (20)
- add Survival models chapter to Stan User's Guide TOC
- Stan User's Guide Efficiency Tuning Section - beta_binomial? HOT 1
- add links to pdfs from docs homepage and overview pages
- add dark mode for website
- Problem searching the functions reference HOT 3
- Incorrect equation for wiener pdf
- [User Guide] Stan Translation efforts HOT 3
- Add more in-depth description of Pathfinder to the reference-manual
- Functions Refernce: return type of `bernoulli_rng` - `R` or `ints`? HOT 1
- Functions Reference - Array reductions contain vector-only signatures HOT 2
- needs updating: Efficiency-tuning/standardizing-predictors-and-outputs HOT 6
- Update documentation for "Missing Data: Sliced missing" data to new array syntax HOT 1
- Incorrect equation in the truncated data section HOT 1
- replace "sampling statement" with "target augmentation statement" HOT 2
- document normal sufficient stats in User's Guide efficiency chapter HOT 1
- Document that non-data variables are not allowed in top level size declarations - consequences for `generated quantities` block HOT 6
- Document new overloads of `wiener_lpdf`
- question - mismatch between SUG chapters
- Add to Stan CSV format doc that the number of digits can be changed
- document minimal hardware, OS requirements
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from docs.