基于SVM的信用卡欺诈检测代码
时间: 2024-12-25 22:32:07 浏览: 1
基于支持向量机(Support Vector Machine,简称SVM)的信用卡欺诈检测是一个常见的机器学习应用案例。在Python中,可以使用scikit-learn库来实现这一过程。下面是一个简化版的代码示例:
```python
# 导入必要的库
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC
from sklearn.metrics import classification_report, confusion_matrix
# 加载数据集,这里假设已经有一个名为credit_card Fraud.csv的数据文件
data = pd.read_csv('credit_card Fraud.csv')
X = data.drop('Class', axis=1) # 特征变量
y = data['Class'] # 目标变量
# 数据预处理,标准化特征
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X_scaled, y, test_size=0.2, random_state=42)
# 创建SVM分类器,并选择线性核函数
svm_classifier = SVC(kernel='linear')
# 训练模型
svm_classifier.fit(X_train, y_train)
# 预测测试集
y_pred = svm_classifier.predict(X_test)
# 评估模型性能
print("Classification Report:")
print(classification_report(y_test, y_pred))
print("\nConfusion Matrix:")
print(confusion_matrix(y_test, y_pred))
阅读全文