
项目过程
minopus
本质上是一条懒狗
展开
-
分类任务8(番外)——参数的设置
这部分就把我用的参数放上来吧"""# 参数统一设置在这里"""drop_rate = 0.5num_class = 5resize_width = resize_height = 224batch_size = 80learning_rate = 0.01decay_step = 10decay_rate = 0.8iteration = 100原创 2020-05-21 10:18:42 · 196 阅读 · 0 评论 -
分类任务7(完结)——载入模型并使用测试集进行测试
在这里值得一提的是,因为前面制作数据的时候使用了tf.one_hot,这个格式将数字标签变成one_hot索引,因此在最后获取真实标签的时候,应该用argmax函数。我在实验的时候发现如果直接对test_label使用tf.argmax,耗费的时间太大。后面导出找博客论坛,看到有人建议用np.argmax,我就把test_label先tolist保存,然后再在列表里用for循环承接np.argmax,速度一下子就提了上去。ps: seaborn画混淆矩阵真的太方便了!!!代码直接贴上来了:from u原创 2020-05-21 10:15:57 · 1974 阅读 · 2 评论 -
分类任务6——将前面的综合成训练,验证模块
直接上代码了:from using_dataset_to_read_the_tfrecord4 import *from AlexNet_5 import *import matplotlib.pyplot as pltfrom set_config0 import *import numpy as npfrom tqdm import tqdmdef main(): train_file_name = 'E:/111project/tfrecord/test.tfrecords原创 2020-05-16 11:34:34 · 269 阅读 · 1 评论 -
分类任务5——AlexNet模型
在定义网络层的时候,如果要通过tf.get_variable()来用进行参数的xavier初始化tf.contrib.layers.xavier_initializer(),那么在前面应该使用tf.variable_scope而不是tf.name_scope()。这是因为name_scope和get_variable之间会存在参数复用的问题,会报错。完整代码如下:"""# AlexNet模型"""import tensorflow as tf'''获取tensor信息'''def原创 2020-05-16 11:31:44 · 448 阅读 · 0 评论 -
分类任务4——用dataset读取tfrecord
用plt来显示读取是否成功。它又来了import tensorflow as tfimport matplotlib.pyplot as plt# 定义可以一次获得多张图像的函数def show_image(image_dir): plt.imshow(image_dir) plt.axis('on') plt.show()# 单个record的解析函数def decode_example(example): dics={ 'image_原创 2020-05-11 11:17:02 · 394 阅读 · 0 评论 -
分类任务3——把弄好的数据制作成tfrecord
既然都用了tensorflow,那干脆数据文件也弄成这个格式算了。(我绝对不会说是因为直接读取图像太慢了)没错又是这个import tensorflow as tfimport osfrom PIL import Imageimport randomdef _int64_feature(label): return tf.train.Feature(int64_list=tf.train.Int64List(value=[label]))def _bytes_feature(原创 2020-05-11 11:14:04 · 192 阅读 · 0 评论 -
分类任务2——把文件夹里的图像信息以及图像标签写进txt
这个博主真的是福音print()真的是个好东西,有看不懂的地方就print一下,看输出的结果是什么。我把我看不懂的地方都加上了注释,自我感觉注释应该够了。import osimport os.pathfrom tqdm import tqdm# 这个tqdm要不要其实都可以了,因为只是将信息写入txt,也就百来K,很快。def get_files_list(dir): """ 实现遍历dir目录下,所有文件(包含子文件夹的文件) :param dir:指定文件夹目录原创 2020-05-11 11:09:09 · 634 阅读 · 0 评论 -
分类任务1——将原始图像集分成训练,验证以及测试三个部分
在做分类任务的时候,常常要准备数据集。在准备好之后又要将它分成训练验证和测试三个部分。但是如果手动分的话,反复的复制粘贴属实有点烦人。参考借鉴了 链接看过来 并作出了适合我自己的修改,把它在这里贴出来,希望可以帮助其他小白成长。注释什么的可以看我上面给出的链接代码里我加了tqdm来看进度,这个玩意属实是个好东西。代码里我加了tqdm来看进度,这个玩意属实是个好东西。代码里我加了tqdm来看进度,这个玩意属实是个好东西。import osimport randomfrom shutil import原创 2020-05-11 11:01:47 · 1248 阅读 · 0 评论