转载:clf.decision_function()的功能

此博客为功能记录,供参考,同时有转载内容,给出了传送门。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

仅作为记录,大佬请跳过。

转载:传送门

功能是计算样本点到分割超平面的函数距离

请作为资深开发工程师,解释我给出的代码。请逐行分析我的代码并给出你对这段代码的理解。 我给出的代码是: import os import sys import unittest from sklearn.metrics import roc_auc_score from pyod.models.auto_encoder import AutoEncoder from pyod.utils.data import generate_data class TestAutoEncoder(unittest.TestCase): def assertHasAttr(self, obj, intended_attr): self.assertTrue(hasattr(obj, intended_attr)) def assertInRange(self, data, lower, upper): self.assertGreaterEqual(data.min(), lower) self.assertLessEqual(data.max(), upper) def setUp(self): self.n_train = 6000 self.n_test = 1000 self.n_features = 300 self.contamination = 0.1 self.roc_floor = 0.8 self.X_train, self.X_test, self.y_train, self.y_test = generate_data( n_train=self.n_train, n_test=self.n_test, n_features=self.n_features, contamination=self.contamination, random_state=42) self.clf = AutoEncoder(epoch_num=5, contamination=self.contamination) self.clf.fit(self.X_train) def test_parameters(self): self.assertHasAttr(self.clf, ‘decision_scores_’) self.assertIsNotNone(self.clf.decision_scores_) self.assertHasAttr(self.clf, ‘labels_’) self.assertIsNotNone(self.clf.labels_) self.assertHasAttr(self.clf, ‘threshold_’) self.assertIsNotNone(self.clf.threshold_) self.assertHasAttr(self.clf, ‘_mu’) self.assertIsNotNone(self.clf._mu) self.assertHasAttr(self.clf, ‘_sigma’) self.assertIsNotNone(self.clf.sigma) self.assertHasAttr(self.clf, ‘model’) self.assertIsNotNone(self.clf.model) def test_train_scores(self): self.assertEqual(len(self.clf.decision_scores), self.X_train.shape[0] def test_prediction_scores(self): pred_scores = self.clf.decision_function(self.X_test) self.assertEqual(pred_scores.shape[0], self.X_test.shape[0]) self.assertGreaterEqual(roc_auc_score(self.y_test, pred_scores), self.roc_floor) def test_prediction_labels(self): pred_labels = self.clf.predict(self.X_test) self.assertEqual(pred_labels.shape, self.y_test.shape) if name == ‘main’: unittest.main()
最新发布
03-17
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值