In the original work of Shen et al., optimisation of SELFIES strings towards desired functionalities was achieved by first training a fully connected feed forward neural network model to predict real-valued properties of small organic molecules from the one-hot encoded representation of their molecular graphs. During training -the forward process -the inputs (one-hot encoded vectors) and outputs (target properties) remain fixed while the weights and biases of the ML model are incrementally updated via backpropagation of the prediction errors. In deep dreaming, or the reverse process, this paradigm is inverted: the pretrained weights and biases of the model are frozen, and the one-hot encoded input vector is incrementally modified towards a new, optimal feature vector. This is achieved by adding uniform noise to the zero-elements of the one-hot encoding such that the vector representation of molecules become continuously differentiable. The error between the predicted property and some target property, which we refer to as the target error, is then computed. Finally, the gradient of the target error with respect to the input SELFIES is calculated, and the initial molecular structure is modified via backpropagation such that the target error is minimised.