Каков лучший подход нейронной сети для классификации целых чисел многих классов? - PullRequest
0 голосов
/ 30 октября 2019

У меня есть набор данных (csv) с форматом, показанным ниже:

Первый столбец : случайные целые числа

Второй столбец: Класс каждого целого числа (называемого бинами)

enter image description here

Я тренирую свою нейронную сеть, используя первый столбец в качестве входных данныхи второй столбец как цель. Каждое целое число принадлежит только одному классу. У меня 3557 различных классов, поэтому 3557 выходных узлов.

Я хочу обучить нейронную сеть, чтобы предсказать класс по целому числу. Я использую простую нейронную сеть с плохой точностью в результате

classifier = Sequential()

#First Hidden Layer
classifier.add(Dense(3557, activation='relu',  input_shape=(1,)))

#Second  Hidden Layer
classifier.add(Dense(3557, activation='relu'))

#Third Hidden Layer
classifier.add(Dense(3557, activation='relu'))

#Output Layer
classifier.add(Dense(3557, activation='softmax'))

#Compiling the neural network
classifier.compile(optimizer='adam',loss='sparse_categorical_crossentropy,'metrics=['accuracy'])

#Fitting the data to the training dataset
classifier.fit(X_train,y_train, batch_size=100, epochs=10)

ПРОБЛЕМА: Для 3-4 классов это работает отлично, но для 3557 это дает низкую точность. Какую нейронную сеть вы предлагаете мне для большого количества классов или каких-либо исправлений?

...