Closed ozanyurtsever closed 5 years ago
Your model is overfitting to the training set, try to use fewer channels (maybe try 5 instead of 100) in the conv layers and use stronger regularization. Also, you could split up each participants data into multiple sections (try something like 3000 samples per example). This will effectively give you six times more examples to train on, which should help to combat overfitting
I want to train a model to predict one's emotion from the physical signals. I have a physical signal and using it as input feature;
In my dataset, there are 312 total records belonging to the participants and there are 18000 rows of data in each record. So when I combine them into a single data frame, there are 5616000 rows in total.
Here is my
train_x
dataframe;And I have 6 classes which are corresponding to emotions. I have encoded these labels with numbers;
Here is my train_y;
To feed my CNN, I am reshaping the train_x and one hot encoding the train_y data.
After these processes, here is how they look like; train_x after reshape;
train_y after one hot encoding;
After reshaping, I have created my CNN model;
The problem is, accuracy is not going more than 0.2 and it is fluctuating up and down. Looks like the model does not learn anything. I have tried to increase layers, play with the learning rate, changing the loss function, changing the optimizer, scaling the data, normalizing the data, but nothing helped me to solve this problem.
How Can I solve this problem? Thanks in advance.
Addition:
I wanted to add the training results after 50 epochs;