import os
os.environ['CUDA_VISIBLE_DEVICES'] = "0"
from mlp_clf import MLPClassifier
import numpy as np
import tensorflow as tf
from sklearn.datasets import load_svmlight_file
from sklearn.utils import shuffle
#from scipy.sparse import csr_matrix
def mean(numbers): #计算平均值
s = 0.0
for num in numbers:
s = s + num
return s/len(numbers)
def dev(numbers, mean): #计算方差
sdev = 0.0
for num in numbers:
sdev = sdev + (num - mean)**2
return pow(sdev / (len(numbers)-1), 0.5) if __name__ == '__main__':
mze_array=[]
mae_array=[]
mse_array=[]
trainfile = "test_housing.0"
testfile = "train_housing.0"
X_train0, y_train = load_svmlight_file(trainfile)
X_test0 , y_test = load_svmlight_file(testfile)
X_train = X_train0.todense()
X_test = X_test0.todense()
attribute = np.shape(X_train)[-1]#tf.shape(X_train)
n_class = tf.reduce_max(y_train)
print("n_class:", n_class) X_train, y_train = shuffle(X_train, y_train, random_state=0)
y_train = y_train - 1
y_test = y_test - 1
 
clf = MLPClassifier(attribute, 5, [100]*3)
log = clf.fit(X_train, y_train, n_epoch=1000, keep_prob=0.8, val_data=(X_test, y_test))
Y_pred = clf.predict(X_test)
mze = 1- (Y_pred == y_test).mean()
mae = np.abs(Y_pred.ravel()-y_test.ravel()).astype(float).mean()
mse = np.power(Y_pred.ravel()-y_test.ravel(),2).astype(float).mean()
print("mze: %.4f" % mze)
print("mae:", mae)
print("mse:", mse)
Rudolf Wille. Restructuring lattice theory: An approach based on hierarchies of concepts. In Sébastien Ferré andSebastian Rudolph, editors,Formal Concept Analysis, pages 314–339, Berlin, Heidelberg, 2009. Springer BerlinHeidelberg.
R. Wille. Restructuring lattice theory: An approach based on hierarchies of concepts. In
I. Rival, editor, Ordered Sets, pages 445–470. Reidel, Dordrecht-Boston, 1982.

mlp_clf_mnist_test的更多相关文章

随机推荐

  1. python-布尔表达式

    1.布尔类型(bool): 1.只有两种情况  真/假 (True /  False) 2. print(type(False))      # <class 'bool'> type() ...

  2. sys模块

    #python run_case.py #在terminal中执行.py文件 在terminal中执行.py文件: 注: 无法使用terminal来打开那个文件 会显示如下:python: can't ...

  3. Java的流

    Java中的流主要是用来读写文件的.只要明确你是读文件还是写文件就可以确定使用哪种流了.读:read   写:writer 1.读文件:filereader这个类,顾名思义就知道是读文件了. 2.写文 ...

  4. ElasticSearch(十一)Elasticsearch清空指定Index/Type数据

    POST /index_name/type_name/_delete_by_query?conflicts=proceed { "query": { "match_all ...

  5. django分页功能实现

    django内置的分页功能需要引入内置模块from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger Pagina ...

  6. 常用sql语句总结(二)(更新数据,序列,创建数据表,约束,注释)

    常用sql语句总结(二)(更新数据,序列,创建数据表,约束,注释) 一. 增 INSERT INTO 数据表(字段,字段,-) VALUES(值,值-); INSERT INTO emp(empno, ...

  7. 图像处理 Matlab实现线性点运算、非线性点运算、点运算与直方图、直方图均衡化

    今天,我们学习了直方图.于是乎,回来我就用matlab代码实现一下.昨天受到道路检测老师课上一个内容的影响(对于道路裂缝的检测,我突发奇想,如果对于道路图像进行操作,是否能够让裂缝与道路分离,使得图像 ...

  8. 0 vs null

    看图说话 0 如图所示: 0 表示有纸(值), 但是纸(值)是0. 所以取纸(值)的时可以取, 但是没法用. null 如图所示: null 表示没有纸(值), 是真的啥都没有, 现在你抽纸的时候会出 ...

  9. linux设置静态IP及网卡选择

    linux中使用ifconfig命令查看网卡信息时显示为eth1,但是在network-scripts中只有ifcfg-eth0的配置文件,并且里面的NAME="eth0".   ...

  10. JavaWeb网上商城项目中sql语句问题的解决

    出现的问题 解决方法 对ProductDaoImpl建立Junit测试得到问题所在 学到了 Junit case测试验证和debug分步执行 mysql是关系型数据库.Redis是非关系型数据库且比m ...