Torch7学习笔记[2] ---神经网络的主体框架

原创 2016年08月30日 22:06:44

参考资料:
https://github.com/soumith/cvpr2015/blob/master/Deep%20Learning%20with%20Torch.ipynb
将整个框架分为以下几个模块:
1、options设置
2、train、test预处理以及读取
3、net结构以及criterion建立
4、train设置
5、test设置
6、保存中间结果以及断点开始(待完善)
y以上每个功能模块单独由一个文件完成,整个结构分为7个文件
main.lua
opt.lua
dataloder.lua
model.lua
train.lua
test.lua
checkpont.lua(待完善)

require 'torch'
require 'nn'
require 'optim'

local DataLoder = require 'dataloder'  --load the dataloder.lua
local opts = require 'opt'
local Model = require 'model'
local Test = require 'test'
local checkpoints = require 'checkpoint'
local Trainer = require 'train'

torch.setdefaulttensortype = ('torch.FloatTensor')  --
torch.setnumthreads(1)
torch.manualSeed(opt.manualSeed)
cutorch.manualSeedAll(opt.manualSeed)

local opt = opts.parse(arg)  --load the options
local trainset,testset = DataLoder.creat(opt) --load the dataset

local model,criterion = Model.setup(opt) --load the model,criterion
if(opt.type == 'cuda')   then  --turn on gpu:model-criterion-data-label
    model = model:cuda() 
    criterion = criterion:cuda()
    trainset.data = trainset.data:cuda()
    trainset.label = trainset.label:cuda()
    testset.data = testset.data:cuda()
    testset.label = testset.label:cuda()
end

function trainset:size() --prepare for training 
    return self.data:size(1) 
end
local trainer = Trainer(model,criterion,opt)

bestModel = false
for epoch = 1,opt.max_epoch do
    local current_error = trainer:train(epoch,trainset)
    --save the current station
    --checkpoints.save(epoch, model, trainer.optimState, bestModel, opt)
end

local correct_rate = Test.run(opt,testset,model)
print(correct_rate)

运行程序时,直接在文件所在目录终端执行:th main.lua 即可运行程序。若需改变options,例如gpu运行:th main.lua –type cuda

版权声明:本文为博主原创文章,未经博主允许不得转载。

torch mac openmp

mac上要使用openmp,只要装一个版本高点的gcc就可以了。 终端要能上internet 装homebrew brew install gcc 调整mac终端的默认gcc到你的版本。 # 终端上网...
  • huntstart
  • huntstart
  • 2017年07月21日 21:26
  • 360

torch入门笔记10:如何建立torch神经网络模型

这一章不涉及太多的神经网络的原理,重点是介绍如何使用Torch7 神经网络    首先require(相当于c语言的include)nn包,该包是神经网络的依赖包,记得在语句最后加上“;”,这个跟...
  • u011534057
  • u011534057
  • 2016年10月09日 14:58
  • 2170

Torch7框架学习资料整理

以下,主要是自己在学习Torch7时的一些记录和体会,不喜勿喷,指出错误更加感激。 1.Torch7 老版本,主要是基于Lua5.1接口提供,看框架之前最好先看看Lua。 2.第一份:转自:http:...
  • App_12062011
  • App_12062011
  • 2017年02月15日 15:21
  • 1025

torch神经网络图

torch官方教程中神经网络图的整理。
  • zackzhaoyang
  • zackzhaoyang
  • 2016年05月16日 21:49
  • 2239

Torch7下搭建卷积神经网络框架

之前的博文,如一文读懂卷积神经网络(CNN)、多层网络与反向传播算法详解、感知机详解、卷积神经网络详解等已经比较详细的讲述了神经网络以及卷积神经网络的知识。本篇博文主要讲述在Torch7中神经网络如何...
  • qq_28168421
  • qq_28168421
  • 2016年12月05日 21:58
  • 1096

Torch7 学习笔记[1]

Torch7的安装--Ubuntu14.04
  • qq_23097931
  • qq_23097931
  • 2016年08月30日 21:49
  • 1082

layui框架详细分析系列之框架主体组织结构

layui框架主体今天正式的进入框架主体部分的学习与分析,该框架开源从GitHub上clone下来的源码主要的部分就是src部分,该部分主要的目录结构构成如下: 从上图可以看出css存储...
  • s1879046
  • s1879046
  • 2017年07月26日 19:05
  • 597

Torch7安装

尝试了很多办法去安装Torch7。 安装平台: 虚拟机 + ubuntu12.04, 32位机 尝试过采用官网的办法安装, 网址如下: http://torch.ch/docs/getting-...
  • a130737
  • a130737
  • 2015年05月15日 15:37
  • 13150

Torch7 教程 Supervised Learning CNN

在搭建好Torch7之后,我们开始
  • guoyilin
  • guoyilin
  • 2014年08月08日 15:59
  • 17055

机器学习中使用的神经网络第一讲笔记:Introduction

第一周:Introduction 为什么要使用机器学习 解决一般的直接编程解决不了的问题,如识别三维物体等。 机器学习相对于普通编程个人理解类似于黑箱,由已知的给定输入的输出,来得到特定的输入对应...
  • vivian_ll
  • vivian_ll
  • 2017年05月23日 10:17
  • 254
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Torch7学习笔记[2] ---神经网络的主体框架
举报原因:
原因补充:

(最多只允许输入30个字)