【问题标题】:How to reverse one-hot encoding in Python? [closed]如何在 Python 中反转 one-hot 编码? [关闭]
【发布时间】:2021-07-26 11:05:55
【问题描述】:

我目前正在创建一个 CNN,该网络的主要任务是将输入信息分类为不同的类别。这些类是预测频率的精确值。

这是我到目前为止所构建的:

def evaluate_model(X_train, Y_train, X_test, Y_test,n_filters):
    verbose, epochs, batch_size = 1, 10, 3
    n_timesteps, n_features = X_train.shape[1], X_train.shape[2]
    model = Sequential()
    model.add(Conv1D(filters=n_filters, kernel_size=8, activation='relu', input_shape=(n_timesteps,n_features)))
    model.add(Conv1D(filters=n_filters, kernel_size=8, activation='relu'))
    model.add(Dropout(0.5))
    model.add(MaxPooling1D(pool_size=2))
    model.add(Flatten())
    model.add(Dense(100, activation='relu'))
    model.add(Dense(50, activation='softmax'))
    model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
    print(model.summary())
    # fit network
    history=model.fit(X_train, Y_train, epochs=epochs, batch_size=batch_size, verbose=verbose)
    # evaluate model
    _, accuracy = model.evaluate(X_test, Y_test, batch_size=batch_size, verbose=1) 
    return accuracy, model

predict=model.predict(amplitude_t)
print(predict)

我正在尝试预测我创建的一些新信号的值,这些信号非常有效。虽然我的输出是概率输出,但我想将其转换回实际的频率值。有没有办法做到这一点?

【问题讨论】:

标签: python machine-learning scikit-learn one-hot-encoding


【解决方案1】:

这是你需要做的:

predicted_labels = np.argmax(predict, 0)

如需进一步说明,请参阅此答案:

https://stackoverflow.com/a/52361283/7185112

【讨论】:

    猜你喜欢
    • 2016-11-15
    • 2023-01-16
    • 2020-10-08
    • 1970-01-01
    • 2020-12-13
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    • 2017-10-24
    相关资源
    最近更新 更多