Keras 使用自己的数据分类,并使用tensorboard记录的简单实例
来源:互联网 发布:java sdk 如何使用 编辑:程序博客网 时间:2024/06/05 02:09
Keras 使用自己的数据分类,并使用tensorboard记录的简单实例
1.使用的分类图片按照不同类别保存在不同文件夹子中,并且切分好训练集和测试集,如下图显示
注意:文件名建议使用标签名
from keras.models import Sequentialimport kerasfrom keras.preprocessing.image import ImageDataGeneratorfrom keras.layers import Dense, Dropout, Flattenfrom keras.layers import Conv2D, MaxPooling2Dfrom keras.callbacks import TensorBoardimport timeimport osimport tensorflow as tf#制定GPU,限制GPU内存os.environ["CUDA_VISIBLE_DEVICES"] = "0"from keras.backend.tensorflow_backend import set_sessionconfig = tf.ConfigProto()config.gpu_options.per_process_gpu_memory_fraction = 0.7set_session(tf.Session(config=config))BATCHSIZE = 100IMG_SIZE = (100,100)#训练集,测试集文件路径train_path = '../data/train'test_path = '../data/test's_time = time.strftime("%Y%m%d%H%M%S", time.localtime()) #时间戳#image_batch_generatortrain_datagen = ImageDataGenerator( rescale=1./255)test_datagen = ImageDataGenerator( rescale=1./255 )#训练集batch生成器train_generator = train_datagen.flow_from_directory( train_path, target_size=IMG_SIZE, batch_size=BATCHSIZE, color_mode='grayscale', classes=['original','tampered'], class_mode='categorical')#测试集batch生成器validation_generator = test_datagen.flow_from_directory( test_path, target_size=IMG_SIZE, color_mode='grayscale', batch_size=BATCHSIZE, classes=['original','tampered'], class_mode='categorical')#网络结构model = Sequential()model.add(Conv2D(16, (3, 3), activation='relu', input_shape=(IMG_SIZE[0],IMG_SIZE[1],1)))model.add(Conv2D(16, (3, 3), activation='relu'))model.add(MaxPooling2D(pool_size=(2, 2)))model.add(Dropout(0.25))model.add(Conv2D(32, (3, 3), activation='relu'))#model.add(Conv2D(64, (3, 3), activation='relu'))model.add(MaxPooling2D(pool_size=(2, 2)))model.add(Dropout(0.25))model.add(Flatten())model.add(Dense(128, activation='relu'))model.add(Dropout(0.5))model.add(Dense(2, activation='softmax'))#优化器adam = keras.optimizers.Adam(lr=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-08)model.compile(loss='binary_crossentropy', optimizer=adam, metrics=['accuracy'])#logs文件路径logs_path = 'F:/zy/logs/log_%s'%(s_time)try: os.makedirs(logs_path)except: pass#将loss ,acc, val_loss ,val_acc记录tensorboardtensorboard = TensorBoard(log_dir=logs_path, histogram_freq=1,write_graph=True,write_batch_performance=True)#模型训练model.fit_generator( train_generator, steps_per_epoch=60, epochs=50, verbose=1, validation_data=validation_generator, validation_steps=60, callbacks=[tensorboard])
阅读全文
0 0
- Keras 使用自己的数据分类,并使用tensorboard记录的简单实例
- keras下的tensorboard
- Tensorflow学习记录10--tensorboard的使用
- keras tensorboard的使用, 设置GPU使用的内存, 强制只使用cpu
- tensorboard的使用
- Tensorboard的使用
- tensorboard的使用
- tensorflow 的tensorboard使用
- 15、Tensorboard 的使用
- keras tensorboard的使用, 设置指定GPU及其内存, 强制只使用cpu
- Keras(2):使用Keras构建神经网络进行Mnist手写字体分类,并定性分析各种超参数的影响
- 简单的Tensorflow(7):tensorboard的简单使用
- tensorboard使用记录
- Tensorboard简单使用
- Tensorflow可视化----Tensorboard的使用
- win10下tensorboard的使用
- Tensorflow 04: tensorboard的使用
- Win7下TensorBoard的使用
- 升级AndroidStudio3.0 Unable to resolve dependency for ':app@betaUnitTest/compileClasspath': Could not
- Android Greendao+多线程断点续传
- myeclipse的DEBUG模式下查找request的parameter值
- mongodb查询不区分大小写 java代码和查询命令
- IDA真机调试环境搭建及原理
- Keras 使用自己的数据分类,并使用tensorboard记录的简单实例
- H5地理定位
- mac下pycharm常用快捷键
- axis1-myeclipse/eclipse-入门级别-资源、流程、常见问题
- ubuntu下json-c安装
- php json_encode 空白不起作用
- eclipse创建maven项目时,添加src/main/java会提示 The folder is already a source folder.解决方法
- Python环境下,返回脚本所在的位置
- 点击按钮,实现60秒倒计时效果(发送手机验证码)