Skip to content
This repository has been archived by the owner on Jan 24, 2024. It is now read-only.

[Call for Contribution] Tutorials for PaddlePaddle 2.0(基于飞桨2.0的应用案例教程建设) #905

Open
saxon-zh opened this issue Sep 24, 2020 · 35 comments
Assignees

Comments

@saxon-zh
Copy link
Contributor

saxon-zh commented Sep 24, 2020

1. 目标

目前飞桨2.0 RC1版本已经发布,不久的将来即将发布2.0正式版,在2.0版本中,飞桨深度学习框架面向用户体验做了一系列的升级优化:API体系的全面升级以及命令式编程(动态图)能力的全面完善;系统优化了飞桨基础API的目录结构,全面修复了历史遗留的相关问题,并对API做了充分补充,特别是提供了更为完善的高层API功能;同时提供了对动态图的量化训练、混合精度训练的支持,动静转换实现了完备的语法支持,并且易用性大幅提升,动态图相关功能趋于完善,默认推荐使用动态图模式;数据处理、组网方式、模型训练、多卡启动、模型保存和推理等开发流程都有了对应优化;此外,推理库的C++接口也做了升级优化,推理库对量化模型的支持以及推理性能都有了全面增强。

这是飞桨框架的一个全新版本,为了能够让用户快速掌握到飞桨框架升级内容,并了解和学习如何使用2.0进行相关任务的开发,我们进行应用案例教程的立项,在不同的任务场景上为用户提供一个端到端的易学案例,来快速的传递相关知识和使用方法。

在此呼吁广大的飞桨开发者来一起共建我们的应用案例教程,努力为用户提供更加优质的示例教程,为用户学会使用框架铺设一条高速公路。

2. 教程清单

目前我们从已有内容和待补充方向进行了初步评估,梳理了以下建议的选题方向和题目,并为大家提供了比较优秀的对标文章进行学习参考,大家可以从这个列表中选择自己想要进行贡献的题目,或者也可以进行非列表内的题目自选。

招募列表

类别 标题 参考链接 已认领作者ID
计算机视觉 通过OCR实现验证码识别 https://keras.io/examples/vision/captcha_ocr/ GT-ZhangAcer
计算机视觉 基于fine-tuning的图像分类 https://keras.io/examples/vision/image_classification_efficientnet_fine_tuning/ zky001
计算机视觉 通过Sub-Pixel实现图像超分辨率 https://keras.io/examples/vision/super_resolution_sub_pixel/ ralph0813
自然语言处理 基于seq2seq的文本加法 https://keras.io/examples/nlp/addition_rnn/ jm12138
自然语言处理 使用预训练的词向量 https://keras.io/examples/nlp/pretrained_word_embeddings/ fiyen
自然语言处理 基于Bert的语义相似度计算 https://keras.io/examples/nlp/semantic_similarity_with_bert/ wangxiao1021
自然语言处理 通过transformer实现文本分类 https://keras.io/examples/nlp/text_classification_with_transformer/ YinHang2515
生成模型 通过DCGAN实现人脸图像生成 https://pytorch.org/tutorials/beginner/dcgan_faces_tutorial.html ZMpursue
生成模型 通过CycleGAN实现图像风格迁移 https://keras.io/examples/generative/cyclegan/ ctkindle
结构化数据 信用卡反欺诈-样本不均衡下的分类任务 https://keras.io/examples/structured_data/imbalanced_classification/ davidlinhl
时序数据 通过AutoEncoder实现时序数据异常检测 https://keras.io/examples/timeseries/timeseries_anomaly_detection/ Reatris
计算机视觉 卷积层可视化 https://keras.io/examples/vision/visualizing_what_convnets_learn/
计算机视觉 使用PointNet实现点云分类 https://keras.io/examples/vision/pointnet/
计算机视觉 使用Retinanet实现目标检测 https://keras.io/examples/vision/retinanet/
自然语言处理 基于Bert实现智能写诗 https://www.mindspore.cn/tutorial/training/zh-CN/r1.1/advanced_use/nlp_bert_poetry.html
自然语言处理 相声文本生成 https://zhuanlan.zhihu.com/p/42568781
自然语言处理 图片描述 https://www.tensorflow.org/tutorials/text/image_captioning?hl=en
强化学习 Actor Critic Method https://keras.io/examples/rl/actor_critic_cartpole/
生成对抗网络 通过StackGAN输入文本生成图像 https://arxiv.org/pdf/1612.03242v1.pdf
生成对抗网络 使用DanceNet自动生成舞蹈 https://zhuanlan.zhihu.com/p/41946184
时序数据 时序数据预测:天气预报 https://keras.io/examples/timeseries/timeseries_weather_forecasting/
推荐 使用协同过滤实现电影推荐 https://keras.io/examples/structured_data/collaborative_filtering_movielens/

招募列表外开发者主动贡献列表

标题 已认领作者ID
关键点检测方法及应用 zzs95

3. 贡献指南

3.1 飞桨框架2.0版本安装和使用

  1. 飞桨(PaddlePaddle)版本统一使用2.0最新版,安装说明:https://www.paddlepaddle.org.cn/documentation/docs/zh/2.0-beta/install/index_cn.html
  2. 2.0版本使用教程:https://www.paddlepaddle.org.cn/documentation/docs/zh/2.0-beta/guides/index_cn.html
  3. 2.0版本已有应用实践教程:https://www.paddlepaddle.org.cn/documentation/docs/zh/2.0-beta/tutorial/index_cn.html

3.2 题目认领

  1. 可以在上面提供的列表中进行题目选择或自选题目,并将确定的题目回复到本Issue中,方便他人同步知晓已开展的文章列表信息,避免重复选题。

3.3 教程编写

  1. 应用案例教程统一使用Notebook格式(.ipynb)来进行编写,可以在本地安装使用Jupyter开发,或使用AIStudio(https://aistudio.baidu.com)。

  2. 为了方便大家进行教程的编写,并统一阅读体验,下面为大家提供了一个简单的概要框架,大家根据实际任务按照下面的框架结构进行内容编写和组织,可以结合实际场景进行微调。如果对模板有一些建议我们也可以在下面进行回复讨论。

    # 题目
    
    作者信息:Github ID (github个人主页URL)
    
    ## 1. 简要介绍
    简单的一段文字介绍本案例场景和用到的一些知识点,不用太复杂的讲述知识细节,
    
    ## 2. 环境设置
    导入包,运行一些初始化方法
    
    ## 3. 数据集
    讲述数据集的一些基础信息,描述数据集组成等。进行数据集的下载、抽样查看、数据集定义等。
    
    ## 4. 模型组网
    基于Layer定义模型网络结构,模型的可视化展示。可以概要讲述一些网络结构代码设计的原因。
    
    ## 5. 模型训练
    使用模型网络结构和数据集进行模型训练。需要讲述一些实践中的知识点。
    
    ## 6. 模型评估
    使用评估数据评估训练好的模型。
    
    ## 7. 模型预测
    对模型进行预测,展示效果。

3.4 教程上传

  1. 写好的文档通过向https://github.com/PaddlePaddle/book仓库提交Pull Request的方式来进行教程文档的上传。
  2. 对提交好的PR可以指定Reviewer(saxon-zhjzhang533TCChenlong)进行内容和代码的评审,通过后会由具有Merge权限的同学进行最终的合入。

3.5 一些原则

  • 代码封装得当,易读性好,不用一些随意的变量/类/函数命名。
  • 注释清晰,不仅说明做了什么,也要说明为什么这么做。
  • 文字部分暂时不用考虑国际化,先统一使用中文编写,注意概念和描述的清晰度,尽量让大家通俗易懂,如果实在难以解释,可以给出一些能够详细介绍的页面链接。
  • 代码编写过程中能使用高层API的部分就使用高层API,无法使用高层API的部分就使用基础API。高层API使用指南:链接
  • 做好代码的自测工作,每段代码块需要有运行结果。

4. 已合入仓库的教程

目前已经有13篇基于飞桨2.0的教程贡献,查看方式:

  1. Repo目录查看已经Merge的Notebook源文件:https://github.com/PaddlePaddle/book/tree/develop/paddle2.0_docs
  2. 查看官网渲染后的页面:https://www.paddlepaddle.org.cn/documentation/docs/zh/2.0-beta/tutorial/index_cn.html

5. 还有不清楚的怎么办?

欢迎大家随时在这个Issue下进行提问。

非常感谢大家一起来贡献!共建飞桨繁荣社区!

@saxon-zh saxon-zh self-assigned this Sep 24, 2020
@Reatris
Copy link
Contributor

Reatris commented Oct 9, 2020

认领:通过AutoEncoder实现时序数据异常检测

@GT-ZhangAcer
Copy link
Member

GT-ZhangAcer commented Oct 9, 2020

认领:通过OCR实现验证码识别

@YinHang2515
Copy link

认领:通过transformer实现文本分类

@zky001
Copy link

zky001 commented Oct 9, 2020

认领:基于fine-tuning的图像分类

@ZMpursue
Copy link
Contributor

ZMpursue commented Oct 9, 2020

认领:通过DCGAN实现人脸图像生成

@wangxiao1021
Copy link

认领:基于Bert的语义相似度计算

@ralph0813
Copy link
Contributor

认领:通过Sub-Pixel实现图像超分辨率

@jm12138
Copy link
Contributor

jm12138 commented Oct 9, 2020

认领:基于seq2seq的文本加法

@zzs95
Copy link
Contributor

zzs95 commented Oct 9, 2020

认领:关键点检测方法及应用

@fiyen
Copy link
Contributor

fiyen commented Oct 9, 2020

认领:使用预训练的词向量

@ctkindle
Copy link
Contributor

ctkindle commented Oct 9, 2020

认领:通过CycleGAN实现图像风格迁移

@shaunhurryup
Copy link

认领:通过OCR实现验证码识别

@linhandev
Copy link

认领:通过OCR实现验证码识别

这个gt貌似领了

@liu824
Copy link

liu824 commented Oct 14, 2020

没看到在这认领,我已经做完通过AutoEncoder实现时序数据异常检测合RP了,有点尴尬

@Reatris
Copy link
Contributor

Reatris commented Oct 14, 2020

没事,你先去PR吧,我再做个其他的~

@liu824
Copy link

liu824 commented Oct 14, 2020

挺抱歉的,我之前搞错了,我新建了issue来领任务,不过你的也可以上传,飞桨应该不介意多出一份教程

@SunHao-TSU
Copy link

认领:DQN-CartPole

@TCChenlong
Copy link
Contributor

TCChenlong commented Oct 21, 2020

作者格式要求

为了统一整体的写作风格,需要大家规范一下作者格式,写法规则如下:
在notebook的第一个cell中,填写文章标题,作者名字(链接至GitHub主页)、上传日期等三部分信息;其它的描述都在之后的cell中
示例如下:
image
对于AIStudio项目的链接,飞桨官方会在后续统一添加,请大家理解
非常感谢大家一起来贡献!共建飞桨繁荣社区!

@Reatris
Copy link
Contributor

Reatris commented Oct 21, 2020 via email

@SunHao-TSU
Copy link

SunHao-TSU commented Oct 22, 2020 via email

@ctkindle
Copy link
Contributor

收到

@lwbmowgli
Copy link

认领:基于fine-tuning的图像分类

@saxon-zh saxon-zh pinned this issue Dec 15, 2020
@TCChenlong TCChenlong unpinned this issue Dec 16, 2020
@saxon-zh saxon-zh pinned this issue Dec 17, 2020
@DawnMagnet
Copy link

认领:使用Retinanet实现目标检测

@Reatris
Copy link
Contributor

Reatris commented Feb 26, 2021

认领:卷积层可视化

@EastSmith
Copy link
Contributor

认领:强化学习-Actor Critic Method

@YinHang2515
Copy link

认领:图片描述

@Kqnonrime
Copy link
Contributor

认领:使用PointNet实现点云分类

@fiyen
Copy link
Contributor

fiyen commented Feb 26, 2021

认领:基于BERT实现智能写诗

@liu824
Copy link

liu824 commented Feb 26, 2021

认领:时序数据预测,天气预报

@WhiteFireFox
Copy link
Contributor

认领:使用PointNet实现点云分类

@ZMpursue
Copy link
Contributor

认领:信用卡反欺诈-样本不均衡下的分类任务

@ctkindle
Copy link
Contributor

ctkindle commented Mar 1, 2021

自选:热图可视化 Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization

@Kqnonrime
Copy link
Contributor

认领:使用协同过滤实现电影推荐

@WhiteFireFox
Copy link
Contributor

认领:使用DanceNet自动生成舞蹈

@DannyIsFunny DannyIsFunny unpinned this issue Mar 5, 2021
@guojiahuiEmily
Copy link

自选: 用时间卷积网络实现黄金价格预测
作者:郭佳慧
项目地址: https://aistudio.baidu.com/aistudio/projectdetail/1525691/i?shared=1

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests