Advertisement

DeepLearningToolbox 深度学习工具包。

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brains apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = R. B. Palm, title = Prediction as a candidate for learning deep hierarchical models of data, year = 2012,}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath(DeepLearnToolbox));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand(state,0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand(state,0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = sigm;%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, Too big error);```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand(state,0)sae = saesetup([784 100]);sae.ae{1}.activation_function = sigm;sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end))% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = sigm;nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, Too big error);```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x,28,28,60000))/255;test_x = double(reshape(test_x,28,28,10000))/255;train_y = double(train_y);test_y = double(test_y);%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs youll get around 1.2% errorrand(state,0)cnn.layers = { struct(type, i) %input layer struct(type, c, outputmaps, 6, kernelsize, 5) %convolution layer struct(type, s, scale, 2) %sub sampling layer struct(type, c, outputmaps, 12, kernelsize, 5) %convolution layer struct(type, s, scale, 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, Too big error);```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand(state,0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, Too big error);%% ex2 neural net with L2 weight decayrand(state,0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, Too big error);%% ex3 neural net with dropoutrand(state,0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, Too big error);%% ex4 neural net with sigmoid activation functionrand(state,0)nn = nnsetup([784 100 10]);nn.activation_function = sigm; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, Too big error);%% ex5 plotting functionalityrand(state,0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = softmax; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, Too big error);%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand(state,0)nn = nnsetup([784 20 10]); nn.output = softmax; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, Too big error);```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png) 该资源提供了一个便捷的工具,可用于创建和管理数字徽章,其链接为 Bitdeli Badge。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • DeepLearningToolbox
    优质
    深度学习工具包(DeepLearningToolbox)是一套用于构建和训练神经网络的软件库,支持多种深度学习模型的研发与应用。 深度学习工具箱提供了多种神经网络模型的实现方法。以下是使用该库进行不同类型的神经网络训练的例子: 1. **深层信念网络(DBN)**: ```matlab function test_example_DBN() % 加载MNIST数据集,预处理输入值为0-1区间。 [train_x, train_y] = load_mnist(training); % 初始化深度信念网参数 dbn = struct(); dbn.layers{1} = 784; dbn.layers{2} = 500; dbn.layers{3} = 250; dbn.layers{4} = 10; % 训练DBN end ``` 2. **受限玻尔兹曼机(RBM)**: ```matlab function test_example_RBM() [train_x, train_y] = load_mnist(training); rbm = struct(); rbm.inputSize = size(train_x,1); rbm.hiddenSize = 50; % 训练RBM模型。 end ``` 3. **神经网络(NN)**: ```matlab function test_example_NN() [train_x, train_y] = load_mnist(training); % 标准化数据 [train_x, mu, sigma] = zscore(train_x); nn = struct(); nn.layers{1} = size(train_x,2); nn.layers{2} = 50; nn.layers{3} = length(unique(train_y)); % 训练神经网络 end ``` 4. **深度信念网到前馈神经网络的转换(DBN to FFNN)**: ```matlab function test_example_DBNTOFFNN() [train_x, train_y] = load_mnist(training); dbn = struct(); dbn.layers{1} = size(train_x,2); dbn.layers{2} = 50; % 训练DBN ffnn = convert_dbntoffnn(dbn); % 使用训练好的DBN权重进行前馈神经网络的初始化。 end ``` 这些示例展示了如何使用深度学习工具箱来构建和训练不同的模型,从基础的受限玻尔兹曼机到更复杂的深层信念网。每个例子都包括了数据加载、预处理以及具体的模型定义与训练过程。 此外,该库还支持其他类型的网络架构如卷积神经网络(CNN)等,并提供了丰富的可视化工具帮助用户更好地理解学习过程中发生的情况。
  • MATLAB
    优质
    MATLAB深度学习工具包是MathWorks公司开发的一款基于MATLAB环境的数据并行计算软件包,专为构建、管理与部署深度学习模型而设计。它支持丰富的网络架构和GPU加速,让研究人员能够高效地训练复杂的神经网络模型。 压缩文件包含三个常用的Matlab深度学习工具箱:DeeplearningToolbox、libsvm和matconvnet。使用这些工具箱时,请直接将它们添加到MATLAB的Toolbox路径下即可。每个工具箱中都有一些示例,可以在这些例子的基础上编写自己的神经网络结构。
  • Matlab
    优质
    MATLAB深度学习工具包提供了一套全面的功能,用于设计、训练和部署深度神经网络模型。它支持多种类型的网络架构,并集成了大量预训练模型与示例数据集,极大地简化了复杂算法的应用开发过程。 在深度学习领域中,RBM(Restricted Boltzmann Machine)的Matlab代码工具包可以帮助更好地理解深度学习的概念和技术细节。
  • Matlab
    优质
    MATLAB深度学习工具包为开发者提供了一个强大的框架,用于构建、训练和部署各种深度神经网络模型。 深度学习Matlab工具包包括NN、CNN、SAE和STL nets等多种网络类型。
  • MATLAB
    优质
    MATLAB深度学习工具包是MathWorks公司提供的用于构建和训练深度神经网络的强大工具,支持图像、时间序列等多种数据类型。 Matlab深度学习工具箱(也称为工具包)提供了一系列用于构建、训练和评估深度学习模型的功能。
  • 升级版
    优质
    深度学习工具包升级版是一款经过全面优化和增强功能的先进软件套件,旨在为研究人员及开发者提供更高效的模型训练、测试与部署环境,推动人工智能技术的发展。 深度学习工具包如DeepLearnToolbox-master是专为数据科学家和机器学习工程师设计的一系列资源集合,旨在简化并优化深度学习模型的开发流程。这些工具通常包括预处理功能、多种架构选项、训练算法及评估指标。 在使用DeepLearnToolbox-master时,我们可以推测它可能包含了以下关键组件: 1. **预处理模块**:数据准备是深度学习的重要环节,涵盖清洗、标准化和归一化等步骤。该库提供了一套完整的函数来帮助用户高效地准备模型输入数据。 2. **模型架构**:深度学习模型由多个层次组成,如卷积层、池化层及全连接层等。DeepLearnToolbox-master可能包含各种现成的结构模板和预训练模型,适用于计算机视觉、自然语言处理或音频识别等领域。 3. **损失函数与优化器**:在训练阶段选择适当的损失函数和优化算法至关重要。此工具包提供了多种常见的选项,如均方误差、交叉熵以及SGD、Adam等方法。 4. **训练及验证流程**:批量训练、使用验证集评估模型性能,并通过早停策略防止过拟合是该库的重要功能之一。 5. **可视化工具**:为了便于理解模型的运行情况,此工具包可能具备绘制损失曲线和准确率变化图等功能。 6. **评估指标**:对于分类或回归任务,它提供了诸如精确度、召回率及F1分数等关键性能衡量标准。 7. **保存与加载功能**:深度学习模型训练完成后需要被保存以便后续使用。DeepLearnToolbox-master可能包含相关接口以实现这一需求。 8. **扩展性设计**:优秀的工具包应当具备良好的可定制性和灵活性,允许用户根据具体项目需求自定义层、损失函数等组件。 9. **文档与示例代码支持**:详尽的文档和实例有助于新手快速上手并掌握如何利用此库来构建及训练模型。 10. **社区互动**:如果DeepLearnToolbox-master是一个开源项目,那么其背后的开发者社群将为用户提供交流经验、解决问题以及贡献代码的机会。 总之,通过使用DeepLearnToolbox-master这样的工具包,用户可以更专注于问题解决而非底层实现细节,从而提高工作效率。
  • Darknet-YOLO训练
    优质
    Darknet-YOLO深度学习训练工具包是一款基于Darknet框架实现的实时目标检测解决方案,采用YOLO算法,适用于快速部署和开发高性能计算机视觉应用。 在Windows系统下提供了一个已经打包好的darknet-yolo深度学习程序,只需准备自己的数据集即可进行训练。建议使用GPU以获得更好的性能,但仅需安装相应的驱动程序。如需要Linux版本,请私信联系我获取更多信息。
  • DeepLearnToolbox-master_LSTM_lstmcnn_的MATLAB_
    优质
    这是一个基于MATLAB的深度学习工具箱,包含了LSTM和CNN等算法,为研究人员提供了一个强大的深度学习研究平台。 该工具包提供了一个用于设计和实现深度神经网络的框架,支持通过算法、预训练模型及应用程序来操作。您可以利用卷积神经网络(ConvNet 或 CNN)以及长短期记忆 (LSTM) 网络对图像、时序数据与文本进行分类和回归分析。此外,它还提供了可视化工具和支持编辑网络架构的应用程序,并且可以监控训练过程的进展。
  • DeepLearnToolbox-master(MATLAB).zip
    优质
    DeepLearnToolbox-master 是一个基于 MATLAB 的深度学习框架资源库,包含多种神经网络模型和实用工具,适用于科研与工程实践。 DeepLearnToolbox-master.zip 是一个用于深度学习的 MATLAB 工具包。 这是一个专注于深度学习领域的 Matlab 工具箱。深度学习是机器学习的一个新分支,它关注于从数据中学习深层次模型结构的问题。这个领域受到人脑深层(分层、层次化)架构的启发。《Learning Deep Architectures for AI》对深度学习理论提供了一个全面的概述。 对于一个不太正式的介绍,可以参考相关资料来进一步了解该工具箱的功能和应用范围。
  • MATLAB代码的
    优质
    MATLAB的深度学习工具包提供了一套全面的功能,用于设计、训练和部署深度神经网络。它支持各种网络架构,并简化了数据预处理与后处理流程。 SAE(稀疏自编码器)、CNN(卷积神经网络)、DBN(深度信念网络)、NN(神经网络)、CAE(自编码器)以及Deep Learning(深度学习)都是AI(人工智能)和Machine Learning(机器学习)领域的重要技术。