Skip to content

Commit aa393c0

Browse files
authored
Merge pull request #10 from JuliaAI/dev
Clarify meaning of `ingest!` versus `update!`
2 parents 09ae18e + e170e2e commit aa393c0

File tree

2 files changed

+27
-10
lines changed

2 files changed

+27
-10
lines changed

docs/src/index.md

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,29 @@
44
LearnAPI.jl</span>
55
<br>
66
<span style="color: #9558B2;font-size:1.6em;font-style:italic;">
7-
A basic Julia interface for training and applying machine learning models </span>
7+
A basement-level Julia interface for training and applying machine learning models </span>
88
<br><br>
99
```
1010

11+
## Goals
12+
13+
- Ease of implementation for existing machine learning algorithms
14+
15+
- Applicability to a large variety of algorithms
16+
17+
- Provision of clear interface points for model-generic tooling, such as performance
18+
evaluation through resampling, hyperparameter optimization, and iterative model control.
19+
20+
- Should be data container agnostic
21+
22+
- Should be documented in detail
23+
24+
It is *not* a design goal of LearnAPI.jl to provide a convenient interface for the general
25+
user to directly interact with ML models.
26+
1127
## Quick tours
1228

13-
- To see how to **USE** models implementing LearnAPI: [Basic fit/predict
29+
- To see how to **INTERACT WITH** models implementing LearnAPI: [Basic fit/predict
1430
workflow](@ref workflow).
1531

1632
- For developers wanting to **IMPLEMENT** LearnAPI: [Anatomy of
@@ -58,7 +74,8 @@ The following methods, dispatched on model type, are provided:
5874
- `update!`, for adding model iterations, or responding efficiently to other
5975
post-`fit`changes in hyperparameters
6076

61-
- `ingest!`, for incremental learning
77+
- `ingest!`, for incremental learning (training further using *new* data, without
78+
re-initializing learned parameters)
6279

6380
- **operations**, `predict`, `predict_joint`, `transform` and `inverse_transform` for
6481
applying the model to data not used for training

src/accessor_functions.jl

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,18 @@ const ACCESSOR_FUNCTIONS = (
88
"""
99
LearnAPI.feature_importances(model, fitted_params, report)
1010
11-
Return the model-specific feature importances of `model`, given `fittted_params` and
11+
Return the model-specific feature importances of `model`, given `fitted_params` and
1212
`report`, as returned by [`LearnAPI.fit`](@ref), [`LearnAPI.update!`](@ref) or
1313
[`LearnAPI.ingest!`](@ref). The value returned has the form of an abstract vector of
14-
`feature::Symbol => importance::Real` pairs (e.g `[:gender =>0.23, :height =>0.7, :weight
14+
`feature::Symbol => importance::Real` pairs (e.g `[:gender => 0.23, :height => 0.7, :weight
1515
=> 0.1]`).
1616
1717
The `model` supports feature importances if `:feature_importance in
1818
LearnAPI.functions(model)`.
1919
2020
If for some reason a model is sometimes unable to report feature importances, then
21-
`feature_importances` will return all importances as 0.0, as in `[:gender =>0.0, :height
22-
=>0.0, :weight => 0.0]`.
21+
`feature_importances` will return all importances as 0.0, as in `[:gender => 0.0, :height
22+
=> 0.0, :weight => 0.0]`.
2323
2424
# New model implementations
2525
@@ -36,7 +36,7 @@ function feature_importances end
3636
"""
3737
training_losses(model, fitted_params, report)
3838
39-
Return the training losses for `model`, given `fittted_params` and
39+
Return the training losses for `model`, given `fitted_params` and
4040
`report`, as returned by [`LearnAPI.fit`](@ref), [`LearnAPI.update!`](@ref) or
4141
[`LearnAPI.ingest!`](@ref).
4242
@@ -53,7 +53,7 @@ function training_losses end
5353
"""
5454
training_scores(model, fitted_params, report)
5555
56-
Return the training scores for `model`, given `fittted_params` and
56+
Return the training scores for `model`, given `fitted_params` and
5757
`report`, as returned by [`LearnAPI.fit`](@ref), [`LearnAPI.update!`](@ref) or
5858
[`LearnAPI.ingest!`](@ref).
5959
@@ -71,7 +71,7 @@ function training_scores end
7171
"""
7272
training_labels(model, fitted_params, report)
7373
74-
Return the training labels for `model`, given `fittted_params` and
74+
Return the training labels for `model`, given `fitted_params` and
7575
`report`, as returned by [`LearnAPI.fit`](@ref), [`LearnAPI.update!`](@ref) or
7676
[`LearnAPI.ingest!`](@ref).
7777

0 commit comments

Comments
 (0)