ValueError: Ошибка при проверке цели: ожидается, что плотность_4 будет иметь форму (4,), но получен массив с формой (1,) - PullRequest
2 голосов
/ 11 марта 2019

Я попробовал эту модель ("https://github.com/LZQthePlane/Online-Realtime-Action-Recognition-based-on-OpenPose") для своего собственного набора данных (я дал сидячее видео и преобразовал в CSV-файл).CSV-файл содержит 1000 записей.Теперь в action_enum.py у меня есть только sit действие.В файле train.py я изменил

encoder_Y = [0]*744 + [1]*722 + [2]*815 + [3]*1008

на encoder_Y = [0]*1000 (только для сидячих действий).После изменения в файле train.py я получил эту ошибку.

enter image description here

1 Ответ

0 голосов
/ 11 марта 2019

Поскольку у вас есть только один класс, вы должны изменить модель, чтобы выводить только одно значение.

In Action/training/train.py:

# build keras model
model = Sequential()
model.add(Dense(units=128, activation='relu'))
model.add(BatchNormalization())
model.add(Dense(units=64, activation='relu'))
model.add(BatchNormalization())
model.add(Dense(units=16, activation='relu'))
model.add(BatchNormalization())
# change 4 to 1
model.add(Dense(units=1, activation='softmax'))
...