Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alexander-rakhlin/CNN-for-Sentence-Classification-in-Keras
Convolutional Neural Networks for Sentence Classification in Keras
https://github.com/alexander-rakhlin/CNN-for-Sentence-Classification-in-Keras
Last synced: 8 days ago
JSON representation
Convolutional Neural Networks for Sentence Classification in Keras
- Host: GitHub
- URL: https://github.com/alexander-rakhlin/CNN-for-Sentence-Classification-in-Keras
- Owner: alexander-rakhlin
- License: mit
- Created: 2016-03-19T10:49:11.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-11-13T05:23:36.000Z (about 6 years ago)
- Last Synced: 2024-10-28T14:34:45.546Z (16 days ago)
- Language: Python
- Size: 6.22 MB
- Stars: 596
- Watchers: 37
- Forks: 205
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Convolutional Neural Networks for Sentence Classification
Train convolutional network for sentiment analysis. Based on "Convolutional Neural Networks for Sentence Classification" by Yoon Kim, [link](http://arxiv.org/pdf/1408.5882v2.pdf). Inspired by Denny Britz article "Implementing a CNN for Text Classification in TensorFlow", [link](http://www.wildml.com/2015/12/implementing-a-cnn-for-text-classification-in-tensorflow/).
For "CNN-rand" and "CNN-non-static" gets to 88-90%, and "CNN-static" - 85%## Some difference from original article:
* larger IMDB corpus, longer sentences; sentence length is very important, just like data size
* smaller embedding dimension, 20 instead of 300
* 2 filter sizes instead of original 3
* much fewer filters; experiments show that 3-10 is enough; original work uses 100
* random initialization is no worse than word2vec init on IMDB corpus
* sliding Max Pooling instead of original Global Pooling## Dependencies
* The [Keras](http://keras.io/) Deep Learning library and most recent [Theano](http://deeplearning.net/software/theano/install.html#install) backend should be installed. You can use pip for that.
Not tested with TensorFlow, but should work.