Muyun99's wiki Muyun99's wiki
首页
学术搬砖
学习笔记
生活杂谈
wiki搬运
资源收藏
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Muyun99

努力成为一个善良的人
首页
学术搬砖
学习笔记
生活杂谈
wiki搬运
资源收藏
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 代码实践-目标检测

  • 代码实践-图像分割

  • 代码实践-自监督学习

  • 竞赛笔记-视觉竞赛

  • 框架解析-mmlab系列

  • 讲座记录-有意思的文章集合

  • 体会感悟-产品沉思录观后有感

  • 体会感悟-摄影

  • 系列笔记-

  • 系列笔记-乐理和五线谱

  • 系列笔记-爬虫实践

  • 系列笔记-Django学习笔记

  • 系列笔记-Git 使用笔记

  • 系列笔记-网站搭建

  • 系列笔记-图卷积网络

  • 课程笔记-MIT-NULL

  • 系列笔记-OpenCV-Python

  • 系列笔记-使用 Beancount 记账

  • 系列笔记-Python设计模式

  • 系列笔记-MLOps

  • 系列笔记-Apollo自动驾驶

  • 系列笔记-PaddlePaddle

    • 整体评分
      • 服务器部署 — Paddle Inference
      • 移动端/嵌入式部署 — Paddle Lite
      • 模型压缩 — PaddleSlim
      • 分布式训练快速开始
      • 使用FleetAPI进行分布式训练
  • 系列笔记-视频操作

  • Vue+Django前后端分离开发

  • 深度学习及机器学习理论知识学习笔记

  • PyTorch Tricks

  • 学习笔记
  • 系列笔记-PaddlePaddle
Muyun99
2021-08-14

整体评分

# 服务器部署 — Paddle Inference

# 0、链接:服务器部署 — Paddle Inference (opens new window)

# 1、整体评分

内容对你了解 Paddle Inference 的帮助程度

4分;基本上能有了解,

内容对你使用 Paddle Inference 的帮助程度

4分;使用起来基本没问题,也能够从 python示例 (opens new window) 处上手,但在使用过程中发现三个问题,描述如下

(1) 如下图所示,此处的解压命令错误,应当为 tar zxf resnet50.tgz

image-20210814154158581

(2) 当我运行 python_demo 程序后,得到的预测输出结果 output data size 与 output data shape与官方文档不一致

image-20210814154626537

image-20210814154611453

(3) 希望在 预测程序开发环节 (opens new window) 也能有对应直接能上手的 Demo 代码

# 2、导航&标题

导航目录和分类的清晰合理,便于查找

4分;较为清晰

文档标题是否清晰准确易懂

4分;较为清晰

# 3、文档内容

语言表达的易读程度

4分;比较容易理解,但有一些可以改进的地方,整理如下

(1) 如下图所示,“同时对飞腾、鲲鹏、曙光、昆仑等国产CPU/NPU进行适配。。(多了一个句号)

image-20210814151505367

(2) 如下图所示,Paddle Inference 大小写不一致,中英文夹杂的情况下空格不一致

image-20210814152016647

内容中背景知识的覆盖程度

4分;基本介绍了相关背景知识,流程图非常清晰,希望在 "主框架model.predict区别"这一小节也能有可视化(图片或者表格)的解释,这样会更加一目了然

内容的内部段落结构的合理程度

4分;较为合理

操作过程的可指导性,步骤间连贯性

3分;在我尝试想要上手使用 Paddle Inference 的时候,我个人应该是觉得要首先上来看 Inference Demo 的,但是当我进入 Inference Demo 仓库时,是建议我对 Paddle Inference 文档做了解,我个人觉得可以减少跳转,给用户一个顺序的指导,而不是直接给出几个常见的文档链接,不做引导

  • 对于刚刚接触的同学:直接去看文档的 快速上手 (opens new window) 部分,这部分内容写的比较清晰。
  • 对于有了解的同学:可以去 Demo 仓库 (opens new window) ,但是仓库的 README 写的不足够清晰,对于使用样例没有跳转链接

image-20210814152244038

内容根据最新技术的更新程度

4分;

# 4、排版

内容排版层次分明、重点突出

4分;预测流程图中的文字与文档的字体大小差异过大,建议做成能够双击放大的形式,或者对不同的阅读场景做适配,或者参照 Paddle Lite--架构 (opens new window) 的图做调整

image-20210814151208556

# 5、整体评价

3.5分;整理阅读下来对于领域内的人应该能够比较清晰的了解,但仍有可以改进的地方。文档中 快速上手 (opens new window) 的案例与代码仓库 (opens new window) 中的 Demo 对应起来,并且代码仓库中的 README (opens new window) 比较不详细,有很大的改进空间。

# 移动端/嵌入式部署 — Paddle Lite

# 0、链接:移动端/嵌入式部署 — Paddle Lite (opens new window)

# 1、整体评分

内容对你了解XXX的帮助程度

4分;基本上能看懂理解,有以下一个问题可以改进:

(1) 使用教程 (opens new window) 和 Paddle-Lite (opens new window) 中描述不一致,缺少 PyTorch 的支持,基于 PyTorch 庞大的用户群,我觉得支持 PyTorch 模型是很好的特性,可以突出一下。此外,使用教程中也有 markdown 渲染不成功的问题,多了一个空格。

image-20210814160852951

image-20210814160540708

内容对你使用XXX的帮助程度

4分;使用起来基本没问题,有以下两个方面可以改进:

(1) 示例程序 (opens new window)这里希望直接把关键代码贴出来(或者放到 baidu 的服务器上下载),而不是要去 GitHub 下载,去 GitHub 上需要 clone 或者复制代码,由于网速等问题会降低用户的使用好感。除此之外,下图有一个错别字,应为“优化前”。

image-20210814161319594

(2) 希望在 Python 应用开发说明 (opens new window) 也能有对应直接能上手的 Demo 代码

# 2、导航&标题

导航目录和分类的清晰合理,便于查找

4分;较为清晰

(1) 小杠一下,我觉得 tag 这里可以统一改成英文 (强迫症)

image-20210814160127762

文档标题是否清晰准确易懂

4分;较为清晰

# 3、文档内容

语言表达的易读程度

4分;较为容易理解

内容中背景知识的覆盖程度

4分;基本介绍了相关背景知识

内容的内部段落结构的合理程度

4分;较为合理

操作过程的可指导性,步骤间连贯性

4分;可以从用户的角度让大家先上手示例程序 (opens new window),可以给个引导

内容根据最新技术的更新程度

4分;

# 4、排版

内容排版层次分明、重点突出

4分;

# 5、整体评价

4分;文档较为清晰,排版也没有太大的问题,能够较好的上手

# 模型压缩 — PaddleSlim

# 0、链接:模型压缩 — PaddleSlim (opens new window)

# 1、整体评分

内容对你了解XXX的帮助程度

4分;基本上能看懂理解

内容对你使用XXX的帮助程度

2分;使用起来出了很多 bug,猜测是重构之后有很多遗留问题,或许代码上已经修复,但是文档中的代码没有更新

1、动态图

(1) 卷积 Filter 剪裁 (opens new window)

在 5.2 对模型进行微调 (opens new window) 小节报出维度不匹配:ValueError: (InvalidArgument) Param and Velocity of MomentumOp should have the same dimension,所以还是希望能够给一个 Demo 代码

image-20210814163617315

image-20210814163645240

(2) 量化训练 (opens new window)

在 5. 导出预测模型 (opens new window) 小节导出预测模型时报错:AttributeError: 'Assign' object has no attribute 'type_comment',希望能够给出一个 Demo 代码

image-20210814164437683

(3) 离线量化 (opens new window)

在 3. 进行预训练 (opens new window) 小节训练完成后导出预测模型时报错:AttributeError: 'Assign' object has no attribute 'type_comment',希望能够给出一个 Demo 代码

(4) 发现同样问题

我在 paddlepaddle 仓库的 issue (opens new window) 以及 paddleslim 的 issue (opens new window) 也发现同样的问题,应该是bug,希望及时修复,不影响文档的使用,

2、静态图

(1) 卷积 Filter 剪裁 (opens new window)

报错:InvalidArgumentError: The start row index must be less than the end row index.But received the start index = 0, the end index = 0.

(2) 知识蒸馏 (opens new window)

能够顺利运行,但是 loss 非常大

image-20210814171752424

(3) 量化训练 (opens new window)

在 保存量化后的模型 (opens new window) 小节报错:NameError: name 'float_prog' is not defined

(4) 离线量化 (opens new window)

无问题,顺利运行

(5) 网络结构搜索 (opens new window)

无法顺利运行:8. 完整示例中报以下错

  • File "static_nas.py", line 87, in <module>
        train_loader, eval_loader = input_data(inputs)
    TypeError: input_data() missing 1 required positional argument: 'label'
    
    1
    2
    3

修改为以下代码后依然无法运行

  • exe, train_program, eval_program, (image, label), avg_cost, acc_top1, acc_top5 = build_program(archs)
    train_loader, eval_loader = input_data(image, label)
    
    1
    2

报错为:InvalidArgumentError: If Attr(soft_label) == false, the axis dimension of Input(Label) should be 1

3、如何复现

本地 Python 环境:

paddlehub                  1.8.2
paddlelite                 2.8
paddlepaddle               2.0.2
paddlepaddle-gpu           2.1.1
paddleseg                  2.1.0
paddleslim                 2.1.0
paddlex                    2.0.0rc4
1
2
3
4
5
6
7

本地硬件环境:

  • GPU: TiTAN RTX
  • Driver API Version: 11.2, Runtime API Version: 10.2
  • cuDNN Version: 7.6.

我复现代码的链接:https://github.com/Muyun99/PaddleSlim_demo

# 2、导航&标题

导航目录和分类的清晰合理,便于查找

4分;较为清晰

文档标题是否清晰准确易懂

4分;较为清晰,加上了压缩效果的示例非常有吸引力

# 3、文档内容

语言表达的易读程度

4分;比较容易理解

内容中背景知识的覆盖程度

4分;基本介绍了相关背景知识

内容的内部段落结构的合理程度

4分;

操作过程的可指导性,步骤间连贯性

4分;

内容根据最新技术的更新程度

2分;看起来很多代码都没有更新,出现了很多 bug

# 4、排版

内容排版层次分明、重点突出

4分;

# 5、整体评价

2分;本来开始看文档的时候我觉得很好用,有性能对比,快速上手部分也有相当多的注释,但是代码质量堪忧,我个人跑示例的过程中出现了很多bug,希望工程师能够尽快更新。

这是我复现文档代码的 github 仓库:https://github.com/Muyun99/PaddleSlim_demo,希望工程师看下是代码的问题还是环境不匹配,因为我所有代码都是从文档上复制过来的,有什么问题可以提 issue

# 分布式训练快速开始

# 0、链接:分布式训练快速开始 (opens new window)

# 1、整体评分

内容对你了解XXX的帮助程度

3分;未给出 FleetX 的官方文档链接,给出的上手代码不完整

内容对你使用XXX的帮助程度

3分;使用起来基本没问题

(1) 1.3 和 1.4 代码不完整

1.3 小节中有 from resnet_dygraph import ResNet,可以从 resnet_dygraph (opens new window) 链接中找到

1.4 小节中有 import resnet_static as resnet ,可以从 resnet_static (opens new window) 链接中找到

文档中未给出相应的代码链接,不完整

(2) 1.5 运行示例都会报错

以下两条语句都会报错

  • python3 -m paddle.distributed.launch --gpus=0,1 train_fleet_dygraph.py

  • python3 -m paddle.distributed.launch --gpus=0,1 train_fleet_static.py

参考 运行示例 (opens new window),应当改为:

  • fleetrun --gpus=0,1 train_fleet_dygraph.py
  • fleetrun --gpus=0,1 train_fleet_static.py

其中静态图依旧运行失败,动态图代码可以运行但是 loss 降不下来

# 2、导航&标题

导航目录和分类的清晰合理,便于查找

4分;目录较为清晰

文档标题是否清晰准确易懂

4分;标题较为清晰

# 3、文档内容

语言表达的易读程度

4分;比较容易理解

内容中背景知识的覆盖程度

3分;未介绍相关背景知识,直接就上手快速开始了

内容的内部段落结构的合理程度

4分;

操作过程的可指导性,步骤间连贯性

2分;代码不完整,运行语句存在bug

内容根据最新技术的更新程度

3分,猜测是未更新文档

# 4、排版

内容排版层次分明、重点突出

4分

# 5、整体评价

2分,感觉飞桨官网 FleetX 文档 (opens new window)和 FleetX 文档 (opens new window) 是分开维护的,其代码和 README 并没有同步。导致代码不完整以及运行语句都不一致,并且飞桨官网并没有放 FleetX 文档链接,使用体验较差

# 使用FleetAPI进行分布式训练

# 0、链接:使用FleetAPI进行分布式训练 (opens new window)

# 1、整体评分

内容对你了解XXX的帮助程度

3分;对于不了解的人来讲未给出 FleetX 的官方文档链接,没有详细的背景介绍

内容对你使用XXX的帮助程度

3分;给出的快速上手示例代码使用有问题

# 2、导航&标题

导航目录和分类的清晰合理,便于查找

4分;

文档标题是否清晰准确易懂

4分;

# 3、文档内容

语言表达的易读程度

4分;比较容易理解

内容中背景知识的覆盖程度

3分;未介绍相关背景知识,直接就上手快速开始了

内容的内部段落结构的合理程度

4分;

操作过程的可指导性,步骤间连贯性

3分;代码运行语句有误,没有示例 py 文件下载途径,也没有相关的 GitHub 仓库链接

内容根据最新技术的更新程度

4分;

# 4、排版

内容排版层次分明、重点突出

4分;

# 5、整体评价

3分,背景介绍太过简单,并且代码对于动态图和静态图报错,建议仔细检查,统一文档格式和代码示例的方式

上次更新: 2021/08/17, 18:07:06
控制
ffmpeg 库的使用

← 控制 ffmpeg 库的使用→

最近更新
01
Structured Knowledge Distillation for Semantic Segmentation
06-03
02
README 美化
05-20
03
常见 Tricks 代码片段
05-12
更多文章>
Theme by Vdoing | Copyright © 2021-2023 Muyun99 | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×