- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《脑与认知科学导论》课程实验报告要求
实验网址:
/people/karpathy/convnetjs/demo/cifar10.html
实验要求:
1)加载预训练CNN网络,观察其物体识别效果以及每层的中间结果,分析CNN与人脑视觉信息加工机制的异同
2)设计一个新的CNN网络结构并对其进行训练,观察新网络的物体识别能力随时间变化的情况,分析网络结构改变对物体识别能力的影响
请同学们在12月18号考试前发到助教邮箱:lhl0796@
附录ConvNetJS代码介绍
网络层
输入层:
{type: input, out_sx:24, out_sy:24, out_depth:3} #输入为24*24*3的RGB图片
type:层类型
out_sx:输入的x维度
out_sy:输入的y维度
out_depth:通道数(channel)
卷积层:
{type:conv,sx:3,sy:4,pad:1, filters:10, stride:1, activation:relu}
type:层类型
sx:卷积核尺寸,若没有设置sy,则卷积核大小为sx*sx
sy:可不予设置,若设置,卷积核大小为sx*sy
pad:对于无法卷积的边界部分进行补零,若不设置pad,默认pad=0,即不进行补零操作
filters:卷积层的输出通道数
stride:步长,卷积核移动步长
activation:激活函数(有:’sigmoid’,’tanh’,’relu’等),可不予设置
若卷积层输入为W1xH1xD1,输出为W2xH2xD2,则满足:
W2 = (W1 - sx + pad*2)/stride + 1
H2 = (H1 - sy + pad*2)/stride + 1
D2 = filters
池化层:
{type:pool, sx:2, pad:1, stride:2}
type:层类型
sx:池化窗口大小sx*sx
pad:补零,同卷积层
stride:步长,池化窗口移动步长
若池化层输入为W1xH1xD1,输出为W2xH2xD2,则满足:
W2 = (W1 - sx + pad*2)/stride + 1
H2 = (H1 - sx + pad*2)/stride + 1
D2 = D1
全连接层:
{type:fc, num_neurons:10, activation:sigmoid, drop_prob: 0.5}
type:层类型
num_neurons:全连接神经元个数
activation:激活函数(有:’sigmoid’,’tanh’,’relu’等),可不予设置
drop_prob: dropout比例(表示每次迭代扔掉的神经元比例,有利于防止过拟合),可不予设置
分类层:
{type:softmax, num_classes:2}
type:层类型,分类可选 ‘softmax’, ‘svm’等
num_classes:分类个数
Local Contrast Normalization Layer:
{type:lrn, k:1, n:3, alpha:0.1, beta:0.75}
局部归一化,类似BatchNormalization层,有利于防止网络过拟合
模型构建与训练
模型构建:
layer_defs = [];
layer_defs.push(网络层)
layer_defs.push(网络层) #搭建网络
…………
#创建并编译网络
net = new convnetjs.Net();
net.makeLayers(layer_defs);
训练:
trainer = new convnetjs.Trainer(net, {method: sgd, learning_rate: 0.01,l2_decay: 0.001, momentum: 0.9, batch_size: 10, l1_decay: 0.001});
method:优化器,有‘sgd’,‘windowgrad’,‘adadelta’,nesterov, adagrad等
learning_rate:学习率
l2_decay:L2正则化系数
momentum:‘sgd’优化器的动量系数,其他优化器没有这一项
batch_size:批数据个数
l1_decay:L1正则化系数
更多详细内容及解释请查阅
/people/karpathy/convnetjs/docs.html
文档评论(0)