Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: major API redesign (WIP) #752

Merged
merged 28 commits into from
May 11, 2024
Merged

Conversation

lars-reimann
Copy link
Member

@lars-reimann lars-reimann commented May 11, 2024

Closes #694
Closes #699
Closes #714
Closes #748

Summary of Changes

  • Replace old implementation of tabular containers
  • New, more efficient implementation of metrics
  • Standalone package for metrics
  • New regression metrics
  • Abstract base class for classifiers & regressors
  • Introspection methods to get information about features and target of supervised models
  • Rename LogisticRegressionClassifier to LogisticClassifier (shorter + does not show up when searching for regression)
  • Rename LinearRegressionRegressor to LinearRegressor (shorter)
  • Rename SupportVectorMachineClassifier to SupportVectorClassifier (a little less precise, but still unambiguous and shorter)
  • Rename SupportVectorMachineRegressor to SupportVectorRegressor (ditto)

Copy link
Contributor

🦙 MegaLinter status: ❌ ERROR

Descriptor Linter Files Fixed Errors Elapsed time
✅ MARKDOWN markdown-link-check 1 0 0.58s
✅ PYTHON black 119 11 0 3.61s
❌ PYTHON mypy 119 47 4.87s
✅ PYTHON ruff 119 13 0 0.32s
✅ REPOSITORY git_diff yes no 0.51s

See detailed report in MegaLinter reports
Set VALIDATE_ALL_CODEBASE: true in mega-linter.yml to validate all sources, not only the diff

MegaLinter is graciously provided by OX Security

@lars-reimann
Copy link
Member Author

@Safe-DS/library Since this drastically alters the API, I'll merge it in this unfinished state. I'll fix linter issues and tests in the coming days before the next release.

@lars-reimann lars-reimann marked this pull request as ready for review May 11, 2024 18:58
@lars-reimann lars-reimann requested a review from a team as a code owner May 11, 2024 18:58
@lars-reimann lars-reimann merged commit 8e781f9 into main May 11, 2024
3 of 11 checks passed
@lars-reimann lars-reimann deleted the remove-old-tabular-containers branch May 11, 2024 18:58
lars-reimann pushed a commit that referenced this pull request May 15, 2024
## [0.25.0](v0.24.0...v0.25.0) (2024-05-15)

### Features

* major API redesign (WIP) ([#752](#752)) ([8e781f9](8e781f9)), closes [#694](#694) [#699](#699) [#714](#714) [#748](#748)
* move NN converters and layers to separate packages ([#759](#759)) ([c6a4073](c6a4073))
* remove operations without replacement from tabular containers ([#747](#747)) ([0e5a54b](0e5a54b))
* specify partial order in label encoder ([#763](#763)) ([6fbe537](6fbe537)), closes [#639](#639)

### Bug Fixes

* Conversion of tabular dataset to tensors ([#757](#757)) ([9e40b65](9e40b65))
* fixed devices with new polars implementation ([#756](#756)) ([e72339e](e72339e))

### Performance Improvements

* implement one hot encoder and imputer using polars ([#768](#768)) ([e993c17](e993c17))
@lars-reimann
Copy link
Member Author

🎉 This PR is included in version 0.25.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
released Included in a release
Projects
None yet
1 participant