Skip to content

Commit

Permalink
First draf of Transfer Learning User Guide
Browse files Browse the repository at this point in the history
  • Loading branch information
AVHopp committed Feb 23, 2024
1 parent 7186c6f commit 0b5c8ed
Showing 1 changed file with 39 additions and 2 deletions.
41 changes: 39 additions & 2 deletions docs/userguide/transfer_learning.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,41 @@
# Transfer Learning

This page will soon contain information about transfer learning.
In the meantime, please see the [examples](../../examples/examples) instead.
BayBE offers the possibility to mix data from multiple campaigns in order to accelerate
optimization.
Using data from multiple campaigns is currently supported when using a Gaussian Process
Surrogate model and is implemented by the [`TaskParameter`](baybe.parameters.categorical.TaskParameter).

```{admonition} Terminology
:class: note
The term "Transfer Learning" is used in a lot of different ways.
The act of combining the data of several contexts can be done via multiple models,
shared architectures, special kernels in a single model and whatnot.
We do not necessarily want to limit to any of these methods, even though BayBE currently
offers only a single one.
```

## The role of ``TaskParameter``

The ``TaskParameter`` is used to "mark" the context of an individual experiment. The
set of all possible contexts is provided upon the initialization of a ``TaskParameter``
by providing them as ``values``.

```python
from baybe.parameters import TaskParameter

TaskParameter(name="Month", values=["Nov23", "Dec23", "Jan24"])
```

If not specified further, a ``campaign`` using the ``TaskParameter`` as specified above
would now make recommendations for all possible values of the parameter. Using the
``active_values`` argument upon initialization, this behavior can be changed such that
the ``campaign`` only makes recommendations for the corresponding values.

```python
from baybe.parameters import TaskParameter

TaskParameter(name="Month", values=["Nov23", "Dec23", "Jan24"], active_values=["Jan24"])
```

This can be abstracted easily to other scenarios such as changing substrates (while
screening same reaction conditions) or formulating mixtures for different cell lines.

0 comments on commit 0b5c8ed

Please sign in to comment.