parent
ed7901f8db
commit
b52dd54cda
|
@ -0,0 +1,31 @@
|
|||
from sklearn.datasets import load_iris
|
||||
from sklearn.model_selection import train_test_split
|
||||
from sklearn.svm import SVC
|
||||
import argparse
|
||||
|
||||
# 加载数据集
|
||||
iris = load_iris()
|
||||
X = iris.data
|
||||
y = iris.target
|
||||
|
||||
# 划分数据集
|
||||
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
|
||||
|
||||
# 参数解析
|
||||
parser = argparse.ArgumentParser(description='SVM Model for Iris dataset')
|
||||
parser.add_argument('--C', type=float, default=1.0, help='Regularization parameter')
|
||||
parser.add_argument('--kernel', type=str, default='rbf', help='Kernel type')
|
||||
parser.add_argument('--gamma', type=float, default='scale', help='Kernel coefficient')
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
# 定义支持向量机模型并设置参数
|
||||
svm = SVC(C=args.C, kernel=args.kernel, gamma=args.gamma)
|
||||
|
||||
# 在训练集上拟合模型
|
||||
svm.fit(X_train, y_train)
|
||||
|
||||
# 输出模型在测试集上的准确率
|
||||
test_accuracy = svm.score(X_test, y_test)
|
||||
print(f"Accuracy={test_accuracy}")
|
||||
|
Loading…
Reference in New Issue