PaddlePaddle

【飞桨paddlepaddle学习笔记(二)

烂漫一生 提交于 2020-08-12 18:08:47
在深度学习模型的训练过程中,一个训练数据的各个维度对最终的结果都会产生不同的影响,这个维度的影响可以用一个具体的数来表示,这篇文章中我称之为“权重”。为了使模型的输出更符合预期的结果,我们需要不断调整权重的大小。调整权重最常用的方法就是梯度下降算法。 我们假设一个数据只有两个维度,即权重w为一个二维向量,权重调节参数b也为一个二维向量。训练的关键在于找到一组(w,b),使得损失函数loss最小,即使得损失函数L=L(w,b)最小。 一般梯度下降法: 实现梯度下降算法的步骤如下: 随机选取[w,b]的一组初始值; 寻找下一个[w,b]的值[w1,b1],使得Loss(w1,b1) < Loss(w,b) 重复第二步,直到Loss函数不再下降 计算梯度 (1)损失函数定义如下: 其中zi是xi的预测值: (2)梯度定义: 由此可以计算出L对w和b的偏导数 将最终结果写成代码: class Network(object): def __init__(self, num_of_weights): # 随机产生w的初始值 # 为了保持程序每次运行结果的一致性,此处设置固定的随机数种子 np.random.seed(0) self.w = np.random.randn(num_of_weights, 1) self.b = 0. def forward(self, x): z = np

人人都要会编程—金融大佬问我利率预测

半城伤御伤魂 提交于 2020-08-12 10:00:43
事情是这样子的。 在一个夜深人静的晚上,我接到了某证券行业大佬的问题——关于编程。 波哥,睡了吗? 内心OS: 作为一个金融大佬,怎么会这么晚还找我问编程的问题? 后来知道,原来他们公司内部组织了一个比赛——利率预测。 原来是这,这还不简单嘛,不就是一个线性回归模型吗。和人工智能领域的 Hello world 级别的房价预测模型不是一样的嘛。我给他一顿解释,巴拉巴拉。。。 “what, 你说的我好想有点明白了?但是怎么做我还是不知道~” 金融大佬说。 --- 这里是分割线 --- 导入 paddlepaddle 和数据处理包 #加载[飞桨](https://www.oschina.net/action/visit/ad?id=1185 "飞桨")、Numpy和相关类库 import [paddle](https://www.oschina.net/action/visit/ad?id=1185 "paddle") import [paddle](https://www.oschina.net/action/visit/ad?id=1185 "paddle").fluid as fluid import [paddle](https://www.oschina.net/action/visit/ad?id=1185 "paddle").fluid.dygraph as dygraph

未来云原生世界的“领头羊”:容器批量计算项目Volcano 1.0版本发布

Deadly 提交于 2020-08-12 05:33:53
在刚刚结束的CLOUD NATIVE+ OPEN SOURCE Virtual Summit China 2020上,由华为云云原生团队主导的容器批量计算项目Volcano正式发布1.0版本,标志着Volcano项目已经开始走向成熟与稳定。 Volcano项目介绍 Volcano是基于Kubernetes的云原生批量计算引擎,基于华为云在AI、大数据领域的深厚业务积累,补齐了Kubernetes在面向AI、大数据、高性能计算等批量计算任务调度、编排等场景下的短板,向下支持鲲鹏、昇腾、X86等多元算力,向上使能TensorFlow、Spark、华为MindSpore等主流行业计算框架,让数据科学家和算法工程师充分享受到云原生技术所带来的高效计算与极致体验。 Volcano架构示意图 随着Kubernetes作为AI、大数据和高性能批量计算的下一代基础设施的趋势逐渐清晰,越来越多的企业对Kubernetes在深度学习、科学计算、高性能渲染等方面提出了更高的要求。 然而Kubernetes作为普适的容器化解决方案,仍与业务诉求存在一定差距,主要体现在: K8s的原生调度功能无法满足计算要求 K8s作业管理能力无法满足AI训练的复杂诉求 数据管理方面,缺少计算侧数据缓存能力,数据位置感知等功能 资源管理方面缺少分时共享,利用率低 硬件异构能力弱 Volcano的诞生正是基于这些痛点,在调度

Teacher模型线上授课,蒸馏训练速度提升2.3倍

社会主义新天地 提交于 2020-08-12 02:11:15
自今年年初,由于疫情的原因,为了减少人员聚集,降低病毒扩散的可能性,各大中小学校都陆续开始了网上教学。上网课已经成了家喻户晓的一种学习方式了。 可是你知道吗,在深度学习领域,模型训练也是可以采用网课形式,不用那么震惊,这个真的有!这就是今天要讲的LF AI基金会的EDL项目基于 飞桨 深度学习平台推出的 服务型蒸馏训练方案 ! ​ 下载安装命令 ## CPU版本安装命令 pip install -f https://paddlepaddle.org.cn/pip/oschina/cpu paddlepaddle ## GPU版本安装命令 pip install -f https://paddlepaddle.org.cn/pip/oschina/gpu paddlepaddle-gpu 什么是蒸馏训练? 要讲蒸馏训练就要提到知识蒸馏。如今深度学习模型正在往越来越大,网络层越来越深的方向发展。在很多场景下,模型越大,层数越多,模型效果就越好。但受限于推理速度,显存资源等要求,大模型通常无法直接部署,需要对模型进行压缩。 目前主流的压缩方法有裁剪、量化、知识蒸馏等。其中知识蒸馏这一概念是由Hinton等人在2015年发表的《Distilling the Knowledge in a Neural Network》论文中提出的一个黑科技,一种非常经典的模型压缩技术,是将知识从一个复杂模型

推动量子计算与AI融合,飞桨成为中国首个支持量子机器学习的深度学习平台...

南楼画角 提交于 2020-08-11 16:19:56
“新基建”给中国“产业智能化”带来强劲的新引擎。 飞桨 作为智能时代的操作系统与技术底座,也再次迎来高光时刻。5月20日,由深度学习技术及应用国家工程实验室与百度联合主办的“WAVE SUMMIT 2020”深度学习开发者峰会以线上形式召开。 下载安装命令 ## CPU版本安装命令 pip install -f https://paddlepaddle.org.cn/pip/oschina/cpu paddlepaddle ## GPU版本安装命令 pip install -f https://paddlepaddle.org.cn/pip/oschina/gpu paddlepaddle-gpu 本届峰会, 飞桨 公布最新全景图,带来多达35项全新发布和重磅升级 ,不仅进一步升级核心框架、完善从开发训练到部署的全流程工业级极致体验、深化企业端服务,更着眼未来,引领布局前沿技术, 首发量子机器学习开发工具“量桨” ,以及蓄力AI人才培养和开发者生态, 发布青少年AI科普教育“晨曦计划”、“星辰计划”开发者探索基金等 。 (图:百度首席技术官王海峰致辞) 百度首席技术官、深度学习技术及应用国家工程实验室主任王海峰在峰会上致辞讲到:“时代契机为 飞桨 的发展提供了最好的机遇,产业智能化浪潮兴起、AI基础设施建设加快推进, 飞桨 以更敏捷的脚步,秉承开源开放理念,坚持技术创新

【飞桨】【PaddlePaddle】【论文复现】StarGAN v2论文及其前置:GAN、CGAN、pix2pix、CycleGAN、pix2pixHD、StarGAN学习心得

天涯浪子 提交于 2020-08-11 15:34:49
目录 GAN CGAN pix2pix CycleGAN pix2pixHD StarGAN PaddlePaddle: 百度顶会论文复现营 . GAN GAN,即生成对抗网络,其网络结构主要包含一个生成器G和一个判别器D。首先,一个n维噪声输入到模型中,由生成器生成一个fake图像(根据目标而定),接着传入真实图像,resize成与fake图像相同大小,共同输入到判别器D中,送入训练网络中,训练趋势是使生成器生成越来越逼真,可以“以假乱真”的假图像,而判别器的精度也不断提升,最后,判别器D无法区分生成器G生辰的fake图像,得到的真假图像概率为0.5,达到理想状态。经过这样的一种“抗衡”生成器G的图像生成能力越来越强,整个网络的目的也就达到了。 CGAN CGAN(条件生成对抗网络)主要针对GAN的随机性问题,在生成器和判别器中都加入了一个标签作为输入,从它的损失函数中可以看出,D和G的概率表达都变成了条件概率,这样,对于不同的标签y,就有不同的函数表达,从而可以完成特定的任务。 pix2pix Pix2pix主要的核心思想是“对应关系”,以草图代替噪声作为输入,由生成器生成一个图片,再将草图和G生成的图片共同作为D的输入,这样就可以把草图变成相应的图片了。 这里附上一个有趣的小链接:https://affinelayer.com/pixsrv/,可以把自己绘制的草图转化成猫咪。

直播预告 | AI黑科技让照片秒变名画?程序员与艺术家的次元壁终于打破了

生来就可爱ヽ(ⅴ<●) 提交于 2020-08-11 14:18:07
艺术家的天职是创造美,而程序员的天职是没有Bug? 不,是用技术改变世界! 艺术不同于一般重复性的工作,需要发挥人的创造性和审美能力,尽管人工智能技术已经得到充分的验证,但并未具备解答“什么是美的”的能力 那么,当程序员遇上艺术,会碰撞出什么样的火花呢? 本周三晚 19:00 ,来自百度 飞桨 社区的两位开发者,将会在 B 站开启直播,揭晓如何用深度学习将计算机“调教”成媲美梵高、毕加索的“艺术家”,想感受 AI 在艺术创作领域带来的震撼吗? 8 月 12 日晚上 19:00,B 站直播间,等你过来一探究竟。 分享主题: 《梵高风格图像生成》 《毕加索画风迁移实战》 扫码看直播 飞桨 开发者说Live · 每周三晚七点 每周三晚上, 飞桨 开发者说Live,和全球人工智能开发者一起丰富技能,扫描下方二维码加入直播交流群,除了可以直接和分享嘉宾交流,了解更多技术踩坑破解诀窍,更有精彩互动和礼品不容错过哟,勇敢的少年啊,快去创造奇迹! (扫描二维码加入交流群,与分享嘉宾无缝交流) PPDE 百度 飞桨 开发者技术专家 本次的分享嘉宾,是来自百度 飞桨 社区的PPDE,在未来每周三的直播中,我们将会看到更多 PPDE 的身影,与大家分享自己在项目实践过程中的经验和思考。 什么是PPDE? PPDE计划是 飞桨 开发者技术专家的荣誉认证体系 ( PaddlePaddle

支付宝研究员王益的建议:“学好语文,才能写好代码”

一个人想着一个人 提交于 2020-08-10 12:26:17
简介: 王益,蚂蚁集团研究员,开源项目SQLFlow 和 ElasticDL 的负责人。他从10岁开始写代码。曾经用自己焊接的电路板扩展“中华学习机”来把自家的老式“威力牌”双筒洗衣机改造成了自动洗衣机;用Apple BASIC语言和6502汇编混合编程写了人生中第一个游戏;高中自学了大学所有计算机课程,参加计算机水平测试,先后获得了“程序员”、“高级程序员”、“系统分析员”认证。王益从事 AI 基础架构工作十三年,先后在全球多家顶级互联网公司任职,亦曾在硅谷和北京两地创业。 王益,蚂蚁集团研究员,开源项目SQLFlow 和 ElasticDL 的负责人。他从10岁开始写代码。曾经用自己焊接的电路板扩展“中华学习机”来把自家的老式“威力牌”双筒洗衣机改造成了自动洗衣机;用Apple BASIC语言和6502汇编混合编程写了人生中第一个游戏;高中自学了大学所有计算机课程,参加计算机水平测试,先后获得了“程序员”、“高级程序员”、“系统分析员”认证。王益从事 AI 基础架构工作十三年,先后在全球多家顶级互联网公司任职,亦曾在硅谷和北京两地创业。 王益还是知名开源项目SQLFlow、ElasticDL的负责人,虽已“高龄”,但仍对代码充满热爱,并经常写代码。以下是他的观点: 和每个程序员一样,我的十三年职业生涯里,每一天都在和 code review、design doc、bug

BAT程序员常用的开发工具,建议收藏!

大憨熊 提交于 2020-08-10 11:05:54
以下文章来源于InfoQ ,作者InfoQ编辑部 今天给大家推荐一批 BAT 公司常用的开发工具,个个好用,建议转发+收藏。 阿里篇 一、Java 线上诊断工具 Arthas Arthas 是阿里巴巴 2018 年 9 月开源的一款 Java 线上诊断工具。 使用场景: 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了? 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗? 线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现! 是否有一个全局视角来查看系统的运行状况? 有什么办法可以监控到 JVM 的实时运行状态? Arthas 支持 JDK 6+,支持 Linux、Mac、Windows,采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。 使用教程: 基础教程: https://alibaba.github.io/arthas/arthas-tutorials?language=cn&id=arthas-basics 进阶教程: https://alibaba.github.io/arthas/arthas-tutorials?language=cn&id=arthas-advanced 开源地址: https:

faster RCNN中的anchor generator分析

风格不统一 提交于 2020-08-10 05:42:17
faster RCNN简介 faster rcnn属于两阶段目标检测,所谓两阶段目标检测,指的就是对检测框做两次边框回归,首先使用RPN网络,生成anchor,挑选出positive anchors,并对这些anchor进行第一次回归,再经过nms,得到初步的proposal;在RCNN阶段,对于这些proposal,提取对应区域的feature map,并使用RoiAlign或者RoiPooling等方法,将这些proposal变成统一的大小(否则之后没法接FC等层了),经过各种卷积或者fc操作之后,对proposal进行再一次地回归。整个过程回归了2次边框,因此是两阶段的目标检测。 关于faster rcnn更加具体的解释可以参考这篇知乎文章: https://zhuanlan.zhihu.com/p/31426458 ancho generator分析 训练时,在RPN中,使用anchor generation的方法生成anchor,但是在这个过程中,由于生成了大量的anchor,因此会有非常严重的正负样本不均衡的问题,怎样保证生成anchor与gt bbox有尽可能大的IOU,其实是非常重要的问题,在FPN中,短边800训练时,常规的RP配置如下。 FPNRPNHead: anchor_generator: anchor_sizes: [32, 64, 128, 256,