Граф коммитов

435 Коммитов

Автор SHA1 Сообщение Дата
Matteo Interlandi 88bb1c5cbb
fix bug in ts container for classification (#278) 2020-08-31 15:11:28 -07:00
Matteo Interlandi 22703b45a3
add optimized_execution to ts backend (#276)
Co-authored-by: Karla Saur <1703543+ksaur@users.noreply.github.com>
2020-08-31 12:24:22 -07:00
Matteo Interlandi e07bc3f8ea
Add imputer for sklearn 0.21.3 (#274)
* add imputer for sklearn 0.21.3

* add comment on why checking for None for sklearn ops
2020-08-31 11:28:34 -07:00
Karla Saur e3cb0aedad
sklearn.preprocessing.PolynomialFeatures (#269)
* adding supun's polyfeatures code

* interaction_only flag breaks this, commenting out for now

* removing extra dividers

Co-authored-by: Matteo Interlandi <m.interlandi@gmail.com>
2020-08-30 13:52:03 -07:00
Karla Saur 72f9ab8cb2
add sklearn.impute.SimpleImputer (#267)
* adding Supun's missing indicator and imputer code

* adding transform flag to classes

* adding tests. TODO: problem with missing indicator

* rolling back missing indicator for now

* cleaning up test

* combinging simpleimputer and  missingindicator into one imputer file

* deleting old html

* fixing stale comment in test file

* undoing overzealous pdoc
2020-08-30 13:48:56 -07:00
Matteo Interlandi 79ab1697a7
add support for afe with boolean indices (#272) 2020-08-30 11:39:00 -07:00
Karla Saur a745886376
sklearn.impute.MissingIndicator converter (#268)
* missing indicator with  some problem

* supun is awesome

* upping coverage
2020-08-29 22:58:33 -07:00
Supun Nakandala 02aa021797
Issue #153 - Add SKL Other Classifiers (#260)
* [Issue #153] Part 1 - Add SKL Other Classifiers

* [Issue #153] Part 2 - Add SKL Other Classifiers
2020-08-29 19:27:49 -07:00
Matteo Interlandi aaab4f7366
add float to binarizer (#266) 2020-08-29 15:22:22 -07:00
Matteo Interlandi ae4860081a
fix bug with empty trees and multiclass (#265) 2020-08-29 15:19:11 -07:00
Supun Nakandala eff12143f1
Fixing LogisticRegression issue when solver is lbgfs and multiclass is auto (#261) 2020-08-29 13:01:04 -07:00
Supun Nakandala 8b6ea1a1f7
Adding support for sklearn SelectPercentile (#263) 2020-08-29 09:23:28 -07:00
Supun Nakandala a4cb3154d8
Issue-200: Adding SelectKBest chi2 support (#262) 2020-08-29 08:53:34 -07:00
Matteo Interlandi 39a79be15c
Add basic support for scikit-learn pipeline (#251)
* Add support for SKL pipelines
2020-08-28 13:20:45 -07:00
Karla Saur 905f8f36b0
Adding support for sklearn.preprocessing.Binarizer (#258)
* adding sklearn binarizer

* adding  self.transformer = True

* adding html

* removing unncessary float

* removing _binarizer_impl
2020-08-28 12:52:58 -07:00
Karla Saur a9b50f4dc0
rerunning precommit hooks for url change (#257) 2020-08-28 10:24:49 -07:00
kernc 8f042b0c9c
DOC: Cleanup remnants from copied pdoc template (#255) 2020-08-27 16:45:33 -07:00
Matteo Interlandi 8c9d5b1f19
Bump xgb version (#253)
* bump xgb version
2020-08-27 15:40:50 -07:00
Matteo Interlandi 591d1444fd
remove the skl prefix to sklearn converters (#249)
remove the onnx prefix to onnx converters
move lightgbm and xgb converters out of the sklearn folder
2020-08-25 08:44:07 -07:00
Matteo Interlandi 4bdafcf36f
add model as property of the ONNX container (#247)
* add model as a container property
force tree_trav for onnx only for pt < 1.6.0
* change model  to match line 110
2020-08-21 17:14:40 -07:00
Matteo Interlandi fee38ab828
Strip torch (#246)
* have users install torch separately
Co-authored-by: Karla Saur <kasaur@microsoft.com>
2020-08-21 12:27:31 -07:00
Karla Saur 46c35fcee3
bump to v0.0.5, rerun pdoc (#243) 2020-08-19 12:01:23 -07:00
Matteo Interlandi af2d3cdd20
add tweedie post_transform (#242)
add tweedie to lgbm
2020-08-19 09:12:43 -07:00
Matteo Interlandi 7e5aa66eef
Add Sklearn containers for ONNX models (#231)
* add containers for onnx models

* move onnx tests to sklearn api version with containers
2020-08-17 17:10:38 -07:00
Matteo Interlandi 1ce982e606
Fix readme (#239)
* Fix readme
Add how to use gpu with pytorch
Minor fix in tests for lightgbm

* Fix test error
2020-08-17 16:57:52 -07:00
Matteo Interlandi c36f3c133c
add test for rf in lgbm (#238) 2020-08-17 11:13:26 -07:00
Matteo Interlandi 810ba11d8a
remove code blocking cross exports (#230)
add few tests
2020-08-13 16:16:24 -07:00
Matteo Interlandi 42426165c6
Add TorchScript backend support (#225)
* refactoring of containers before adding torchscript support

* add torchscript backend

* add tests 

* add device as a parameter to convert, add 'to' to the pytorch containers

* improve coverage

* update doc
2020-08-13 14:03:09 -07:00
Matteo Interlandi 94b6203e01
improve coverage (#228) 2020-08-13 12:48:30 -07:00
Matteo Interlandi 2162ec58bc
Add automatic pdoc generation to pre-commit (#223)
* add automatic doc generation to pre-commit

* add templates and pdoc to pre-commit

* make pdoc non-blocking

* remove nonblocking

Co-authored-by: Karla Saur <1703543+ksaur@users.noreply.github.com>
2020-08-12 10:39:54 -07:00
Matteo Interlandi 45869c800e
remove requirements folder (#224) 2020-08-12 10:29:34 -07:00
Matteo Interlandi 79f70b2d77
Refactoring of trees (#222)
* rename calibration in post transform
Make post transform configurable

* done with regression
fixed problem with post_transform not being called

* working on testing

* fix for decision tree binary classification

* compute probabilities for sklearn models directly during conversion

* Fix binary and multi for decision trees

* Fix problem with probabilities for sklearn models
Fix problem with onnx tree models with only 1 node.

* post_transform is only executed for gbdt models

* merged with master

* rename sv test file

* update to the documentation

* Addressing Karla's comments.
2020-08-12 09:46:28 -07:00
Matteo Interlandi 58496ede96
refactoring of operators convert folder (#216) 2020-08-03 11:22:34 -07:00
Matteo Interlandi a6bedbaf2f
remove ir directory (#215) 2020-08-03 10:58:17 -07:00
Matteo Interlandi 4812b16d88
Bump pytorch version (#213)
* bump pytorch version

* get the correct version of torch for mac and linux

* fix pytorch version for python 3.5 to 1.5.1

* disable gemm for onnx

* just use tree_trav as default
2020-07-31 16:26:46 -07:00
Matteo Interlandi 44556cb480
bump default target opset to 11 (#214)
* bump default target opset

* fix tree implementation based on pytorch version

* fix the linux build
use loose version
2020-07-31 13:37:31 -07:00
Karla Saur 9e2b4d6126
onnx one hot encoder - ints (#197)
* getting started with OHE onnx

* blocked on ArrayFeatureExtractor

* getting started with OHE onnx

* Fix bug in supported
  add initializers to inputs

* add concat

* add reshape

* fix the constant that got removed

* add missing start to cast

* fix onnx types

* commenting out strings for now, issue filed

* simplifying failure case test

* removing redundant line

* adding skipif

Co-authored-by: Matteo Interlandi <mainterl@microsoft.com>
2020-07-27 15:48:21 -07:00
Karla Saur 2e67cdaec6
fixing copypaste error in non-tree onnx tests (#210) 2020-07-25 08:55:47 -07:00
KranthiGV 791e925a5d
Improving lightgbm ONNX backend example : Reduce sample size to make nb usable (#208)
* Improve onnx backend - lightgbm example

* Reduce number of samples
2020-07-23 17:44:09 -07:00
Karla Saur c060c310a0
bump version (#204) 2020-07-20 16:59:46 -07:00
Matteo Interlandi 6a955575d6
Refresh doc (#205) 2020-07-20 16:02:34 -07:00
Karla Saur cd2af2f0c2
ArrayFeatureExtactor framework (#198)
* VarianceThreshold passing, need to rework the tests/code for SelectPercentile, SelectKBest

* copypaste err

* removing SelectPerc for now until a solution can be found. Adding placeholder onnxml AFE code to be used with OHE PR

* matteo's comments

* matteo's comments
2020-07-18 12:02:42 -07:00
KranthiGV 2a86710106
Add float64 support in hummingbird (#186)
* Add float64 data tests

* Add support for float64 data

* float64 data support: Add regressor tests

* Update blog example

* Fix blogpost nb

* Update sklearn random forest nb

* XGBoost nb update

* Update lightgbm nb

* Update nbs

* Add lightgbm tests

* Fix sklearn test s

* Add additional tests around float64 data

* Remove onnx runtime based tests

* Add additional float64 data tests

* Update README example

* Skip xgboost tests when it is not installed

* Fix formatting issues

* nit
2020-07-17 10:16:27 -07:00
Karla Saur e6b23a2fe3
onnx scaler (#196)
* pulling up Scalar into impl file

* first stab at onnx scaler conv

* standardscaler test

* preparing to add other types of scalers

* adding the rest of the scaler tests

* matteo's comments
2020-07-16 10:36:54 -07:00
Karla Saur cfb08f8f51
onnxml linearregressor (#194)
* placeholders

* todo, clarify why onnxml logistic regression name doesn't line up w SKL

* tests for regressor

* adding test for parsefail

* addressing matteo's feedback

* adding back comment
2020-07-15 22:39:54 -07:00
Karla Saur e50eb9cf03
one hot encoder (#193)
* adding SKL OHE

* try blind conversion

* Update supported.py

* Update test_sklearn_one_hot_encoder_converter.py

* Update one_hot_encoder.py

* convert_sklearn_one_hot_encoder fix

* Scikit learn had API change that removed categorical_features

* rebase

* reverting doc

* renaming one_hot_enc to have skl prefix/root/hummingbird/env/bin/python3

* adding a test for strings not mod4

* extending the base operator

* removing uncessary flag

* addressing Matteo's comments

* Add comments for OHE

Co-authored-by: Tuan Nguyen <anhtuan277@gmail.com>
Co-authored-by: Matteo Interlandi <mainterl@microsoft.com>
Co-authored-by: Karla Saur <kasaur@microsoft.com>
2020-07-15 16:23:50 -07:00
zz da2b66339e
Support isolation forest in sklearn (#191)
* add converter for isolation forest and add is_anomaly_detection to base tree implementation classes

* add PyTorchBackendModelAnomalyDetection to container and topology

* add constants and support list

* add tests for isolation forest converter

* fix flake 8 checks

* make PyTorchBackendModelAnomalyDetection inherit from regression

* refactor docstring for _average_path_length

* add kwargs in base implementation classes

* fix style errors

Co-authored-by: Zhanjie Zhu <zhanjie.zhu@ing.com>
Co-authored-by: Matteo Interlandi <mainterl@microsoft.com>
2020-07-14 15:23:46 -07:00
Matteo Interlandi 1922480f19
New onnx integration with single pass over model (#192)
* remove link node IR
push onnx parsing into _parse
push onnx conversion into topology

* Fix to linear

* Fix to onnx linear models test
2020-07-13 14:57:31 -07:00
Karla Saur d6ec0cd2cf
OnnxLinear (#190)
* fixing typo in tree

* renaming onnxml tree test file to match others

* pulling LinearModel class up into _linear_impl

* fixing typo in tree

* renaming onnxml tree test file to match others

* fixing onnx_installed ->onnx_runtime_installed

* docstring, removing skl2onnx

* stuck at Inference of ONNX models with multiple ONNXML operators is not supported yet.

* commenting tests out for now
2020-07-10 17:31:04 -07:00
Karla Saur 982a01c33b
onnx normalizer (#188)
* initial files

* tests

* matteo's comments
2020-07-10 14:24:56 -07:00