tensorflow - Tensorflow:如何处理预处理。归一化返回 NaN
问题描述
我正在构建一个 keras 模型并尝试使用来自https://www.tensorflow.org/api_docs/python/tf/keras/layers/experimental/preprocessing/Normalization的 tf.keras.layers.experimental.preprocessing.Normalization进行标准化输入训练数据如下:
normalize = preprocessing.Normalization()
normalize.adapt(trainX)
model = Sequential([
normalize,
Dense(dim + 1, input_dim=dim, activation="relu"),
Dense(dim / 2, activation="relu"),
])
目标是在保存的模型中保存规范化。我遇到的问题normalize(trainX)
是将一些输入归一化,nan
因为很可能是方差中的零除。例如一行输出:[ 0.00000000e+00, nan, 9.40457404e-01, 9.40672755e-01, 9.40672755e-01, 9.40672755e-01, 9.40672755e-01, nan, nan, nan, nan, nan]
有没有办法处理零除法,preprocessing.Normalization()
或者我应该考虑另一种标准化的方法,我可以在模型中保存?
解决方案
推荐阅读
- cordova - 将 cordova 版本从 8.xx 升级到 9.0.0 后,cordova 构建失败
- c# - 在 C# 中将双精度值从 json 转换为 DateTime
- algorithm - 使用“模”的奇偶校验
- python - 在 django 的特定页面上加载 css 的问题
- powershell - 如何防止 System.Boolean 的无效转换?
- c# - DataTable 迭代给出了不需要的数据
- pandas - 如何使用 np.where 进行日期偏移
- pandas - Pandas 日期索引:选择每个月的第一个元素
- php - 将数组从 HTML 表单插入 MYSQL 数据库
- javascript - 如何使用 docx4js 解析来自 microsoft word 的粘贴数据