Skip to content

Commit

Permalink
fixed links
Browse files Browse the repository at this point in the history
  • Loading branch information
BalzaniEdoardo committed Nov 7, 2023
1 parent db62140 commit 724522f
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 5 deletions.
2 changes: 1 addition & 1 deletion docs/developers_notes/03-observation_models.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

The `observation_models` module provides objects representing the observations of GLM-like models.

The abstract class `Observations` defines the structure of the subclasses which specify observation types, such as Poisson, Gamma, etc. These objects serve as attributes of the [`nemos.glm.GLM`](../03-glm/#the-concrete-class-glm) class, equipping the GLM with a negative log-likelihood. This is used to define the optimization objective, the deviance which measures model fit quality, and the emission of new observations, for simulating new data.
The abstract class `Observations` defines the structure of the subclasses which specify observation types, such as Poisson, Gamma, etc. These objects serve as attributes of the [`nemos.glm.GLM`](../05-glm/#the-concrete-class-glm) class, equipping the GLM with a negative log-likelihood. This is used to define the optimization objective, the deviance which measures model fit quality, and the emission of new observations, for simulating new data.

## The Abstract class `Observations`

Expand Down
2 changes: 1 addition & 1 deletion docs/developers_notes/04-solver.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

The `solver` module introduces an archetype class `Solver` which provides the structural components for each concrete sub-class.

Objects of type `Solver` provide methods to define an optimization objective, and instantiate a solver for it. These objects serve as attribute of the [`nemos.glm.GLM`](../03-glm/#the-concrete-class-glm), equipping the glm with a solver for learning model parameters.
Objects of type `Solver` provide methods to define an optimization objective, and instantiate a solver for it. These objects serve as attribute of the [`nemos.glm.GLM`](../05-glm/#the-concrete-class-glm), equipping the glm with a solver for learning model parameters.

Solvers are typically optimizers from the `jaxopt` package, but in principle they could be custom optimization routines as long as they respect the `jaxopt` api (i.e., have a `run` and `update` method with the appropriate input/output types).
We choose to rely on `jaxopt` because it provides a comprehensive set of robust, GPU accelerated, batchable and differentiable optimizers in JAX, that are highly customizable.
Expand Down
6 changes: 3 additions & 3 deletions docs/developers_notes/05-glm.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Our design aligns with the `scikit-learn` API, facilitating seamless integration

The classes provided here are modular by design offering a standard foundation for any GLM variant.

Instantiating a specific GLM simply requires providing an observation model (Gamma, Poisson, etc.) and a regularization strategies (Ridge, Lasso, etc.) during initialization. This is done using the [`nemos.observation_models.Observations`](../04-observation_models/#the-abstract-class-observations) and [`nemos.solver.Solver`](../05-solver/#the-abstract-class-solver) objects, respectively.
Instantiating a specific GLM simply requires providing an observation model (Gamma, Poisson, etc.) and a regularization strategies (Ridge, Lasso, etc.) during initialization. This is done using the [`nemos.observation_models.Observations`](../03-observation_models/#the-abstract-class-observations) and [`nemos.solver.Solver`](../04-solver/#the-abstract-class-solver) objects, respectively.


<figure markdown>
Expand All @@ -35,8 +35,8 @@ The `GLM` class provides a direct implementation of the GLM model and is designe

### Attributes

- **`solver`**: Refers to the optimization solver - an object of the [`nemos.solver.Solver`](../05-solver/#the-abstract-class-solver) type. It uses the `jaxopt` solver to minimize the (penalized) negative log-likelihood of the GLM.
- **`observation_models`**: Represents the GLM observation model, which is an object of the [`nemos.observation_models.Observations`](../04-observation_models/#the-abstract-class-observations) type. This model determines the log-likelihood and the emission probability mechanism for the `GLM`.
- **`solver`**: Refers to the optimization solver - an object of the [`nemos.solver.Solver`](../04-solver/#the-abstract-class-solver) type. It uses the `jaxopt` solver to minimize the (penalized) negative log-likelihood of the GLM.
- **`observation_models`**: Represents the GLM observation model, which is an object of the [`nemos.observation_models.Observations`](../03-observation_models/#the-abstract-class-observations) type. This model determines the log-likelihood and the emission probability mechanism for the `GLM`.
- **`coef_`**: Stores the solution for spike basis coefficients as `jax.ndarray` after the fitting process. It is initialized as `None` during class instantiation.
- **`intercept_`**: Stores the bias terms' solutions as `jax.ndarray` after the fitting process. It is initialized as `None` during class instantiation.
- **`solver_state`**: Indicates the solver's state. For specific solver states, refer to the [`jaxopt` documentation](https://jaxopt.github.io/stable/index.html#).
Expand Down

0 comments on commit 724522f

Please sign in to comment.