iamDecode / sklearn-pmml-model

A library to parse and convert PMML models into Scikit-learn estimators.
BSD 2-Clause "Simplified" License
76 stars 15 forks source link

Add support for multi-layer perceptron estimators #40

Closed iamDecode closed 2 years ago

iamDecode commented 2 years ago

This PR adds initial support for neural network models. Non-fully connected networks are supported using fully connected multi-layer perceptrons, that simply have a bunch of zero-weight neuron connections for the ones not described in the PMML document.

There is no standard way of dealing with categorical variables in neural networks, hence I have left categorical support out of this PR for brevity. It is currently up to the user to encode categorical variables first.

codecov[bot] commented 2 years ago

Codecov Report

Merging #40 (3c5ccc2) into master (45d4b2c) will increase coverage by 0.02%. The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #40      +/-   ##
==========================================
+ Coverage   99.62%   99.65%   +0.02%     
==========================================
  Files          19       22       +3     
  Lines        1062     1146      +84     
==========================================
+ Hits         1058     1142      +84     
  Misses          4        4              
Impacted Files Coverage Δ
sklearn_pmml_model/neural_network/__init__.py 100.00% <100.00%> (ø)
sklearn_pmml_model/neural_network/_base.py 100.00% <100.00%> (ø)
sklearn_pmml_model/neural_network/_classes.py 100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 45d4b2c...3c5ccc2. Read the comment docs.

lgtm-com[bot] commented 2 years ago

This pull request introduces 2 alerts when merging f7fb5d0016facf49f3a802e8e5ab385671a0bdcd into 45d4b2c5b72140066882189f882ffa9494675e6d - view on LGTM.com

new alerts: