# Configuration Supported

Sure, here are the tables:

1. **Project Configuration**

| Hyperparameter  | Description                   | Example Values                                    | Used in Function              |
| --------------- | ----------------------------- | ------------------------------------------------- | ----------------------------- |
| checkpoint\_dir | Directory to save checkpoints | 'experiment\_checkpoints/'                        | ck\_callback(checkpoint\_dir) |
| experiment      | Name of the experiment        | "batch VS model"                                  | N/A                           |
| name            | Specific configuration name   | "config1"                                         | pipe\_model(name=...)         |
| log\_dir        | Directory to save logs        | 'experiment\_checkpoints/batch VS model/config1/' | N/A                           |

2. **Model Configuration**

| Hyperparameter | Description                      | Example Values                                                                     | Used in Function                |
| -------------- | -------------------------------- | ---------------------------------------------------------------------------------- | ------------------------------- |
| model          | The SSL model to use             | "VICReg", "MoCo", "BYOL", "SimCLR", "SimSiam", "BarlowTwins"                       | pipe\_model(name=...)           |
| backbone       | The backbone model for SSL model | "resnet18", "resnet50", "efficientnet\_b5", "mobilenet\_v3", "vit\_64", "vit\_224" | pipe\_model(backbone=...)       |
| stop\_gradient | Whether to stop gradient or not  | True, False                                                                        | pipe\_model(stop\_gradient=...) |
| prjhead\_dim   | The dimension of projection head | 2048, 1024, 512                                                                    | pipe\_model(prjhead\_dim=...)   |

3. **Training Configuration**

| Hyperparameter | Description                               | Example Values | Used in Function                                                           |
| -------------- | ----------------------------------------- | -------------- | -------------------------------------------------------------------------- |
| max\_epochs    | The maximum number of epochs for training | 5, 10, 50      | Trainer(config, model\_mode, extra\_epoch=...)                             |
| device         | The device for training                   | "cuda", "cpu"  | eval\_linear(device=...), eval\_KNN(device=...), eval\_KNNplot(device=...) |

4. **Dataset Configuration**

| Hyperparameter           | Description                                               | Example Values                  | Used in Function                 |
| ------------------------ | --------------------------------------------------------- | ------------------------------- | -------------------------------- |
| input\_size              | The input size for the model                              | 64, 128, 224                    | N/A                              |
| path\_to\_train\_cifar10 | The path to the training dataset cifar10                  | "../../Datasets/cifar10/train/" | PipeDataset(input\_dir=...)      |
| path\_to\_test\_cifar10  | The path to the testing dataset cifar10                   | "../../Datasets/cifar10/test/"  | PipeDataset(input\_dir=...)      |
| view                     | The number of views for each instance                     | 1, 2                            | dict2transformer(dict, view=...) |
| samples                  | The number of samples to load from the dataset            | 0, 100, 1000                    | PipeDataset(samples=...)         |
| batch\_size              | The size of each batch during training                    | 512, 256, 128                   | PipeDataset(batch\_size=...)     |
| shuffle                  | Whether to shuffle the dataset                            | True, False                     | PipeDataset(shuffle=...)         |
| drop\_last               | Whether to drop the last incomplete batch during training | True, False                     | PipeDataset(drop\_last=...)      |
| num\_workers             | The number of worker threads for data loading             | 4, 8, 16                        | PipeDataset(num\_workers=...)    |

Please note that the "Used in Function" column denotes where these parameters are used and can affect the behavior of that function. These parameters are part of the configuration that you need to set for running experiments in the autoSSL library.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://autossl.gitbook.io/autossl/getting-started/configuration-supported.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
