最近在做LDA模型训练时,当扩大主题数量时,并同时使用了多核心一起训练数据,遇到了这样的错误:

struct.error: 'l' format requires -2147483648 <= number <= 2147483647

 

经过查找资料,最终找到了解决办法,需要替换Python3内置的多线程multiprocessing的部分代码,(PS:建议备份源代码)

 

使用此链接中的代码替换:

https://github.com/ahcub/cpython/blob/48580cf159a4a311b76be6a5b95b08002a577815/Lib/multiprocessing/connection.py

 

参考链接:

https://github.com/python/cpython/pull/10305/files/48580cf159a4a311b76be6a5b95b08002a577815#diff-c5770948f4fd3ebd154ea6f013f59422

https://github.com/python/cpython/pull/10305

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐