text cnn tensorflow
1.0.0
该代码实现了句子分类模型的卷积神经网络。

HB基本的初始项目
.
├── config # Config files (.yml, .json) using with hb-config
├── data # dataset path
├── notebooks # Prototyping with numpy or tf.interactivesession
├── scripts # download or prepare dataset using shell scripts
├── text-cnn # text-cnn architecture graphs (from input to logits)
├── __init__.py # Graph logic
├── data_loader.py # raw_date -> precossed_data -> generate_batch (using Dataset)
├── hook.py # training or test hook feature (eg. print_variables)
├── main.py # define experiment_fn
├── model.py # define EstimatorSpec
└── predict.py # test trained model
参考:HB-CONFIG,数据集,实验_FN,EstimatorsPec
示例:kaggle_movie_review.yml
data :
type : ' kaggle_movie_review '
base_path : ' data/ '
raw_data_path : ' kaggle_movie_reviews/ '
processed_path : ' kaggle_processed_data '
testset_size : 25000
num_classes : 5
PAD_ID : 0
model :
batch_size : 64
embed_type : ' rand ' # (rand, static, non-static, multichannel)
pretrained_embed : " "
embed_dim : 300
num_filters : 256
filter_sizes :
- 2
- 3
- 4
- 5
dropout : 0.5
train :
learning_rate : 0.00005
train_steps : 100000
model_dir : ' logs/kaggle_movie_review '
save_checkpoints_steps : 1000
loss_hook_n_iter : 1000
check_hook_n_iter : 1000
min_eval_frequency : 1000
slack :
webhook_url : " " # after training notify you using slack-webhook 安装要求。
pip install -r requirements.txt
然后,准备数据集并训练它。
sh prepare_kaggle_movie_reviews.sh
python main.py --config kaggle_movie_review --mode train_and_evaluate
训练后,您可以尝试使用predict.py键入您想要的句子。
python python predict.py --config rt-polarity
预测示例
python predict.py --config rt-polarity
Setting max_seq_length to Config : 62
load vocab ...
Typing anything :)
> good
1
> bad
0
✅:工作
◽:尚未测试。
evaluate :评估数据。extend_train_hooks钩子进行训练。reset_export_strategies :用new_export_strategies重置导出策略。run_std_server :启动TensorFlow服务器并加入服务线程。test :测试训练,评估和导出一个步骤的估计器。train :使用培训数据安装估计器。train_and_evaluate :交错培训和评估。tensorboard --logdir logs


