【github干货】主流深度学习开源框架从入门到熟练

想做量化?强烈推荐这8款顶级开源项目,干货拉满! PandaAI 是一个专注于A股市场的因子研究平台,支持行业主流的选股因子如动量、反转、成长、价值、技术面、基本面等,数据底层对接 TuShare Pro,使用非常丝滑。VNPy 是国人开发的专业级量化交易框架,可以连接上期所、上交所、深交所等真实市场交易通道,涵盖策略开发、回测、实盘、多账户、多策略等功能模块。社区非常活跃,文档齐全。Qbot 是一款轻量级、可自动调仓的量化交易机器人,底层支持 Tushare 数据、AkShare 数据源,也支持因子选股、多策略组合。 阅读详情

文章首发于微信公众号《有三AI》

【github干货】主流深度学习开源框架从入门到熟练

今天送上有三AI学院第一个github项目

 

01项目背景

目前深度学习框架呈百家争鸣之态势,光是为人熟知的就有caffe,tensorflow,pytorch/caffe2,keras,mxnet,paddldpaddle,theano,cntk,tiny-dnn,deeplearning4j,matconvnet等,一个合格的深度学习算法工程师怎么着都得熟悉其中的3个以上吧。

而且,学习不应该停留在官方的demo上,而是要学会从自定义数据的读取,自定义网络的搭建,模型的训练,模型的可视化,模型的测试与部署等全方位进行掌握。

因此,我们开设了这个github项目,以图像分类任务为基准,带领大家一步一步入门,后续会增加分割,检测等任务。

当前的图像分类任务为二分类的表情分类任务,为微笑与非微笑两个类别,案例样本如下。

无表情

微笑

 

02框架简介

总的来说,深度学习系统通常有两种编程方式,一种是声明式编程(declarative programming),用户只需要声明要做什么,而具体执行则由系统完成。以Caffe,TensorFlow的计算图为代表。优点是由于在真正开始计算的时候已经拿到了整个计算图,所以可以做一系列优化来提升性能。实现辅助函数也容易,例如对任何计算图都提供forward和backward函数,另外也方便对计算图进行可视化,将图保存到硬盘和从硬盘读取。缺点是debug很麻烦,监视一个复杂的计算图中的某个节点的中间结果并不简单,逻辑控制也不方便。

一种是命令式编程(imperative programming),以numpy,torch/pytorch为代表,每个语句按照原来的意思顺序执行。它 的特点是语义上容易理解,灵活,可以精确控制行为。通常可以无缝地和主语言交互,方便地利用主语言的各类算法,工具包,debug和性能调试器,但是实现统一的辅助函数和提供整体优化都很困难。

综上,各有优劣,自由选择,这里不是为了给大家详细介绍框架,而是快速扫盲,更多请阅读对应文章和官方文档,相关代码进行学习。

2.1 caffe

Caffe是伯克利的贾扬清主导开发,以C++/CUDA 代码为主,最早的深度学习框架之一,比 TensorFlow、Mxnet、Pytorch 等都更早,需要进行编译安装。

支持命令行、Python和Matlab接口,单机多卡、多机多卡等都可以很方便的使用,快速入门见下文。

【caffe速成】caffe图像分类从模型自定义到测试

2.2 tensorflow

TensorFlow是Google brain推出的开源机器学习库,与Caffe一样,主要用作深度学习相关的任务。与Caffe相比TensorFlow的安装简单很多。

TensorFlow = Tensor + Flow,Tensor 就是张量,代表N维数组,这与Caffe中的blob是类似的;Flow即流,代表基于数据流图的计算。

TensorFlow最大的特点是计算图,即先定义好图,然后进行运算,所以所有的TensorFlow代码,都包含两部分:

(1) 创建计算图,表示计算的数据流。它做了什么呢?实际上就是定义好了一些操作,你可以将它看做是Caffe中的prototxt 的定义过程。

(2)运行会话,执行图中的运算,可以看作是Caffe中的训练过程。只是TensorFlow的会话比Caffe灵活很多,由于是Python 接口,取中间结果分析,Debug等方便很多,快速入门见下文。

【tensorflow速成】Tensorflow图像分类从模型自定义到测试

2.3 mxnet

mxnet是amazon的官方框架,它尝试将上面说的两种模式无缝的结合起来。在命令式编程上MXNet提供张量运算,进行模型的迭代训练和更新中的控制逻辑;在声明式编程中MXNet支持符号表达式,用来描述神经网络,并利用系统提供的自动求导来训练模型,快速入门见下文。

【mxnet速成】mxnet图像分类从模型自定义到测试

2.4 pytorch 

一句话总结Pytorch = Python + Torch。

Torch是纽约大学的一个机器学习开源框架,几年前在学术界非常流行,包括Lecun等大佬都在使用。但是由于使用的是一种绝大部分人绝对没有听过的Lua语言,导致很多人都被吓退。后来随着Python的生态越来越完善,Facebook人工智能研究院推出了Pytorch并开源。Pytorch不是简单的封装Torch 并提供Python 接口,而是对Tensor以上的所有代码进行了重构,同TensorFlow一样,增加了自动求导。

后来Caffe2全部并入Pytorch,如今已经成为了非常流行的框架。很多最新的研究如风格化、GAN等大多数采用Pytorch源码,快速入门见下文。

【pytorch速成】Pytorch图像分类从模型自定义到测试

2.5 paddlepaddle 

正所谓google有tensorflow,facebook有pytorch,amazon有mxnet,作为国内机器学习的先驱,百度也有PaddlePaddle,其中Paddle即Parallel Distributed Deep Learning(并行分布式深度学习),整体使用起来与tensorflow非常类似,可参考下文。

【paddlepaddle速成】paddlepaddle图像分类从模型自定义到测试

2.6 keras

Keras是一个非常流行、简单的深度学习框架,它的设计参考了torch,用Python语言编写,是一个高度模块化的神经网络库,能够在TensorFlow,CNTK或Theano之上运行。 Keras的特点是能够快速实现模型的搭建,是高效地进行科学研究的关键,可参考下文。

【Keras速成】Keras图像分类从模型自定义到测试

2.7 其他

除了以上最常用的框架,还有theano,cntk,tiny-dnn,deeplearning 4j,matconvnet等,我们后续会补充教程,增强github案例,欢迎大家关注,下面是github项目链接,欢迎来做贡献。

https://github.com/longpeng2008/LongPeng_ML_Course

感谢各位看官的耐心阅读,不足之处希望多多指教。后续内容将会不定期奉上,欢迎大家关注有三公众号 有三AI!

 

 

深度学习 中文版 github 深度学习 中文 ,deep learning原文翻译,下载自github 立即下载

相关推荐

GitHub上最受欢迎的57个深度学习开源项目

GitHub上最受欢迎的57个深度学习开源项目,搜集版本的

手把手搭建深度学习环境以及跑通Github代码(以Pix2PixGAN为例)

本文创作来源于B站上的一个搭建深度学习环境视频,我将从零开始教大家搭建一个基础的深度学习案例环境以及解答本人在搭建时遇到的一系列问题。本文将以Github上的Pix2Pix为例,展示深度学习中环境搭建以及Github代码的使用。

qq_44815345的博客 1万+

风控项目实战代码-enter

风控项目实战代码-enter

如何阅读GitHub上的深度学习项目

如何阅读GitHub上的深度学习项目。

MzKyle的博客 3305

ROS新手必看:如何用URDF快速搭建UR5机械臂模型(附完整代码)

本文为ROS新手提供了一份详细的UR5机械臂URDF建模实战指南。通过解析URDF核心概念,逐步讲解如何定义link与joint,并整合官方网格文件,最终构建出完整的、可在RViz中可视化与控制的UR5模型。文章还介绍了模型验证、调试技巧以及如何添加碰撞与惯性属性,为后续的物理仿真与算法开发奠定坚实基础。

pz89012345的博客 499

MIC(Maximal Information Coefficient)最大互信息系数

MIC(Maximal Information Coefficient)最大互信息系数是一种用于衡量两个变量之间相关性的统计量。它扩展了传统的互信息(MI)和条件互信息(CMI)的概念,具有更广泛的应用范围。MIC能够捕获包括功能性和非功能性的广泛的关联,具有普遍性和公平性。普遍性意味着在足够的样本量下,MIC能够捕捉到广泛的相关关系,而不仅仅局限于特定的功能类型;公平性则意味着MIC对不同类型的包含同等噪声的关系给出了相似的分数。需要注意的是,虽然MIC具有很多优点,但它也有一些局限性。

qlkaicx的博客 4605

【GitHub项目推荐--你一定要知道的深度学习的架构】【转载】

层归一化则用于稳定训练过程。尽管它有一些缺点,但它的优点,特别是预训练模型和易于使用的 API,使其成为 NLP 研究和开发中的首选库之一。此外,Transformers 还支持自定义模型的加载,这意味着用户可以通过上传他们的预训练模型到 Hugging Face 平台,然后使用该平台提供的 API 来加载和应用他们的模型。Transformers 库的 API 设计为高度灵活,允许用户轻松地修改模型的配置、加载不同的预训练模型、以及将模型用于各种 NLP 任务,如文本分类、情感分析、问答等。

j8267643的博客 1548

告别手动标注!用ENVI Classic高效搞定高光谱图像语义分割标签(以农业/地物分类为例)

本文详细介绍了如何利用ENVI Classic实现高光谱图像的半自动化智能标注,特别针对农业和地物分类场景。通过光谱特征分析、智能标注技巧和MAT文件转换,显著提升标注效率和质量,助力AI模型训练。

weixin_28694169的博客 251

初入深度学习1——如何下载与打开一个Github深度学习库

初入深度学习1——如何下载与打开一个深度学习库学习前言下载一个仓库一、Github1、Download Zip(不推荐,但可用)a、打开网址b、下载文件c、下载与解压文件2、git clone(推荐)a、打开网址b、复制HTTPS信息c、进行git clone二、Gitee(网络不好的情况下可用)a、创建仓库b、仓库下载打开仓库一、Download Zip1、正确示范2、错误示范二、git clone 学习前言 入门深度学习的第一步就是下载一个已经写好的一个库,这个过程难度不大,但比较重要,有几种下载方法,

Bubbliiiing的学习小课堂 2万+

一个开源的AI数据分析工具,与数据对话,一键生成SQL、图表、表格、报告和智能商业分析。

Wren AI是一个开源的AI智能代理,让用户能够跟数据对话,实现从文本到SQL的转换,还能生成图表、电子表格、报告以及商业智能分析。它支持多种语言,能深入挖掘数据价值,提供智能数据探索功能,通过语义索引和精心设计的界面,让用户无需写代码即可获取洞察。Wren AI采用独特的架构,包含Wren UI、Wren AI Service和Wren Engine三大核心服务,可部署在本地或云端,助力团队高效、安全地解锁数据潜力。

AI_Charlotte的博客 4499

电赛控制组入门到实战:从电路板到PID算法的完整路径

本文详细介绍了电赛控制组从电路板制作到PID算法实战的完整学习路径。涵盖嘉立创电路设计、Keil5开发环境搭建、STM32F103C8T6核心板外设应用,重点解析PID算法在电机速度环与位置环中的调试技巧,并探讨OpenMV视觉模块与主控制器的协同工作,为电赛参赛者提供系统化的实战指南。

oauth7security的博客 747

学习一个Github深度学习库

【适合小白】:使用和学习一个github深度学习库

m0_73704220的博客 796

论文必备 - YOLOv8训练前一键扩充数据集,支持9种扩充方法,支持图像和标签同步扩充

在网络模型训练前,大量的数据集是必备的。而对于一些特殊场景中的特殊目标,大量的数据集往往难以获取,无法满足模型训练的基本需求。本文提供了,脚本可一键运行,。

Limiiiing的博客 770

吐血整理深度学习入门路线及导航【教学视频+大神博客+书籍整理】+【资源页】(2019年已经最后一个月了,你还不学深度学习吗???)

声明: 1)该文章整理自网上的大牛和机器学习专家无私奉献的资料,具体引用的资料请看参考文献。 2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除。 3)博主才疏学浅,文中如有不当之处,请各位指出,共同进步,谢谢。 4)此属于第一版本,若有错误,还需继续修正与增删。还望大家多多指点。大家都共享一点点,一起为祖国科研的推进...

种树最好的时间是10年前,其次是现在!!! 5万+

EMC诊断技术及电磁兼容理论设计

本文深入探讨了EMC诊断技术,重点在于滤波篇,详细讲解了EMI滤波器的设计、选型、测试及应用注意事项。内容涵盖噪声限值法规、滤波器的法规依据、插入损耗测试以及滤波电容的高频特性。同时,还阐述了噪声源的近场与远场特性,如何快速定位和抑制噪声。通过实例分析,提供了滤波器件和辐射噪声抑制器件的选型策略。

让你爱上电路设计 2164

【SAP HANA 24】HANA与Oracle SQL语法对照表

HANA SQL参考及Oracle 语法对照

探索 Java 编程的技巧、最佳实践和解决方案。本博客提供针对 Java 开发者的实用指南,涵盖从基础到高级话题,旨在提升编程效率和技能。 1426

不到1000行代码,GitHub 1400星,天才黑客开源深度学习框架tinygrad

点击上方,选择星标或置顶,不定期资源大放送!阅读大概需要15分钟Follow小博主,每天更新前沿干货最近,天才黑客 George Hotz 开源了一个小型深度学习框架 tinygrad,...

深度学习技术前沿 756

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

新手如何快速入门深度学习

如何快速入门深度学习本篇学习笔记对应深度学习入门视频课程博客地址:http://blog.youkuaiyun.com/tangyudi 欢迎转载 深度学习入门必备基础 避开常见误区 学习路线图 干货分享 深度学习必备基础 深度学习发展至今已然有几个年头了,上个世纪九十年代的美国银行率先使用深度学习技术做为手写字体识别,但深度学习的惊艳登场并没有留住它一时的辉煌, 直到2012年深度学习这个领域才开始渐入

迪哥有点愁 8380

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

开源网站GitHub把自己给开源了(1)

Android架构学习进阶是一条漫长而艰苦的道路,不能靠一时激情,更不是熬几天几夜就能学好的,必须养成平时努力学习的习惯。所以:贵在坚持!上面分享的字节跳动公司2020年的面试真题解析大全,笔者还把一线互联网企业主流面试技术要点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。就先写到这,码字不易,写的很片面不好之处敬请指出,如果觉得有参考价值的朋友也可以关注一下我。

2401_84123171的博客 536

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

比拼三大移动端深度学习框架,小米MACE有哪些优势?

采访嘉宾 | 何亮亮AI前线导读: 随着深度学习领域的快速发展,以及移动端芯片计算能力的逐步提升,设备端上的深度学习推理正在变成一个巨大的需求和趋势,一个好用的深度学习框架成为深度学习应用落地的关键。小米团队打造的MACE (https://github.com/XiaoMi/mace),就是专门为移动端芯片优化的深度学习框架,且已开源供开发者使用。开发这个移动端深度学习框架的过程并非一帆风顺,克...

weixin_33737134的博客 206

【完结】优秀的深度学习从业者都有哪些优秀的习惯

文/编辑 | 言有三 这是一篇总结文,说说优秀的深度学习从业者拥有的一些习惯,从看论文到写代码,从刷论坛到刷比赛。 1 拥有一台GPU 虽然各类深度学习框架caffe,tensorflow等都是可以支持CPU的,但是如果没有一台GPU,学深度学习始终只能做一个看客。 笔者工作四年,几乎每天背着一台移动GPU,是神舟的一台游戏本,加上书包约20斤左右。有一台移动GPU,不仅方便...

hacker_long的专栏 832

新手如何快速入门深度学习领域

如何快速入门深度学习本篇学习笔记对应深度学习入门视频课程博客地址:http://blog.youkuaiyun.com/tangyudi 欢迎转载 深度学习入门必备基础 避开常见误区 学习路线图 干货分享 深度学习必备基础 深度学习发展至今已然有几个年头了,上个世纪九十年代的美国银行率先使用深度学习技术做为手写字体识别,但深度学习的惊艳登场并没有留住它一时的辉煌, 直到2012年深度学习这个领域才开始渐...

迪哥有点愁 491

火爆GitHub!3.6k Star的可视化神器开源!

点击上方“CVer”,选择加"星标"置顶重磅干货,第一时间送达今天小编要给大家推荐的这个可视化工具VisualDL可老厉害了!它迅速疯传全网,Star超过3.6k!!!...

阿木寺的博客 623

python iot 开源_Github上Top20 Python与机器学习开源项目推荐

以下内容由公众号:AIRX社区(国内领先的AI、AR、VR技术学习与交流平台) 整理TensorFlowTensorFlow是一个端到端的机器学习开源平台。由工具、库和社区资源组成的全面、灵活的生态系统,使开发人员能够轻松地构建和部署基于ML的应用程序。TensorFlow最初是由谷歌机器智能研究组织的谷歌大脑团队的研究人员和工程师开发的,用于进行机器学习和深度神经网络研究。该系统具有足够的通用性...

weixin_39915721的博客 328

普林斯顿博士:手写30个主流机器学习算法,全都开源了!

点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达用 NumPy 手写所有主流 ML 模型,普林斯顿博士后 David Bourgin 最近开源了一个非常剽悍的项目。超过 3 万行代码、30 多个模型,这也许能打造「最强」的机器学习基石?NumPy 作为 Python 生态中最受欢迎的科学计算包,很多读者已经非常熟悉它了。它为 Python 提供高效率的多维数组计算,并提供了一...

小白学视觉 524

最全深度学习训练过程可视化工具(附github源码)

点击上方“小白学视觉”,选择加"星标"或“置顶” 重磅干货,第一时间送达编辑丨极市平台、机器学习实验室导读本文介绍了多个能将深度学习训练过程进行可视化的工具,帮助大家更好地理解深度学习,非常实用。深度学习训练过程一直处于黑匣子状态,有很多同学问我具体怎么解释?其实很多还是无法可解释,但是通过可视化,具体可以知道深度学习在训练过程到底学习了哪些特征?到底对该目标的哪些...

小白学视觉 955
上一篇: 【资源放送】机器学习/深度学习最全公开视频大放送!
下一篇: 【技术综述】深度学习中的数据增强(下)
言有三
言有三 领域专家: 人工智能技术领域 领域专家: 人工智能技术领域
博客等级 码龄15年 3635粉丝 976原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

言有三

三人行必有AI

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值