Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PySequence_Check(seq_) 检测失败问题 #3139

Closed
Damon-wyg opened this issue Aug 1, 2017 · 4 comments
Closed

PySequence_Check(seq_) 检测失败问题 #3139

Damon-wyg opened this issue Aug 1, 2017 · 4 comments
Labels
User 用于标记用户问题

Comments

@Damon-wyg
Copy link

Damon-wyg commented Aug 1, 2017

Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg
F0801 17:12:41.648218 24026 PythonUtil.h:197] Check failed: PySequence_Check(seq_)
被这个PySequence_Check困扰很久了,问题情况是,完全一样的配置在本地跑没有任何问题,但是放到mpi集群跑,有时候就会挂,报检测失败的问题。
最头痛的是,这并不是每次都可以复现,像是随机的。
我的数据输出格式是一个字典:比如{‘input1‘:[],’input2’:[], 'label':0} (其中label是integer,所以不是sequence)
另外一个情况是,在使用dropout或l1/l2正则系数的时候,这种问题出现就更频繁了
查看代码和之前的issue,也并没有得到实质性的解决,请帮忙解释这个检测的原理,及出现随机现象的原因,谢谢

ps:在集群上paddle因为这种原因挂了的任务,也不会自己kill,而且还占用资源,这个是不是也可以优化下

@reyoung
Copy link
Collaborator

reyoung commented Aug 1, 2017

应该还是某几条数据错误。

可以配置跳过错误的数据

@provider(
    check=True,
    check_fail_continue=True,
)
....

可以参考单测:
https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/gserver/tests/test_PyDataProvider2.py#L102

@Damon-wyg
Copy link
Author

Damon-wyg commented Aug 1, 2017

可以配置跳过错误的数据


这个是说对data_provide的函数配置跳过错误数据么?我的用的paddle v1 @reyoung

几个疑问:
这个检测的原理是什么呢?是会从训练数据里随机抽一些样本下来check,还是说mock了一些数据来跑data_provider,然后对data_provider的结果做检测?
另一个疑点是,本地单机跑的时候,从来没有出现过这个问题,难道单机版的不作check?

@reyoung
Copy link
Collaborator

reyoung commented Aug 2, 2017

PySequence_Check(seq_)报错是因为Paddle读入数据的时候,用户给的数据类型和Paddle期待的数据类型不匹配。即您给Paddle的数据中应该有几项是非法的数据。

如果不想查出来哪几项数据是错的,可以使用如上配置将错误数据跳过。

@guoshengCS guoshengCS added the User 用于标记用户问题 label Aug 2, 2017
@lcy-seso
Copy link
Contributor

I close this issue due to inactivity. please feel free to reopen it if more information is available.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
User 用于标记用户问题
Projects
None yet
Development

No branches or pull requests

4 participants