欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【机器学习】Deep_Adaptive_Image论文学习

程序员文章站 2024-03-19 14:27:40
...

本博客记录对论文《Deep_Adaptive_Image》的学习过程,包括调通代码和论文理解,作为下一次论文分享会的储备材料。

论文下载地址:(Related Material中pdf就是paper,Supp是补充材料,也可以下来看看)
Chang_Deep_Adaptive_Image.
代码下载地址:DAC.

代码部分

运行环境

调通代码的过程中,环境是最麻烦的,在作者的github上只有(Keras 1.1.2 + Theano 0.8.2)这两个的要求,但是放在现在是不太行的,所以我这里具体记录一下调通之后的环境:

项目 版本
ubuntu 18.04.2
cuda 9.0
cudnn 7.6.2
python 3.7
keras 1.1.2
theano 1.0.2
pygpu 0.7.6

MNIST

上来首先试一下mnist的,毕竟对这个数据集最熟悉。下面是调代码的过程中,碰到一些要修改的地方
1、这里的device=gpu3,要把gpu3改成cuda

os.environ['THEANO_FLAGS']='device=gpu3,lib.cnmem=1,mode=FAST_RUN,floatX=float32,optimizer=fast_compile'

2、对于代码中有下面这三个属性的,因为keras版本问题,全都换成(img_rows, img_cols,img_channels),换成这样的顺序,否则会报错,记得换全,别漏了。

img_channels, img_rows, img_cols

3、把MNIST文件夹中的mnist.log文件换一个名字,这是作者给你的实验结果。如果你要自己跑的话,生成的文件跟这个重名,会覆盖。所以提前给它换个名字,方便后面再做对比

CIFAR10

要修改的地方第1点和上面mnist部分一样
2、对于数据集的导入要进行修改

#data
nb_classes = 10
img_channels, img_rows, img_cols = 3, 32, 32
file = h5py.File('/home/changjianlong/datasets/CIFAR10.h5')
X_train = file['X_train'][:]
y_true = file['y_train'][:]
y_true = y_true.astype('int64')
file.close()

这一部分大概在98-105行左右,要修改为

#data
nb_classes = 10
img_channels, img_rows, img_cols = 3, 32, 32
(X_train, y_train), (X_test, y_test) = cifar10.load_data()
y_true=np.array([])
for i in y_train:
    y_true=np.append(y_true,i)
# file = h5py.File('/home/changjianlong/datasets/CIFAR10.h5')
# X_train = file['X_train'][:]
# y_true = file['y_train'][:]
y_true = y_true.astype('int64')
# file.close()

论文部分

未完待续…

发现一个别人的笔记,做个标记:
https://blog.csdn.net/weyoung_/article/details/79453313