Rsmtool

Latest version: v12.0.0

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

Scan your dependencies

Page 2 of 6

9.1.1

**Full Changelog**: https://github.com/EducationalTestingService/rsmtool/compare/v9.0.1...v9.1.1

9.0.1

What's Changed

This is a minor bugfix release.

* Delete the `stable` branch by desilinguist in https://github.com/EducationalTestingService/rsmtool/pull/573
* Disallow negative confidence intervals in fairness plots since they cause new versions of `pandas` to break by desilinguist in https://github.com/EducationalTestingService/rsmtool/pull/574
* Add workaround for broken SVGs in `nbconvert` by overriding `clean_html` by desilinguist in https://github.com/EducationalTestingService/rsmtool/pull/575
* Fix bug for integer IDs when using `rsmxval` by desilinguist in https://github.com/EducationalTestingService/rsmtool/pull/577
* Update SKLL dependency to v3.1.0 by desilinguist in https://github.com/EducationalTestingService/rsmtool/pull/578

**Full Changelog**: https://github.com/EducationalTestingService/rsmtool/compare/v9.0.0...v9.0.1

9.0

💡 New features 💡

Dependencies

* RSMTool is now compatible with [SKLL v3.0](https://skll.readthedocs.io/en/latest:) and, therefore, [scikit-learn](https://scikit-learn.org) v1.0.2.

* RSMTool now supports Python 3.10, in addition to 3.8 and 3.9. **Python 3.7 is no longer supported.**

* [tqdm](https://tqdm.github.io) is now a required dependency.

Native cross-validation support

* Add native support for cross-validation experiments to RSMTool. Using a single train-test split may lead to biased estimates of performance since those estimates will depend on the specific characteristics of that split. However, using cross-validation instead can provide more accurate estimates of scoring model performance since those estimates are averaged over multiple train-test splits that are randomly selected based on the data.

* Add new command-line utility [`rsmxval`](https://github.com/EducationalTestingService/rsmtool/blob/main/rsmtool/rsmxval.py) to run cross-validation experiments. Underlyingly, it leverages the RSMTool API functions `run_experiment()`, `run_evaluation()`, and `run_summary()` to generate multiple useful reports for the users.

* Add support for [automated configuration generation](https://rsmtool.readthedocs.io/en/stable/automated_configuration.html) to `rsmxval` in both batch and interactive mode.

* Add [comprehensive documentation](https://rsmtool.readthedocs.io/en/stable/advanced_usage.html#rsmxval-run-cross-validation-experiments) on how to run cross-validation experiments.

* Add comprehensive [functional tests](https://github.com/EducationalTestingService/rsmtool/blob/main/rsmtool/test_experiment_rsmxval.py) for cross-validation.

API Changes

* Add two new logging functions in [`rsmtool.utils.logging`](https://github.com/EducationalTestingService/rsmtool/blob/main/rsmtool/utils/logging.py). These are only meant to be used by RSMTool developers, not users.

* Factor out the code that was used to write a dataframe to disk into a separate utility method [`DataWriter.write_frame_to_disk()`](https://github.com/EducationalTestingService/rsmtool/blob/main/rsmtool%2Fwriter.py#L22) so that it an also be used by `rsmxval`. This can prove useful to advanced RSMTool users as well.

* Add new cross-validation specific utility functions to [`rsmtool.utils.cross_validation`](https://github.com/EducationalTestingService/rsmtool/blob/main/rsmtool%2Futils%2Fcross_validation.py).

* Convert several class or static methods in various classes to instance methods in order to allow for passing and using an optional logger instance.

* Tweak the [`check_scaled_coefficients()`](https://github.com/EducationalTestingService/rsmtool/blob/main/rsmtool/test_utils.py#L1084) test utility function to take the output directory as an argument instead of taking an experiment name to allow its usage for `rsmxval` functional tests.

🛠 Bugfixes & Improvements 🛠

* Fix the behavior of the [`use_thumbnails`](https://rsmtool.readthedocs.io/en/stable/usage_rsmtool.html#use-thumbnails-optional) option in RSMTool configuration files. It was generating both the thumbnail as well as the full-sized figure due to the behavior of Matplotlib’s `savefig()`. The solution was to turn off interactive plotting in all header notebooks.

* Replace deprecated methods and keywords in RSMTool code as recommended by the latest versions of pandas, numpy, and scikit-learn.

* Fix several duplicate target warnings when compiling the documentation. Make sure included RST files have an extension of `.rst.inc` so that they are not compiled twice. Turn all web links into anonymous references so that there are no conflicts with the same target names.

* Make feature boxplots for subgroups in reports more flexible in terms of the number of features. Specifically, if the experiment has more than 150 features, no boxplots are shown. Previously this limit was 30. In addition, the message that the boxplots have been omitted is displayed more prominently when it happens. Finally, if the number of features is > 30 but <=150, a new message asking the user to enable thumbnails is shown.

* Update Gitlab CI plan to use Python 3.8 and Azure Pipelines to use Python 3.10. Add new cross-validation tests to both CI plans.

9.0.0

This is a major new release. It includes new functionality and breaking changes to the API as well as to dependencies.

8.1.2

This is a bugfix release.

* Update the code for compatibility with ``pandas 1.3.0`` and ``scikit-learn 0.24.2``.

8.1.1

This is a bugfix release with some minor improvements.

* Continuous integration build for RSMTool migrated from Travis CI to Gitlab CI.

* Minor bug fixed in `parse_json_with_comments` to handle URLs correctly.

* Minor updates to warnings and documentation.

Page 2 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.