cnn-text-classification-tf
所属分类:人工智能/神经网络/深度学习
开发工具:Python
文件大小:490KB
下载次数:29
上传日期:2017-10-17 10:24:38
上 传 者:
SunnyMarkLiu
说明: 利用 Tensorflow 构建 CNN 模型实现文本分类
(CNN for Text Classification in Tensorflow)
文件列表:
cnn-text-classification-tf (0, 2017-09-28)
cnn-text-classification-tf\train.py (8209, 2017-09-28)
cnn-text-classification-tf\text_cnn.py (3776, 2017-09-28)
cnn-text-classification-tf\eval.py (3738, 2017-09-28)
cnn-text-classification-tf\data_helpers.py (2485, 2017-09-28)
cnn-text-classification-tf\LICENSE (11357, 2017-09-28)
cnn-text-classification-tf\data (0, 2017-09-28)
cnn-text-classification-tf\data\rt-polaritydata (0, 2017-09-28)
cnn-text-classification-tf\data\rt-polaritydata\rt-polarity.pos (626395, 2017-09-28)
cnn-text-classification-tf\data\rt-polaritydata\rt-polarity.neg (612506, 2017-09-28)
**[This code belongs to the "Implementing a CNN for Text Classification in Tensorflow" blog post.](http://www.wildml.com/2015/12/implementing-a-cnn-for-text-classification-in-tensorflow/)**
It is slightly simplified implementation of Kim's [Convolutional Neural Networks for Sentence Classification](http://arxiv.org/abs/1408.5882) paper in Tensorflow.
## Requirements
- Python 3
- Tensorflow > 0.12
- Numpy
## Training
Print parameters:
```bash
./train.py --help
```
```
optional arguments:
-h, --help show this help message and exit
--embedding_dim EMBEDDING_DIM
Dimensionality of character embedding (default: 128)
--filter_sizes FILTER_SIZES
Comma-separated filter sizes (default: '3,4,5')
--num_filters NUM_FILTERS
Number of filters per filter size (default: 128)
--l2_reg_lambda L2_REG_LAMBDA
L2 regularizaion lambda (default: 0.0)
--dropout_keep_prob DROPOUT_KEEP_PROB
Dropout keep probability (default: 0.5)
--batch_size BATCH_SIZE
Batch Size (default: ***)
--num_epochs NUM_EPOCHS
Number of training epochs (default: 100)
--evaluate_every EVALUATE_EVERY
Evaluate model on dev set after this many steps
(default: 100)
--checkpoint_every CHECKPOINT_EVERY
Save model after this many steps (default: 100)
--allow_soft_placement ALLOW_SOFT_PLACEMENT
Allow device soft device placement
--noallow_soft_placement
--log_device_placement LOG_DEVICE_PLACEMENT
Log placement of ops on devices
--nolog_device_placement
```
Train:
```bash
./train.py
```
## Evaluating
```bash
./eval.py --eval_train --checkpoint_dir="./runs/1459637919/checkpoints/"
```
Replace the checkpoint dir with the output from the training. To use your own data, change the `eval.py` script to load your data.
## References
- [Convolutional Neural Networks for Sentence Classification](http://arxiv.org/abs/1408.5882)
- [A Sensitivity Analysis of (and Practitioners' Guide to) Convolutional Neural Networks for Sentence Classification](http://arxiv.org/abs/1510.03820)
近期下载者:
相关文件:
收藏者: