Lin Manhui

Results 56 comments of Lin Manhui

你好,请提供issue模板中提到的信息,以便我们帮助排查原因。

**需求描述**:PaddleOCR与PaddleDetection与Pillow新版本10.x不兼容。目前PaddleOCR采用的临时解决方案是在依赖列表中限制只能使用旧版本Pillow(参见 https://github.com/PaddlePaddle/PaddleOCR/pull/10344 ),而PaddleDetection未采取任何措施(按照文档安装后,使用`deploy/python/visualize.py`等部分功能时会直接报错)。出于套件可持续建设的考虑,希望能够适配最新版本的Pillow。 **需求场景**: 目前已发现涉及使用字体的相关场景存在此问题。 **潜在解决方案**: 1. 对于PaddleOCR和PaddleDetection,修改过时的接口名称或参数(例如`FreeTypeFont.getsize`),替换为等效的API调用; 3. 对于PaddleOCR,去除`requirements.txt`中Pillow版本的限制。

**需求描述**:为PaddleOCR增加训练时周期性验证的开关;为PaddleOCR增加`eval_epoch_step`参数。 **需求场景**:与PaddleCV的其它基础套件PaddleSeg、PaddleDetection、PaddleClas、Paddle3D等不同,PaddleOCR不支持上述功能,这导致包括但不限于如下问题: 1. 用户有时只想要将模型训练一定的迭代轮数,并不希望在训练时进行精度评估(这可能带来额外的时间开销),而目前PaddleOCR无法优雅地满足这个需求,只能通过设定一个较大的`eval_batch_step`数值来实现。 2. 更换数据集后,由于数据集大小发生改变,用户往往也需要修改`eval_batch_step`配置,以使得eval频率合适。 3. PaddleOCR中实现的是epoch-based trainer,在配置文件中设置的也是`epoch_num`而不是`num_iters`,但`eval_batch_step`却是iters粒度的控制,存在风格不契合的问题。 **潜在解决方案**: 考虑后向兼容的解决方案: 1. 增加`do_eval`配置项,可用于关闭训练时周期性验证。默认启用验证,基本维持PaddleOCR现有行为,但希望在训练结束时,即使没有到达eval_step,也进行一次验证(因为有时候eval_step设置不合适,可能会出现指定了`do_eval`却没有验证的情况,不符合直觉)。 2. 在保留`eval_batch_step`的情况下,增加`eval_epoch_step`配置项。关于`eval_batch_step`与`eval_epoch_step`之间的关系如何,例如二者互斥或其中一个的优先级更高,我还没有想好,建议开发者从用户使用便利性的角度考虑如何设计。`eval_batch_step`应当被添加为可选功能,套件的默认行为保持不变。

你好,这是由于PaddlePaddle库没有安装好,请尝试修复或重装PaddlePaddle。 参考链接:https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/compile/linux-compile.html

你好,感谢你的反馈。这确实是一个影响开发者体验的bug。 我排查到这个问题的根因是`paddle.distributed.utils.log_utils`提供的`get_logger`函数使用的`name`参数默认为`"root"`,而该函数在被调用的时候多次使用了默认参数,这直接影响了root logger的行为。 https://github.com/PaddlePaddle/Paddle/blob/3c19d80ad6f4bf942a7e6f09e69f5fc7211f23b6/python/paddle/distributed/utils/log_utils.py#L18 一个能够立即想到的解决方案是将`name`参数的默认值修改为`"root"`以外的其他值。我们会从影响范围等角度进一步评估这一解决方案是否可行,后续进展仍在此issue回复。

我们会在近期提PR修复这个问题,请关注此issue同步的进展。

> I have python 3.9 and paddlepaddle 2.6.0 installed and still face the issue. Could someone explain what exact commit (probably in dev) fixes it? @wuhuachaocoding Can you provide the...

你好,可以在这里查看:https://github.com/PaddlePaddle/PaddleRS/blob/f62b46fd7fffc7429565c69f7ee4b0984efe64f2/paddlers/tasks/base.py#L411

我这边好像没办法复现这个问题。请问你修改了代码嘛?如果没有修改的话,请提供使用的PaddleRS版本~

看起来你用的是1.0-beta版本,`examples/rs_research`仅支持1.0正式版以上的版本,请根据文档安装~