Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question about the mosei dataset #12

Closed
TianhaoFu opened this issue Nov 11, 2021 · 5 comments
Closed

Question about the mosei dataset #12

TianhaoFu opened this issue Nov 11, 2021 · 5 comments

Comments

@TianhaoFu
Copy link

Hi, Thanks for your code.

When I use your code to train a model in mosei dataset, I find that after 10 epoch, the model became overfiting. Is this normal?

By the way, in your example, you train your model 1000 epoch. Is this superparameter the result of your experiment?

Thanks!

My model is as follows:

encoders=[GRU(35,300,dropout=True,has_padding=False).cuda(), \
    GRU(74,300,dropout=True,has_padding=False).cuda(),\
    GRU(300,300,dropout=True,has_padding=False).cuda()]
head=MLP(300,150,1).cuda()
fusion =add()
@TianhaoFu TianhaoFu changed the title Question about the DHG-14/28 dataset Question about the mosei dataset Nov 11, 2021
@Vanvan2017
Copy link
Collaborator

Vanvan2017 commented Nov 11, 2021

Yeah, thanks for the question, for the large dataset, it will be overfitting very quickly, so you can set the epoch to a small value, actually, 20 to 100 is a good choice, and you can also apply the early stop with patience 7 to 20 ~

@TianhaoFu
Copy link
Author

Thanks for your reply!

When i train my own model, I found that after 100 epoch training , the valid loss from 0.76 changed to 0.62. It seems that after training, the model effect is not significantly improved, is this normal? @Vanvan2017

@Vanvan2017
Copy link
Collaborator

One possible reason is that the loss is L1Loss, so the improvement on the regression may not lead to the improvement on the classification as well, but generally good MAE will promise a good Acc (this may fail on some small sentiment score especially between -1.0 to 1.0). Maybe there are also some overfitting problems.

@TianhaoFu
Copy link
Author

TianhaoFu commented Nov 18, 2021

So should I use some classification loss functions to train my model?
By the way, why you train the classification task as a regression task? Is this a common practice?

Thanks!

One possible reason is that the loss is L1Loss, so the improvement on the regression may not lead to the improvement on the classification as well, but generally good MAE will promise a good Acc (this may fail on some small sentiment score especially between -1.0 to 1.0). Maybe there are also some overfitting problems.

@Vanvan2017
Copy link
Collaborator

So should I use some classification loss functions to train my model? By the way, why you train the classification task as a regression task? Is this a common practice?

Thanks!

One possible reason is that the loss is L1Loss, so the improvement on the regression may not lead to the improvement on the classification as well, but generally good MAE will promise a good Acc (this may fail on some small sentiment score especially between -1.0 to 1.0). Maybe there are also some overfitting problems.

Sure, you can use BCE or CrossEntropy to train that, but by default, the MOSEI is a regression dataset, and previous literature uses regression loss (MAE), it may loss the information of how strong the sentiments when just using 0 or 1 label I think. But actually, take everything into traditional classification setting is also a good standard way to evaluate your own model.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants