Drecpy

Latest version: v0.2.1

Safety actively analyzes 621907 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

0.2.0

Improvements
- Added list-sampler with negative_ratio support, sequence sorting and group records by multiple columns
- Added support for early stopping rules, with the first built-in rule being the `MaxValidationRule`
- Slightly improve `MemoryInteractionDataset` performance by removing unneeded type casts and simplifying record conversion
- Improve recommender training workflow, by abstracting gradient computation, weight updates and improve separation of concerns through specific functions that should focus on each subtask (new methods: `_sample_batch()`, `_predict_batch()`, `_compute_batch_loss()`, `_compute_reg_loss()`)
- Improve recommender logging: optional console (defaults to on) and file (defaults to off) logger, with error, warning and info logs
- Allow passing custom parameters to `InteractionDataset` instances, when instantiating them through the integrated datasets submodule
- Automatically compute regularization for recommenders that use `tf.keras.Model` or `tf.keras.Layer` trainable variables with any regularization parameter set
- Change how metrics are passed to evaluation procedures, to improve readability and extensibility. Now instead of receiving tuples with functions and extra params, it receives callable instances of those metrics:
- *From*: `metrics={'HR': (hit_ratio, {}), 'NDCG': (ndcg, {})}, 'FScore': (f_score, {'beta': 1})`
- *To*: `metrics=[HitRatio(), NDCG(), FScore(beta=1)]`

Bugfixes
- Fix bug on integrated datasets `get_test_dataset` that could end up generating test datasets (via `leave_k_out`) instead of using the offered test dataset
- Fix temporary `DatabaseInteractionDataset` files not being deleted at times

Others
- Add error handling to the ranking evaluation process
- Add examples to showcase extending existing recommenders

0.1.0

Improvements
- Point Sampler now returns triples instead of tuples, now containing the interaction value of the sampled user id and item id as well
- Update recommender workflow to process multiple points in each _do_batch call
- Added regularization to DMF model
- Epoch callbacks are also computed before the first epoch

Bugfixes
- Fix NCE-DMF loss function

Others
- Changed recommender default interaction threshold to 0.001 to avoid assuming interaction values of 0 as positive
- Rename InteractionDataset __copy__ method to copy

0.0.3

Improvements
- `Last_timestamps` option for `leave_k_out` split
- Create `matrix_split` variant
- Improve `leave_k_out` split performance by using raw identifiers instead of assigning and using internal identifiers
- Move split methods location from `DRecPy.Evaluation` to `DRecPy.Evaluation.Splits`
- Move evaluation processes location from `DRecPy.Evaluation` to `DRecPy.Evaluation.Processes`
- Improve `select_one()` performance for in-memory interaction dataset instances
- Add CDAE support for custom losses and support for sampling data points based on `neg_ratio` parameter
- Improve CDAE ranking speed
- Add epoch callback results to the training progress bar
- Improve evaluation processes multithreading performance to be 15% faster in the average case
- Improve defaults of evaluation processes
- Add `recommendation_evaluation` process
- Add `novelty` argument for the ranking and recommendation evaluation processes

Bugfixes
- Fix predictive evaluation bug when evaluating the performance on the training set
- Fix ranking evaluation `n_neg_interactions` bounds check
- Fix ranking evaluation repeated generated items on the negative interactions list

Others
- Improve existing examples
- Add consistency evaluation scripts
- Improve README.md and relevant documentation
- Complete tests for the dataset module, evaluation module, and recommender baselines
- Add integration with Travis CI

0.0.2

- Bug fixes where deterministic evaluations where not always possible (even with a seed parameter passed through)
- Correct requirement versions for critical dependencies
- Bug fixes due to the interaction vectors returned by InteractionDataset instances being of type integer, which caused tensorflow conversion incompatibilities
- Fixed crashes hapenning because DatabaseInteractionDataset instanced would leave open cursors
- Fix wrong retrieved MemoryInteractionDataset column value types
- Improve DatabaseInteractionDataset cleanup method to drop unused tables

Links

Releases

Has known vulnerabilities

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.