模型无法学习

时间:2019-04-20 20:02:17

标签: deep-learning nlp conv-neural-network recurrent-neural-network

我正在尝试对音乐进行情感分析算法,并以歌词作为输入。 我尝试了一些模型,但似乎无法获得好的模型。我需要一些帮助才能朝正确的方向前进。以下是有关此问题的一些详细信息:

1。数据集(约11k个样本): -80%培训-20%验证 -我正在为每首歌曲输入4首歌词。歌词是歌曲中出现频率最高的歌词(我选择它们时没有重复) -我正在预处理它们(使用小写字母,删除非字母和无用的空格。 -我正在尝试预测2个数字:唤醒和化合价。我可以知道这些来计算情绪 -我还尝试了12个类别的分类问题(将标签直接转换为情感),但是我仍然没有得到很好的结果。 -在预处理之后,我将单词嵌入每个歌词中。例如,如果我在嵌入后有50个单词,则会得到50 x embedding_size张量。嵌入也经过训练。我当时正在考虑使用一些经过预训练的工具,例如word2vec或GloVe。

2。结构-我有以下方法: -仅使用GRU,然后使用输出线性层 输出线性层的卷积层 -prenet,使用具有瓶颈(256-128大小)的2层NN,CNN和线性层 -CNN,GRU,线性层 带有不同内核大小(2、3、4)的一堆卷积的模块,然后是GRU和线性层 -还有一些结果相似

3。更多说明: -我主要在最后一层使用ReLU作为活化剂和tanh。应用tanh之后,我将结果乘以3,得到-3,3之间的数字(价和唤醒在这些值之间)。 -将MSE用作损失函数。我注意到损失大约为1(在某些情况下可能为0.6),然后一直保持在该水平。准确度不能超过20%,经过几次迭代后通常会达到5-10%。火车损失和验证损失通常在减少。 迷你批次训练(32/64/128) -我用作优化程序SGD或Adam。 -尝试了很多学习率,但没有价值能帮助或证明更好的结果。 -我训练了10到30个时期。我没走多久,因为我注意到这无济于事。

我查看了我的代码,但我认为没有错误。这是我的代码(很难在此处显示所有内容,但如果需要,我会在其中显示):https://github.com/BogdanAngh/Poorify/tree/RegressionModel/AI->一切都始于train.py

我想知道我的架构不好还是我提出的问题太难了。我使用了一些阅读过的论文的建筑。我期望得到一个更好的模型(比方说,准确度约为40-50%) 我需要一些建议,因为我不知道该从哪里搬家。非常感谢您阅读本文,我知道它已经很长了。

0 个答案:

没有答案