写一个像Keras的深度学习框架需要学习哪些知识
1个回答
2017-08-30 · 让每个孩子都能正常讲话,是我们最大的心愿
阳光语言矫正学校
1992年开始语音病理学研究,北京、上海 、长春设有校区,功能性构音障碍、腭裂语音障碍、听力言语障碍、语言发育迟缓、口吃等多个语音矫正和训练项目,对大舌头 口吃等各种语言障碍有数万例矫正经验
向TA提问
关注
展开全部
写过一个小的toolbox,曾经有和题主一样的想法,分享一下。
个人看法:keras不能算是框架,只能算是一个warpper,集成了一些标准化的th/tf函数。
真正的框架应该是th/tf/caffe这样的。它们在底层实现了io、cpu/gpu管理、张量定义和操作以及symbolic体系,构建了一个适用于深度学习的科学计算体系。
如果你要做的是keras/tflearn/tensorlayer这样的high-level的框架(或者说API),那么最基本的是深入了解一个底层框架比如tf,你需要用它来写高效的、标准化的层,写模块化的接口并整合一些其他组件构成一个框架。
如果你要做的是th/tf这样的底层框架,那么你需要具备手写dl算法的能力,包括feedfoward、反向求导、update,各种损失函数、optimizer。你还需要精通cuda编程,了解cudnn库……
实现symbolic应该算是一个大难点。
个人看法:keras不能算是框架,只能算是一个warpper,集成了一些标准化的th/tf函数。
真正的框架应该是th/tf/caffe这样的。它们在底层实现了io、cpu/gpu管理、张量定义和操作以及symbolic体系,构建了一个适用于深度学习的科学计算体系。
如果你要做的是keras/tflearn/tensorlayer这样的high-level的框架(或者说API),那么最基本的是深入了解一个底层框架比如tf,你需要用它来写高效的、标准化的层,写模块化的接口并整合一些其他组件构成一个框架。
如果你要做的是th/tf这样的底层框架,那么你需要具备手写dl算法的能力,包括feedfoward、反向求导、update,各种损失函数、optimizer。你还需要精通cuda编程,了解cudnn库……
实现symbolic应该算是一个大难点。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |