python MLP 神经网络使用 MinMaxScaler 没有 StandardScaler效果好
MLP 64,2 preprocessing.MinMaxScaler().fit(X)
test confusion_matrix:
[[129293 2734]
[ 958 23375]]
precision recall f1-score support
0 0.99 0.98 0.99 132027
1 0.90 0.96 0.93 24333
avg / total 0.98 0.98 0.98 156360
all confusion_matrix:
[[646945 13384]
[ 4455 117015]]
precision recall f1-score support
0 0.99 0.98 0.99 660329
1 0.90 0.96 0.93 121470
avg / total 0.98 0.98 0.98 781799
black verify confusion_matrix:
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0
0 0 0 0 0]
/root/anaconda2/lib/python2.7/site-packages/sklearn/metrics/classification.py:1137: UndefinedMetricWarning: Recall and F-score are ill-defined and being set to 0.0 in labels with no true samples.
'recall', 'true', average, warn_for)
precision recall f1-score support
0 0.00 0.00 0.00 0
1 1.00 0.07 0.13 42
avg / total 1.00 0.07 0.13 42
white verify confusion_matrix:
[1 1 1 1 1 1 0]
precision recall f1-score support
0 1.00 0.14 0.25 7
1 0.00 0.00 0.00 0
avg / total 1.00 0.14 0.25 7
unknown_verify:
[1 0 0 1 1 0 0 0 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 1 1 1
0 1 1 1 1 0 1 0 0 1 0 1 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 1 1 0 0 1 0 0 0]
MLP 64,2 使用preprocessing.StandardScaler().fit(X)
[[131850 180]
[ 230 24100]]
precision recall f1-score support
0 1.00 1.00 1.00 132030
1 0.99 0.99 0.99 24330
avg / total 1.00 1.00 1.00 156360
all confusion_matrix:
[[659500 829]
[ 1195 120275]]
precision recall f1-score support
0 1.00 1.00 1.00 660329
1 0.99 0.99 0.99 121470
avg / total 1.00 1.00 1.00 781799
black verify confusion_matrix:
[0 1 1 0 0 0 0 1 1 1 0 1 1 1 1 1 1 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 1 1 1 1
0 0 0 1 1]
/root/anaconda2/lib/python2.7/site-packages/sklearn/metrics/classification.py:1137: UndefinedMetricWarning: Recall and F-score are ill-defined and being set to 0.0 in labels with no true samples.
'recall', 'true', average, warn_for)
precision recall f1-score support
0 0.00 0.00 0.00 0
1 1.00 0.62 0.76 42
avg / total 1.00 0.62 0.76 42
white verify confusion_matrix:
[0 0 1 0 1 1 0]
precision recall f1-score support
0 1.00 0.57 0.73 7
1 0.00 0.00 0.00 0
avg / total 1.00 0.57 0.73 7
unknown_verify:
[1 0 0 0 1 0 1 1 0 0 1 0 1 1 0 1 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 1 0 0
0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0]
代码:
from sklearn import preprocessing
scaler = preprocessing.StandardScaler().fit(X)
#scaler = preprocessing.MinMaxScaler().fit(X)
X = scaler.transform(X)
print("standard X sample:", X[:3]) black_verify = scaler.transform(black_verify)
print(black_verify) white_verify = scaler.transform(white_verify)
print(white_verify) unknown_verify = scaler.transform(unknown_verify)
print(unknown_verify) # ValueError: operands could not be broadcast together with shapes (756140,75) (42,75) (756140,75)
for i in range(20):
X = np.concatenate((X, black_verify))
y += black_verify_labels labels = ['white', 'CC']
if True:
# pdb.set_trace()
ratio_of_train = 0.8
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=(1 - ratio_of_train))
# X_train=preprocessing.normalize(X_train)
# X_test=preprocessing.normalize(X_test)
clf = MLPClassifier(solver='sgd', batch_size=128, learning_rate='adaptive', max_iter=256,
hidden_layer_sizes=(64, 2), random_state=1) """
clf = sklearn.ensemble.RandomForestClassifier(n_estimators=n_estimators, verbose=verbose, n_jobs=n_jobs,
random_state=random_state, oob_score=True)
""" clf.fit(X_train, y_train)
print "test confusion_matrix:"
# print clf.feature_importances_
y_pred = clf.predict(X_test)
print(sklearn.metrics.confusion_matrix(y_test, y_pred))
print(classification_report(y_test, y_pred))
else:
#clf = pickle.loads(open("mpl-acc97-recall98.pkl", 'rb').read())
clf = pickle.loads(open("mlp-add-topx10.model", 'rb').read())
y_pred = clf.predict(X)
print(sklearn.metrics.confusion_matrix(y, y_pred))
print(classification_report(y, y_pred))
import sys
#sys.exit(0) print "all confusion_matrix:"
y_pred = clf.predict(X)
print(sklearn.metrics.confusion_matrix(y, y_pred))
print(classification_report(y, y_pred))
python MLP 神经网络使用 MinMaxScaler 没有 StandardScaler效果好的更多相关文章
- "多层感知器"--MLP神经网络算法
提到人工智能(Artificial Intelligence,AI),大家都不会陌生,在现今行业领起风潮,各行各业无不趋之若鹜,作为技术使用者,到底什么是AI,我们要有自己的理解. 目前,在人工智能中 ...
- MLP神经网络实例--手写识别
1.导入MNIST数据集 直接使用fetch_mldata会报错,错误信息是python3.7把fetch_mldata方法移除了,所以需要单独下载数据集从这个网站上下载数据集: https://gi ...
- c++实现mlp神经网络
之前一直用theano训练样本,最近需要转成c或c++实现.在网上参考了一下其它代码,还是喜欢c++.但是看了几份cpp代码之后,发现都多少有些bug,很不爽.由于本人编码能力较弱,还花了不少时间改正 ...
- 深度学习与计算机视觉:基于Python的神经网络的实现
在前面两篇文章介绍了深度学习的一些基本概念,本文则使用Python实现一个简单的深度神经网络,并使用MNIST数据库进行测试. 神经网络的实现,包括以下内容: 神经网络权值的初始化 正向传播 误差评估 ...
- python视频 神经网络 Tensorflow
python视频 神经网络 Tensorflow 模块 视频教程 (带源码) 所属网站分类: 资源下载 > python视频教程 作者:smile 链接:http://www.pythonhei ...
- python 实现神经网络算法
注: Scratch是一款由麻省理工学院(MIT) 设计开发的一款面向少年的简易编程工具.这里写链接内容 本文翻译自“IMPLEMENTING A NEURAL NETWORK FRO ...
- 使用python制作神经网络——搭建框架
一.神经网络的大体结构可分为三个函数,分别如下: 1.初始化函数 设定输入层节点,隐藏层节点和输出层节点的数量. 2.训练 学习给定训练集样本后,优化权重. 3.查询 给定输入,从输出节点给出答案 所 ...
- python keras 神经网络框架 的使用以及实例
先吐槽一下这个基于theano的keras有多难装,反正我是在windows下折腾到不行(需要64bit,vs c++2015),所以自己装了一个双系统.这才感到linux系统的强大之初,难怪大公司都 ...
- Python实现神经网络算法识别手写数字集
最近忙里偷闲学习了一点机器学习的知识,看到神经网络算法时我和阿Kun便想到要将它用Python代码实现.我们用了两种不同的方法来编写它.这里只放出我的代码. MNIST数据集基于美国国家标准与技术研究 ...
随机推荐
- Crashing Robots - poj 2632
Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8352 Accepted: 3613 Description In ...
- shell脚本57问
[1]交互方式.非交互方式.Shell脚本是什么? 经常与linux打交道,肯定对shell这个词不陌生.不明白shell意思的,可以自行翻译:外壳.去壳. 这个翻译结果怎么可以与计算机系统联系起来呢 ...
- Coursera machine learning 第二周 编程作业 Linear Regression
必做: [*] warmUpExercise.m - Simple example function in Octave/MATLAB[*] plotData.m - Function to disp ...
- LINQ分页工具
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Co ...
- 问题:今天测试模块一直出现一个问题?module 'subprocess' has no attribute 'Popen'
原因:我起的名字用了模块本身的名字,这个地方一定要切记
- tomcat 编码问题
默认情况下,tomcat使用的的编码方式:iso8859-1 修改tomcat下的conf/server.xml文件 找到如下代码: < Connector port="8080 ...
- nginx的location
nginx的location分为普通location和正则location. 在普通location中,匹配规则是最大前缀匹配. 在正则location中,匹配规则是先到先得匹配.(最先匹配的正则lo ...
- mysql数据库访问授权
1.进入MySQL服务器 d:\mysql\bin\> mysql -h localhost -u root; 2.赋予任何主机访问数据的权限 mysql> GRANT ALL PRIVI ...
- zip filter map 列表生成器
map map(function, list): 就是对list 中的每一个元素都调用function函数进行处理,返回一个map的对象 list一下就可以生成一个列表 或者for循环该对象就可以输出 ...
- python cookbook第三版学习笔记十八:可由用户修改的装饰器
定义一个属性可由用户修改的装饰器: 在前面的介绍中使用装饰器来包装函数,这一章来介绍下如何让用户调整装饰器的属性. 首先来看下代码: from functools import wraps,parti ...