Я построил модель Keras, чтобы предсказать проблему классификации с несколькими классами и несколькими метками. Набор данных состоит из объектов (десятичные значения от 0 до 1).
Цель для каждой строки в Обучающем наборе - это Метка из 6 двоичных значений в формате <1,0,0,0,1,0>.
Следовательно, модель должна иметь возможность прогнозировать эти метки, учитывая десятичный набор характеристик (который является данными теста).
Проблема в том, что я не могу использовать построенную мной модель для оценки невидимых тестовых данных (которые являются десятичными значениями набора классов объектов) с помощью моей оболочки KerasClassifier.
import numpy
import pandas
from keras.models import Sequential
from keras.layers import Dense
from keras.wrappers.scikit_learn import KerasClassifier
from keras.utils import np_utils
from sklearn.model_selection import cross_val_score
from sklearn.model_selection import KFold
from sklearn.preprocessing import LabelEncoder
from sklearn.pipeline import Pipeline
dataframe = pandas.read_csv("train.csv", header=None)
X = dataframe.iloc[:, 0:294].values
Y = dataframe.iloc[:, 294:300].values
def baseline_model():
model = Sequential()
model.add(Dense(8, input_dim = 294, kernel_initializer='normal', activation='relu'))
model.add(Dense(6, kernel_initializer='normal', activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
return model
estimator = KerasClassifier(build_fn=baseline_model, epochs=5, batch_size=5)
kfold = KFold(n_splits=10, shuffle=True, random_state=seed)
results = cross_val_score(estimator, X, Y, cv=kfold)
Может ли кто-нибудь показать, как я могу использовать построенную мной модель для прогнозирования моего набора тестовых данных (функций), и полученный прогноз должен предоставить мне результат <1,0,0,0,1,0>, который в основном в том же формате, что и мои метки данных Train.