Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def test_robust_scaler_floats_no_bias(self):
model = RobustScaler(with_centering=False)
data = [
[0.0, 0.0, 3.0],
[1.0, 1.0, 0.0],
[0.0, 2.0, 1.0],
[1.0, 0.0, 2.0],
]
model.fit(data)
model_onnx = convert_sklearn(model, "scaler",
[("input", FloatTensorType([None, 3]))])
self.assertTrue(model_onnx is not None)
dump_data_and_model(
numpy.array(data, dtype=numpy.float32),
model,
basename="SklearnRobustScalerWithCenteringFloat32",
)
def test_standard_scaler_floats_no_mean_std(self):
model = StandardScaler(with_mean=False, with_std=False)
data = [
[0.0, 0.0, 3.0],
[1.0, 1.0, 0.0],
[0.0, 2.0, 1.0],
[1.0, 0.0, 2.0],
]
model.fit(data)
model_onnx = convert_sklearn(model, "scaler",
[("input", FloatTensorType([None, 3]))])
self.assertTrue(model_onnx is not None)
dump_data_and_model(
numpy.array(data, dtype=numpy.float32),
model,
basename="SklearnStandardScalerFloat32NoMeanStd",
)
def test_batchkmeans_clustering(self):
data = load_iris()
X = data.data
model = MiniBatchKMeans(n_clusters=3)
model.fit(X)
model_onnx = convert_sklearn(model, "kmeans",
[("input", FloatTensorType([None, 4]))])
self.assertIsNotNone(model_onnx)
dump_data_and_model(
X.astype(numpy.float32)[40:60],
model,
model_onnx,
basename="SklearnKMeans-Dec4",
allow_failure="StrictVersion(onnx.__version__)"
" < StrictVersion('1.2')",
def test_gaussian_mixture_comp2(self):
data = load_iris()
X = data.data
model = GaussianMixture(n_components=2)
model.fit(X)
model_onnx = convert_sklearn(model, "GM",
[("input", FloatTensorType([None, 4]))])
self.assertIsNotNone(model_onnx)
dump_data_and_model(
X.astype(np.float32)[40:60],
model,
model_onnx,
basename="GaussianMixtureC2",
intermediate_steps=True,
# Operator gemm is not implemented in onnxruntime
allow_failure="StrictVersion(onnx.__version__)"
" < StrictVersion('1.2')",
],
),
),
],
)
data = np.array(
[[0, 0, 0], [0, 0, 0.1], [1, 1, 1.1], [1, 1.1, 1]],
dtype=np.float32,
)
y = [0, 0, 1, 1]
model.fit(data, y)
model_onnx = convert_sklearn(
model,
"pipelinewithinpipeline",
[("input", FloatTensorType(data.shape))],
)
self.assertTrue(model_onnx is not None)
dump_data_and_model(
data,
model,
model_onnx,
basename="SklearnPipelinePcaPipelineMinMaxNB2",
allow_failure="StrictVersion(onnxruntime.__version__)"
" <= StrictVersion('0.2.1')",
def test_model_k_bins_discretiser_ordinal_quantile(self):
X = np.array([
[1.2, 3.2, 1.3, -5.6], [4.3, -3.2, 5.7, 1.0],
[0, 3.2, 4.7, -8.9], [0.2, 1.3, 0.6, -9.4],
[0.8, 4.2, -14.7, -28.9], [8.2, 1.9, 2.6, -5.4],
[4.8, -9.2, 33.7, 3.9], [81.2, 1., 0.6, 12.4],
[6.8, 11.2, -1.7, -2.9], [11.2, 12.9, 4.3, -1.4],
])
model = KBinsDiscretizer(n_bins=[3, 2, 3, 4],
encode="ordinal",
strategy="quantile").fit(X)
model_onnx = convert_sklearn(
model,
"scikit-learn KBinsDiscretiser",
[("input", FloatTensorType([None, X.shape[1]]))],
)
self.assertTrue(model_onnx is not None)
dump_data_and_model(
X.astype(np.float32),
model,
model_onnx,
basename="SklearnKBinsDiscretiserOrdinalQuantile",
allow_failure="StrictVersion("
"onnxruntime.__version__)"
def test_model_calibrated_classifier_cv_isotonic_binary(self):
data = load_iris()
X, y = data.data, data.target
y[y > 1] = 1
clf = KNeighborsClassifier().fit(X, y)
model = CalibratedClassifierCV(clf, cv=2, method="isotonic").fit(X, y)
model_onnx = convert_sklearn(
model,
"scikit-learn CalibratedClassifierCV",
[("input", FloatTensorType([None, X.shape[1]]))],
)
try:
self.assertTrue(model_onnx is not None)
dump_data_and_model(
X.astype(np.float32),
model,
model_onnx,
basename="SklearnCalibratedClassifierCVIsotonicBinary")
except Exception as e:
raise AssertionError("Issue with model\n{}".format(
str(model_onnx))) from e
def test_model_label_binariser_neg_label(self):
X = np.array([1, 2, 6, 4, 2])
model = LabelBinarizer(neg_label=-101).fit(X)
model_onnx = convert_sklearn(
model,
"scikit-learn label binariser",
[("input", Int64TensorType([None]))],
)
self.assertTrue(model_onnx is not None)
dump_data_and_model(
X.astype(np.int64),
model,
model_onnx,
basename="SklearnLabelBinariserNegLabel",
allow_failure="StrictVersion("
"onnxruntime.__version__)"
def test_model_label_binariser_default(self):
X = np.array([1, 2, 6, 4, 2])
model = LabelBinarizer().fit(X)
model_onnx = convert_sklearn(
model,
"scikit-learn label binariser",
[("input", Int64TensorType([None]))],
)
self.assertTrue(model_onnx is not None)
dump_data_and_model(
X.astype(np.int64),
model,
model_onnx,
basename="SklearnLabelBinariserDefault",
allow_failure="StrictVersion("
"onnxruntime.__version__)"
def test_model_k_bins_discretiser_onehot_dense_uniform_int(self):
X = np.array([[1, 3, 3, -6], [3, -2, 5, 0], [0, 2, 7, -9]])
model = KBinsDiscretizer(n_bins=[3, 2, 3, 4],
encode="onehot-dense",
strategy="uniform").fit(X)
model_onnx = convert_sklearn(
model,
"scikit-learn KBinsDiscretiser",
[("input", Int64TensorType([None, X.shape[1]]))],
)
self.assertTrue(model_onnx is not None)
dump_data_and_model(
X.astype(np.int64),
model,
model_onnx,
basename="SklearnKBinsDiscretiserOneHotDenseUniformInt",
allow_failure="StrictVersion(onnxruntime.__version__)"
"<= StrictVersion('0.2.1')",