Releases: Safe-DS/Library
Releases · Safe-DS/Library
v0.28.1
v0.28.0
v0.27.0
0.27.0 (2024-07-19)
Features
- join (#870) (5764441), closes #745
- activation function for forward layer (#891) (5b5bb3f), closes #889
- add
ImageDataset.split
(#846) (3878751), closes #831 - add FunctionalTableTransformer (#901) (37905be), closes #858
- add InvalidFitDataError (#824) (487854c), closes #655
- add KNearestNeighborsImputer (#864) (fcdfecf), closes #743
- add moving average plot (#836) (abcf68a)
- add RobustScaler (#874) (62320a3), closes #650 #873
- add SequentialTableTransformer (#893) (e93299f), closes #802
- add temporal operations (#832) (06eab77)
- added 'histogram_2d' in TablePlotter (#903) (4e65ba9), closes #869 #798
- added from_str_to_temporal and continues prediction (#767) (35f468a), closes #806 #765 #740 #773
- added GRU layer (#845) (d33cb5d)
- Adds Dropout Layer (#868) (a76f0a1), closes #848
- dark mode for plots (#911) (5447551), closes #798
- easily create a baseline model (#811) (8e1b995), closes #710
- get first cell with value other than
None
(#904) (5a0cdb3), closes #799 - hyperparameter optimization for fnn models (#897) (c1f66e5), closes #861
- implement violin plots (#900) (9f5992a), closes #867
- plot decision tree (#876) (d3f81dc), closes #856
- prediction no longer takes a time series dataset only table (#838) (762e5c2), closes #837
- raise if
remove_colums
is called with unknown column by default (#852) (8f78163), closes #807 - regularization strength for logistic classifier (#866) (9f74e92), closes #750
- reorders parameters of RangeScaler and makes them keyword-only (#847) (2b82db7), closes #809
- replace seaborn with matplotlib for box_plot (#863) (4ef078e), closes #805 #849
- replaced seaborn with matplotlib for correlation_heatmap (#850) (d4680d4), closes #800 #849
Bug Fixes
- deps: bump urllib3 from 2.2.1 to 2.2.2 (#842) (b81bcd6)
- labels of correlation heatmap (#894) (a88a609), closes #871
- make multi-processing in baseline models more consistent (#909) (fa24560), closes #907
Performance Improvements
Major thanks to all contributors:
- @TellemHD made their first contribution in #847
- @Muellersen made their first contribution in #850
- @TobiasPluecker made their first contribution in #852
- @zogomii made their first contribution in #866
- @Tarmandan made their first contribution in #874
- @LIEeOoNn made their first contribution in #878
- @RobinSen28 made their first contribution in #893
- @timwirt made their first contribution in #876
- @saius02 made their first contribution in #911
- @wastedareas made their first contribution in #904
- @Marsmaennchen221
- @Gerhardsa0
- @sibre28
v0.26.0
0.26.0 (2024-05-29)
Features
Table.count_row_if
(#788) (4137131), closes #786- added method to load pretrained models from huggingface (#790) (dd8394b)
- infer input size of forward and LSTM layers (#808) (098a07f)
- outline around dots of scatterplot (#785) (ee8acf7)
- remove output conversions (#792) (46f2f5d), closes #732
- shorten some excessively long names (#787) (1c3ea59), closes #772
- specify column names in constructor of table transformers (#795) (69a780c)
- store window size and forecast horizon in dataset (#794) (f07bc5a)
- string operations on cells (#791) (4a17f76)
Bug Fixes
- handling of boolean columns in column statistics (#778) (f61cceb)
- sort x values of line plot (#782) (74d8649)
Special thanks to all contributors:
v0.25.0
0.25.0 (2024-05-15)
Features
-
$R^2$ metric for regressors - allow using tabular datasets in
predict
- implement tabular containers and all transformer (except
Discretizer
) with polars - move NN converters and layers to separate packages (#759) (c6a4073)
- remove deprecated methods from tabular containers
- specify partial order in label encoder (#763) (6fbe537), closes #639
- specify value separator when reading CSV file
- standalone metrics package
Special thanks to all contributors:
v0.24.0
0.24.0 (2024-05-09)
This release features completely rewritten containers for tabular data (currently experimental). They use the extremely fast polars library as their backend. Together with a drastically more efficient implementation of our own interface, operations on tabular data are now as fast as they should be.
Previously, even operations on small tables (10000 rows x 50 columns) took very long, as this comparison of Table
methods shows:
method | old (s) | new (s) | speedup (factor) |
---|---|---|---|
remove_duplicate_rows |
0.25474 | 0.01306 | 19.5 |
remove_rows_with_missing_values |
0.25159 | 0.00946 | 26.6 |
remove_rows_with_outliers |
0.28816 | 0.01034 | 27.9 |
remove_rows |
2.69647 | 0.00242 | 1114.2 |
shuffle_rows |
0.24690 | 0.00204 | 121.0 |
slice_rows |
0.12313 | 0.00011 | 1119.4 |
sort_rows |
4.67574 | 0.00372 | 1256.9 |
split_rows |
0.24764 | 0.00219 | 113.1 |
transform_column |
2.89572 | 0.00030 | 9652.4 ❗ |
You can find a full list of changes below. Special thanks to all contributors:
Features
Column.plot_histogram()
usingTable.plot_histograms
for consistent results (#726) (576492c)Regressor.summarize_metrics
andClassifier.summarize_metrics
(#729) (1cc14b1), closes #713- Add
ImageDataset
and Layer for ConvolutionalNeuralNetworks (#645) (5b6d219), closes #579 #580 #581 - added load_percentage parameter to ImageList.from_files to load a subset of the given files (#739) (0564b52), closes #736
- added rnn layer and TimeSeries conversion (#615) (6cad203), closes #614 #648 #656 #601
- Basic implementation of cell with polars (#734) (004630b), closes #712
- deprecate
Table.add_column
andTable.add_row
(#723) (5dd9d02), closes #722 - deprecated
Table.from_excel_file
andTable.to_excel_file
(#728) (c89e0bf), closes #727 - Larger histogram plot if table only has one column (#716) (31ffd12)
- polars implementation of a column (#738) (732aa48), closes #712
- polars implementation of a row (#733) (ff627f6), closes #712
- polars implementation of table (#744) (fc49895), closes #638 #641 #649 #712
- regularization for decision trees and random forests (#730) (102de2d), closes #700
- Remove device information in image class (#735) (d783caa), closes #524
- return fitted transformer and transformed table from
fit_and_transform
(#724) (2960d35), closes #613
Bug Fixes
Performance Improvements
v0.23.0
v0.22.1
v0.22.0
0.22.0 (2024-05-01)
Features
is_fitted
is now always a property (#662) (b1db881), closes #586- add
Column.missing_value_count
(#682) (f084916), closes #642 - Add
InputConversion
&OutputConversion
for nn interface (#625) (fd723f7), closes #621 - Add hash,eq and sizeof in ForwardLayer (#634) (72f7fde), closes #633
- allow using tables that already contain target for prediction (#687) (e9f1cfb), closes #636
- callback
Row.sort_columns
takes four parameters instead of two tuples (#683) (9c3e3de), closes #584 - rename
group_rows_by
inTable
togroup_rows
(#661) (c1644b7), closes #611 - rename
number_of_column
inRow
tonumber_of_columns
(#660) (0a08296), closes #646 - rework
TaggedTable
(#680) (db2b613), closes #647 - show missing value count/ratio in summarized statistics (#684) (74b8a35), closes #619
- specify
extras
instead offeatures
into_tabular_dataset
(#685) (841657f), closes #623
Bug Fixes
Performance Improvements
v0.21.0
0.21.0 (2024-04-17)
Features
- add ARIMA model (#577) (8b9c7a9), closes #570
- Add ImageList class (#534) (3cb74a2), closes #528 #599 #600
- more hash, sizeof and eq implementations (#609) (2bc0b0a)
Performance Improvements
- Add special case to
Table.add_rows
to increase performance (#608) (ffb8304), closes #606 - improve performance of model & forward layer (#616) (e856cd5), closes #610
- lazily import our modules and external libraries (#624) (20fc313)
- treat Tables specially when calling add_rows (#606) (e555b85), closes #575