The DiSCoVeR algorithm has two expected outputs, peak_score and dens_score, which are two different ways of evaluating the joint performance and novelty of a compound. peak_score uses peak proxy as the underlying novelty proxy which favors compounds that have "surprising" high performance. In other words, these compounds stand out as a high-performance "peak" in the embedding space relative to surrounding compounds that are low performance. On the other hand, dens_score uses density proxy which favors compounds that are far from the training data points (i.e. low density in the embedding space), irrespective of the target values. The overall score is determined by considering both the performance (predicted property) and a novelty proxy (either peak_score or dens_score in this work); however, these scores can have different units and different distributions that make it difficult to compare the values fairly. For example, peak proxy has the same units as the predicted property (degrees Kelvin in this case) but is the difference between the predicted property and the average of the neighboring compounds, On the other hand, density proxy is a measure of density in an embedding space (i.e. non-physical units) and has no direct comparison with performance. Since the absolute values can vary by orders of magnitude, it's necessary to scale the values to a relative range prior to aggregating them (e.g. via a weighted sum). However, the choice of scaling is arbitrary. For example, one could use sklearn's MinMaxScaler or RobustScaler, or any number of common or custom scaling functions. In order to reduce the effect of outliers, RobustScaler was used.