Skip to content

训练时报错 #5

Description

@yahuuu

当我运行ValueError: dimension mismatch.py尝试训练时遇到
Traceback (most recent call last):
File "C:/work/py/78stars_SpamMessage-master/token_and_save_to_file.py", line 38, in
data = Pool().map(jieba.lcut, data)
File "C:\Users\yah\Anaconda3\lib\multiprocessing\pool.py", line 268, in map
return self._map_async(func, iterable, mapstar, chunksize).get()
File "C:\Users\yah\Anaconda3\lib\multiprocessing\pool.py", line 657, in get
raise self._value
File "C:\Users\yah\Anaconda3\lib\multiprocessing\pool.py", line 431, in _handle_tasks
put(task)
File "C:\Users\yah\Anaconda3\lib\multiprocessing\connection.py", line 206, in send
self._send_bytes(_ForkingPickler.dumps(obj))
File "C:\Users\yah\Anaconda3\lib\multiprocessing\reduction.py", line 51, in dumps
cls(buf, protocol).dump(obj)
TypeError: can't pickle _thread.RLock objects报错。
分析应该是这句代码问题data = Pool().map(jieba.lcut, data)

为解决这个问题,当我替换为:
data = [d for d in map(jieba.cut, data)]
在运行test.py时候ValueError: dimension mismatch。多线程那里有什么问题,如果替换为单线程怎么写?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions