微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

类为数字时的 1-hot 编码

如何解决类为数字时的 1-hot 编码

我在分类是数字时遇到了一个小问题。我有 4 个班级:0 - 200 - 250 - 300。

我使用它作为优化器:

model.compile(optimizer= tf.keras.optimizers.SGD(),loss     = tf.keras.losses.SparseCategoricalCrossentropy(),metrics  = ['accuracy'])

这是最后一层:

model.add(tf.keras.layers.Dense(301,activation='softmax'))

有没有办法把最后一层转换成:

model.add(tf.keras.layers.Dense(4,activation='softmax'))

不改变类名,如果可能的话使用 1-hot 编码?

提前致谢

编辑:完整模型在这里

model = tf.keras.models.Sequential()
model.add(tf.keras.layers.Flatten(input_shape=(n_size,n_features))) 
model.add(tf.keras.layers.Dense(64,activation='relu'))
model.add(tf.keras.layers.Dense(32,activation='relu'))
model.add(tf.keras.layers.Dense(301,activation='softmax'))
model.compile(optimizer= tf.keras.optimizers.SGD(),metrics  = ['accuracy'])

但这只是一个模型的草稿,我正在尝试在升级模型之前先解决该问题

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。