<commit_before>## Version

Represents the polyaxon file specification version.

Example:

```yaml
version: 1
```

## project

Represents the project namespace where we want to run the polyaxonfile.
The project must be [created on Polyaxon](/experimentation/projects##create-a-project).

This section requires one attribute name, which is the name of the project.
You can specify the name of the project in 2 different ways:

 * short version: `project_name`, in this case the username is inferred automatically as the current logged in user.
 * long version: `username/project_name` in this case the project is uniquely defined.

Example:

```yaml
project:
  name: mnist
```

```yaml
project:
  name: adam/mnist
```

## settings

Settings defines `run_type`, `concurrent_experiments`, `search_method`, `n_experiments`, `early_stopping`, and `logging`.
In general the settings defines some values that must be unique for
all experiments created based on the polyaxonfile.

### run_type

Currently polyaxon supports three different run types:

 * `kubernetes` (default value): If your cluster is running on Kubernetes.
 * `minikube`: if your cluster is running on a minikube.
 * `local`: In this case the polyaxonfile is supposed to be used with `polyaxon-lib`.

### concurrent_experiments

Defines how many experiments to run concurrently when the polyaxon file use a `matrix` section.
This option will be ignored if the polyaxon file only have one independent experiment.

### search_method

Same as `concurrent_experiments`, it defines the search method to use when running hyperparameters search.
Currently, the supported methods are:

 * `sequential` (default value)
 * `random`

!!! info
    More options will be provided for this subsection, to allow the user to explore the matrix space with advanced algorithms.

### n_experiments

Defined the maximum number of experiments to run during the exploration of the matrix space.

Default value is `None` which means translate to an exhaustive search.

### early_stopping

Defines a list of metrics and the values from these metrics to stop the search algorithm.

Example:

```yaml
early_stopping:
  - metric: loss
    value: 0.01
    higher: false

  - metric: accuracy
    value: 0.97
    higher: true
```

### logging

Defines the logging behavior for your execution, this subsection accepts:

 * `level`: The log level.<commit_msg>Update early stopping example<commit_after>## Version

Represents the polyaxon file specification version.

Example:

```yaml
version: 1
```

## project

Represents the project namespace where we want to run the polyaxonfile.
The project must be [created on Polyaxon](/experimentation/projects##create-a-project).

This section requires one attribute name, which is the name of the project.
You can specify the name of the project in 2 different ways:

 * short version: `project_name`, in this case the username is inferred automatically as the current logged in user.
 * long version: `username/project_name` in this case the project is uniquely defined.

Example:

```yaml
project:
  name: mnist
```

```yaml
project:
  name: adam/mnist
```

## settings

Settings defines `run_type`, `concurrent_experiments`, `search_method`, `n_experiments`, `early_stopping`, and `logging`.
In general the settings defines some values that must be unique for
all experiments created based on the polyaxonfile.

### run_type

Currently polyaxon supports three different run types:

 * `kubernetes` (default value): If your cluster is running on Kubernetes.
 * `minikube`: if your cluster is running on a minikube.
 * `local`: In this case the polyaxonfile is supposed to be used with `polyaxon-lib`.

### concurrent_experiments

Defines how many experiments to run concurrently when the polyaxon file use a `matrix` section.
This option will be ignored if the polyaxon file only have one independent experiment.

### search_method

Same as `concurrent_experiments`, it defines the search method to use when running hyperparameters search.
Currently, the supported methods are:

 * `sequential` (default value)
 * `random`

!!! info
    More options will be provided for this subsection, to allow the user to explore the matrix space with advanced algorithms.

### n_experiments

Defined the maximum number of experiments to run during the exploration of the matrix space.

The `n_experiments` must be less that total matrix space to explore.

You can also provide a percent, i.e. a float value between 0 and 1, e.g. 0.4 this will tranlate to 40% of the total matrix space.

Default value is `None` which means translate to an exhaustive search.

Example:

```yaml
n_experiments: 10
```

```yaml
n_experiments: 0.3
```

### early_stopping

Defines a list of metrics and the values from these metrics to stop the search algorithm.

Example:

```yaml
early_stopping:
  - metric: loss
    value: 0.01
    higher: false

  - metric: accuracy
    value: 0.97
    higher: true
```

### logging

Defines the logging behavior for your execution, this subsection accepts:

 * `level`: The log level.
{'fraction_non_alphanumeric': 0.07424960505529225, 'fraction_numerical': 0.005134281200631911, 'mean_word_length': 4.475675675675675, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4146188', 'n_tokens_mistral': 1420, 'n_tokens_neox': 1312, 'n_words': 668}