从 LSTM 到 Sklearn 模型的特征提取

Posted

技术标签:

【中文标题】从 LSTM 到 Sklearn 模型的特征提取【英文标题】:Feature extraction from LSTM to Sklearn models 【发布时间】:2020-11-12 02:07:56 【问题描述】:

我有一个 LSTM 模型,我想从这个 LSTM 中提取特征以将其发送到随机森林或 Sklearn 上的逻辑回归。

model = tf.keras.Sequential()
inputs = tf.keras.Input(shape=(t+1, n_features))
x=tf.keras.layers.LSTM(128, dropout=0.1, return_sequences=True)(inputs)
x1=tf.keras.layers.LSTM(128, dropout=0.1, return_sequences=False)(x)
o=tf.keras.layers.Dense(3,activation='softmax')(x1)
model = tf.keras.Model(inputs = inputs, outputs = o)

所以我想使用 x1 作为我的随机森林的输入。 有什么想法吗?

谢谢:)

【问题讨论】:

【参考方案1】:

只需创建一个具有所需输入/输出张量的模型。例如:

feat_extractor = tf.keras.Model(inputs=inputs, outputs=x1)

# Then, assuming X is a batch of input patterns:

feats = feat_extractor.predict(X)

【讨论】:

以上是关于从 LSTM 到 Sklearn 模型的特征提取的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Sklearn 管道中提取特征重要性

从 CNN(Xception 模型)中提取特征,我得到 IsADirectoryError?

从 Sklearn 管道中提取具有特征名称的特征重要性

sklearn如何使用保存的模型来预测新数据

Scikit Learn 从管道内的 FeatureUnion 中提取特征名称

机器学习基础一文带你用sklearn做特征工程