我有一个在tensorflow上运行的CNN模型,并希望将准确性,损失,f1,精度和召回值保存为,我也有图和混淆矩阵(您可以将这些图保存为csv吗?)我想保存。如何将每个模型运行时的数据保存到CSV或文本文件?
尝试使用tf.keras.callbacks.CSVLogger
:
import tensorflow as tf
import pandas as pd
model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(1, input_dim=40))
model.add(tf.keras.layers.Dense(1, 'sigmoid'))
adam_opt = tf.keras.optimizers.Adam(0.1)
model.compile(loss='bce', optimizer=adam_opt, metrics=[tf.keras.metrics.BinaryAccuracy(name="binary_accuracy", dtype=None),
tf.keras.metrics.Recall()])
train_x = tf.random.normal((50, 40))
train_y = tf.random.uniform((50, 1), maxval=2, dtype=tf.int32)
val_x = tf.random.normal((50, 40))
val_y = tf.random.uniform((50, 1), maxval=2, dtype=tf.int32)
csv_logger = tf.keras.callbacks.CSVLogger('metrics.csv')
history = model.fit(train_x, train_y, epochs=5, validation_data=(val_x, val_y), callbacks=[csv_logger])
df = pd.read_csv('/content/metrics.csv')
print(df.to_markdown())
Epoch 1/5
2/2 [==============================] - 2s 563ms/step - loss: 0.7918 - binary_accuracy: 0.4400 - recall: 0.4583 - val_loss: 0.7283 - val_binary_accuracy: 0.4200 - val_recall: 0.4815
Epoch 2/5
2/2 [==============================] - 0s 62ms/step - loss: 0.6793 - binary_accuracy: 0.5400 - recall: 0.5417 - val_loss: 0.7093 - val_binary_accuracy: 0.4200 - val_recall: 0.2593
Epoch 3/5
2/2 [==============================] - 0s 92ms/step - loss: 0.6647 - binary_accuracy: 0.6200 - recall: 0.3750 - val_loss: 0.7138 - val_binary_accuracy: 0.4400 - val_recall: 0.2222
Epoch 4/5
2/2 [==============================] - 0s 68ms/step - loss: 0.6369 - binary_accuracy: 0.6200 - recall: 0.3750 - val_loss: 0.7340 - val_binary_accuracy: 0.4400 - val_recall: 0.3704
Epoch 5/5
2/2 [==============================] - 0s 69ms/step - loss: 0.5869 - binary_accuracy: 0.6800 - recall: 0.5417 - val_loss: 0.7975 - val_binary_accuracy: 0.4800 - val_recall: 0.4444
val_recall0 0.44 0.791773 0.42 0.728296 0.481481 < <10.54 0.67928 0.42 0.709347 0.259259 <20.62 0.375 0.44 0.713829 0.222222 <30.62 0.636919 0.375 0.44 0.734033 0.37037 4 0.68 0.586907 0.48 0.797542 0.444444 < 表>
相关内容
- 没有找到相关文章
最新更新
- 我可以在共享媒体目录DCIM或Android的下载目录下编程创建空子目录吗?
- 错误:太多的重新渲染.React限制了渲染的次数,以防止无限循环.带有嵌套函数的自定义钩子
- (Python 3.8)如何将变量转换为没有分隔符的列表?
- 解决Docker层缓存在Azure Pipeline中不工作的问题
- Jetpack compose:可以设置下拉菜单的高度,以显示下一个项目
- 如何平嵌套的可观察对象,从RXJS
- 为什么我的解决方案不正确的旅游切片练习?
- 我如何使用sbt命令,如清洁和编译在我的自定义sbtplugin
- Angular语言 - 根据给定的数据自动填充嵌套表单
- node-gyp configure将错误:在VisualStudioFinder中生成EPERM
- Spring WebClient检索封装在results属性下的json对象
- 尝试设置BlazorMonaco编辑器时"ReferenceError: monaco is not defined"
- Pandas以正确的顺序创建一个列的DataFrame
- 在clojure中,vector前面的quote是什么意思?
- 在模板前使用隐式转换
- r语言 - 为什么我的生存曲线没有显示为分层分类?
- 触发通过外部记录创建API提交脚本之前/之后
- 为什么esp8266客户端没有连接到服务器?
- react-native-map-clustering的性能问题
- 如何在Flutter中设置图像选择器中的图像的最大大小
- dotenv:命令在nestjs项目中找不到
- 测试苗条的动态部件
- urllib.error.HTTPError:HTTP错误403:禁止使用urllib.requests
- 无法写入日志目录- symfony 5
- 写JSON例如persondata的正确方法是什么?
- Django Password Expiry
- 如何使用python为XML文件中的现有文本添加XML元素
- 是可能的,如果是这样,是否有一个性能优势,结合最小的API和经典控制器?
- 如何从本地存储中删除一个多维数组的按钮点击?
- 反应.Ok总是正确的,即使是故意使用错误的国家
热门标签:
javascript python java c# php android html jquery c++ css ios sql mysql arrays asp.net json python-3.x ruby-on-rails .net sql-server django objective-c excel regex ruby linux ajax iphone xml vba spring asp.net-mvc database wordpress string postgresql wpf windows xcode bash git oracle list vb.net multithreading eclipse algorithm macos powershell visual-studio image forms numpy scala function api selenium