History¶
2.0.0 (Unreleased)¶
The library has been migrated to pytorch. This is a breaking change. You will likely need to adapt to this new version if you have been using estimators from version 1.x.
The RankNet and CmpNet estimators are now trained with a loss that applies to the whole result (the general/discrete choice or ranking). They were previously trained on object pairs with different loss functions.
Behavior and default parameters of the estimators may differ from the previous versions. For example the default activation for CmpNet and RankNet is now SELU instead of ReLU.
The dataset generators in csrank.dataset_reader are no longer imported on the top level.
1.3.0 (Unreleased)¶
We no longer override any of the defaults of our default optimizer (SGD). In particular, the parameters nesterov, momentum and lr are now set to the default values set by keras.
All optimizers must now be passed in uninitialized. Optimizer parameters can be set by passing optimizer__{kwarg} parameters to the learner. This follows the scikit-learn and skorch standard.
Regularizers must similarly be passed uninitialized, therefore the reg_strength parameter is replaced by kernel_regularizer__l.
Tuning functionality has been removed. Since our Learners are ScikitLearn estimators, any standard tuning framework should work and no special support is needed.
The tunable class and notably its set_tunable_parameters function has been removed. Use set_params from the scikit-learn estimator API instead.
1.2.1 (2020-06-08)¶
Make all our optional dependencies mandatory to work around a bug in our optional imports code. Without this, an exception is raised on import. A proper fix will follow.
1.2.0 (2020-06-05)¶
Change public interface of the learners to be more in line with the scikit-learn interface (ongoing). As part of these changes, it is no longer required to explicitly pass the data dimensionality to the learners on initialization.
Rewrite and document normalized discounted cumulative gain (ndcg) metric to fix numerical issues. See #32 for details.
Fix passing fit keyword arguments on to the core network in
FATEChoiceFunction
.Fix arguments for
AllPositive
baseline.Raise ValueError rather than silently using a default value for unknown passed arguments.
Internal efforts to increase code quality and make use of linting (
black
,flake8
,doc8
).Remove old experimental code.
1.1.0 (2020-03-19)¶
Add the expected reciprocal rank (ERR) metric.
Fix bug in callbacks causing the wrong learning rate schedule to be applied.
Make csrank easier to install by making some dependencies optional.
Add guidelines for how to contribute to the project.
1.0.2 (2020-02-12)¶
Fix deployment to GH-pages
1.0.1 (2020-02-03)¶
Add
HISTORY.rst
file to track changes over timeSet up travis-ci for deployment to PyPi
1.0.0 (2018-03-05)¶
Initial release