Releases: facebookresearch/aepsych
Releases · facebookresearch/aepsych
v0.4.4
v0.4.3
- Float64 are now the default data type for all tensors from AEPsych.
- Many functions are ported to only use PyTorch Tensors and not accept NumPy arrays
- Fixed ManualGenerators not knowing when it is finished.
v0.4.2
- BoTorch version bumped to latest at 0.12.0.
- Numpy pinned below v2.0 to ensure compatibility with Intel Macs
- Only Python 3.10+ is supported now (matching BoTorch requirements)
v0.4.1
- Updated point generation and model querying to be faster
- Bumped ax version to 0.3.7
- Miscellaneous bug fixes
v0.4.0
New features:
- Ax can now be used as a backend. This is opt-in for now, but will become the default in a future version. Documentation here.
- Added
aepsych_database
as a command-line executable for performing database operations. - Added MultitaskGPRModel and IndependentMultitaskGPRModel for offline analysis of multi-subject data.
- Added the semi-parametric models from Keeley et al., 2023. Tutorial here.
- Added ability to pre-generate trials asynchronously on the server by specifying
pregen_asks = True
in the config file. default_mean_covar_factory
can now takedim
directly as an argument instead of having to read it from aConfig
.- Expanded the tutorial on Gaussian process active learning.
- Implemented an info message that allows clients to query the server for info about its state.
- Added additional type hints and docstrings throughout the codebase.
- Updates to dependencies.
Bug fixes:
- Fixed bug that caused
BinaryClassificationGP
to calculate variance incorrectly in probability space. - Removed redundant "model fitting" logs.
- Fixed a type error in
MonotonicThompsonSamplerGenerator
- Fixed a shape error in
EpsilonGreedyGenerator
. - Fixed a broken test in
test_model_query.py
.
Other changes:
- Removed versioned server messages since we now have versioned releases and refactored server messages to be helper functions instead of
AEPsychServer
methods. - Updated example configs to suggest
EAVC
as the threshold-finding acquisition function instead ofMCLSE
.
v0.3.0
New features:
- Added an example psychophysics experiment
- Added an ordinal model and likelihood
- Added a new raw data table for easier analysis
- Can now choose which botorch optimizer to use to fit models
- Added a visualization dashboard
- Updated to botorch v0.8.0
Bug fixes
- Removed some hardcoded checks for stimuli_per_trial and outcome_types
- Fixed incorrect threshold estimation for non-probit links
- Implemented
from_config
forMonotonicProjectionGP
- Fixed a casting error in
MonotonicThompsonSamplerGenerator
v0.2.0
Changes to pairwise experiments
- PairwiseProbitModel has been moved from prerelease to the main repo
- SobolGenerator and OptimizeAcqfGenerator now work with PairwiseProbitModel. The pairwise generators should still work for now but are being deprecated and will be removed in a future release.
Changes to configs
- Configs now have separate stimuli_per_trial and outcome_types settings instead of a single outcome_type parameter. The server should automatically reformat old-style configs.
- Experiment metadata such as the experiment's description or participant ID can now be included in config files
New server functionality
- Tell messages can now specify model_data=False to indicate that data should be recorded, but not modeled. This is useful, for example, when your experiment includes practice trials.
- The "get_config" message can be used to fetch config settings from the server.
- The "finish_strategy" message can be used to force the server to finish the current strategy and move to the next one.
Other new features
- New lookahead acquisition functions (MOCU, SMOCU, and BEMPS) were added.
- Added 3D plotting functionality
- Strategies can now be set to run indefinitely by including run_indefinitely=True in configs.
Bug fixes
- Experiments that used stopping criteria other than min_asks will now properly replay.
- An exception will now be raised if lb > ub.
- Changed LSE's default value of "beta" to 3.84 (1.96^2).
- Updates from GPytorch and Botorch should lead to more stable model fitting
v0.1.0
Initial stable release. AEPsych currently supports monotonic and non-monotonic versions of classification and regression GP models with single inputs and outcomes.