keras - 如何使用使用特征层的训练模型进行预测?
问题描述
我有一个训练有素的模型,它使用特征层作为输入。我对模型在验证集和测试集上的训练和性能感到满意。
但是现在,我想手动创建一个新示例以发送到模型并从中获得预测。
我的代码如下所示:
...
categorical_columns = []
numeric_columns = []
# numeric cols
for header in ['CreditScore', 'Age', 'Tenure', 'Balance', 'NumOfProducts', 'HasCrCard','IsActiveMember','EstimatedSalary']:
numeric_columns.append(feature_column.numeric_column(header))
# categorical cols
categories = {
'Geography':['France', 'Spain', 'Germany'],
'Gender': ['Female', 'Male']
}
for header, possible_values in categories.items():
cat_col = tf.feature_column.categorical_column_with_vocabulary_list(key=header, vocabulary_list=possible_values)
categorical_columns.append(tf.feature_column.indicator_column(cat_col))
feature_columns = numeric_columns + categorical_columns
feature_layer = tf.keras.layers.DenseFeatures(feature_columns)
model = tf.keras.Sequential([
feature_layer,
layers.Dense(6, activation='relu'),
layers.Dense(6, activation='relu'),
layers.Dense(1, activation='sigmoid')
])
model.compile(optimizer='adam',
loss='binary_crossentropy',
metrics=['accuracy'],
run_eagerly=True)
history = model.fit(x=train_ds, validation_data=val_ds, epochs=4)
不用担心这个问题的特征缩放,我如何将这些数据发送到模型并从中获得预测?我应该使用什么语法?
- 信用评分:358
- 年龄:42
- 任期:5
- 余额:4000
- 产品数量:5
- HasCrCard 1:
- 活跃成员:1
- 预计薪资:50000
- 地理:法国
- 性别:男
谢谢您的帮助。
解决方案
推荐阅读
- ruby-on-rails - 访问散列中的值
- git - 带有额外支持分支的 Gitflow
- python - 使用 requests 和 BeautifulSoup 获取 Youtube 视频标题有时会出错,有时会起作用(Python)
- vespa - 我们可以在 vespa.ai 中做出多少个最大搜索定义?
- asp.net-core - 如何从 url 中删除或隐藏端口号?
- python - PyQt widget refresh behavior different when clicking button with mouse or keyboard
- flutter - 列表视图按日期分组 Dart
- python - 从概率的输出数组中获取预测类别
- haskell - Haskell Identity 镜头
- python - 在 python 中读取 TDMS 文件的元数据