Cocos2d-x Android打包优化指南

将Cocos2d-x游戏打包为Android应用程序 导航到你的项目目录,选择"./MyGame/proj.android"文件夹,点击"OK"来打开Android项目。在Android Studio中,等待项目构建完成后,你可以选择一个连接的Android设备或模拟器,并点击"Run"按钮来构建和运行你的Android应用程序。这将创建一个名为"MyGame"的新项目,包名为"com.example.mygame",使用C++语言进行开发,并将项目文件保存在"./MyGame"目录中。首先,我们需要创建一个Cocos2d-x项目。步骤3:开发你的游戏。 阅读详情

在本文中,我们将讨论如何优化Cocos2d-x游戏在Android平台上的打包过程。我们将介绍一些技巧和最佳实践,以确保您的游戏在Android设备上获得最佳性能和用户体验。

  1. 使用最新的Cocos2d-x版本:
    确保您使用的是最新版本的Cocos2d-x游戏引擎。每个版本都会带来各种性能改进和bug修复,因此使用最新版本可以确保您获得最佳的性能和稳定性。

  2. 精简资源文件:
    检查并删除不必要的资源文件,例如未使用的纹理、声音文件和动画。这可以减小最终打包后的游戏大小,加快加载时间,并减少内存占用。

  3. 优化纹理:
    使用纹理压缩格式(例如PVRTC、ETC1、ASTC)来减小纹理文件的大小。您可以使用Cocos命令行工具或图像处理软件(如TexturePacker)来执行纹理压缩和打包。

  4. 避免多余的库和插件:
    检查并移除不必要的库和插件,以减小最终APK的大小。只包含您实际使用的功能和库,可以显著减小游戏的安装包大小。

  5. 启用ProGuard优化:
    在打包过程中启用ProGuard优化可以减小APK的大小,并提高代码执行效率。确保在项目的build.gradle文件中启用ProGuard,并配置好相应的规则。

  6. 使用APK分包:
    如果您的游戏资源非常庞大,可以考虑使用APK分包技术来减小主APK的大小。这将使您能够将一部分资源放在额外的APK中,在需要时进行下载和安装。

下面是一个示例代码,展示了如何使用Cocos2d-x的命令行工具来构建和打包Android应用:

# 进入项目目录
cd /path/to/your/project

# 清理构建缓存
cocos compile -p android --ap android-21 --ndk-mode release --clean

# 构建APK
cocos compile -p android --ap android-21 --ndk-mode release

# 签名APK
cocos compile -p android --ap android-21 --ndk-mode release --android-studio --compile-script 1

# 生成最终的APK文件
cp ./proj.android-studio/app/build/outputs/apk/release/app-release-unsigned.apk /path/to/your/output/directory/your-game.apk

请根据您的实际项目路径和需求进行相应的调整。

通过采用上述优化技巧,您可以最大限度地减小Cocos2d-x游戏在Android平台上的打包大小,并提高游戏的性能和用户体验。记住,持续测试和优化是确保您的游戏在各种Android设备上运行良好的关键。

关于spine在cocos2dx使用硬件压缩纹理混合问题总结 问题分析 给engine-x增加了ASTC和ETC2纹理支持,默认情况下Image加载这些纹理视为没有alpha预乘,也就是Image的_hasPremultipliedAlpha保持为初始值false, 引擎核心代码中的类基本都会根据该变量正确设置混合模式即{ backend::BlendFactor::SRC_ALPHA, backend::BlendFactor::ONE_MINUS_SRC_ALPHA},所以渲染没什么问题 然而spine运行库的实现中,强制认为纹理已经alpha预乘,因此在使用E 阅读详情

相关推荐

cocos2dx游戏项目,集成到其他安卓项目工程之中!

cocos2dx游戏项目,集成到第三方安卓项目工程之中。

Mr_JiaTao的博客 3137

如何用Android studio打包发布cocos2dx c++

cocos2dx c++在Android Studio 上打包 历经半个月,总算摸来摸去终于是能运行了,寄!!!!

一个人心の屋 8165

iOS和android游戏纹理优化和内存优化(cocos2d-x)

(未完成) 1、2d游戏最占内存的无疑是图片资源。 2、cocos2d-x不同平台读取纹理的机制不同。ios下面使用CGImage,android和windows下是直接调用png库。我测试了下,使用png库直接读取png会比CGImage还要节约1mb左右内存(图片所占内存4mb)但是速度要比CGImage慢一倍。时间和空间如何取舍就看实际情况了。不过最佳的选择似乎是pvr(即使androi

langresser的专栏 3万+

Cocos2d-x多版本安卓打包配置,以Cocos 3.17.1为主讲(含所有与相应的引擎及配套的工具云盘下载链接,你想要的,一应俱全。)

本文介绍Cocos 2d-x多个版本Android打包配置教程,含3.17.2、3.17.1、3.10、3.3四个版本,其中以Cocos 3.17.1为主讲,含所有与相应的引擎及配套的工具云盘下载链接(Cocos2d-x,NDK,SDK,ANT,JDK,CocosStudio(兼容性差不推荐使用,推荐使用瓦片地图)),你想要的,一应俱全。

COCO56的博客 7180

Spine运行时跨平台集成指南:Unity、Godot、Cocos2d-x实战与优化

骨骼动画是2D游戏角色实现流畅动作的核心技术,其原理是通过层级化的骨骼驱动网格顶点变换,从而实现高效、灵活的动画表现。这项技术为游戏开发带来了巨大的价值,它极大地提升了角色动画的制作效率与表现力,成为现代2D游戏开发的行业标准。在实际工程中,骨骼动画技术广泛应用于角色动作、UI动效、特效序列等场景。要实现其价值,关键在于将动画数据与游戏引擎高效、稳定地集成,这正是Spine运行时(Spine Runtimes)所解决的核心问题。Spine运行时作为连接Spine动画数据与不同游戏引擎的桥梁,其跨平台能力至关

weixin_34214500的博客 401

Android平台Flappy Bird游戏开发实战:Unity+Cocos2d-x双引擎项目源码解析

/ 拦截事件// 视觉反馈");: 防止事件穿透到下层节点。: 将全局坐标转为本地坐标系。: 判断点击是否落在按钮范围内。此机制可用于实现自定义 UI 控件,如滑动条、拖拽图标等。在Unity编辑器中进入:勾选该选项后,Unity将在目录下生成文件。此文件是实际参与构建的核心脚本,允许插入第三方库依赖、调整编译参数、添加构建插件等。// Assets/Plugins/Android/mainTemplate.gradle 示例片段。

weixin_35950531的博客 1043

Cocos2d-x 3.x安卓游戏开发:从环境搭建到性能优化的完整实践指南

跨平台游戏开发是移动应用领域的重要技术方向,它允许开发者使用一套代码库构建适配多个操作系统的应用,显著提升开发效率并降低维护成本。其核心原理在于通过抽象层封装不同平台的底层接口,实现统一的API调用和资源管理。在众多技术方案中,Cocos2d-x作为基于C++的开源框架,因其成熟的架构和丰富的社区资源,成为掌握跨平台开发原理的经典选择。对于安卓平台,深入理解JNI(Java Native Interface)桥接机制和原生层交互,是打通C++逻辑与系统功能的关键,这有助于构建高性能、可深度定制的游戏应用。本

weixin_30621465的博客 313

Cocos2d-x老项目安卓64位迁移实战指南

Cocos2d-x作为经典的跨平台游戏引擎,其存量项目面临Android 64位强制适配、NDK构建升级和事件响应优化等核心工程挑战。理解C++原生层与JNI交互原理,掌握APP_ABI多架构配置、c++_shared动态链接、触摸轮询替代事件分发等关键技术,可显著提升老项目稳定性与兼容性。这类迁移实践不仅关乎构建脚本调整,更涉及内存管理(如CCArray替代std::vector)、状态机设计、UI逻辑解耦等工业级架构思维。对于需长期维护的轻量级棋牌类应用,基于Cocos2d-x的渐进式升级路径,比完全重

weixin_29009081的博客 282

Windows下Cocos2d-x C++ Android开发环境搭建全攻略

在移动游戏开发领域,C++因其高性能和跨平台能力,常被用于游戏引擎和核心逻辑的实现。其原理在于通过编译器将C++源码编译为特定平台的原生机器码,从而实现对硬件资源的直接高效访问。在Android平台上,这一过程依赖于Android NDK提供的交叉编译工具链,将C++代码编译为ARM架构的动态链接库。这种技术方案的价值在于,它允许开发者复用成熟的C++代码库,在保持高性能的同时,兼顾了Android生态的兼容性,广泛应用于对图形渲染、物理计算有高要求的游戏开发场景。本文聚焦于Cocos2d-x这一流行的开源

weixin_30466039的博客 348

不修改引擎的实现ASTC格式加载.zip

实现Creator 2.4.3 加载ASTC格式 参考:https://blog.youkuaiyun.com/aventurine/article/details/121971926

纹理压缩器:用于在KTX容器中使用ASTC,ETC,PVRTC和S3TC进行纹理压缩的CLI工具

纹理压缩器 CLI工具,用于在KTX容器中使用ASTC,ETC,PVRTC和S3TC进行纹理压缩。 赞助 安装 确保已安装 $ npm install texture-compressor 现场演示 文献资料 CLI用法 空中交通管制 $ node ./bin/texture-compressor -i input/example.png -t astc -c ASTC_4x4 -q astcmedium -o output/example-astc.ktx -y -m -vb 等等 $ node ./bin/texture-compressor -i input/example.png

Cocos2d-x Android开发环境搭建:SDK、NDK、JDK配置全攻略

在移动游戏开发领域,跨平台引擎是连接不同操作系统与硬件生态的关键技术。其核心原理在于通过一套统一的代码库,结合特定平台的工具链进行编译与打包,最终生成可在目标设备上运行的应用。这项技术的核心价值在于极大提升了开发效率,降低了多平台适配的复杂度,使开发者能够专注于游戏逻辑本身。典型的应用场景包括使用C++游戏引擎进行高性能2D/3D游戏开发,并部署到Android等移动平台。本文将聚焦于Cocos2d-x引擎的Android开发环境配置,深入解析SDK、NDK、JDK三大组件的协同工作原理。针对环境搭建中常见

weixin_30892763的博客 598

【比较器仿真】

比较器tran noise、pnoise仿真、噪声仿真、MC失调仿真

pickweb的博客 1万+

Cocos2d-x老兵实战:从引擎原理到商业级项目优化

在游戏开发领域,引擎原理与性能优化是构建高质量应用的核心基础。理解渲染管线、内存管理机制和跨平台架构,能够帮助开发者从底层掌握技术主动权,避免成为单纯的功能调用者。Cocos2d-x作为一款经典的2D游戏引擎,其价值在于提供了对底层图形API和C++运行时的深度控制能力,尤其适合追求极致性能、包体控制和代码透明度的项目。通过系统学习其渲染优化(如Draw Call合并、纹理管理)和内存管理艺术(如引用计数、循环引用处理),开发者可以将这些通用方法论应用于实际的游戏开发中,有效解决卡顿、闪退等常见性能问题,并

weixin_30326741的博客 550

IEEE802.11bf: WLAN Sensing Standard

下表为IEEE802.11bf 定义的使用情境 (Use Cases)

qinsd19的博客 1056

AI视频生成成本优化实战:混合架构与硬件选型

AI视频生成技术正面临效果与成本的二元博弈,其核心挑战在于高昂的推理算力消耗与黑箱服务的不确定性。从技术原理看,视频生成依赖扩散模型等深度学习架构,通过多轮迭代实现像素级合成,这导致GPU显存占用和电力消耗呈指数级增长。在工程实践中,采用混合推理架构能有效平衡成本与质量,例如云端处理关键帧配合本地渲染过渡帧,实测可降低58%支出。硬件选型方面,消费级显卡魔改与边缘计算设备为中小企业提供了可行方案,如RTX 3090显存扩容或Jetson AGX边缘部署。当前AI视频应用已渗透电商直播、新闻制作等领域,但需警

weixin_29531177的博客 293

Cocos2d-x 之性能检测

cocos2d-x 中有三个跟 OpenGL 相关的性能指标,游戏运行时显示在左下角;cocos2d-x 默认会显示这些性能指标,可以手动在代码在开启或关闭

xingxinmanong的博客 3351

Unity 2021 LTS安装避坑指南:从下载到第一个3D项目的完整流程

本文提供了一份详尽的Unity 2021 LTS安装与首个3D项目创建指南。内容涵盖从Unity Hub下载、版本选择、模块安装避坑,到编辑器界面解析、创建旋转立方体脚本的完整流程,旨在帮助初学者快速搭建稳定开发环境并上手核心操作。

mango的博客 310

AndEngine与Cocos2d-x深度对比:2D游戏引擎选型实战指南

在移动游戏开发中,游戏引擎是构建项目的核心框架,其架构设计直接决定了开发效率与最终性能表现。引擎通过封装底层图形API(如OpenGL ES)和提供场景管理、物理模拟等模块,简化了游戏开发流程。理解引擎的渲染原理、内存管理机制和跨平台实现方式,对于优化游戏性能、避免常见问题(如Cocos2d游戏黑屏)至关重要。从技术价值看,合适的引擎能降低开发成本,提升代码可维护性,并保障项目长期稳定运行。在2D手游、微信小游戏等应用场景中,开发者常面临在轻量级原生引擎与功能丰富的跨平台引擎间的抉择。本文聚焦于AndEng

weixin_33675507的博客 376

HTML粉色爱心(完整代码)

HTML语言实现粉色爱心的完整代码。

AIGC 1105

串口、COM、UART、TTL、USB、RS-232、RS-485、I2C、SPI、CAN、1-WIRE

一文搞定,赶紧收藏吧

记得诚 3万+

Cocos2d-x横版跑酷游戏开发实战:从零构建“萝莉快跑”

游戏开发中,2D横版跑酷是一种经典且广受欢迎的游戏类型,其核心在于流畅的角色控制、动态关卡生成与实时的碰撞检测。通过游戏引擎如Cocos2d-x,开发者可以高效地实现这些核心机制。引擎的跨平台特性与成熟的社区资源,为快速构建和迭代游戏原型提供了强大支持。在工程实践中,性能优化与资源管理是关键环节,例如使用对象池技术管理频繁创建销毁的游戏实体,以及通过纹理图集合并渲染批次来降低Draw Calls,从而保障游戏在移动设备上的流畅运行。这些技术共同应用于“萝莉快跑”这类横版跑酷游戏的开发中,实现了从角色动画、无

weixin_34378767的博客 517

芒果YOLOv5改进107:ARConv自适应旋转卷积,全网首发 | 即插即用:以增强其表征能力,从而准确检测方向物体,ICCV顶会论文idea

ARConv自适应旋转卷积,全网首发 | 即插即用:以增强其表征能力,从而准确检测方向物体,ICCV顶会论文idea

包括YOLOv5、YOLOv7、YOLOv8等模型改进 956

Unity与Cocos2d-x双引擎实现Flappy Bird:源码对比与实战解析

在移动游戏开发领域,2D游戏开发是许多开发者的入门起点,其核心在于高效处理精灵动画、物理碰撞与用户交互。理解不同游戏引擎的原理与特性,对于技术选型与项目成功至关重要。Unity以其强大的可视化编辑器与组件化架构,显著提升了开发效率与团队协作体验;而Cocos2d-x则凭借其轻量级、高性能及对C++/Lua的深度支持,在包体大小与运行效率上具备优势。这两种技术方案分别代表了快速原型开发与底层性能控制两种不同的工程实践路径。本文通过一个经典的Flappy Bird游戏项目,从项目结构、核心逻辑、物理系统、渲染优

weixin_34226182的博客 530

Vue - 最新详细实现滑块拖动拼图验证,网站登录验证滑块验证功能,拖动滑块到图片缺口的位置即为成功,滑块验证安全检测(详细示例代码,一键复制运行)

您一定见过很多系统都“配备”了滑块验证、拼图验证、找不同等,本质上都是为了验证登录系统的是人还是机器(代码),如下图所示效果: 您打开项目根目录,终端执行如下命令:拼图式拖动滑块验证 验证拖动滑块验证,滑动拼图/图片点选验证 接下来,在中加入以下代码: 如下图所示: 更多配置示例和参数详见官方文档,以下便是如上效果图的代码:.........

🏆 前端领域优质创作者 1万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Cocos2d-x 3.X游戏开发:从入门到跨平台发布实战指南

游戏引擎是游戏开发的核心框架,它封装了图形渲染、物理模拟、音频处理等底层技术,通过提供高层API提升开发效率。其工作原理在于将游戏逻辑、资源管理与平台抽象层解耦,实现一次编码多端部署的技术价值。在移动游戏、独立游戏开发等应用场景中,跨平台能力与性能表现尤为关键。本文聚焦于Cocos2d-x 3.X这一经典开源框架,深入探讨其环境搭建、核心架构、资源管理及跨平台发布全流程,为开发者提供从入门到实战的系统指引,助力高效实现app发布与跨平台游戏开发需求。

weixin_34121282的博客 369

深度学习工具包 DeepLearningToolbox

深度学习工具包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 brain's 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 you'll 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)](https://bitdeli.com/free "Bitdeli Badge")

上一篇: Cocos2d-x Lua飞机大战游戏开发实例:敌机类封装与碰撞检测实现
WeCapture
博客等级 码龄3年 1粉丝 14原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值