用一台普通电脑,试试神经网络算法(132)

Posted 大梦方觉晓

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用一台普通电脑,试试神经网络算法(132)相关的知识,希望对你有一定的参考价值。

......续前


ANN包括三个部分

  • Active function(激活函数),把输入的数值进行复杂的数学转换,将多组输入转换成一个最终输出的数值(信号);

  • Network topolgy(网络架构),确定参与计算的神经元数量(可以理解为进行计算的函数),以及神经元的分层及连接方式,典型的结构有一组输入层,一个输出层,中间设定若干“隐层”,除了输出层只有一个神经元之外之外,每个层的神经元数量和隐层数量都可以设定;

  • Training algorithm(训练函数),确定层间的神经元之间的权重如何设定,并根据计算结果加以调整。


基本流程是这样,首先随机分配输入层的各个神经元权重,即对结果的影响程度(类似于回归里面的回归系数),然后由定义的激活函数进行计算,由训练函数进行调整,整体的计算量与数据数量、神经元数量和“隐层”数量有关。


很多文章谈到神经网络计算的计算量巨大,多数需要GPU辅助,这多指大型商业或者科研应用领域,以复杂图形识别、手写音频学习较为多见,而如果使用的数据量级不算太大,个人电脑基本上是可以应付的,以两个数据集为例,根据在普通个人电脑上的实验,10000*10的数据矩阵,设定3个隐层,每层3个神经元,计算时间是十秒左右,手写数字识别的mnist训练测试集,大约6万张28*28像素的图片训练,时间大约一分钟。


在医疗应用中,ANN基本上可以胜任用回归或其他机器学习算法解决的问题(例如多项检查数值和诊断的关联,包括费用信息等),如果不考虑大型图像识别的话,大多数问题解决的成本并不高,只需要一台电脑和几个人脑。


附真实截图:每个圆圈代表一个神经元,数据(最左侧)输入后,分别经过输入层和两个隐层,最后输出结果。


以上是关于用一台普通电脑,试试神经网络算法(132)的主要内容,如果未能解决你的问题,请参考以下文章

同一个局域网内,为啥有其中一台电脑ping不通,其他的都PING得通?

一台linux 系统旧电脑不能访问网络,但是外部可以通过ssh连接访问它。 ...

多台服务器如何做网络负载均衡?

P3376 网络流-最大流模板题(Dinic+当前弧优化)

局域网双网卡共享上网

BlockChain-在一台电脑上部署多个节点