python - Tensorflow 2.0 - 我可以使用 `tf.keras` 从 Boosted Tree 模型中获取类概率吗?
问题描述
我正在研究 Tensorflow 2.0 中的二元分类模型。我有几种不同类型的模型,但我正在考虑使用 Boosted Tree 模型进行分类。但是,我需要我的模型来输出类概率。所以基本上输出为 0 或 1 的概率,基于树。在这种情况下,通常可能是逻辑回归,但在这种情况下,我想尝试一种基于树的方法。
我知道我可以使用tf.Estimators
api 在 Tensorflow 2.0 中使用增强树模型,但是为了获得类概率,我通常需要一个tf.keras
带有 sigmoid 激活的最终 Dense 层。所以理论上我想要下面的代码。下面的代码不起作用,但本质上是伪代码,因为我不相信Keras
模型不适用于tf.Estimators
,但这是我想做的。
import tensorflow as tf
from tensorflow import keras
model = keras.Sequential([
tf.estimator.BoostedTreesClassifier(feature_columns, **params), # <-- HOW TO DO THIS?
keras.layers.Dense(1, activation='sigmoid',
bias_initializer=output_bias),
])
有谁知道如何在 Tensorflow 2.0 中做到这一点?
解决方案
推荐阅读
- hadoop - Hadoop 调度程序与 oozie
- python - Tkinter - 在一个类中使用 Button 命令从另一个类调用函数
- c++ - 使用模板方法为标头提供空 cpp 的问题
- webpack - 为什么 Webpack 中没有设置环境
- spring-mvc - Spring Boot 2 的侵入性 AsyncRequestTimeoutException
- python - 在 python 中使用 mplayer 从 websoket 播放音频延迟 4 到 5 秒
- python - 使用 cv2 时关闭 Python 文件
- swift - 将 csv 文件从 Apple Watch 发送到手机 - 没有任何反应
- android - 片段中的线程只调用一次
- javascript - JS Contenteditable 下划线不起作用