sklearn神经网络使用

2018/12/28

我是个傻逼

还是没好好学基础

所以第一次实践就出丑了。

今天遇见一个比较奇怪的问题,就是使用sklearn的多层感知机(神经网络)进行实验的时候,他的权值部分的大小,感觉很尴尬。
因为不是非常理解这个里面的原理,就简单进行实验来测试以下。


比如我使用mnist的数据,单个实例为28 × 28的图像,然后设置单个隐藏层,含有30个神经元。
当我直接使用这部分的数据进行预测的时候,
本来我以为最后应该是直接输出某个值,比如1,2...什么的。
但是最后的结果并不是这样,最后的效果看来它是设置了10个神经元。
然后这样整体的架构就是(784,30,10)最后一层输出层每个神经元是概率。


上面的结果其实我很疑惑,然后我就改用了另外的数据。
抽取数值为0和1的实例,然后最后的输出层就只有一个了。


kaggle上的输出结果

所以我感觉,可能为理解错误。

它最后应该都是以概率的形式进行输出,这可能就能解释为什么,他们有些kernel最后的输出层,采用了热编码。
而且比较关键的就是它可以自适应。

image.png[2]

最关键的,我猜它是自动就用了softmax在最后的输出函数。


image.png[3]

突然感觉其实我是没学会,所以这些问题都比较傻逼。。。


2018/12/29
其实本质上我还是对最后的输出层不够理解,但是最后sklearn的输出层的激活函数并没有提示,所以导致我可能不太理解。
当时它给出的信息是relu函数,这个函数最后输出的时候怎么回是概率呢。。
所以这个激活函数的作用就没有弄明白。

[1](https://scikit-learn.org/stable/modules/neural_networks_supervised.html
[2]https://docs.microsoft.com/en-us/azure/machine-learning/studio-module-reference/multiclass-neural-network
[3]https://scikit-learn.org/stable/modules/neural_networks_supervised.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值