Keras获取网络层的信息

设km为用keras的网络,km.layers得到该网络各层组成的列表。

获取第0层 km.layers[0]

获取第0层网络的类型type(km.layers[0])

获取第0层网络的信息 km.layers[0].get_config()

获取第0层网络的权重参数(如果有的话) km.layers[0].get_weights()[0]

pytorch 载入预训练网络部分权重

首先weight_dict = torch.load(‘path_to_weight’)读取预训练网络的权重键值。

然后获取当前网络的权重键值
model_dict = model.state_dict() #model为当前定义的网络

最关键一步,根据键命名筛选出需要载入的部分权重。当前网络中要载入权重的部分,命名要与预训练网络相同
weight_dict = {k:v for k, v in weight_dict.items() if k in model_dict}

更新当前网络的键值字典
model_dict.update(weight_dict)

最后载入该键值字典到网络中
model.load_state_dict(model_dict)

Markdown基本使用

标题
# 一级标题(最大的标题)
## 二级标题

###### 六级标题(markdown支持的最低标题)

列表
列表分有序和无序列表。有序列表是前面有序号的,用数字和. 表示(注意符号和文字间要有空格)
1. 第一项
2. 第二项

无序列表是子项前面显示的为黑点而不是数字。用*(星号)+(加号)或者-(减号)表示
– 第一项
– 第二项

嵌套列表。子项要以一个制表符或者4个空格缩进
* 大类
1. A
– b

图片
![替代文字](图片url)

链接
[文字或图片](url) 如:
[我的主页](www.shijinglei.com)
制作图片链接把方括号内换成上面图片的形式即可。

字体
**加粗文本**
*斜体文本*

代码高亮
在行内标记小段代码
·code snippet ·

代码块
···代码语言(bash、java等)
代码
···
注意·为esc键下方的按键

水平分割线
***

python调用cv2.imshow出现错误The function is not implemented

错误信息为

cv2.error: OpenCV(4.2.0) C:\projects\opencv-python\opencv\modules\highgui\src\window.cpp:717: error: (-2:Unspecified error) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Cocoa support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvWaitKey'

解决方式是pip 安装 opencv-contrib-python
pip install opencv-contrib-python