1 引言
作为曾经的iOS开发者,在研究深度学习的时候,总有一个想法就是在iPhone上运行深度学习,不管是在手机上训练还是利用训练好的数据进行测试。
因为iOS的开发环境支持C++,因此,只要你的代码是C/C++,本质上就可以在iOS上运行。
怎么才能更快更好地在iOS上运行CNN呢?
2 方法1:通过Matlab转码
Matlab自带转成c的工具,如果你研究过UFLDL的深度学习教程,就知道如何在Matlab上使用CNN,那么,转换成c后,放到iOS的开发环境中,然后将参数存成txt格式再读取分割,也就是可以实现。
如下图就是已经将matlab代码转换为c后导入的结果:
打开predict.h文件,可以看到可以调用的接口:
/* Function Declarations */
extern real_T predict(const real_T Theta1[10025], const real_T Theta2[260], const real_T X[400]);
这是训练MNIST的一个神经网络,我这边用了测试手写数字的识别。
因此,接下来需要对

本文介绍了三种在iOS设备上运行卷积神经网络(CNN)的方法:1)通过Matlab转码,2)使用DeepBeliefSDK,3)利用tinyCNN。对于Matlab转码,文章详细讲述了如何将Matlab的CNN代码转换为C++并配合opencv处理图像。DeepBeliefSDK提供了一个现成的iOS SDK,但自定义训练有限制。而tinyCNN则是一个轻量级框架,不需要额外安装,但需要在iOS项目中集成boost库。

205

被折叠的 条评论
为什么被折叠?



