Cette fois, nous avons effectué une analyse des sentiments (ou classification des sentiments) des données de tweet étiquetées. ** 2015/10/19 Une expérience supplémentaire a été menée. ** ** ** 2015/12/19 Le code source de SCNN a été publié. hogefugabar / CharSCNN-theano ** ** 2015/12/27 Non seulement la mise en œuvre SCNN mais aussi CharSCNN a été publiée. hogefugabar / CharSCNN-theano **
Cette fois, j'ai essayé d'utiliser l'algorithme appelé CharSCNN décrit dans l'article Deep Convolutional Neural Networks for Sentiment Analysis of Short Texts. Pour plus de commodité, j'ai utilisé un algorithme appelé SCNN. Cet algorithme donne la phrase (Phrase) donnée en entrée sous la forme d'une série d'expressions uniques de mots. CharSCNN donne une expression unique aux lettres en plus des mots. Si ma compréhension est correcte, SCNN aura une architecture similaire à la suivante.
De [UNITN: Formation du réseau neuronal à convolution profonde pour la classification des sentiments Twitter](http://alt.qcri.org/semeval2015/cdrom/pdf/SemEval079.pdf)
Il y avait satwantrana / CharSCNN sur GitHub, alors j'ai essayé de l'utiliser tel quel, mais le code était étrange, alors je l'ai corrigé moi-même. ** 2015/12/19 Le code source a été publié. hogefugabar / CharSCNN-theano Veuillez vous reporter ici. ** **
Je l'ai implémenté comme To Word Embeddings → Convolution → Max Pooling → Entièrement connecté → Entièrement connecté → Softmax. J'utilise également Dropout, RMSprop, etc.
J'ai utilisé 20 000 tweets de tweets_clean.txt dans satwantrana / CharSCNN. Données d'entraînement 18000 tweets, données de test 2000 tweets. Chaque tweet est étiqueté 0/1 (négatif / positif), il est donc classé en 2 classes.
Conversion de la toute première entrée en Word Embeddings Il semble que le résultat sera meilleur si vous utilisez le poids pré-appris avec Word2Vec, je voudrais donc essayer cela également.
Puisque Word2Vec a été inclus dans l'échantillon Chainer, j'ai utilisé le résultat du pré-apprentissage avec Skip-gramme avec échantillonnage négatif. Pré-apprentissage avec Chainer et rotation du programme Theano lol. Merci cPickle.
Eh bien, il valait mieux pré-apprendre la start-up, mais il vaut mieux ne pas pré-apprendre le résultat final. .. .. Et si je l'allume un peu plus longtemps?
Recommended Posts