step2说明
这第二步绝对是整个网络的核心了,重点就是卷积层的构造,老师上课讲了好几节课的CNN,奈何我压根就没去上课,去的时候都开始讲RNN和GAN了,哎。。。
所以下文还是秉承了博主一贯的风格,简单粗暴,我能保证你弄出来,至于原理,写完这篇我就要去好好学习了,推荐B站《Tensorflow 搭建自己的神经网络 (莫烦 Python 教程)》
天下文章一大抄,我的具体做法是,先在网上扒几个成熟的CNN,然后把他们捏在一块!最后测试,成了,别问我原理,我说了,是硬捏(当然也不是瞎改,不然根本就跑不起来,你卷积和池化之后数量起码要对的上)!
常见问题
路径问题
对于代码中的路径,博主要说明,其实完全不用写全路径,因为读取文件的时候会自动记载一个上层路径,但是我之前完全不知道啊,卡了很久,总感觉无从下手,下文的代码用的是全路径,大家看起来也直观一些。
训练参数问题
dropout=0.5 用来减轻过拟合的
batch_size = 20 batch是个啥?epoch是个啥?点这
train_num = 193
test_num = 20 网上的都是test_num=13,但是batch_size=20,跑test没值
epoch = 100
测试代码
网上的代码都是只有训练的没有测试的,一气之下自己写!
废话不多说,直接上代码,跟上一篇一样,改改路径直接就能跑。
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import tensorflow as tf
emotion ={0:'Angry',1:'Disgust',2:'Fear',3:'Happy',4:'Sad',5:'Surprise',6:'Neutral'}
data = pd.read_csv("C:\\Users\\Administrator\\Desktop\\recognize\\face.csv", dtype='a')
label