lxkeepcoding 2024-04-04 13:48 采纳率: 50%
浏览 4

joblib编码问题

使用joblib报错是这样的要怎么解决哇

D:\anaconda\python.exe C:/luxin/hate/demo/08-joblib.py
Traceback (most recent call last):
  File "C:\luxin\hate\demo\08-joblib.py", line 38, in <module>
    test()
  File "C:\luxin\hate\demo\08-joblib.py", line 34, in test
    parallel(tasks)
  File "D:\anaconda\lib\site-packages\joblib\parallel.py", line 968, in __call__
    n_jobs = self._initialize_backend()
  File "D:\anaconda\lib\site-packages\joblib\parallel.py", line 735, in _initialize_backend
    n_jobs = self._backend.configure(n_jobs=self.n_jobs, parallel=self,
  File "D:\anaconda\lib\site-packages\joblib\_parallel_backends.py", line 494, in configure
    self._workers = get_memmapping_executor(
  File "D:\anaconda\lib\site-packages\joblib\executor.py", line 20, in get_memmapping_executor
    return MemmappingExecutor.get_memmapping_executor(n_jobs, **kwargs)
  File "D:\anaconda\lib\site-packages\joblib\executor.py", line 42, in get_memmapping_executor
    manager = TemporaryResourcesManager(temp_folder)
  File "D:\anaconda\lib\site-packages\joblib\_memmapping_reducer.py", line 531, in __init__
    self.set_current_context(context_id)
  File "D:\anaconda\lib\site-packages\joblib\_memmapping_reducer.py", line 535, in set_current_context
    self.register_new_context(context_id)
  File "D:\anaconda\lib\site-packages\joblib\_memmapping_reducer.py", line 560, in register_new_context
    self.register_folder_finalizer(new_folder_path, context_id)
  File "D:\anaconda\lib\site-packages\joblib\_memmapping_reducer.py", line 590, in register_folder_finalizer
    resource_tracker.register(pool_subfolder, "folder")
  File "D:\anaconda\lib\site-packages\joblib\externals\loky\backend\resource_tracker.py", line 191, in register
    self._send('REGISTER', name, rtype)
  File "D:\anaconda\lib\site-packages\joblib\externals\loky\backend\resource_tracker.py", line 204, in _send
    msg = '{0}:{1}:{2}\n'.format(cmd, name, rtype).encode('ascii')
UnicodeEncodeError: 'ascii' codec can't encode characters in position 18-19: ordinal not in range(128)



  • 写回答

4条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-04 13:48
    关注

    引自免费微信小程序:皆我百晓生

    非常感谢您向我咨询这个问题。我已经详细了解了您的问题,并尝试为您寻找解决方案。

    在使用joblib库时,我们需要注意的是,它的文件路径可能会因为环境变量或者其他因素而改变。如果您使用的环境变量可能与joblib的工作目录不同,那么您需要确保工作目录中的joblib文件也处于同一目录下。同时,由于Python脚本是在命令行环境中运行的,因此您还需要检查命令行参数是否正确,比如参数的大小写等。

    此外,我也发现了一个关于如何配置缓存区的问题。在Joblib中,我们可以通过设置memory.cache_dir参数来指定缓存区的位置。例如,您可以将这个参数设置为'/path/to/cache/',这样 Joblib 就会使用这个位置下的缓存区。如果 memory.cache_dir 没有被设置,那么 Joblib 将默认使用本地存储区。

    还有一个问题与Joblib的序列化有关。序列化是将 Python 对象转换成 JSON 或 XML 格式的格式的过程。然而,在遇到字符串拼接不完整的情况时,Python 可能不会正确地生成字符串,导致出现序列化错误。为了解决这个问题,您可以使用 json.dumps() 函数将 Python 对象转换成 JSON 格式,然后用 str() 函数将其转换回字符串。例如,下面的代码将创建一个包含整数、浮点数和字符串的对象,并使用这些对象进行序列化和反序列化操作:

    import joblib
    
    # 创建一个包含整数、浮点数和字符串的对象
    data = {
        'int': 123.456,
        'float': 3.14159,
        'str': 'hello'
    }
    
    # 使用 json.dumps() 将数据转换成 JSON 格式
    json_data = json.dumps(data)
    
    # 使用 str() 将 JSON 数据转换回字符串
    reversed_json_data = str(json_data[::-1])
    
    print(reversed_json_data)  # 输出:'hello'
    

    以上就是我对 joblib 库的一些解答。希望对您有所帮助。如果还有其他问题,请随时告诉我,我会尽力为您提供支持。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月4日

悬赏问题

  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP