Changelog¶
v3.6 (Development)¶
This is the current development version of MSMBuilder
API Changes¶
version.short_versionis now 3.y instead of 3.y.z (#829).msmbuilder.example_datasetsis now deprecated. Please install themsmb_datapackage from the Omnia conda channel.weighted_transformis no longer supported in tICA methods (#807). Please usedkinetic_mapping.
New Features¶
BinaryContactFeaturizerfeaturizes a trajectory into a boolean array corresponding to whether each residue-residue distance is below a cutoff (#798).LogisticContactFeaturizerproduces a logistic transform of residue-residue distances about a center distance (#798).FactorAnalysis,FastICA, andKernelPCAare available in thedecompositionmodule (#807).Butterworth,EWMA, andDoubleEWMAare available in thepreprocessingmodule (#818).MADScaleris available in thepreprocessingmodule (#850).
Improvements¶
- Remove a unicode character from
ktica.py(gh-833) msmbuilder.decomposition.KernelTICAnow includes all parameters in its__init__, making it compatible with Osprey (gh-823).msmbuilder.tptmethods can now handleBayesianMarkovStateModelsas input. Please note that we still do not recommend using this module withBootStrapMarkovStateModel.
v3.5 (June 14, 2016)¶
We’re pleased to announce the release of MSMBuilder 3.5. This release
wraps more relevant sklearn estimators and transformers. There are
also some bugfixes and API hygiene improvements. We recommend all users
upgrade to MSMBuilder 3.5.
API Changes¶
msmbuilder.featurizer.FeatureUnionis now deprecated. Please usemsmbuilder.feature_selection.FeatureSelectorinstead (#799).msmbuilder.feature_extractionhas been added to conform to thescikit-learnAPI. This is essentially an alias ofmsmbuilder.featurizer(#799).
New Features¶
KernelTICA,Nystroem, andLandmarkNystroemare available in thedecompositionmodule (#807).FeatureSelectorandVarianceThresholdare available in thefeature_selectionmodule (#799).SparsePCAandMiniBatchSparsePCAare available in thedecompositionmodule (#791).Binarizer,FunctionTransformer,Imputer,KernelCenterer,LabelBinarizer,MultiLabelBinarizer,MinMaxScaler,MaxAbsScaler,Normalizer,RobustScaler,StandardScaler, andPolynomialFeaturesare available in thepreprocessingmodule (#796).
Improvements¶
- Fix a compilation error on gcc 5 (#783)
- Fix pickle-ing of
ContinuousTimeMSM. Theoptimizer_state_parameter is not saved (#822).
v3.4 (March 29, 2016)¶
We’re pleased to announce MSMBuilder 3.4. It contains a plethora of new features, bug fixes, and improvements.
API Changes¶
- Range-based slicing on dataset objects is no longer allowed. Keys in the
dataset object don’t have to be continuous. The empty slice, e.g.
ds[:]loads all trajectories in a list (#610). - Ward clustering has been renamed AgglomerativeClustering in scikit-learn. Please use the new msmbuilder wrapper class AgglomerativeClustering. An alias for Ward has been made available (#685).
PCCA.trimmed_microstates_to_macrostateshas been removed. This dictionary was actually keyed by untrimmed microstate labels.PCCA.transformwould throw an exception when operating on a system with trimming because it was using this misleading dictionary. Please usepcca.microstate_mapping_for this functionality (#709).UnionDatasethas been removed after deprecation in 3.3. Please useFeatureUnioninstead (#671).SubsetFeaturizerand ilk have been removed from themsmbuilder.featurizernamespace. Please import them frommsmbuilder.featurizer.subset(#738).FirstSlicerhas been removed. UseSlicer(first=x)for the same functionality (#738).msmbuilder.featurizer.loadhas been removed.Featurizer.savehas been removed. Please useutils.load,utils.dump(#738).
New Features¶
- Dataset objects can call,
fit_transform_with()to simplify the common pattern of applying an estimator to a dataset object to produce a new dataset object (#610). kinetic_mappingis a new option totICA. It’s similar toweighted_transform, but based on a better theoretical framework.weighted_transformis deprecated (#766).VonMisesFeaturizeruses soft bins around the unit-circle to give an alternate representation of dihedral angles (#744).MarkovStateModelhas apartial_transform()method (#707).KappaAngleFeaturizeris available via the command line (#681).MarkovStateModelhas a new attribute,percent_retained_, for ergodic trimming (#689).AlphaAngleFeaturizercomputes the dihedral angles between alpha carbons (#691).FunctionFeaturizercomputes features based on an arbitrary Python function or callable (#717).- Automatic State Partitioning (APM) uses kinetic information to cluster conformations (#748).
Improvements¶
- Consistent counts setup and ergodic cutoff across various flavors of Markov models (#718, #729, #701, #705).
- Tests no longer depend on
sklearn.hmm, which has been removed (#690). - Improvements to
RSMDFeaturizer(#695, #764). SparseTICAis completely re-written with large performance improvements when dealing with large numbers of features (#704).- Links for downloading example data are un-broken after figshare changed URLs (#751).
v3.3 (August 27, 2015)¶
We’re pleased to announce the release of MSMBuilder v3.3.0. The focus of this release is a completely re-written module for constructing HMMs as well as bug fixes and incremental improvements.
API Changes¶
FeatureUnionis an estimator that deprecates the functionality ofUnionDataset. Passing a list of paths todataset()will no longer automatically yield aUnionDataset. This behavior is still available by specifyingfmt="dir-npy-union", but is deprecated (#611).- The command line flag for featurizers
--out(deprecated in 3.2) now saves the featurizer as a pickle file (#546). Please use--transformedfor the old behavior. This is consistent with other command-line commands. - The default number of timescales in
MarkovStateModelis now one less than the number of states (was 10). This addresses some bugs withimplied_timescalesand PCCA(+) (#603).
New Features¶
GaussianHMMandVonMisesHMMis rewritten to feature higher code reuse and code quality (#583, #582, #584, #572, #570).KDTreecan find n nearest points to e.g. a cluster center (#599).Slicerfeaturizer can slice feature arrays as part of a pipeline (#567).
Improvements¶
PCCAPlusis compatible with scipy 0.16 (#620).- Documentation improvements (#618, #608, #604, #602)
- Test improvements, especially for Windows (#593, #590, #588, #579, #578, #577, #576)
- Bug fix:
MarkovStateModel.sample()produced trajectories of incorrect length. This function is still deprecated (#556). - Bug fix: The muller example dataset did not respect users’ specifications for initial coordinates (#631).
MarkovStateModel.draw_samplesfailed if discrete trajectories did not contain every possible state (#638). Function can now accept a single trajectory, as well as a list of them.SuperposeFeaturizernow respects the topology argument when loading the reference trajectory (#555).
v3.2 (April 14, 2015)¶
tICAignores too-short trajectories during fitting instead of raising an exception- New methods for sampling from MSM models
- Datasets can be opened in “append” mode
- Compatibility with scipy 0.16
utils.dumpsaves using the pickle protocol.utils.loadis backwards compatible.- The command line flag for featurizers
--outis deprecated. Use--transformedinstead. This is consistent with other command-line commands. - Bug fixes
v3.1 (Feb 27, 2015)¶
- Numerous improvements to
ContinuousTimeMSMoptimization - Switch
ContinuousTimeMSM.scoreto transmat-style GMRQ - New example dataset with Muller potential
- Assorted bug fixes in the command line layer
v3.0.1 (January 9, 2015)¶
- Fix missing file on PyPI.
v3.0.0 (January 9, 2015)¶
MSMBuilder 3.0 is a complete rewrite of our previous work. The focus is on power and extensibility, with a much wider class of estimators and models supported throughout the codebase. All users are encouraged to switch to MSMBuilder 3.0. Pre-release versions of MSMBuilder 3.0 were called mixtape.