From b70a35453f5c57afec286619dda48b44a3d9bbe0 Mon Sep 17 00:00:00 2001
From: zhang yongquan
Date: Tue, 7 Aug 2018 09:55:51 +0800
Subject: [PATCH 1/6] Create Day 13_SVM.md
---
Code/Day 13_SVM.md | 93 ++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 93 insertions(+)
create mode 100644 Code/Day 13_SVM.md
diff --git a/Code/Day 13_SVM.md b/Code/Day 13_SVM.md
new file mode 100644
index 0000000..a492d5a
--- /dev/null
+++ b/Code/Day 13_SVM.md
@@ -0,0 +1,93 @@
+# Day 13 | 支持向量机 (SVM)
+
+## 导入库
+```python
+import numpy as np
+import matplotlib.pyplot as plt
+import pandas as pd
+```
+
+## 导入数据
+```python
+dataset = pd.read_csv('Social_Network_Ads.csv')
+X = dataset.iloc[:, [2, 3]].values
+y = dataset.iloc[:, 4].values
+```
+
+## 拆分数据集为训练集合和测试集合
+```python
+from sklearn.cross_validation import train_test_split
+X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25, random_state = 0)
+```
+
+## 特征量化
+```python
+from sklearn.preprocessing import StandardScaler
+sc = StandardScaler()
+X_train = sc.fit_transform(X_train)
+X_test = sc.transform(X_test)
+```
+
+## 适配SVM到训练集合
+```python
+from sklearn.svm import SVC
+classifier = SVC(kernel = 'linear', random_state = 0)
+classifier.fit(X_train, y_train)
+```
+## 预测测试集合结果
+```python
+y_pred = classifier.predict(X_test)
+```
+
+## 创建混淆矩阵
+```python
+from sklearn.metrics import confusion_matrix
+cm = confusion_matrix(y_test, y_pred)
+```
+
+## 训练集合结果可视化
+
+```python
+from matplotlib.colors import ListedColormap
+X_set, y_set = X_train, y_train
+X1, X2 = np.meshgrid(np.arange(start = X_set[:, 0].min() - 1, stop = X_set[:, 0].max() + 1, step = 0.01),
+ np.arange(start = X_set[:, 1].min() - 1, stop = X_set[:, 1].max() + 1, step = 0.01))
+plt.contourf(X1, X2, classifier.predict(np.array([X1.ravel(), X2.ravel()]).T).reshape(X1.shape),
+ alpha = 0.75, cmap = ListedColormap(('red', 'green')))
+plt.xlim(X1.min(), X1.max())
+plt.ylim(X2.min(), X2.max())
+for i, j in enumerate(np.unique(y_set)):
+ plt.scatter(X_set[y_set == j, 0], X_set[y_set == j, 1],
+ c = ListedColormap(('red', 'green'))(i), label = j)
+plt.title('SVM (Training set)')
+plt.xlabel('Age')
+plt.ylabel('Estimated Salary')
+plt.legend()
+plt.show()
+```
+
+
+
+
+## 测试集合结果可视化
+```python
+from matplotlib.colors import ListedColormap
+X_set, y_set = X_test, y_test
+X1, X2 = np.meshgrid(np.arange(start = X_set[:, 0].min() - 1, stop = X_set[:, 0].max() + 1, step = 0.01),
+ np.arange(start = X_set[:, 1].min() - 1, stop = X_set[:, 1].max() + 1, step = 0.01))
+plt.contourf(X1, X2, classifier.predict(np.array([X1.ravel(), X2.ravel()]).T).reshape(X1.shape),
+ alpha = 0.75, cmap = ListedColormap(('red', 'green')))
+plt.xlim(X1.min(), X1.max())
+plt.ylim(X2.min(), X2.max())
+for i, j in enumerate(np.unique(y_set)):
+ plt.scatter(X_set[y_set == j, 0], X_set[y_set == j, 1],
+ c = ListedColormap(('red', 'green'))(i), label = j)
+plt.title('SVM (Test set)')
+plt.xlabel('Age')
+plt.ylabel('Estimated Salary')
+plt.legend()
+plt.show()
+```
+
+
+
From 6416b0488d3344af76031ed0ebbfbe9830a1c6ad Mon Sep 17 00:00:00 2001
From: zhang yongquan
Date: Tue, 7 Aug 2018 09:58:34 +0800
Subject: [PATCH 2/6] Update README.md
---
README.md | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/README.md b/README.md
index 3f172c2..02bad44 100644
--- a/README.md
+++ b/README.md
@@ -14,3 +14,9 @@
+
+## 支持向量机(SVM) | 第12天
+
+
+
+
From c663a8b7abbf6125803b619026cc5045ef004672 Mon Sep 17 00:00:00 2001
From: zhang yongquan
Date: Tue, 7 Aug 2018 09:59:44 +0800
Subject: [PATCH 3/6] Update README.md
---
README.md | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/README.md b/README.md
index 02bad44..95bcb7a 100644
--- a/README.md
+++ b/README.md
@@ -20,3 +20,7 @@
+
+## 支持向量机(SVM) | 第13天
+
+[SVM实现](https://github.com/MachineLearning100/100-Days-Of-ML-Code/blob/master/Code/Day%2013_SVM.md)
From 59116d17fa7965aed93e113dde011a276b642f1d Mon Sep 17 00:00:00 2001
From: zhang yongquan
Date: Tue, 7 Aug 2018 10:08:22 +0800
Subject: [PATCH 4/6] Add files via upload
---
Other Docs/SVM_test set.png | Bin 0 -> 24074 bytes
Other Docs/SVM_training set.png | Bin 0 -> 33442 bytes
2 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 Other Docs/SVM_test set.png
create mode 100644 Other Docs/SVM_training set.png
diff --git a/Other Docs/SVM_test set.png b/Other Docs/SVM_test set.png
new file mode 100644
index 0000000000000000000000000000000000000000..220355f5a4b01566e721e623aa2b71631a03bb1e
GIT binary patch
literal 24074
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