UnicodeDecodeError: 'rawunicodeescape' codec can't decode bytes in position 80-81: truncated \UXXX
来源:互联网 发布:java中linkedlist用法 编辑:程序博客网 时间:2024/05/22 00:22
一、环境
- windows 7
- python3.6(Anaconda3)
- keras 2 api
二、模型保存遇到了这个问题
保存部分代码如下:
model_name = 'ssd7_0'model.save("ssd7_0.h5")model.save_weights(r'ssd7_0_weights.h5')
然后运行就遇到了这个问题:
---------------------------------------------------------------------------UnicodeDecodeError Traceback (most recent call last)<ipython-input-31-bd7fdea3d294> in <module>() 1 model_name = 'ssd7_0'----> 2 model.save("ssd7_0.h5") 3 model.save_weights(r'ssd7_0_weights.h5') 4 5 print()D:\Software\Anaconda3\lib\site-packages\keras\engine\topology.py in save(self, filepath, overwrite, include_optimizer) 2551 """ 2552 from ..models import save_model-> 2553 save_model(self, filepath, overwrite, include_optimizer) 2554 2555 def save_weights(self, filepath, overwrite=True):D:\Software\Anaconda3\lib\site-packages\keras\models.py in save_model(model, filepath, overwrite, include_optimizer) 105 f.attrs['model_config'] = json.dumps({ 106 'class_name': model.__class__.__name__,--> 107 'config': model.get_config() 108 }, default=get_json_type).encode('utf8') 109 D:\Software\Anaconda3\lib\site-packages\keras\engine\topology.py in get_config(self) 2324 for layer in self.layers: # From the earliest layers on. 2325 layer_class_name = layer.__class__.__name__-> 2326 layer_config = layer.get_config() 2327 filtered_inbound_nodes = [] 2328 for original_node_index, node in enumerate(layer.inbound_nodes):D:\Software\Anaconda3\lib\site-packages\keras\layers\core.py in get_config(self) 657 def get_config(self): 658 if isinstance(self.function, python_types.LambdaType):--> 659 function = func_dump(self.function) 660 function_type = 'lambda' 661 else:D:\Software\Anaconda3\lib\site-packages\keras\utils\generic_utils.py in func_dump(func) 173 A tuple `(code, defaults, closure)`. 174 """--> 175 code = marshal.dumps(func.__code__).decode('raw_unicode_escape') 176 defaults = func.__defaults__ 177 if func.__closure__:UnicodeDecodeError: 'rawunicodeescape' codec can't decode bytes in position 80-81: truncated \UXXXXXXXX escape
三、解决方法
这是一个系统相关的问题,windows路径不兼容。keras的github有好几个这个错误的issue,stack overflow上也有这个问题。参考:
github issue
stack overflow
按照里面的方法修改了keras源码,然后重新启动ipython notebook,保存成功。然而代价是重新训练了一遍。。。
修改方法就是:在D:\Software\Anaconda3\Lib\site-packages\keras\utils\generic_utils.py中,修改第175行代码:
#code = marshal.dumps(func.code).decode('raw_unicode_escape')code = marshal.dumps(func.code).replace(b'\\',b'/').decode('raw_unicode_escape')
阅读全文
0 0
- UnicodeDecodeError: 'rawunicodeescape' codec can't decode bytes in position 80-81: truncated \UXXX
- python UnicodeDecodeError: 'gbk' codec can't decode bytes in position
- (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escap
- 解决PYTHON:'unicodeescape' codec can't decode bytes in position 938: truncated \uXXXX e
- 【个例】(unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated
- SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UX
- SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UX
- SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UX
- 处理UnicodeDecodeError: ‘XXX' codec can't decode bytes in position...的问题
- 处理UnicodeDecodeError: ‘XXX' codec can't decode bytes in position...的问题
- UnicodeDecodeError: 'gbk' codec can't decode bytes in position 12-13: illegal multibyte sequence
- 【Error】Python:UnicodeDecodeError: ‘XXX' codec can't decode bytes in position... 解决方法
- 处理UnicodeDecodeError: ‘XXX' codec can't decode bytes in position...的问题
- 【UnicodeDecodeError: '' codec can't decode bytes in position : illegal multibyte sequence】
- Python中UnicodeDecodeError:‘XXX’ codec can’t decode bytes in position错误信息解决办法
- UnicodeDecodeError: ‘XXX’ codec can’t decode bytes in position 2-5: illegal multibyte sequence
- 处理UnicodeDecodeError: ‘XXX' codec can't decode bytes in position...的问题
- Python中遇到"UnicodeDecodeError: ‘gbk’ codec can’t decode bytes in position 0: illegal multibyte
- linux 长连接个数限制
- Win7 U盘安装Ubuntu16.04 双系统详细教程
- bash: /usr/local/bin/rar: /lib/ld-linux.so.2: bad ELF interpreter:No such file or directory
- jQuery插件之ajaxFileUpload
- Android RxJava+Retrofit2.0+MVP的小试牛刀
- UnicodeDecodeError: 'rawunicodeescape' codec can't decode bytes in position 80-81: truncated \UXXX
- 某东机试题
- mysql查询实现插入自增列
- POJ1965 The Pilots Brothers' refrigerator(dfs,回溯,枚举)
- mongoDB自增长
- neo4j 如何删除所以的节点和关系
- ScreenFlow 如何改变播放速度
- NEU 1008 Friends number
- 【2018校招笔试-京东=java开发】题目1括号匹配方案