文章目录
前言
本篇博客用于记录一些日常学习中看过的、简单的关于深度学习的一些知识,方便自己以后查阅
RNN、LSTM、MLP、Embedded资料整合
RNN与LSTM
MLP多层感知机(人工神经网络)原理及代码实现
词向量与Embedding究竟是怎么回事?
Basic RNN、LSTM的前向传播和反向传播详细解析
自动机器学习:最近进展研究综述(2019年)
异常
ImportError: libcublas.so.9.0: cannot open shared object file: No such file
tensroflow-gpu版本依赖于cuda,第二次遇到这个问题,在此简单记录下
方法一
确保自己安装了对应版本的cuda,运行下列命令
sudo vim ~/.bashrc
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda
source ~/.bashrc
方法二
若自己使用conda搭建的虚拟环境,运行命令
conda install cudatoolkit=9.0 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64/
cudatoolkit参数指定自己所需版本,我的是9.0
FileNotFoundError: [Errno 2] No such file or directory: ‘/home/caidaohuaiyirensheng/.keras/datasets/cifar-10-batches-py/data_batch_1’
在keras下载数据集的过程中提前终止了程序,将对应目录的所有数据集相关的目录全部删了重新下载即可
keras导入cifar数据集过慢的方式
keras使用杂记
mac如何利用keras对模型可视化
1、安装homebrew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2、安装graphviz
sudo chown -R `whoami`:admin /usr/local/bin
sudo chown -R `whoami`:admin /usr/local/share
brew install graphviz
brew link --overwrite graphviz
3、安装pydot
pip3.6 install pydot
4、使用
from keras.utils import plot_model
plot_model(model, to_file='model.png',show_shapes=True)
keras如何显示模型的所有层信息
model.summary()
keras如何显示所有层的具体信息
举个例子,卷积层的具体信息包括步伐数、过滤器个数等
model.get_config()
keras如何显示某一层的具体信息
假设某一层的名字存储在变量name中,则有
model.get_layer(name).get_config()
卷积过后特征图的大小
设输入图像尺寸为WxH,卷积核的尺寸为FxF,步幅为S,图像深度(通道数)为C,Padding使用P,则卷积后输出图像大小:
W
=
W
−
F
+
2
P
S
+
1
H
=
H
−
F
+
2
P
S
+
1
\begin{aligned} W=\frac{W-F+2P}{S}+1\\ H=\frac{H-F+2P}{S}+1 \end{aligned}
W=SW−F+2P+1H=SH−F+2P+1
池化后特征图的大小
设输入图像尺寸为WxH,其中W:图像宽,H:图像高,D:图像深度(通道数),卷积核的尺寸为FxF,S:步长,则池化后输出图像大小:
W
=
W
−
F
S
+
1
H
=
H
−
F
S
+
1
\begin{aligned} W=\frac{W-F}{S}+1\\ H=\frac{H-F}{S}+1 \end{aligned}
W=SW−F+1H=SH−F+1
命令行指定使用的显卡号
CUDA_VISIBLE_DEVICES=0 nohup python -u aging_evolution.py&
CUDA_VISIBLE_DEVICES参数指定显卡号
Linux如何查看显卡使用量
使用命令gpustat(需pip install gpustat)或nvidia-smi
NAS中的surrogate-based与early stop
surrogate-based:基于代理,我的理解是,让一个模型选出最有可能表现优异的网络进行训练,往往不需要模型的部分学习曲线(就是前几个epoch的准确率)。
early stop:早停,不是机器学习中的早停概念,简单来说,就是依据模型当前的训练情况(前几个epoch的测试准确率),判断模型是不是一个良好的模型,决定是不是要停止训练,从而减少运行时间。
Kendall Rank(肯德尔等级)相关系数
统计相关系数——Kendall Rank(肯德尔等级)相关系数
统计相关系数(3)——Kendall Rank(肯德尔等级)相关系数及MATLAB实现
Kendall Rank(肯德尔等级)相关系数可以用来衡量两个序列的相似性,这个相似性,我的理解是,增长下降趋势是否相似,例如A序列在某个阶段是下降的,B序列在同个阶段也是下降的,那么就说下降趋势一致。
Zero-shot 、One-shot 、 Few-shot Learning
Zero-shot 、One-shot 、 Few-shot Learning简介
JS散度
ROC曲线、AUC值
pip超时
pip --default-timeout=100 install pytorch -i -i https://pypi.tuna.tsinghua.edu.cn/simple