- 上次得到了数据以后接下来就是用机器学习的方法来训练
from sklearn.neighbors import KNeighborsClassifier # 引入模型
from sklearn.cross_validation import cross_val_score
import matplotlib.pyplot as plt
#核心代码
feature_all=array(feature_all)
feature_all = np.reshape(feature_all, (feature_all.shape[0], -1))
label_all=array(label_all)
lis_step=range(1,100,4)
# 得到模型
lis_score=[]
for i in lis_step:
print i
knn=KNeighborsClassifier(n_neighbors=i)
scores=cross_val_score(knn,feature_all,label_all,cv=10,scoring="accuracy")
lis_score.append(scores.mean())
plt.plot(lis_step,lis_score)
plt.show()
- 结果 看上去能达到0.995以上,所以总的说来这种验证码还是非常容易识别的。因为这个验证码实在是太简单了。所以程序就写的比较简单。