網(wǎng)站首頁(yè) 編程語(yǔ)言 正文
Tensorboard詳解
該類(lèi)在存放在keras.callbacks模塊中。擁有許多參數(shù),主要的參數(shù)如下:
1、log_dir: 用來(lái)保存Tensorboard的日志文件等內(nèi)容的位置
2、histogram_freq: 對(duì)于模型中各個(gè)層計(jì)算激活值和模型權(quán)重直方圖的頻率。
3、write_graph: 是否在 TensorBoard 中可視化圖像。
4、write_grads: 是否在 TensorBoard 中可視化梯度值直方圖。
5、batch_size: 用以直方圖計(jì)算的傳入神經(jīng)元網(wǎng)絡(luò)輸入批的大小。
6、write_images: 是否在 TensorBoard中將模型權(quán)重以圖片可視化。
7、update_freq: 常用的三個(gè)值為’batch’ 、 ‘epoch’ 或 整數(shù)。當(dāng)使用 ‘batch’ 時(shí),在每個(gè) batch 之后將損失和評(píng)估值寫(xiě)入到 TensorBoard 中。 ‘epoch’ 類(lèi)似。如果使用整數(shù),會(huì)在每一定個(gè)樣本之后將損失和評(píng)估值寫(xiě)入到 TensorBoard 中。
默認(rèn)值如下:
log_dir='./logs', # 默認(rèn)保存在當(dāng)前文件夾下的logs文件夾之下
histogram_freq=0,
batch_size=32,
write_graph=True, #默認(rèn)是True,默認(rèn)是顯示graph的。
write_grads=False,
write_images=False,
update_freq='epoch'
使用例子
以手寫(xiě)體為例子,我們打開(kāi)histogram_freq和write_grads,也就是在Tensorboard中保存權(quán)值直方圖和梯度直方圖。
打開(kāi)CMD,利用tensorboard --logdir=logs生成tensorboard觀測(cè)網(wǎng)頁(yè)。
1、loss和acc
2、權(quán)值直方圖
3、梯度直方圖
實(shí)現(xiàn)代碼
import numpy as np
from keras.layers import Input, Dense, Dropout, Activation,Conv2D,MaxPool2D,Flatten
from keras.datasets import mnist
from keras.models import Model
from keras.utils import to_categorical
from keras.callbacks import TensorBoard
if __name__=="__main__":
(x_train,y_train),(x_test,y_test) = mnist.load_data()
x_train=np.expand_dims(x_train,axis=-1)
x_test=np.expand_dims(x_test,axis=-1)
y_train=to_categorical(y_train,num_classes=10)
y_test=to_categorical(y_test,num_classes=10)
batch_size=128
epochs=10
inputs = Input([28,28,1])
x = Conv2D(32, (5,5), activation='relu')(inputs)
x = Conv2D(64, (5,5), activation='relu')(x)
x = MaxPool2D(pool_size=(2,2))(x)
x = Flatten()(x)
x = Dense(128, activation='relu')(x)
x = Dropout(0.5)(x)
x = Dense(10, activation='softmax')(x)
model = Model(inputs,x)
model.compile(loss='categorical_crossentropy', optimizer="adam",metrics=['acc'])
Tensorboard= TensorBoard(log_dir="./model", histogram_freq=1,write_grads=True)
history=model.fit(x_train, y_train, batch_size=batch_size, epochs=epochs, shuffle=True, validation_split=0.2,callbacks=[Tensorboard])
原文鏈接:https://blog.csdn.net/weixin_44791964/article/details/105002793
相關(guān)推薦
- 2022-05-25 flutter實(shí)現(xiàn)底部導(dǎo)航欄_Android
- 2022-07-26 Python文件處理、os模塊、glob模塊_python
- 2022-04-06 聊聊c++數(shù)組名稱(chēng)和sizeof的問(wèn)題_C 語(yǔ)言
- 2022-09-03 C#中DataSet、DataTable、DataRow數(shù)據(jù)的復(fù)制方法_C#教程
- 2022-07-02 Python?matplotlib繪圖時(shí)使用鼠標(biāo)滾輪放大/縮小圖像_python
- 2022-11-18 Oracle移動(dòng)數(shù)據(jù)文件不停機(jī)和停機(jī)兩種方式詳解_oracle
- 2022-11-01 Android串口通訊SerialPort的使用詳情_(kāi)Android
- 2023-01-21 flask中響應(yīng)錯(cuò)誤的處理及errorhandler的應(yīng)用方式_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過(guò)濾器
- Spring Security概述快速入門(mén)
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡(jiǎn)單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支