Commit graph

140 commits

Author SHA1 Message Date
James Rodewig
c757f9e4e7
[DOCS] Fix double spaces (#71082) (#71120) 2021-03-31 11:43:34 -04:00
István Zoltán Szabó
cdde73d5ff
[DOCS] Adds source index privileges required for Explain DFA API docs. (#70978) (#71033) 2021-03-30 12:22:23 +02:00
István Zoltán Szabó
591e93397a
[DOCS] Removes beta labels from DFA related docs. (#70808) (#70902) 2021-03-26 10:25:36 +01:00
Lisa Cawley
bf8024b9e7
[DOCS] Edits machine learning settings (#69947) (#70174)
Co-authored-by: David Roberts <dave.roberts@elastic.co>
2021-03-09 11:35:29 -08:00
Lisa Cawley
2e7ee9abcc
[DOCS] Edits delete trained model alias API (#70119) (#70120) 2021-03-09 08:03:13 -08:00
István Zoltán Szabó
646534bda0
[DOCS] Adds hyperparameters option to the include setting of GET trained models API. (#69959) (#69978) 2021-03-05 09:54:34 +01:00
Benjamin Trent
3bef185e06
[7.x] [ML] adding new _preview endpoint for data frame analytics (#69453) (#69729)
* [ML] adding new _preview endpoint for data frame analytics (#69453)

This commit adds a new `_preview` endpoint for data frame analytics.

This allows users to see the data on which their model will be trained. This is especially useful
in the arrival of custom feature processors.

The API design is a similar to datafeed `_preview` and data frame analytics `_explain`.
2021-03-01 14:47:32 -05:00
Lisa Cawley
119af4e14a
[DOCS] Edits trained model alias API (#69491) (#69560) 2021-02-24 09:30:47 -08:00
Dimitris Athanasiou
98c69cedce
[7.x][ML] Add runtime mappings to data frame analytics source config … (#69284)
Users can now specify runtime mappings as part of the source config
of a data frame analytics job. Those runtime mappings become part of
the mapping of the destination index. This ensures the fields are
accessible in the destination index even if the relevant data frame
analytics job gets deleted.

Closes #65056

Backport of #69183
2021-02-19 20:17:06 +02:00
Benjamin Trent
1e15fe5da6
[ML] add new delete trained model aliases API (#69195) (#69221)
In addition to creating and re-assigning model aliases, users should be able to delete existing and unused model aliases.
2021-02-19 07:39:48 -05:00
Benjamin Trent
3250dd763a
[7.x] [ML] adds new trained model alias API to simplify trained model updates and deployments (#68922) (#69208)
* [ML] adds new trained model alias API to simplify trained model updates and deployments (#68922)

A `model_alias` allows trained models to be referred by a user defined moniker.

This not only improves the readability and simplicity of numerous API calls, but it allows for simpler deployment and upgrade procedures for trained models.

Previously, if you referenced a model ID directly within an ingest pipeline, when you have a new model that performs better than an earlier referenced model, you have to update the pipeline itself. If this model was used in numerous pipelines, ALL those pipelines would have to be updated.

When using a `model_alias` in an ingest pipeline, only that `model_alias` needs to be updated. Then, the underlying referenced model will change in place for all ingest pipelines automatically.

An additional benefit is that the model referenced is not changed until it is fully loaded into cache, this way throughput is not hampered by changing models.
2021-02-18 15:24:24 -05:00
Lisa Cawley
78cc644ef0
[DOCS] Fixes n_gram_encoding in data frame analytics APIs (#69084) (#69089) 2021-02-16 14:41:38 -08:00
Valeriy Khakhutskyy
4bbd31a268
[7.x][ML] Add early stopping DFA configuration parameter (#68271)
The PR adds early_stopping_enabled optional data frame analysis configuration parameter. The enhancement was already described in elastic/ml-cpp#1676 and so I mark it here as non-issue.

Backport of #68099.
2021-02-01 14:11:06 +01:00
Dimitris Athanasiou
9e55623c29
[7.x][ML] Expand regression/classification hyperparameters (#67950) (#67983)
Expands data frame analytics regression and classification
analyses with the followin hyperparameters:

- alpha
- downsample_factor
- eta_growth_rate_per_tree
- max_optimization_rounds_per_hyperparameter
- soft_tree_depth_limit
- soft_tree_depth_tolerance

Backport of #67950
2021-01-26 15:48:13 +02:00
István Zoltán Szabó
9f7ca2649c
[DOCS] Adds custom feature processors description to PUT DFA API (#67424) (#67678)
Co-authored-by: Benjamin Trent <ben.w.trent@gmail.com>
2021-01-19 10:39:46 +01:00
Dimitris Athanasiou
b9fbda1829
[7.x][ML] Remove DFA job states reindexing and analyzing from docs (#67658) (#67662)
These states do no longer exist as of #67423

Backport of #67658
2021-01-18 17:56:59 +02:00
Benjamin Trent
05d88f71d3
[ML] [DOCS] adding missing fields to the get trained models API docs (#67590) (#67598)
Adds missing fields description, inference_config, and input to the GET trained models API documentation
2021-01-15 13:38:00 -05:00
István Zoltán Szabó
2a66cb60e0
[DOCS] Adds hyperparameter metadata property to GET trained models API docs. (#67412) (#67426) 2021-01-13 14:34:54 +01:00
István Zoltán Szabó
2f7240d271
[DOCS] Improves inference processor linking and docs (#66119) (#66983) 2021-01-05 14:04:51 +01:00
Lisa Cawley
751a200e7e
[DOCS] Add custom feature processor example (#64681) (#64736) 2020-11-06 11:07:32 -08:00
James Rodewig
aea83909d9
[DOCS] Fix case for 'Boolean' (#64299) (#64341) 2020-10-29 10:04:20 -04:00
István Zoltán Szabó
b822e582c3
[DOCS] Changes experimental flag to beta in DFA related docs (#63992) (#64176) 2020-10-26 18:04:21 +01:00
Lisa Cawley
b6671eedfa [DOCS] Add tips for num_top_classes classification parameter (#63781) 2020-10-21 10:02:22 -07:00
István Zoltán Szabó
f608560020
[DOCS] Expands DFA evaluation API docs with the default set of metrics (#63971) (#63995) 2020-10-21 15:11:39 +02:00
Benjamin Trent
b9dc522cb4
[7.x] [ML] adding new flag exclude_generated that removes generated fields in GET config APIs (#63899)(#63092) (#63177)
* [ML] adding for_export flag for ml plugin GET resource APIs (#63092)

This adds the new `for_export` flag to the following APIs:

- GET _ml/anomaly_detection/<job_id>
- GET _ml/datafeeds/<datafeed_id>
- GET _ml/data_frame/analytics/<analytics_id>

The flag is designed for cloning or exporting configuration objects to later be put into the same cluster or a separate cluster.

The following fields are not returned in the objects:

- any field that is not user settable (e.g. version, create_time)
- any field that is a calculated default value (e.g. datafeed chunking_config)
- any field that would effectively require changing to be of use (e.g. datafeed job_id)
- any field that is automatically set via another Elastic stack process (e.g. anomaly job custom_settings.created_by)

closes https://github.com/elastic/elasticsearch/issues/63055

* [ML] adding new flag exclude_generated that removes generated fields in GET config APIs (#63899)

When exporting and cloning ml configurations in a cluster it can be
frustrating to remove all the fields that were generated by
the plugin. Especially as the number of these fields change
from version to version.

This flag, exclude_generated, allows the GET config APIs to return
configurations with these generated fields removed.

APIs supporting this flag:
- GET _ml/anomaly_detection/<job_id>
- GET _ml/datafeeds/<datafeed_id>
- GET _ml/data_frame/analytics/<analytics_id>

The following fields are not returned in the objects:

- any field that is not user settable (e.g. version, create_time)
- any field that is a calculated default value (e.g. datafeed chunking_config)
- any field that is automatically set via another Elastic stack process (e.g. anomaly job custom_settings.created_by)

relates to #63055
2020-10-20 12:42:52 -04:00
Dimitris Athanasiou
2bd133c736
[7.x][ML] Rename evaluation metric result fields to value (#63809) (#63921)
Renames data frame analytics _evaluate API results as follows:

  - per class accuracy renamed from `accuracy` to `value`
  - per class precision renamed from `precision` to `value`
  - per class recall renamed from `recall` to `value`
  - auc_roc `score` renamed to `value` for both outlier detection and classification

Backport of #63809
2020-10-20 14:16:44 +03:00
Przemysław Witek
bb7df2eb5f
[ML] Allow setting num_top_classes to a special value -1 (#63587) (#63601) 2020-10-13 14:00:12 +02:00
István Zoltán Szabó
c87827cfcf
[DOCS] Adds AUC ROC classification metric to the API examples (#63563) (#63595) 2020-10-13 12:18:11 +02:00
István Zoltán Szabó
bcc2c8ed1e
[DOCS] Adds huber and msle metrics to Evaluate API example calls (#63414) (#63496) 2020-10-08 17:28:36 +02:00
Przemysław Witek
a97bd5b787
[7.x] [ML] Validate that AucRoc has the data necessary to be calculated (#63302) (#63453) 2020-10-08 09:31:45 +02:00
Lisa Cawley
8f76c89cd3
[7.x][DOCS] Add feature_importance_baseline to get trained model API (#63279) (#63336)
Co-authored-by: Benjamin Trent <ben.w.trent@gmail.com>
2020-10-06 10:08:34 -07:00
István Zoltán Szabó
a3a373b67f
[DOCS] Adds delta and offset parameters to Evaluate DFA API docs (#63317) (#63329) 2020-10-06 16:49:08 +02:00
Lisa Cawley
4de6104dae
[DOCS] Fix titles for ML APIs (#63152) (#63207) 2020-10-02 14:01:01 -07:00
István Zoltán Szabó
8278bdb7de [DOCS] Updates trained models API docs titles. (#63165) 2020-10-02 10:16:19 -07:00
Benjamin Trent
cfcf973259
[7.x] [ML] renames */inference* apis to */trained_models* (#63097) (#63136)
* [ML] renames */inference* apis to */trained_models* (#63097)

This commit renames all `inference` CRUD APIs to `trained_models`.

This aligns with internal terminology, documentation, and use-cases.
2020-10-02 07:34:28 -04:00
Przemysław Witek
4366d58564
[7.x] [ML] Implement AucRoc metric for classification (#60502) (#63051) 2020-09-30 12:55:52 +02:00
Lisa Cawley
fa48b5c836 [DOCS] Formatting fix in get trained model API (#62643) 2020-09-21 08:22:40 -07:00
Benjamin Trent
e163559e4c
[7.x] [ML] Add new include flag to GET inference/<model_id> API for model training metadata (#61922) (#62620)
* [ML] Add new include flag to GET inference/<model_id> API for model training metadata (#61922)

Adds new flag include to the get trained models API
The flag initially has two valid values: definition, total_feature_importance.
Consequently, the old include_model_definition flag is now deprecated.
When total_feature_importance is included, the total_feature_importance field is included in the model metadata object.
Including definition is the same as previously setting include_model_definition=true.

* fixing test

* Update x-pack/plugin/core/src/test/java/org/elasticsearch/xpack/core/ml/action/GetTrainedModelsRequestTests.java
2020-09-18 10:07:35 -04:00
Lisa Cawley
6320967546 [DOCS] Minor typo in ML API (#62414) 2020-09-15 13:20:55 -07:00
Lisa Cawley
78b955eb86 [DOCS] Fix from and size descriptions for model APIs (#62128) 2020-09-08 12:56:36 -07:00
Lisa Cawley
f0e7d88699 [DOCS] Fix allow_no_match description for model APIs (#62008) 2020-09-08 08:15:16 -07:00
István Zoltán Szabó
b07b75ce14
[DOCS] Removes inference from the names of trained model APIs. (#62036) (#62041)
# Conflicts:
#	docs/reference/ml/df-analytics/apis/get-inference-trained-model.asciidoc
2020-09-07 12:14:13 +02:00
Benjamin Trent
1ae2923632
[7.x] [ML] adding docs + hlrc for data frame analysis feature_processors (#61149) (#61493)
* [ML] adding docs + hlrc for data frame analysis feature_processors (#61149)

Adds HLRC and some docs for the new feature_processors field in Data frame analytics.

Co-authored-by: Przemysław Witek <przemyslaw.witek@elastic.co>
Co-authored-by: Lisa Cawley <lcawley@elastic.co>
2020-08-24 12:56:21 -04:00
James Rodewig
60876a0e32
[DOCS] Replace Wikipedia links with attribute (#61171) (#61209) 2020-08-17 11:27:04 -04:00
István Zoltán Szabó
35b9f2b46b [DOCS] Adds inference phase to get DFA job stats. (#60737) 2020-08-05 16:26:02 +02:00
Lisa Cawley
2665bfffce
[DOCS] Fix security links in machine learning APIs (#60098) (#60152) 2020-07-23 16:43:10 -07:00
James Rodewig
b302b09b85
[DOCS] Reformat snippets to use two-space indents (#59973) (#59994) 2020-07-21 15:49:58 -04:00
Przemysław Witek
283a1f605c
Rename binary_soft_classification evaluation to outlier_detection (#59951) (#59970) 2020-07-21 15:15:04 +02:00
Lisa Cawley
8f8d24b3c1
[DOCS] Changes level offset in data frame analytics APIs (#59919) (#59923) 2020-07-20 13:06:29 -07:00
Benjamin Trent
a28547c4b4
[7.x] [ML] add new custom field to trained model processors (#59542) (#59700)
* [ML] add new `custom` field to trained model processors (#59542)

This commit adds the new configurable field `custom`.

`custom` indicates if the preprocessor was submitted by a user or automatically created by the analytics job.

Eventually, this field will be used in calculating feature importance. When `custom` is true, the feature importance for
the processed fields is calculated. When `false` the current behavior is the same (we calculate the importance for the originating field/feature).

This also adds new required methods to the preprocessor interface. If users are to supply their own preprocessors
in the analytics job configuration, we need to know the input and output field names.
2020-07-16 10:57:38 -04:00