Repository navigation
The first stable release of ALF, under the Apache 2.0 license.
Published to PyPI as alf-core and alf-tools 0.1.0.
Added
RandomAcquisitionandUncertaintySamplingacquisition functions, giving a random baseline and a pure-exploration strategy.Matbenchdataset andModality.MATERIALS, behind a new optionalmatbench/materialsextra.SmilesMutationSearchandElementSubstitutionSearch, search protocols that propose novel molecules and crystals each round.GuacaMolOracle, for scoring arbitrary SMILES in online loops.top_konSingleMutantSearch, to seed mutants from more than just the single best sequence.BaseModel.embed()andSurrogate.embed(), giving embeddings a contract separate fromfeaturise().
Changed
CoreSetnow callsembed()instead offeaturise().BaseModel.embed()raisesNotImplementedErrorby default, so a custom model that relied onfeaturise()returning a 2-D embedding must now overrideembed()—return self.featurise(inputs)restores the previous behaviour.- Tied labels in
LabelledCandidates.get_top_kandsortnow break by position, rather than in an unspecified order that varied with array size. Ties are routine, so benchmark numbers may shift and reference results may need regenerating. SingleMutantSearchnow deduplicates its proposals, so the pool it returns can be smaller than before. It also rejects empty training sets and multi-output labels instead of silently mis-selecting.chempropis capped below 2.3.0, anduvoverrides raise thematminer,scipy,montyandscikit-learnfloors workspace-wide.
Fixed
one_hot_encode()pads variable-length batches instead of raisingIndexError.BoTorchAcquisitionfeaturises candidates, fixing GP models whoseCandidate.datais not already numeric.
Full changelog: v0.1.0b0...v0.1.0