├── ECPE_withBERT ├── BERT.py ├── BERT_new.py ├── P_cause.py ├── P_cause_BERT.py ├── P_cause_BERT_ext.py ├── P_emotion.py ├── P_emotion_BERT.py ├── P_emotion_BERT_ext.py ├── data_combine │ ├── clause_keywords.csv │ ├── clause_keywords_emotion.txt │ ├── fold1_test.txt │ └── fold1_train.txt ├── pair.py ├── pair_BERT.py ├── pair_BERT_ext.py ├── pair_data │ └── P_emotion_BERT_ext │ │ ├── fold1_test.txt │ │ └── fold1_train.txt ├── pair_res │ ├── pair_res_Ind_fold1.txt │ └── pair_res_Ind_fold2.txt ├── training_info │ ├── training_info_Cause.txt │ ├── training_info_Cause_BERT.txt │ ├── training_info_Cause_BERT_ext.txt │ ├── training_info_Emotion.txt │ ├── training_info_Emotion_BERT.txt │ ├── training_info_Emotion_BERT_ext.txt │ ├── training_info_Ind.txt │ ├── training_info_Ind_BERT.txt │ ├── training_info_Ind_BERT_ext.txt │ └── 实验结果汇总.xlsx └── utils │ ├── __init__.pyc │ ├── prepare_data.py │ ├── prepare_data.pyc │ ├── tf_funcs.py │ └── tf_funcs.pyc ├── README.md ├── bert-utils ├── __init__.py ├── args.py ├── bert_vec.py ├── extract_feature.py ├── graph.py ├── modeling.py ├── optimization.py └── tokenization.py ├── presentation.pptx ├── spider └── spider.py ├── visualization ├── evaluate_crawler.py ├── evaluate_test.py ├── from_web.txt ├── hit_stopwords.txt ├── pair.txt ├── predict.txt ├── simsun.ttc ├── 中间文件 │ ├── del_re.txt │ ├── evaluate_file.txt │ ├── result.txt │ ├── web_cause.txt │ ├── web_emotion.txt │ ├── 分类结果 │ │ ├── ai.txt │ │ ├── hao.txt │ │ ├── jing.txt │ │ ├── ju.txt │ │ ├── le.txt │ │ ├── nu.txt │ │ └── wu.txt │ └── 词频字典 │ │ ├── ai.txt │ │ ├── ha.txt │ │ ├── ji.txt │ │ ├── ju.txt │ │ ├── le.txt │ │ ├── nu.txt │ │ └── wu.txt ├── 情感词汇.xlsx └── 结果文件 │ ├── 测试集词云 │ ├── ai.jpg │ ├── ha.jpg │ ├── ji.jpg │ ├── ju.jpg │ ├── le.jpg │ ├── nu.jpg │ └── wu.jpg │ └── 爬取数据词云 │ ├── cause_ciyun.jpg │ └── emotion_ciyun.jpg └── 基于文本的情感-原因对抽取(ECPE)与抑郁情绪原因识别系统.pdf /ECPE_withBERT/BERT.py: -------------------------------------------------------------------------------- 1 | from bert_serving.client import BertClient 2 | import numpy as np 3 | 4 | words = [] 5 | inputFile = open('./data_combine/clause_keywords.csv', 'r', encoding='utf8') 6 | for line in inputFile.readlines(): 7 | line = line.strip().split(',') 8 | emotion, clause = line[2], line[-1] 9 | words.extend([emotion] + clause.split()) 10 | 11 | words = set(words) # 所有不重复词的集合 12 | word_list = [] 13 | 14 | for item in enumerate(words): 15 | word_list.append(item[1]) 16 | 17 | word_idx = dict((c, k + 1) for k, c in enumerate(words)) # 每个词及词的位置 18 | word_idx_rev = dict((k + 1, c) for k, c in enumerate(words)) # 每个词及词的位置 19 | 20 | # Save 21 | fileName1 ="./BERT_RES/wmm-ext/word_idx.csv" 22 | ##保存文件 23 | with open(fileName1, 'w', encoding='utf8') as f: 24 | [f.write('{0},{1}\n'.format(key, value)) for key, value in word_idx.items()] 25 | 26 | fileName2 ="./BERT_RES/wmm-ext/word_idx_rev.csv" 27 | ##保存文件 28 | with open(fileName2, 'w', encoding='utf8') as f: 29 | [f.write('{0},{1}\n'.format(key, value)) for key, value in word_idx_rev.items()] 30 | 31 | bc = BertClient() 32 | embedding = bc.encode(word_list) 33 | 34 | print(embedding.shape) 35 | np.savetxt('./BERT_RES/wmm-ext/word_embedding.txt', embedding) 36 | -------------------------------------------------------------------------------- /ECPE_withBERT/BERT_new.py: -------------------------------------------------------------------------------- 1 | from bert_serving.client import BertClient 2 | import numpy as np 3 | 4 | with open('wordList.txt', 'r', encoding='utf-8') as f: 5 | words = [] 6 | for line in f.readlines(): 7 | line = line.strip('\n') # 去掉换行符\n 8 | b = line.split(' ') # 将每一行以空格为分隔符转换成列表 9 | 10 | def not_empty(s): 11 | return s and s.strip() 12 | c = filter(not_empty, b) 13 | 14 | words.extend(c) 15 | 16 | words = set(words) # 所有不重复词的集合 17 | word_list = [] 18 | count = 0 19 | 20 | for item in enumerate(words): 21 | # print(item) 22 | count += 1 23 | word_list.append(item[1]) 24 | 25 | print(str(count)) 26 | 27 | word_idx = dict((c, k + 1) for k, c in enumerate(words)) # 每个词及词的位置 28 | word_idx_rev = dict((k + 1, c) for k, c in enumerate(words)) # 每个词及词的位置 29 | 30 | # Save 31 | fileName1 ="./BERT_RES/depression/word_idx.csv" 32 | ##保存文件 33 | with open(fileName1, 'w') as f: 34 | [f.write('{0},{1}\n'.format(key, value)) for key, value in word_idx.items()] 35 | 36 | fileName2 ="./BERT_RES/depression/word_idx_rev.csv" 37 | ##保存文件 38 | with open(fileName2, 'w') as f: 39 | [f.write('{0},{1}\n'.format(key, value)) for key, value in word_idx_rev.items()] 40 | 41 | bc = BertClient() 42 | embedding = bc.encode(word_list) 43 | 44 | print(embedding.shape) 45 | np.save('./BERT_RES/depression/word_embedding.npy', embedding) 46 | 47 | -------------------------------------------------------------------------------- /ECPE_withBERT/pair.py: -------------------------------------------------------------------------------- 1 | # encoding: utf-8 2 | # @author: zxding 3 | # email: d.z.x@qq.com 4 | 5 | 6 | import numpy as np 7 | import tensorflow as tf 8 | from sklearn.model_selection import KFold 9 | import sys, os, time, codecs, pdb 10 | 11 | from utils.tf_funcs import * 12 | from utils.prepare_data import * 13 | 14 | FLAGS = tf.app.flags.FLAGS 15 | # >>>>>>>>>>>>>>>>>>>> For Model <<<<<<<<<<<<<<<<<<<< # 16 | ## embedding parameters ## 17 | tf.app.flags.DEFINE_string('w2v_file', './data_combine/w2v_200.txt', 'embedding file') 18 | tf.app.flags.DEFINE_integer('embedding_dim', 200, 'dimension of word embedding') 19 | tf.app.flags.DEFINE_integer('embedding_dim_pos', 50, 'dimension of position embedding') 20 | ## input struct ## 21 | tf.app.flags.DEFINE_integer('max_sen_len', 30, 'max number of tokens per sentence') 22 | ## model struct ## 23 | tf.app.flags.DEFINE_integer('n_hidden', 100, 'number of hidden unit') 24 | tf.app.flags.DEFINE_integer('n_class', 2, 'number of distinct class') 25 | # >>>>>>>>>>>>>>>>>>>> For Data <<<<<<<<<<<<<<<<<<<< # 26 | tf.app.flags.DEFINE_string('log_file_name', '', 'name of log file') 27 | # >>>>>>>>>>>>>>>>>>>> For Training <<<<<<<<<<<<<<<<<<<< # 28 | tf.app.flags.DEFINE_integer('training_iter', 10, 'number of train iter') 29 | tf.app.flags.DEFINE_string('scope', 'P_cause', 'RNN scope') 30 | # not easy to tune , a good posture of using data to train model is very important 31 | tf.app.flags.DEFINE_integer('batch_size', 32, 'number of example per batch') 32 | tf.app.flags.DEFINE_float('learning_rate', 0.005, 'learning rate') 33 | tf.app.flags.DEFINE_float('keep_prob1', 0.5, 'word embedding training dropout keep prob') 34 | tf.app.flags.DEFINE_float('keep_prob2', 1.0, 'softmax layer dropout keep prob') 35 | tf.app.flags.DEFINE_float('l2_reg', 0.00001, 'l2 regularization') 36 | 37 | 38 | 39 | def build_model(word_embedding, pos_embedding, x, sen_len, keep_prob1, keep_prob2, distance, y, RNN = biLSTM): 40 | x = tf.nn.embedding_lookup(word_embedding, x) 41 | inputs = tf.reshape(x, [-1, FLAGS.max_sen_len, FLAGS.embedding_dim]) 42 | inputs = tf.nn.dropout(inputs, keep_prob=keep_prob1) 43 | sen_len = tf.reshape(sen_len, [-1]) 44 | def get_s(inputs, name): 45 | with tf.name_scope('word_encode'): 46 | inputs = RNN(inputs, sen_len, n_hidden=FLAGS.n_hidden, scope=FLAGS.scope+'word_layer' + name) 47 | with tf.name_scope('word_attention'): 48 | sh2 = 2 * FLAGS.n_hidden 49 | w1 = get_weight_varible('word_att_w1' + name, [sh2, sh2]) 50 | b1 = get_weight_varible('word_att_b1' + name, [sh2]) 51 | w2 = get_weight_varible('word_att_w2' + name, [sh2, 1]) 52 | s = att_var(inputs,sen_len,w1,b1,w2) 53 | s = tf.reshape(s, [-1, 2 * 2 * FLAGS.n_hidden]) 54 | return s 55 | s = get_s(inputs, name='cause_word_encode') 56 | dis = tf.nn.embedding_lookup(pos_embedding, distance) 57 | s = tf.concat([s, dis], 1) 58 | 59 | s1 = tf.nn.dropout(s, keep_prob=keep_prob2) 60 | w_pair = get_weight_varible('softmax_w_pair', [4 * FLAGS.n_hidden + FLAGS.embedding_dim_pos, FLAGS.n_class]) 61 | b_pair = get_weight_varible('softmax_b_pair', [FLAGS.n_class]) 62 | pred_pair = tf.nn.softmax(tf.matmul(s1, w_pair) + b_pair) 63 | 64 | reg = tf.nn.l2_loss(w_pair) + tf.nn.l2_loss(b_pair) 65 | return pred_pair, reg 66 | 67 | def print_training_info(): 68 | print('\n\n>>>>>>>>>>>>>>>>>>>>TRAINING INFO:\n') 69 | print('batch-{}, lr-{}, kb1-{}, kb2-{}, l2_reg-{}'.format( 70 | FLAGS.batch_size, FLAGS.learning_rate, FLAGS.keep_prob1, FLAGS.keep_prob2, FLAGS.l2_reg)) 71 | print('training_iter-{}, scope-{}\n'.format(FLAGS.training_iter, FLAGS.scope)) 72 | 73 | def get_batch_data(x, sen_len, keep_prob1, keep_prob2, distance, y, batch_size, test=False): 74 | for index in batch_index(len(y), batch_size, test): 75 | feed_list = [x[index], sen_len[index], keep_prob1, keep_prob2, distance[index], y[index]] 76 | yield feed_list, len(index) 77 | 78 | def run(): 79 | save_dir = 'pair_data/{}/'.format(FLAGS.scope) 80 | if not os.path.exists(save_dir): 81 | os.makedirs(save_dir) 82 | if FLAGS.log_file_name: 83 | sys.stdout = open(save_dir + FLAGS.log_file_name, 'w') 84 | print_time() 85 | tf.reset_default_graph() 86 | # Model Code Block 87 | word_idx_rev, word_id_mapping, word_embedding, pos_embedding = load_w2v(FLAGS.embedding_dim, FLAGS.embedding_dim_pos, 'data_combine/clause_keywords.csv', FLAGS.w2v_file) 88 | word_embedding = tf.constant(word_embedding, dtype=tf.float32, name='word_embedding') 89 | pos_embedding = tf.constant(pos_embedding, dtype=tf.float32, name='pos_embedding') 90 | 91 | print('build model...') 92 | 93 | x = tf.placeholder(tf.int32, [None, 2, FLAGS.max_sen_len], name='x') 94 | sen_len = tf.placeholder(tf.int32, [None, 2], name='sen_len') 95 | keep_prob1 = tf.placeholder(tf.float32, name='keep_prob1') 96 | keep_prob2 = tf.placeholder(tf.float32, name='keep_prob2') 97 | distance = tf.placeholder(tf.int32, [None], name='distance') 98 | y = tf.placeholder(tf.float32, [None, FLAGS.n_class], name='y') 99 | placeholders = [x, sen_len, keep_prob1, keep_prob2, distance, y] 100 | 101 | 102 | pred_pair, reg = build_model(word_embedding, pos_embedding, x, sen_len, keep_prob1, keep_prob2, distance, y) 103 | loss_op = - tf.reduce_mean(y * tf.log(pred_pair)) + reg * FLAGS.l2_reg 104 | optimizer = tf.train.AdamOptimizer(learning_rate=FLAGS.learning_rate).minimize(loss_op) 105 | 106 | true_y_op = tf.argmax(y, 1) 107 | pred_y_op = tf.argmax(pred_pair, 1) 108 | acc_op = tf.reduce_mean(tf.cast(tf.equal(true_y_op, pred_y_op), tf.float32)) 109 | print('build model done!\n') 110 | 111 | # Training Code Block 112 | print_training_info() 113 | tf_config = tf.ConfigProto() 114 | tf_config.gpu_options.allow_growth = True 115 | 116 | saver = tf.train.Saver() 117 | # 保存模型 118 | tf.add_to_collection('pred_pair', pred_pair) 119 | 120 | with tf.Session(config=tf_config) as sess: 121 | keep_rate_list, acc_subtask_list, p_pair_list, r_pair_list, f1_pair_list = [], [], [], [], [] 122 | o_p_pair_list, o_r_pair_list, o_f1_pair_list = [], [], [] 123 | 124 | for fold in range(1,11): 125 | sess.run(tf.global_variables_initializer()) 126 | # train for one fold 127 | print('############# fold {} begin ###############'.format(fold)) 128 | # Data Code Block 129 | train_file_name = 'fold{}_train.txt'.format(fold, FLAGS) 130 | test_file_name = 'fold{}_test.txt'.format(fold) 131 | tr_pair_id_all, tr_pair_id, tr_y, tr_x, tr_sen_len, tr_distance = load_data_2nd_step(save_dir + train_file_name, word_id_mapping, max_sen_len = FLAGS.max_sen_len) 132 | te_pair_id_all, te_pair_id, te_y, te_x, te_sen_len, te_distance = load_data_2nd_step(save_dir + test_file_name, word_id_mapping, max_sen_len = FLAGS.max_sen_len) 133 | 134 | max_acc_subtask, max_f1 = [-1.]*2 135 | print('train docs: {} test docs: {}'.format(len(tr_x), len(te_x))) 136 | for i in xrange(FLAGS.training_iter): 137 | start_time, step = time.time(), 1 138 | # train 139 | for train, _ in get_batch_data(tr_x, tr_sen_len, FLAGS.keep_prob1, FLAGS.keep_prob2, tr_distance, tr_y, FLAGS.batch_size): 140 | _, loss, pred_y, true_y, acc = sess.run( 141 | [optimizer, loss_op, pred_y_op, true_y_op, acc_op], feed_dict=dict(zip(placeholders, train))) 142 | print('step {}: train loss {:.4f} acc {:.4f}'.format(step, loss, acc)) 143 | step = step + 1 144 | # test 145 | test = [te_x, te_sen_len, 1., 1., te_distance, te_y] 146 | loss, pred_y, true_y, acc = sess.run([loss_op, pred_y_op, true_y_op, acc_op], feed_dict=dict(zip(placeholders, test))) 147 | print('\nepoch {}: test loss {:.4f}, acc {:.4f}, cost time: {:.1f}s\n'.format(i, loss, acc, time.time()-start_time)) 148 | if acc > max_acc_subtask: 149 | max_acc_subtask = acc 150 | print('max_acc_subtask: {:.4f} \n'.format(max_acc_subtask)) 151 | 152 | # p, r, f1, o_p, o_r, o_f1, keep_rate = prf_2nd_step(te_pair_id_all, te_pair_id, pred_y, fold, save_dir) 153 | p, r, f1, o_p, o_r, o_f1, keep_rate = prf_2nd_step(te_pair_id_all, te_pair_id, pred_y, fold) 154 | if f1 > max_f1: 155 | max_keep_rate, max_p, max_r, max_f1 = keep_rate, p, r, f1 156 | print('original o_p {:.4f} o_r {:.4f} o_f1 {:.4f}'.format(o_p, o_r, o_f1)) 157 | print 'pair filter keep rate: {}'.format(keep_rate) 158 | print('test p {:.4f} r {:.4f} f1 {:.4f}'.format(p, r, f1)) 159 | 160 | print('max_p {:.4f} max_r {:.4f} max_f1 {:.4f}\n'.format(max_p, max_r, max_f1)) 161 | 162 | 163 | print 'Optimization Finished!\n' 164 | print('############# fold {} end ###############'.format(fold)) 165 | # fold += 1 166 | acc_subtask_list.append(max_acc_subtask) 167 | keep_rate_list.append(max_keep_rate) 168 | p_pair_list.append(max_p) 169 | r_pair_list.append(max_r) 170 | f1_pair_list.append(max_f1) 171 | o_p_pair_list.append(o_p) 172 | o_r_pair_list.append(o_r) 173 | o_f1_pair_list.append(o_f1) 174 | 175 | # 保存模型 176 | saver.save(sess, 'save/pair/model_BiLSTM_pair.ckpt', global_step=fold) # 177 | # 保存模型 178 | 179 | 180 | print_training_info() 181 | all_results = [acc_subtask_list, keep_rate_list, p_pair_list, r_pair_list, f1_pair_list, o_p_pair_list, o_r_pair_list, o_f1_pair_list] 182 | acc_subtask, keep_rate, p_pair, r_pair, f1_pair, o_p_pair, o_r_pair, o_f1_pair = map(lambda x: np.array(x).mean(), all_results) 183 | print('\nOriginal pair_predict: test f1 in 10 fold: {}'.format(np.array(o_f1_pair_list).reshape(-1,1))) 184 | print('average : p {:.4f} r {:.4f} f1 {:.4f}\n'.format(o_p_pair, o_r_pair, o_f1_pair)) 185 | print('\nAverage keep_rate: {:.4f}\n'.format(keep_rate)) 186 | print('\nFiltered pair_predict: test f1 in 10 fold: {}'.format(np.array(f1_pair_list).reshape(-1,1))) 187 | print('average : p {:.4f} r {:.4f} f1 {:.4f}\n'.format(p_pair, r_pair, f1_pair)) 188 | print_time() 189 | 190 | 191 | def main(_): 192 | 193 | # FLAGS.log_file_name = 'step2.log' 194 | FLAGS.training_iter=20 195 | 196 | for scope_name in ['Ind_BiLSTM']: 197 | FLAGS.scope= scope_name 198 | run() 199 | 200 | 201 | 202 | if __name__ == '__main__': 203 | tf.compat.v1.app.run() -------------------------------------------------------------------------------- /ECPE_withBERT/pair_BERT.py: -------------------------------------------------------------------------------- 1 | # encoding: utf-8 2 | # @author: zxding 3 | # email: d.z.x@qq.com 4 | 5 | 6 | import numpy as np 7 | import tensorflow as tf 8 | from sklearn.model_selection import KFold 9 | import sys, os, time, codecs, pdb 10 | 11 | from utils.tf_funcs import * 12 | from utils.prepare_data import * 13 | 14 | FLAGS = tf.app.flags.FLAGS 15 | # >>>>>>>>>>>>>>>>>>>> For Model <<<<<<<<<<<<<<<<<<<< # 16 | ## embedding parameters ## 17 | tf.app.flags.DEFINE_integer('embedding_dim', 768, 'dimension of word embedding') 18 | tf.app.flags.DEFINE_integer('embedding_dim_pos', 50, 'dimension of position embedding') 19 | ## input struct ## 20 | tf.app.flags.DEFINE_integer('max_sen_len', 30, 'max number of tokens per sentence') 21 | ## model struct ## 22 | tf.app.flags.DEFINE_integer('n_hidden', 100, 'number of hidden unit') 23 | tf.app.flags.DEFINE_integer('n_class', 2, 'number of distinct class') 24 | # >>>>>>>>>>>>>>>>>>>> For Data <<<<<<<<<<<<<<<<<<<< # 25 | tf.app.flags.DEFINE_string('log_file_name', '', 'name of log file') 26 | # >>>>>>>>>>>>>>>>>>>> For Training <<<<<<<<<<<<<<<<<<<< # 27 | tf.app.flags.DEFINE_integer('training_iter', 10, 'number of train iter') 28 | tf.app.flags.DEFINE_string('scope', 'P_cause', 'RNN scope') 29 | # not easy to tune , a good posture of using data to train model is very important 30 | tf.app.flags.DEFINE_integer('batch_size', 32, 'number of example per batch') 31 | tf.app.flags.DEFINE_float('learning_rate', 0.005, 'learning rate') 32 | tf.app.flags.DEFINE_float('keep_prob1', 0.5, 'word embedding training dropout keep prob') 33 | tf.app.flags.DEFINE_float('keep_prob2', 1.0, 'softmax layer dropout keep prob') 34 | tf.app.flags.DEFINE_float('l2_reg', 0.00001, 'l2 regularization') 35 | 36 | 37 | def build_model(word_embedding, pos_embedding, x, sen_len, keep_prob1, keep_prob2, distance, y, RNN=biLSTM): 38 | x = tf.nn.embedding_lookup(word_embedding, x) 39 | inputs = tf.reshape(x, [-1, FLAGS.max_sen_len, FLAGS.embedding_dim]) 40 | inputs = tf.nn.dropout(inputs, keep_prob=keep_prob1) 41 | sen_len = tf.reshape(sen_len, [-1]) 42 | 43 | def get_s(inputs, name): 44 | with tf.name_scope('word_encode'): 45 | inputs = RNN(inputs, sen_len, n_hidden=FLAGS.n_hidden, scope=FLAGS.scope + 'word_layer' + name) 46 | with tf.name_scope('word_attention'): 47 | sh2 = 2 * FLAGS.n_hidden 48 | w1 = get_weight_varible('word_att_w1' + name, [sh2, sh2]) 49 | b1 = get_weight_varible('word_att_b1' + name, [sh2]) 50 | w2 = get_weight_varible('word_att_w2' + name, [sh2, 1]) 51 | s = att_var(inputs, sen_len, w1, b1, w2) 52 | s = tf.reshape(s, [-1, 2 * 2 * FLAGS.n_hidden]) 53 | return s 54 | 55 | s = get_s(inputs, name='cause_word_encode') 56 | dis = tf.nn.embedding_lookup(pos_embedding, distance) 57 | s = tf.concat([s, dis], 1) 58 | 59 | s1 = tf.nn.dropout(s, keep_prob=keep_prob2) 60 | w_pair = get_weight_varible('softmax_w_pair', [4 * FLAGS.n_hidden + FLAGS.embedding_dim_pos, FLAGS.n_class]) 61 | b_pair = get_weight_varible('softmax_b_pair', [FLAGS.n_class]) 62 | pred_pair = tf.nn.softmax(tf.matmul(s1, w_pair) + b_pair) 63 | 64 | reg = tf.nn.l2_loss(w_pair) + tf.nn.l2_loss(b_pair) 65 | return pred_pair, reg 66 | 67 | 68 | def print_training_info(): 69 | print('\n\n>>>>>>>>>>>>>>>>>>>>TRAINING INFO:\n') 70 | print('batch-{}, lr-{}, kb1-{}, kb2-{}, l2_reg-{}'.format( 71 | FLAGS.batch_size, FLAGS.learning_rate, FLAGS.keep_prob1, FLAGS.keep_prob2, FLAGS.l2_reg)) 72 | print('training_iter-{}, scope-{}\n'.format(FLAGS.training_iter, FLAGS.scope)) 73 | 74 | 75 | def get_batch_data(x, sen_len, keep_prob1, keep_prob2, distance, y, batch_size, test=False): 76 | for index in batch_index(len(y), batch_size, test): 77 | feed_list = [x[index], sen_len[index], keep_prob1, keep_prob2, distance[index], y[index]] 78 | yield feed_list, len(index) 79 | 80 | 81 | def run(): 82 | save_dir = 'pair_data/{}/'.format(FLAGS.scope) 83 | if not os.path.exists(save_dir): 84 | os.makedirs(save_dir) 85 | if FLAGS.log_file_name: 86 | sys.stdout = open(save_dir + FLAGS.log_file_name, 'w') 87 | print_time() 88 | tf.reset_default_graph() 89 | # Model Code Block 90 | word_idx_rev, word_id_mapping, word_embedding, pos_embedding = load_w2v_BERT(FLAGS.embedding_dim, 91 | FLAGS.embedding_dim_pos) 92 | word_embedding = tf.constant(word_embedding, dtype=tf.float32, name='word_embedding') 93 | pos_embedding = tf.constant(pos_embedding, dtype=tf.float32, name='pos_embedding') 94 | 95 | print('build model...') 96 | 97 | x = tf.placeholder(tf.int32, [None, 2, FLAGS.max_sen_len], name='x') 98 | sen_len = tf.placeholder(tf.int32, [None, 2], name='sen_len') 99 | keep_prob1 = tf.placeholder(tf.float32, name='keep_prob1') 100 | keep_prob2 = tf.placeholder(tf.float32, name='keep_prob2') 101 | distance = tf.placeholder(tf.int32, [None], name='distance') 102 | y = tf.placeholder(tf.float32, [None, FLAGS.n_class], name='y') 103 | placeholders = [x, sen_len, keep_prob1, keep_prob2, distance, y] 104 | 105 | pred_pair, reg = build_model(word_embedding, pos_embedding, x, sen_len, keep_prob1, keep_prob2, distance, y) 106 | loss_op = - tf.reduce_mean(y * tf.log(pred_pair)) + reg * FLAGS.l2_reg 107 | optimizer = tf.train.AdamOptimizer(learning_rate=FLAGS.learning_rate).minimize(loss_op) 108 | 109 | true_y_op = tf.argmax(y, 1) 110 | pred_y_op = tf.argmax(pred_pair, 1) 111 | acc_op = tf.reduce_mean(tf.cast(tf.equal(true_y_op, pred_y_op), tf.float32)) 112 | print('build model done!\n') 113 | 114 | # Training Code Block 115 | print_training_info() 116 | tf_config = tf.ConfigProto() 117 | tf_config.gpu_options.allow_growth = True 118 | 119 | saver = tf.train.Saver() 120 | # 保存模型 121 | tf.add_to_collection('pred_pair', pred_pair) 122 | 123 | with tf.Session(config=tf_config) as sess: 124 | keep_rate_list, acc_subtask_list, p_pair_list, r_pair_list, f1_pair_list = [], [], [], [], [] 125 | o_p_pair_list, o_r_pair_list, o_f1_pair_list = [], [], [] 126 | 127 | for fold in range(1, 11): 128 | sess.run(tf.global_variables_initializer()) 129 | # train for one fold 130 | print('############# fold {} begin ###############'.format(fold)) 131 | # Data Code Block 132 | train_file_name = 'fold{}_train.txt'.format(fold, FLAGS) 133 | test_file_name = 'fold{}_test.txt'.format(fold) 134 | tr_pair_id_all, tr_pair_id, tr_y, tr_x, tr_sen_len, tr_distance = load_data_2nd_step( 135 | save_dir + train_file_name, word_id_mapping, max_sen_len=FLAGS.max_sen_len) 136 | te_pair_id_all, te_pair_id, te_y, te_x, te_sen_len, te_distance = load_data_2nd_step( 137 | save_dir + test_file_name, word_id_mapping, max_sen_len=FLAGS.max_sen_len) 138 | 139 | max_acc_subtask, max_f1 = [-1.] * 2 140 | print('train docs: {} test docs: {}'.format(len(tr_x), len(te_x))) 141 | for i in xrange(FLAGS.training_iter): 142 | start_time, step = time.time(), 1 143 | # train 144 | for train, _ in get_batch_data(tr_x, tr_sen_len, FLAGS.keep_prob1, FLAGS.keep_prob2, tr_distance, tr_y, 145 | FLAGS.batch_size): 146 | _, loss, pred_y, true_y, acc = sess.run( 147 | [optimizer, loss_op, pred_y_op, true_y_op, acc_op], feed_dict=dict(zip(placeholders, train))) 148 | print('step {}: train loss {:.4f} acc {:.4f}'.format(step, loss, acc)) 149 | step = step + 1 150 | # test 151 | test = [te_x, te_sen_len, 1., 1., te_distance, te_y] 152 | loss, pred_y, true_y, acc = sess.run([loss_op, pred_y_op, true_y_op, acc_op], 153 | feed_dict=dict(zip(placeholders, test))) 154 | print('\nepoch {}: test loss {:.4f}, acc {:.4f}, cost time: {:.1f}s\n'.format(i, loss, acc, 155 | time.time() - start_time)) 156 | if acc > max_acc_subtask: 157 | max_acc_subtask = acc 158 | print('max_acc_subtask: {:.4f} \n'.format(max_acc_subtask)) 159 | 160 | # p, r, f1, o_p, o_r, o_f1, keep_rate = prf_2nd_step(te_pair_id_all, te_pair_id, pred_y, fold, save_dir) 161 | p, r, f1, o_p, o_r, o_f1, keep_rate = prf_2nd_step(te_pair_id_all, te_pair_id, pred_y) 162 | if f1 > max_f1: 163 | max_keep_rate, max_p, max_r, max_f1 = keep_rate, p, r, f1 164 | print('original o_p {:.4f} o_r {:.4f} o_f1 {:.4f}'.format(o_p, o_r, o_f1)) 165 | print 166 | 'pair filter keep rate: {}'.format(keep_rate) 167 | print('test p {:.4f} r {:.4f} f1 {:.4f}'.format(p, r, f1)) 168 | 169 | print('max_p {:.4f} max_r {:.4f} max_f1 {:.4f}\n'.format(max_p, max_r, max_f1)) 170 | 171 | print 172 | 'Optimization Finished!\n' 173 | print('############# fold {} end ###############'.format(fold)) 174 | # fold += 1 175 | acc_subtask_list.append(max_acc_subtask) 176 | keep_rate_list.append(max_keep_rate) 177 | p_pair_list.append(max_p) 178 | r_pair_list.append(max_r) 179 | f1_pair_list.append(max_f1) 180 | o_p_pair_list.append(o_p) 181 | o_r_pair_list.append(o_r) 182 | o_f1_pair_list.append(o_f1) 183 | 184 | # 保存模型 185 | saver.save(sess, 'save/pair/model_P_cause_BERT_pair.ckpt', global_step=fold) # 186 | # 保存模型 187 | 188 | print_training_info() 189 | all_results = [acc_subtask_list, keep_rate_list, p_pair_list, r_pair_list, f1_pair_list, o_p_pair_list, 190 | o_r_pair_list, o_f1_pair_list] 191 | acc_subtask, keep_rate, p_pair, r_pair, f1_pair, o_p_pair, o_r_pair, o_f1_pair = map( 192 | lambda x: np.array(x).mean(), all_results) 193 | print('\nOriginal pair_predict: test f1 in 10 fold: {}'.format(np.array(o_f1_pair_list).reshape(-1, 1))) 194 | print('average : p {:.4f} r {:.4f} f1 {:.4f}\n'.format(o_p_pair, o_r_pair, o_f1_pair)) 195 | print('\nAverage keep_rate: {:.4f}\n'.format(keep_rate)) 196 | print('\nFiltered pair_predict: test f1 in 10 fold: {}'.format(np.array(f1_pair_list).reshape(-1, 1))) 197 | print('average : p {:.4f} r {:.4f} f1 {:.4f}\n'.format(p_pair, r_pair, f1_pair)) 198 | print_time() 199 | 200 | 201 | def main(_): 202 | # FLAGS.log_file_name = 'step2.log' 203 | FLAGS.training_iter = 20 204 | 205 | for scope_name in ['P_cause_BERT']: 206 | FLAGS.scope = scope_name 207 | run() 208 | 209 | 210 | if __name__ == '__main__': 211 | tf.compat.v1.app.run() -------------------------------------------------------------------------------- /ECPE_withBERT/pair_BERT_ext.py: -------------------------------------------------------------------------------- 1 | # encoding: utf-8 2 | # @author: zxding 3 | # email: d.z.x@qq.com 4 | 5 | 6 | import numpy as np 7 | import tensorflow as tf 8 | from sklearn.model_selection import KFold 9 | import sys, os, time, codecs, pdb 10 | 11 | from utils.tf_funcs import * 12 | from utils.prepare_data import * 13 | 14 | FLAGS = tf.app.flags.FLAGS 15 | # >>>>>>>>>>>>>>>>>>>> For Model <<<<<<<<<<<<<<<<<<<< # 16 | ## embedding parameters ## 17 | tf.app.flags.DEFINE_integer('embedding_dim', 768, 'dimension of word embedding') 18 | tf.app.flags.DEFINE_integer('embedding_dim_pos', 50, 'dimension of position embedding') 19 | ## input struct ## 20 | tf.app.flags.DEFINE_integer('max_sen_len', 30, 'max number of tokens per sentence') 21 | ## model struct ## 22 | tf.app.flags.DEFINE_integer('n_hidden', 100, 'number of hidden unit') 23 | tf.app.flags.DEFINE_integer('n_class', 2, 'number of distinct class') 24 | # >>>>>>>>>>>>>>>>>>>> For Data <<<<<<<<<<<<<<<<<<<< # 25 | tf.app.flags.DEFINE_string('log_file_name', '', 'name of log file') 26 | # >>>>>>>>>>>>>>>>>>>> For Training <<<<<<<<<<<<<<<<<<<< # 27 | tf.app.flags.DEFINE_integer('training_iter', 10, 'number of train iter') 28 | tf.app.flags.DEFINE_string('scope', 'P_cause', 'RNN scope') 29 | # not easy to tune , a good posture of using data to train model is very important 30 | tf.app.flags.DEFINE_integer('batch_size', 32, 'number of example per batch') 31 | tf.app.flags.DEFINE_float('learning_rate', 0.005, 'learning rate') 32 | tf.app.flags.DEFINE_float('keep_prob1', 0.5, 'word embedding training dropout keep prob') 33 | tf.app.flags.DEFINE_float('keep_prob2', 1.0, 'softmax layer dropout keep prob') 34 | tf.app.flags.DEFINE_float('l2_reg', 0.00001, 'l2 regularization') 35 | 36 | 37 | def build_model(word_embedding, pos_embedding, x, sen_len, keep_prob1, keep_prob2, distance, y, RNN=biLSTM): 38 | x = tf.nn.embedding_lookup(word_embedding, x) 39 | inputs = tf.reshape(x, [-1, FLAGS.max_sen_len, FLAGS.embedding_dim]) 40 | inputs = tf.nn.dropout(inputs, keep_prob=keep_prob1) 41 | sen_len = tf.reshape(sen_len, [-1]) 42 | 43 | def get_s(inputs, name): 44 | with tf.name_scope('word_encode'): 45 | inputs = RNN(inputs, sen_len, n_hidden=FLAGS.n_hidden, scope=FLAGS.scope + 'word_layer' + name) 46 | with tf.name_scope('word_attention'): 47 | sh2 = 2 * FLAGS.n_hidden 48 | w1 = get_weight_varible('word_att_w1' + name, [sh2, sh2]) 49 | b1 = get_weight_varible('word_att_b1' + name, [sh2]) 50 | w2 = get_weight_varible('word_att_w2' + name, [sh2, 1]) 51 | s = att_var(inputs, sen_len, w1, b1, w2) 52 | s = tf.reshape(s, [-1, 2 * 2 * FLAGS.n_hidden]) 53 | return s 54 | 55 | s = get_s(inputs, name='cause_word_encode') 56 | dis = tf.nn.embedding_lookup(pos_embedding, distance) 57 | s = tf.concat([s, dis], 1) 58 | 59 | s1 = tf.nn.dropout(s, keep_prob=keep_prob2) 60 | w_pair = get_weight_varible('softmax_w_pair', [4 * FLAGS.n_hidden + FLAGS.embedding_dim_pos, FLAGS.n_class]) 61 | b_pair = get_weight_varible('softmax_b_pair', [FLAGS.n_class]) 62 | pred_pair = tf.nn.softmax(tf.matmul(s1, w_pair) + b_pair) 63 | 64 | reg = tf.nn.l2_loss(w_pair) + tf.nn.l2_loss(b_pair) 65 | return pred_pair, reg 66 | 67 | 68 | def print_training_info(): 69 | print('\n\n>>>>>>>>>>>>>>>>>>>>TRAINING INFO:\n') 70 | print('batch-{}, lr-{}, kb1-{}, kb2-{}, l2_reg-{}'.format( 71 | FLAGS.batch_size, FLAGS.learning_rate, FLAGS.keep_prob1, FLAGS.keep_prob2, FLAGS.l2_reg)) 72 | print('training_iter-{}, scope-{}\n'.format(FLAGS.training_iter, FLAGS.scope)) 73 | 74 | 75 | def get_batch_data(x, sen_len, keep_prob1, keep_prob2, distance, y, batch_size, test=False): 76 | for index in batch_index(len(y), batch_size, test): 77 | feed_list = [x[index], sen_len[index], keep_prob1, keep_prob2, distance[index], y[index]] 78 | yield feed_list, len(index) 79 | 80 | 81 | def run(): 82 | save_dir = 'pair_data/{}/'.format(FLAGS.scope) 83 | if not os.path.exists(save_dir): 84 | os.makedirs(save_dir) 85 | if FLAGS.log_file_name: 86 | sys.stdout = open(save_dir + FLAGS.log_file_name, 'w') 87 | print_time() 88 | tf.reset_default_graph() 89 | # Model Code Block 90 | word_idx_rev, word_id_mapping, word_embedding, pos_embedding = load_w2v_BERT_ext(FLAGS.embedding_dim, 91 | FLAGS.embedding_dim_pos) 92 | word_embedding = tf.constant(word_embedding, dtype=tf.float32, name='word_embedding') 93 | pos_embedding = tf.constant(pos_embedding, dtype=tf.float32, name='pos_embedding') 94 | 95 | print('build model...') 96 | 97 | x = tf.placeholder(tf.int32, [None, 2, FLAGS.max_sen_len], name='x') 98 | sen_len = tf.placeholder(tf.int32, [None, 2], name='sen_len') 99 | keep_prob1 = tf.placeholder(tf.float32, name='keep_prob1') 100 | keep_prob2 = tf.placeholder(tf.float32, name='keep_prob2') 101 | distance = tf.placeholder(tf.int32, [None], name='distance') 102 | y = tf.placeholder(tf.float32, [None, FLAGS.n_class], name='y') 103 | placeholders = [x, sen_len, keep_prob1, keep_prob2, distance, y] 104 | 105 | pred_pair, reg = build_model(word_embedding, pos_embedding, x, sen_len, keep_prob1, keep_prob2, distance, y) 106 | loss_op = - tf.reduce_mean(y * tf.log(pred_pair)) + reg * FLAGS.l2_reg 107 | optimizer = tf.train.AdamOptimizer(learning_rate=FLAGS.learning_rate).minimize(loss_op) 108 | 109 | true_y_op = tf.argmax(y, 1) 110 | pred_y_op = tf.argmax(pred_pair, 1) 111 | acc_op = tf.reduce_mean(tf.cast(tf.equal(true_y_op, pred_y_op), tf.float32)) 112 | print('build model done!\n') 113 | 114 | # Training Code Block 115 | print_training_info() 116 | tf_config = tf.ConfigProto() 117 | tf_config.gpu_options.allow_growth = True 118 | 119 | saver = tf.train.Saver() 120 | # 保存模型 121 | tf.add_to_collection('pred_pair', pred_pair) 122 | 123 | with tf.Session(config=tf_config) as sess: 124 | keep_rate_list, acc_subtask_list, p_pair_list, r_pair_list, f1_pair_list = [], [], [], [], [] 125 | o_p_pair_list, o_r_pair_list, o_f1_pair_list = [], [], [] 126 | 127 | for fold in range(1, 11): 128 | sess.run(tf.global_variables_initializer()) 129 | # train for one fold 130 | print('############# fold {} begin ###############'.format(fold)) 131 | # Data Code Block 132 | train_file_name = 'fold{}_train.txt'.format(fold, FLAGS) 133 | test_file_name = 'fold{}_test.txt'.format(fold) 134 | tr_pair_id_all, tr_pair_id, tr_y, tr_x, tr_sen_len, tr_distance = load_data_2nd_step( 135 | save_dir + train_file_name, word_id_mapping, max_sen_len=FLAGS.max_sen_len) 136 | te_pair_id_all, te_pair_id, te_y, te_x, te_sen_len, te_distance = load_data_2nd_step( 137 | save_dir + test_file_name, word_id_mapping, max_sen_len=FLAGS.max_sen_len) 138 | 139 | max_acc_subtask, max_f1 = [-1.] * 2 140 | print('train docs: {} test docs: {}'.format(len(tr_x), len(te_x))) 141 | for i in xrange(FLAGS.training_iter): 142 | start_time, step = time.time(), 1 143 | # train 144 | for train, _ in get_batch_data(tr_x, tr_sen_len, FLAGS.keep_prob1, FLAGS.keep_prob2, tr_distance, tr_y, 145 | FLAGS.batch_size): 146 | _, loss, pred_y, true_y, acc = sess.run( 147 | [optimizer, loss_op, pred_y_op, true_y_op, acc_op], feed_dict=dict(zip(placeholders, train))) 148 | print('step {}: train loss {:.4f} acc {:.4f}'.format(step, loss, acc)) 149 | step = step + 1 150 | # test 151 | test = [te_x, te_sen_len, 1., 1., te_distance, te_y] 152 | loss, pred_y, true_y, acc = sess.run([loss_op, pred_y_op, true_y_op, acc_op], 153 | feed_dict=dict(zip(placeholders, test))) 154 | print('\nepoch {}: test loss {:.4f}, acc {:.4f}, cost time: {:.1f}s\n'.format(i, loss, acc, 155 | time.time() - start_time)) 156 | if acc > max_acc_subtask: 157 | max_acc_subtask = acc 158 | print('max_acc_subtask: {:.4f} \n'.format(max_acc_subtask)) 159 | 160 | # p, r, f1, o_p, o_r, o_f1, keep_rate = prf_2nd_step(te_pair_id_all, te_pair_id, pred_y, fold, save_dir) 161 | p, r, f1, o_p, o_r, o_f1, keep_rate = prf_2nd_step(te_pair_id_all, te_pair_id, pred_y) 162 | if f1 > max_f1: 163 | max_keep_rate, max_p, max_r, max_f1 = keep_rate, p, r, f1 164 | print('original o_p {:.4f} o_r {:.4f} o_f1 {:.4f}'.format(o_p, o_r, o_f1)) 165 | print 166 | 'pair filter keep rate: {}'.format(keep_rate) 167 | print('test p {:.4f} r {:.4f} f1 {:.4f}'.format(p, r, f1)) 168 | 169 | print('max_p {:.4f} max_r {:.4f} max_f1 {:.4f}\n'.format(max_p, max_r, max_f1)) 170 | 171 | print 172 | 'Optimization Finished!\n' 173 | print('############# fold {} end ###############'.format(fold)) 174 | # fold += 1 175 | acc_subtask_list.append(max_acc_subtask) 176 | keep_rate_list.append(max_keep_rate) 177 | p_pair_list.append(max_p) 178 | r_pair_list.append(max_r) 179 | f1_pair_list.append(max_f1) 180 | o_p_pair_list.append(o_p) 181 | o_r_pair_list.append(o_r) 182 | o_f1_pair_list.append(o_f1) 183 | 184 | # 保存模型 185 | saver.save(sess, 'save/pair/model_P_cause_BERT_ext_pair.ckpt', global_step=fold) # 186 | # 保存模型 187 | 188 | print_training_info() 189 | all_results = [acc_subtask_list, keep_rate_list, p_pair_list, r_pair_list, f1_pair_list, o_p_pair_list, 190 | o_r_pair_list, o_f1_pair_list] 191 | acc_subtask, keep_rate, p_pair, r_pair, f1_pair, o_p_pair, o_r_pair, o_f1_pair = map( 192 | lambda x: np.array(x).mean(), all_results) 193 | print('\nOriginal pair_predict: test f1 in 10 fold: {}'.format(np.array(o_f1_pair_list).reshape(-1, 1))) 194 | print('average : p {:.4f} r {:.4f} f1 {:.4f}\n'.format(o_p_pair, o_r_pair, o_f1_pair)) 195 | print('\nAverage keep_rate: {:.4f}\n'.format(keep_rate)) 196 | print('\nFiltered pair_predict: test f1 in 10 fold: {}'.format(np.array(f1_pair_list).reshape(-1, 1))) 197 | print('average : p {:.4f} r {:.4f} f1 {:.4f}\n'.format(p_pair, r_pair, f1_pair)) 198 | print_time() 199 | 200 | 201 | def main(_): 202 | # FLAGS.log_file_name = 'step2.log' 203 | FLAGS.training_iter = 20 204 | 205 | for scope_name in ['P_cause_BERT_ext']: 206 | FLAGS.scope = scope_name 207 | run() 208 | 209 | 210 | if __name__ == '__main__': 211 | tf.compat.v1.app.run() -------------------------------------------------------------------------------- /ECPE_withBERT/pair_res/pair_res_Ind_fold1.txt: -------------------------------------------------------------------------------- 1 | 1 (7, 9) || (7, 6) 1 2 | 2 (9, 8) || (9, 8) 1 3 | 3 (12, 12) || (12, 3) 1 4 | 4 (12, 9) (12, 10) (12, 11) || multipair 5 | 5 (7, 6) || 6 | 6 (6, 6) (9, 12) || (9, 7) 1 multipair 7 | 7 || 8 | 8 (1, 2) (1, 3) (8, 5) (8, 7) || (8, 8) 1 multipair 9 | 9 || 10 | 10 (5, 4) || (8, 8) 1 11 | 11 (5, 2) (5, 4) || (5, 4) 1 multipair 12 | 12 (7, 7) (7, 8) || (6, 5) 1 multipair 13 | 13 (6, 5) || (6, 3) 1 14 | 14 (2, 1) (6, 6) || (6, 6) 1 multipair 15 | 15 || 16 | 16 (5, 3) || (5, 3) 1 (5, 4) 1 17 | 17 (7, 6) || (7, 6) 1 18 | 18 (2, 2) || (2, 2) 1 19 | 19 (6, 7) || (6, 9) 0 20 | 20 (7, 6) || 21 | 21 (8, 7) || 22 | 22 (3, 1) || 23 | 23 (4, 2) || 24 | 24 (8, 8) || (8, 8) 1 25 | 25 (9, 7) (9, 8) || (9, 3) 0 multipair 26 | 26 (5, 3) || (5, 5) 1 27 | 27 (14, 12) (14, 13) || (14, 12) 1 multipair 28 | 28 (7, 7) || 29 | 29 (18, 16) || (18, 16) 1 30 | 30 (8, 7) || (8, 7) 1 31 | 31 (1, 2) || (1, 2) 1 32 | 32 (4, 6) || 33 | 33 (5, 5) || (5, 5) 1 34 | 34 (2, 1) || (2, 1) 1 35 | 35 (8, 8) || (8, 8) 1 36 | 36 (6, 5) || (6, 5) 1 37 | 37 (6, 3) || (6, 5) 1 38 | 38 (3, 5) || 39 | 39 (4, 3) (5, 3) || (4, 3) 1 multipair 40 | 40 || 41 | 41 (13, 12) || (4, 12) 0 42 | 42 (5, 4) (13, 12) || (13, 4) 0 multipair 43 | 43 || 44 | 44 (5, 4) (6, 6) || multipair 45 | 45 || 46 | 46 (12, 11) || 47 | 47 (4, 3) || (4, 3) 1 48 | 48 (6, 4) (6, 5) || multipair 49 | 49 (5, 5) || (5, 5) 1 50 | 50 (5, 4) || 51 | 51 (6, 5) || 52 | 52 (3, 3) || (3, 3) 1 53 | 53 (8, 8) || (8, 8) 1 54 | 54 (8, 7) (5, 5) || (1, 2) 1 multipair 55 | 55 || 56 | 56 (2, 1) || (2, 1) 1 57 | 57 (12, 10) || 58 | 58 (11, 9) (11, 10) || (11, 9) 1 (11, 10) 1 multipair good 59 | 59 (2, 1) (2, 2) || (2, 2) 1 multipair 60 | 60 (3, 2) || (3, 2) 1 61 | 61 (6, 4) (6, 5) || multipair 62 | 62 (4, 3) || (4, 3) 1 63 | 63 (4, 4) || (4, 4) 1 64 | 64 (6, 5) || 65 | 65 (3, 2) || (3, 2) 1 66 | 66 (7, 6) || (7, 6) 1 (7, 17) 0 67 | 67 (8, 7) || (8, 7) 1 68 | 68 (2, 1) || (2, 1) 1 69 | 69 (4, 4) (6, 6) || (4, 6) 1 (6, 6) 1 multipair 70 | 70 || 71 | 71 (2, 6) || (6, 6) 1 72 | 72 (7, 5) (7, 6) || (7, 6) 1 multipair 73 | 73 (2, 4) || 74 | 74 (3, 2) || (3, 2) 1 75 | 75 (3, 4) || 76 | 76 (6, 5) || (4, 4) 1 77 | 77 (3, 3) || (3, 3) 1 78 | 78 (5, 4) (10, 8) || (10, 1) 0 multipair 79 | 79 || 80 | 80 (4, 4) || (4, 5) 1 81 | 81 (2, 1) || 82 | 82 (8, 7) || (8, 7) 1 83 | 83 (8, 8) || (6, 7) 1 (7, 7) 1 84 | 84 (3, 2) || (3, 2) 1 85 | 85 (2, 1) (6, 5) || (2, 5) 1 (6, 5) 1 multipair 86 | 86 || 87 | 87 (2, 2) || 88 | 88 (2, 1) || (2, 1) 1 89 | 89 (10, 9) || (10, 9) 1 90 | 90 (3, 3) || (3, 3) 1 91 | 91 (4, 3) || 92 | 92 (5, 5) || (5, 5) 1 93 | 93 (11, 10) || (7, 10) 1 (11, 10) 1 94 | 94 (5, 4) || (5, 4) 1 95 | 95 (3, 2) || (3, 3) 1 96 | 96 (5, 2) (5, 4) || (5, 4) 1 multipair 97 | 97 (4, 2) (4, 3) || multipair 98 | 98 (4, 3) || (4, 3) 1 99 | 99 (6, 7) || (6, 3) 1 100 | 100 (5, 2) (5, 3) || (5, 3) 1 multipair 101 | 101 (5, 3) (5, 4) || (5, 4) 1 multipair 102 | 102 (4, 1) (4, 2) || (4, 2) 1 multipair 103 | 103 (7, 2) || (9, 8) 1 104 | 104 (3, 2) || 105 | 105 (2, 1) || 106 | 106 (3, 1) (3, 2) || multipair 107 | 107 (3, 1) || 108 | 108 (2, 2) || (2, 2) 1 109 | 109 (6, 6) || 110 | 110 (8, 7) || (8, 5) 1 111 | 111 (3, 2) || (3, 2) 1 (3, 3) 1 112 | 112 (6, 5) || (6, 5) 1 113 | 113 (10, 9) || (10, 9) 1 114 | 114 (6, 6) || 115 | 115 (4, 3) || 116 | 116 (3, 3) || (3, 3) 1 117 | 117 (3, 2) || (3, 2) 1 118 | 118 (6, 5) || (6, 5) 1 119 | 119 (5, 4) || (1, 4) 1 (5, 4) 1 120 | 120 (7, 6) || (7, 6) 1 121 | 121 (4, 3) || 122 | 122 (15, 14) || (11, 9) 1 123 | 123 (16, 15) || (16, 15) 1 124 | 124 (14, 14) || (14, 14) 1 125 | 125 (14, 13) || (14, 13) 1 126 | 126 (10, 9) || (10, 9) 1 127 | 127 (4, 2) || 128 | 128 (6, 7) || (6, 6) 1 129 | 129 (4, 3) || 130 | 130 (16, 15) || (16, 8) 1 131 | 131 (7, 7) || (10, 7) 1 132 | 132 (6, 6) || 133 | 133 (2, 1) || (2, 1) 1 134 | 134 (21, 22) || (10, 9) 1 135 | 135 (15, 15) || (15, 15) 1 136 | 136 (3, 3) || (3, 3) 1 137 | 137 (12, 11) (13, 13) || (12, 11) 1 (12, 13) 1 (13, 11) 1 (13, 13) 1 multipair 138 | 138 || 139 | 139 (18, 17) || 140 | 140 (4, 4) || (4, 4) 1 141 | 141 (7, 6) || 142 | 142 (21, 20) || (21, 20) 1 143 | 143 (6, 14) (3, 3) || (3, 3) 1 (3, 5) 1 (6, 3) 0 (6, 5) 1 multipair 144 | 144 || 145 | 145 (3, 2) || 146 | 146 (2, 2) || (2, 2) 1 147 | 147 (12, 12) || (12, 12) 1 148 | 148 (7, 6) || 149 | 149 (12, 13) || (13, 9) 0 150 | 150 (16, 15) || (16, 15) 1 151 | 151 (5, 1) || (4, 3) 1 (4, 10) 1 (5, 3) 1 (5, 10) 1 152 | 152 (3, 2) (13, 13) || (13, 13) 1 multipair 153 | 153 || 154 | 154 (8, 9) || 155 | 155 (7, 7) || (6, 7) 1 (7, 7) 1 156 | 156 (5, 4) || (5, 4) 1 157 | 157 (15, 14) || (14, 14) 1 (15, 14) 1 158 | 158 (16, 15) || (16, 15) 1 159 | 159 (17, 16) || (17, 16) 1 160 | 160 (7, 5) || (3, 1) 1 161 | 161 (17, 16) || 162 | 162 (5, 6) || (5, 6) 1 (7, 6) 1 163 | 163 (8, 7) || 164 | 164 (5, 4) || (5, 7) 0 165 | 165 (8, 7) || (5, 7) 1 166 | 166 (7, 6) || 167 | 167 (10, 9) (14, 13) (17, 16) || (14, 13) 1 (14, 16) 0 multipair 168 | 168 || 169 | 169 || 170 | 170 (13, 12) || (13, 12) 1 171 | 171 (2, 2) || 172 | 172 (8, 9) || (12, 8) 0 173 | 173 (6, 5) || (6, 5) 1 174 | 174 (2, 2) || (2, 2) 1 175 | 175 (4, 3) || (4, 3) 1 176 | 176 (10, 10) || 177 | 177 (2, 1) || (2, 10) 1 (11, 10) 1 178 | 178 (6, 6) || (6, 6) 1 179 | 179 (7, 6) || (7, 6) 1 180 | 180 (6, 5) || (8, 8) 1 181 | 181 (5, 6) || 182 | 182 (20, 20) || 183 | 183 (5, 4) || (5, 12) 0 184 | 184 (14, 12) || (5, 12) 0 185 | 185 (18, 17) || (18, 17) 1 186 | 186 (3, 2) || (3, 3) 1 187 | 187 (4, 3) || 188 | 188 (9, 8) || 189 | 189 (15, 14) || (15, 16) 0 190 | 190 (18, 19) || (18, 18) 1 (18, 19) 1 191 | 191 (3, 2) || (3, 3) 1 192 | 192 (5, 6) || 193 | 193 (8, 7) || (8, 7) 1 194 | 194 (20, 18) (20, 19) || (20, 19) 1 multipair 195 | 195 (12, 11) || (12, 11) 1 196 | 196 (11, 11) || (11, 10) 1 (11, 11) 1 197 | 197 (15, 14) || 198 | 198 (15, 15) || (15, 15) 1 199 | 199 (8, 9) || 200 | 200 (15, 16) || (15, 16) 1 201 | 201 (5, 4) || (5, 5) 1 202 | 202 (13, 13) || (4, 13) 1 (13, 13) 1 203 | 203 (32, 31) || 204 | 204 (7, 7) (11, 10) || (11, 10) 1 multipair 205 | 205 || 206 | 206 (5, 4) || 207 | 207 (14, 17) || (14, 6) 0 208 | 208 (15, 13) || (14, 5) 1 209 | 209 (17, 18) || (17, 18) 1 210 | 210 (27, 26) || (27, 26) 1 211 | 211 (17, 16) || (9, 16) 1 (17, 16) 1 212 | -------------------------------------------------------------------------------- /ECPE_withBERT/pair_res/pair_res_Ind_fold2.txt: -------------------------------------------------------------------------------- 1 | 212 (10, 9) || 2 | 213 (2, 2) || (2, 2) 1 3 | 214 (8, 7) || (8, 7) 1 4 | 215 (12, 10) || (12, 11) 1 5 | 216 (8, 7) || (8, 7) 1 6 | 217 (11, 10) || (8, 7) 1 7 | 218 (4, 1) (4, 2) || (11, 10) 1 multipair 8 | 219 (14, 14) || 9 | 220 (5, 4) || (5, 4) 1 10 | 221 (7, 6) (18, 17) || (7, 6) 1 (18, 6) 1 multipair 11 | 222 || 12 | 223 (9, 3) || 13 | 224 (4, 3) || (10, 9) 1 14 | 225 (6, 5) || (6, 5) 1 (6, 9) 1 15 | 226 (7, 6) || (7, 6) 1 16 | 227 (21, 23) || 17 | 228 (12, 11) || 18 | 229 (16, 15) || 19 | 230 (5, 4) || (5, 5) 1 (8, 5) 1 20 | 231 (4, 3) || (4, 3) 1 21 | 232 (4, 3) || (4, 3) 1 22 | 233 (6, 9) || (6, 2) 1 23 | 234 (15, 14) || (8, 12) 0 (8, 14) 0 (15, 12) 0 (15, 14) 1 24 | 235 (2, 1) || 25 | 236 (12, 7) || (12, 13) 1 26 | 237 (8, 7) (10, 9) || (8, 7) 1 (8, 9) 1 (10, 7) 1 (10, 9) 1 multipair 27 | 238 || 28 | 239 (2, 2) || (8, 10) 1 29 | 240 (7, 7) || (7, 7) 1 30 | 241 (8, 7) || (8, 4) 0 31 | 242 (3, 2) || (3, 2) 1 32 | 243 (7, 6) (13, 12) || (7, 6) 1 multipair 33 | 244 || 34 | 245 (1, 1) || (4, 1) 1 35 | 246 (18, 17) || (18, 17) 1 36 | 247 (12, 11) || (12, 11) 1 37 | 248 (25, 24) || (25, 24) 1 38 | 249 (10, 9) || (10, 9) 1 39 | 250 (10, 9) || (10, 9) 1 40 | 251 (5, 4) || (5, 4) 1 41 | 252 (2, 1) || 42 | 253 (9, 8) || (7, 6) 1 (7, 8) 1 43 | 254 (12, 10) || (12, 11) 1 44 | 255 (11, 10) || (11, 10) 1 45 | 256 (16, 15) || (16, 15) 1 46 | 257 (3, 2) || (4, 2) 1 47 | 258 (8, 8) || (8, 8) 1 48 | 259 (8, 7) || (8, 7) 1 49 | 260 (11, 9) || 50 | 261 (4, 4) || (4, 2) 1 51 | 262 (20, 20) || (20, 19) 1 52 | 263 (1, 1) (4, 5) || (4, 1) 0 multipair 53 | 264 || 54 | 265 (6, 6) || (6, 5) 1 (6, 6) 1 55 | 266 (6, 4) (7, 8) || (6, 7) 1 (7, 7) 1 multipair 56 | 267 || 57 | 268 (14, 14) (2, 1) || (2, 1) 1 (2, 14) 0 multipair 58 | 269 || 59 | 270 (2, 1) (9, 8) || (9, 1) 0 (9, 8) 1 (9, 9) 1 multipair 60 | 271 || 61 | 272 (2, 1) || (2, 1) 1 62 | 273 (5, 4) (13, 14) || (5, 4) 1 (13, 4) 0 multipair 63 | 274 || 64 | 275 (5, 4) || (5, 4) 1 65 | 276 (8, 9) || (7, 6) 1 66 | 277 (4, 4) || 67 | 278 (4, 3) || (4, 3) 1 68 | 279 (13, 12) || 69 | 280 (12, 12) || (12, 12) 1 70 | 281 (15, 16) || 71 | 282 (6, 5) || (6, 5) 1 72 | 283 (8, 8) || (8, 1) 0 73 | 284 (9, 10) || (9, 10) 1 74 | 285 (2, 2) || (2, 6) 0 75 | 286 (8, 7) || (8, 6) 1 76 | 287 (8, 6) (8, 7) || multipair 77 | 288 (8, 7) || (8, 7) 1 78 | 289 (14, 13) || (16, 16) 1 79 | 290 (7, 5) || (7, 6) 1 80 | 291 (10, 10) || (10, 10) 1 81 | 292 (5, 4) || (5, 4) 1 82 | 293 (9, 8) || (3, 2) 1 (3, 8) 0 (9, 2) 1 (9, 8) 1 83 | 294 (8, 6) || (8, 7) 1 84 | 295 (8, 7) || (8, 7) 1 85 | 296 (11, 10) || (11, 10) 1 86 | 297 (5, 4) || 87 | 298 (4, 3) || 88 | 299 (3, 2) || (3, 2) 1 89 | 300 (4, 3) || (4, 7) 0 90 | 301 (14, 13) || (14, 13) 1 91 | 302 (8, 7) || (8, 7) 1 92 | 303 (4, 3) || (4, 3) 1 93 | 304 (12, 11) || (12, 11) 1 94 | 305 (9, 9) || (9, 9) 1 95 | 306 (8, 7) || 96 | 307 (14, 13) || (14, 13) 1 97 | 308 (6, 5) || (6, 5) 1 98 | 309 (18, 17) || (9, 9) 1 (9, 18) 0 99 | 310 (8, 7) || (8, 1) 1 100 | 311 (2, 1) || 101 | 312 (11, 8) || (11, 8) 1 (11, 13) 1 102 | 313 (9, 10) || (9, 8) 1 (10, 8) 1 103 | 314 (9, 8) || (9, 8) 1 104 | 315 (4, 5) || (4, 4) 1 105 | 316 (3, 3) || (3, 3) 1 106 | 317 (4, 4) || 107 | 318 (4, 4) || (4, 4) 1 108 | 319 (6, 6) || (6, 6) 1 109 | 320 (12, 11) || (12, 11) 1 110 | 321 (10, 9) || (10, 9) 1 111 | 322 (12, 10) || (12, 5) 0 112 | 323 (9, 8) || (9, 8) 1 113 | 324 (7, 7) || (7, 7) 1 114 | 325 (1, 1) || 115 | 326 (7, 7) || (7, 7) 1 116 | 327 (4, 2) || (6, 5) 1 (6, 6) 1 117 | 328 (10, 12) || (6, 5) 1 (6, 6) 1 118 | 329 (7, 8) || (7, 12) 0 119 | 330 (6, 5) || (6, 4) 1 120 | 331 (5, 4) || (5, 5) 1 121 | 332 (2, 1) || 122 | 333 (11, 10) || (11, 10) 1 123 | 334 (6, 5) || (6, 5) 1 124 | 335 (6, 5) || 125 | 336 (10, 11) || (10, 10) 1 126 | 337 (7, 6) (13, 13) || (7, 6) 1 multipair 127 | 338 || 128 | 339 (11, 10) || (11, 11) 1 129 | 340 (13, 12) || (10, 9) 1 (13, 9) 0 130 | 341 (5, 5) || 131 | 342 (7, 8) || 132 | 343 (9, 8) || (9, 8) 1 133 | 344 (14, 14) || (14, 12) 1 134 | 345 (3, 2) || 135 | 346 (11, 10) || (11, 10) 1 136 | 347 (4, 3) || 137 | 348 (7, 7) || (6, 7) 1 (7, 7) 1 138 | 349 (9, 8) || (9, 8) 1 139 | 350 (16, 15) || (13, 11) 1 (13, 16) 0 (16, 11) 0 (16, 16) 1 140 | 351 (6, 5) || (6, 6) 1 (7, 6) 1 141 | 352 (11, 11) || (11, 11) 1 142 | 353 (4, 5) || (4, 10) 0 (11, 10) 1 143 | 354 (4, 4) || (4, 3) 1 144 | 355 (1, 1) || (1, 1) 1 145 | 356 (3, 3) || (3, 3) 1 146 | 357 (7, 6) || 147 | 358 (9, 8) || (9, 8) 1 148 | 359 (8, 7) || (8, 7) 1 149 | 360 (8, 8) || (8, 8) 1 150 | 361 (8, 8) || (8, 8) 1 151 | 362 (8, 8) || (8, 8) 1 152 | 363 (13, 12) || (7, 6) 1 153 | 364 (3, 1) || (2, 3) 1 154 | 365 (9, 8) || 155 | 366 (7, 5) || (7, 3) 0 156 | 367 (2, 2) || 157 | 368 (8, 7) || (8, 7) 1 158 | 369 (5, 4) || 159 | 370 (4, 3) || (3, 3) 1 (4, 3) 1 160 | 371 (6, 6) || (7, 6) 1 161 | 372 (9, 8) || (9, 8) 1 162 | 373 (13, 13) || (13, 13) 1 163 | 374 (4, 3) || (4, 3) 1 164 | 375 (3, 2) || (3, 2) 1 (3, 11) 0 165 | 376 (8, 7) (9, 8) (12, 11) || (8, 7) 1 multipair 166 | 377 || 167 | 378 || 168 | 379 (4, 4) || 169 | 380 (5, 3) (5, 4) || (5, 4) 1 multipair 170 | 381 (6, 6) || (6, 6) 1 171 | 382 (11, 10) || (3, 10) 1 (11, 10) 1 172 | 383 (4, 3) || (4, 3) 1 173 | 384 (7, 7) || (7, 10) 0 174 | 385 (10, 9) || (10, 4) 0 175 | 386 (10, 9) || (10, 9) 1 176 | 387 (7, 6) (11, 10) || multipair 177 | 388 || 178 | 389 (9, 7) (9, 8) || (9, 7) 1 multipair 179 | 390 (7, 6) || 180 | 391 (1, 1) (5, 4) || (5, 4) 1 multipair 181 | 392 || 182 | 393 (4, 3) || (4, 2) 1 (4, 3) 1 183 | 394 (9, 10) (9, 11) || (6, 7) 1 (9, 7) 0 multipair 184 | 395 (5, 4) || (5, 4) 1 185 | 396 (15, 14) || 186 | 397 (5, 4) || (5, 4) 1 187 | 398 (2, 1) || (2, 1) 1 (5, 1) 0 188 | 399 (1, 1) || 189 | 400 (5, 4) (9, 7) (9, 8) || (5, 4) 1 multipair 190 | 401 || 191 | 402 (5, 5) || (5, 5) 1 192 | 403 (6, 6) || (6, 6) 1 193 | 404 (9, 8) || (9, 8) 1 194 | 405 (5, 5) || (5, 7) 1 195 | 406 (12, 11) || (12, 10) 1 (12, 11) 1 196 | 407 (4, 4) || (4, 4) 1 197 | 408 (13, 12) || (13, 3) 1 198 | 409 (9, 8) || (3, 8) 0 (9, 8) 1 199 | 410 (7, 7) || 200 | 411 (16, 15) || (8, 7) 1 (8, 14) 0 (16, 7) 0 (16, 14) 1 201 | 412 (7, 7) || (7, 7) 1 202 | 413 (4, 2) (4, 3) || (4, 3) 1 multipair 203 | 414 (4, 3) || 204 | 415 (3, 2) || (3, 2) 1 205 | 416 (10, 11) || (10, 11) 1 206 | 417 (8, 8) || (8, 14) 0 207 | 418 (8, 8) || (8, 8) 1 (8, 9) 0 208 | 419 (11, 9) || (11, 7) 0 209 | 420 (5, 4) || (5, 4) 1 210 | 421 (11, 10) || 211 | 422 (3, 2) || (3, 2) 1 212 | -------------------------------------------------------------------------------- /ECPE_withBERT/training_info/training_info_Cause.txt: -------------------------------------------------------------------------------- 1 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 2 | 3 | batch-32, lr-0.005, kb1-0.8, kb2-1.0, l2_reg-1e-05 4 | training_iter-15, scope-P_cause 5 | 6 | 7 | cause_predict: test f1 in 10 fold: [[ 0.56 ] 8 | [ 0.60827251] 9 | [ 0.62621359] 10 | [ 0.65542169] 11 | [ 0.62591687] 12 | [ 0.64631043] 13 | [ 0.71246819] 14 | [ 0.64210526] 15 | [ 0.54069767] 16 | [ 0.50537634]] 17 | average : acc 0.9454 p 0.6739 r 0.5626 f1 0.6123 18 | 19 | position_predict: test f1 in 10 fold: [[ 0.77664975] 20 | [ 0.80193237] 21 | [ 0.85371703] 22 | [ 0.83886256] 23 | [ 0.85990338] 24 | [ 0.81463415] 25 | [ 0.86538462] 26 | [ 0.87780549] 27 | [ 0.82414698] 28 | [ 0.80387409]] 29 | average : acc 0.9751 p 0.8508 r 0.8140 f1 0.8317 30 | 31 | pair.py 32 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 33 | 34 | batch-32, lr-0.005, kb1-0.5, kb2-1.0, l2_reg-1e-05 35 | training_iter-20, scope-P_cause 36 | 37 | 38 | Original pair_predict: test f1 in 10 fold: [[0.50990099] 39 | [0.54800936] 40 | [0.56944444] 41 | [0.57270693] 42 | [0.57482185] 43 | [0.56310679] 44 | [0.63961813] 45 | [0.61298701] 46 | [0.49562682] 47 | [0.44854881]] 48 | average : p 0.5887 r 0.5259 f1 0.5535 49 | 50 | 51 | Average keep_rate: 0.8742 52 | 53 | 54 | Filtered pair_predict: test f1 in 10 fold: [[0.54068241] 55 | [0.58646616] 56 | [0.60199004] 57 | [0.61951219] 58 | [0.61696658] 59 | [0.59640102] 60 | [0.68020304] 61 | [0.63760217] 62 | [0.50746268] 63 | [0.46629213]] 64 | average : p 0.6693 r 0.5226 f1 0.5854 65 | 66 | -------------------------------------------------------------------------------- /ECPE_withBERT/training_info/training_info_Cause_BERT.txt: -------------------------------------------------------------------------------- 1 | 2 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 3 | 4 | batch-32, lr-0.005, kb1-0.8, kb2-1.0, l2_reg-1e-05 5 | training_iter-15, scope-P_cause_BERT 6 | 7 | 8 | cause_predict: test f1 in 10 fold: [[0.56233422] 9 | [0.6044226 ] 10 | [0.62921348] 11 | [0.66494845] 12 | [0.7 ] 13 | [0.70379747] 14 | [0.7628866 ] 15 | [0.68257757] 16 | [0.57800512] 17 | [0.55072464]] 18 | average : acc 0.9481 p 0.6897 r 0.6085 f1 0.6439 19 | 20 | position_predict: test f1 in 10 fold: [[0.78921569] 21 | [0.86005089] 22 | [0.88470588] 23 | [0.84433962] 24 | [0.89686099] 25 | [0.90731707] 26 | [0.93838863] 27 | [0.88888889] 28 | [0.85436893] 29 | [0.8428246 ]] 30 | average : acc 0.9802 p 0.8646 r 0.8795 f1 0.8707 31 | 32 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 33 | 34 | batch-32, lr-0.005, kb1-0.5, kb2-1.0, l2_reg-1e-05 35 | training_iter-20, scope-P_cause_BERT 36 | 37 | 38 | Original pair_predict: test f1 in 10 fold: [[0.47228915] 39 | [0.525 ] 40 | [0.54545454] 41 | [0.56941176] 42 | [0.60169491] 43 | [0.63157894] 44 | [0.69230769] 45 | [0.61269146] 46 | [0.49180327] 47 | [0.47747747]] 48 | average : p 0.5583 r 0.5713 f1 0.5620 49 | 50 | 51 | Average keep_rate: 0.7459 52 | 53 | 54 | Filtered pair_predict: test f1 in 10 fold: [[0.52432432] 55 | [0.58659217] 56 | [0.63523573] 57 | [0.6380697 ] 58 | [0.68316831] 59 | [0.69312169] 60 | [0.76063829] 61 | [0.68205128] 62 | [0.56675749] 63 | [0.54594594]] 64 | average : p 0.7309 r 0.5591 f1 0.6316 65 | 66 | -------------------------------------------------------------------------------- /ECPE_withBERT/training_info/training_info_Cause_BERT_ext.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 4 | 5 | batch-32, lr-0.005, kb1-0.8, kb2-1.0, l2_reg-1e-05 6 | training_iter-15, scope-P_cause_BERT_ext 7 | 8 | 9 | cause_predict: test f1 in 10 fold: [[0.60591133] 10 | [0.65105386] 11 | [0.68217054] 12 | [0.73913043] 13 | [0.73965937] 14 | [0.72868217] 15 | [0.80412371] 16 | [0.69543147] 17 | [0.60724234] 18 | [0.60266667]] 19 | average : acc 0.9553 p 0.7508 r 0.6324 f1 0.6856 20 | 21 | position_predict: test f1 in 10 fold: [[0.765 ] 22 | [0.83764706] 23 | [0.87782805] 24 | [0.8 ] 25 | [0.88405797] 26 | [0.92156863] 27 | [0.92990654] 28 | [0.89405685] 29 | [0.85432099] 30 | [0.84862385]] 31 | average : acc 0.9787 p 0.8636 r 0.8612 f1 0.8613 32 | 33 | 34 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 35 | 36 | batch-32, lr-0.005, kb1-0.5, kb2-1.0, l2_reg-1e-05 37 | training_iter-20, scope-P_cause_BERT_ext 38 | 39 | 40 | Original pair_predict: test f1 in 10 fold: [[0.50340136] 41 | [0.54077253] 42 | [0.59534883] 43 | [0.61002178] 44 | [0.64168618] 45 | [0.67481662] 46 | [0.73882352] 47 | [0.66323907] 48 | [0.54787234] 49 | [0.55639097]] 50 | average : p 0.6214 r 0.5962 f1 0.6072 51 | 52 | 53 | Average keep_rate: 0.8065 54 | 55 | 56 | Filtered pair_predict: test f1 in 10 fold: [[0.55643044] 57 | [0.6278481 ] 58 | [0.65463917] 59 | [0.68671679] 60 | [0.69897959] 61 | [0.72062663] 62 | [0.79691516] 63 | [0.69189189] 64 | [0.59237536] 65 | [0.58064516]] 66 | average : p 0.7570 r 0.5875 f1 0.6607 67 | 68 | -------------------------------------------------------------------------------- /ECPE_withBERT/training_info/training_info_Emotion.txt: -------------------------------------------------------------------------------- 1 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 2 | 3 | batch-32, lr-0.005, kb1-0.8, kb2-1.0, l2_reg-1e-05 4 | training_iter-15, scope-P_emotion 5 | 6 | 7 | cause_predict: test f1 in 10 fold: [[0.60784314] 8 | [0.65700483] 9 | [0.64615385] 10 | [0.67924528] 11 | [0.67654321] 12 | [0.67830424] 13 | [0.75376884] 14 | [0.6716792 ] 15 | [0.59776536] 16 | [0.55494505]] 17 | average : acc 0.9507 p 0.7113 r 0.6044 f1 0.6523 18 | 19 | position_predict: test f1 in 10 fold: [[0.76814988] 20 | [0.80193237] 21 | [0.85507246] 22 | [0.81463415] 23 | [0.82352941] 24 | [0.81683168] 25 | [0.87769784] 26 | [0.86956522] 27 | [0.82010582] 28 | [0.77909739]] 29 | average : acc 0.9735 p 0.8331 r 0.8130 f1 0.8227 30 | 31 | 32 | pair.py 33 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 34 | 35 | batch-32, lr-0.005, kb1-0.5, kb2-1.0, l2_reg-1e-05 36 | training_iter-20, scope-P_emotion 37 | 38 | 39 | Original pair_predict: test f1 in 10 fold: [[0.5170068 ] 40 | [0.56542056] 41 | [0.58252427] 42 | [0.59545454] 43 | [0.58064516] 44 | [0.58823529] 45 | [0.69030732] 46 | [0.61951219] 47 | [0.54545454] 48 | [0.49867374]] 49 | average : p 0.5998 r 0.5602 f1 0.5783 50 | 51 | 52 | Average keep_rate: 0.8859 53 | 54 | 55 | Filtered pair_predict: test f1 in 10 fold: [[0.54589371] 56 | [0.59313725] 57 | [0.62663185] 58 | [0.64058679] 59 | [0.62626262] 60 | [0.61274509] 61 | [0.72456575] 62 | [0.65803108] 63 | [0.56733524] 64 | [0.51506849]] 65 | average : p 0.6761 r 0.5588 f1 0.6110 66 | 67 | 68 | 69 | 70 | -------------------------------------------------------------------------------- /ECPE_withBERT/training_info/training_info_Emotion_BERT.txt: -------------------------------------------------------------------------------- 1 | 2 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 3 | 4 | batch-32, lr-0.005, kb1-0.8, kb2-1.0, l2_reg-1e-05 5 | training_iter-15, scope-P_emotion_BERT 6 | 7 | 8 | cause_predict: test f1 in 10 fold: [[0.59512195] 9 | [0.66666667] 10 | [0.68911917] 11 | [0.7014218 ] 12 | [0.72684086] 13 | [0.7748184 ] 14 | [0.81233933] 15 | [0.72906404] 16 | [0.59405941] 17 | [0.60194175]] 18 | average : acc 0.9542 p 0.7275 r 0.6568 f1 0.6891 19 | 20 | position_predict: test f1 in 10 fold: [[0.78024691] 21 | [0.84187082] 22 | [0.88729017] 23 | [0.83140878] 24 | [0.90023202] 25 | [0.92610837] 26 | [0.93271462] 27 | [0.86956522] 28 | [0.87192118] 29 | [0.83588621]] 30 | average : acc 0.9793 p 0.8501 r 0.8885 f1 0.8677 31 | 32 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 33 | 34 | batch-32, lr-0.005, kb1-0.5, kb2-1.0, l2_reg-1e-05 35 | training_iter-20, scope-P_emotion_BERT 36 | 37 | 38 | Original pair_predict: test f1 in 10 fold: [[0.50340136] 39 | [0.55932203] 40 | [0.63054187] 41 | [0.6012526 ] 42 | [0.63225806] 43 | [0.69444444] 44 | [0.72685185] 45 | [0.63228699] 46 | [0.52655889] 47 | [0.49894291]] 48 | average : p 0.5811 r 0.6256 f1 0.6006 49 | 50 | 51 | Average keep_rate: 0.7831 52 | 53 | 54 | Filtered pair_predict: test f1 in 10 fold: [[0.56396866] 55 | [0.65185185] 56 | [0.65979381] 57 | [0.67942583] 58 | [0.70904645] 59 | [0.76142131] 60 | [0.79795396] 61 | [0.68999999] 62 | [0.58918918] 63 | [0.57352941]] 64 | average : p 0.7299 r 0.6175 f1 0.6676 65 | 66 | -------------------------------------------------------------------------------- /ECPE_withBERT/training_info/training_info_Emotion_BERT_ext.txt: -------------------------------------------------------------------------------- 1 | 2 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 3 | 4 | batch-32, lr-0.005, kb1-0.8, kb2-1.0, l2_reg-1e-05 5 | training_iter-15, scope-P_emotion_BERT_ext 6 | 7 | 8 | cause_predict: test f1 in 10 fold: [[0.58333333] 9 | [0.65648855] 10 | [0.70697674] 11 | [0.6588785 ] 12 | [0.72813239] 13 | [0.75242718] 14 | [0.78934625] 15 | [0.72 ] 16 | [0.59375 ] 17 | [0.55913978]] 18 | average : acc 0.9536 p 0.7282 r 0.6360 f1 0.6748 19 | 20 | position_predict: test f1 in 10 fold: [[0.80684597] 21 | [0.85645933] 22 | [0.90307329] 23 | [0.81860465] 24 | [0.8960739 ] 25 | [0.90186916] 26 | [0.92890995] 27 | [0.87383178] 28 | [0.87142857] 29 | [0.8604119 ]] 30 | average : acc 0.9803 p 0.8569 r 0.8882 f1 0.8718 31 | 32 | 33 | pair.py 34 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 35 | 36 | batch-32, lr-0.005, kb1-0.5, kb2-1.0, l2_reg-1e-05 37 | training_iter-20, scope-P_emotion_BERT_ext 38 | 39 | 40 | Original pair_predict: test f1 in 10 fold: [[0.53506493] 41 | [0.5776699 ] 42 | [0.62526766] 43 | [0.55532359] 44 | [0.62420382] 45 | [0.64102564] 46 | [0.72234762] 47 | [0.64801864] 48 | [0.51184834] 49 | [0.49238578]] 50 | average : p 0.5891 r 0.6069 f1 0.5933 51 | 52 | 53 | Average keep_rate: 0.7807 54 | 55 | 56 | Filtered pair_predict: test f1 in 10 fold: [[0.56353591] 57 | [0.63586956] 58 | [0.69565217] 59 | [0.63341645] 60 | [0.70588235] 61 | [0.73762376] 62 | [0.77641277] 63 | [0.69922879] 64 | [0.57300275] 65 | [0.52661064]] 66 | average : p 0.7375 r 0.5942 f1 0.6547 67 | 68 | -------------------------------------------------------------------------------- /ECPE_withBERT/training_info/training_info_Ind.txt: -------------------------------------------------------------------------------- 1 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 2 | 3 | batch-32, lr-0.005, kb1-0.8, kb2-1.0, l2_reg-1e-05 4 | training_iter-15, scope-Ind_BiLSTM_2 5 | 6 | 7 | cause_predict: test f1 in 10 fold: [[ 0.58795181] 8 | [ 0.5959596 ] 9 | [ 0.63084112] 10 | [ 0.65482234] 11 | [ 0.62980769] 12 | [ 0.6566416 ] 13 | [ 0.6954023 ] 14 | [ 0.65306122] 15 | [ 0.57534247] 16 | [ 0.52261307]] 17 | average : acc 0.9460 p 0.6826 r 0.5711 f1 0.6202 18 | 19 | position_predict: test f1 in 10 fold: [[ 0.79493671] 20 | [ 0.81730769] 21 | [ 0.87864078] 22 | [ 0.82089552] 23 | [ 0.85446009] 24 | [ 0.80904523] 25 | [ 0.88305489] 26 | [ 0.87041565] 27 | [ 0.79177378] 28 | [ 0.77830189]] 29 | average : acc 0.9752 p 0.8476 r 0.8139 f1 0.8299 30 | 31 | 32 | pair.py 33 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 34 | 35 | batch-32, lr-0.005, kb1-0.5, kb2-1.0, l2_reg-1e-05 36 | training_iter-20, scope-Ind_BiLSTM_2 37 | 38 | 39 | Original pair_predict: test f1 in 10 fold: [[ 0.51318944] 40 | [ 0.5145631 ] 41 | [ 0.56950672] 42 | [ 0.56218905] 43 | [ 0.56108597] 44 | [ 0.56310679] 45 | [ 0.65053763] 46 | [ 0.5670886 ] 47 | [ 0.46933333] 48 | [ 0.45700245]] 49 | average : p 0.5765 r 0.5151 f1 0.5428 50 | 51 | 52 | Average keep_rate: 0.8716 53 | 54 | 55 | Filtered pair_predict: test f1 in 10 fold: [[ 0.54219948] 56 | [ 0.55064935] 57 | [ 0.60869565] 58 | [ 0.59317585] 59 | [ 0.60340632] 60 | [ 0.6121372 ] 61 | [ 0.67988668] 62 | [ 0.58947368] 63 | [ 0.50144092] 64 | [ 0.47179487]] 65 | average : p 0.6588 r 0.5127 f1 0.5753 66 | 67 | 68 | -------------------------------------------------------------------------------- /ECPE_withBERT/training_info/training_info_Ind_BERT.txt: -------------------------------------------------------------------------------- 1 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 2 | 3 | batch-32, lr-0.005, kb1-0.8, kb2-1.0, l2_reg-1e-05 4 | training_iter-15, scope-Ind_BiLSTM_BERT 5 | 6 | 7 | cause_predict: test f1 in 10 fold: [[0.61126005] 8 | [0.62173913] 9 | [0.65162907] 10 | [0.64736842] 11 | [0.63438257] 12 | [0.69211196] 13 | [0.74311927] 14 | [0.67357513] 15 | [0.55612245] 16 | [0.55924171]] 17 | average : acc 0.9478 p 0.6860 r 0.6053 f1 0.6391 18 | 19 | position_predict: test f1 in 10 fold: [[0.77862595] 20 | [0.85526316] 21 | [0.88564477] 22 | [0.84777518] 23 | [0.89252336] 24 | [0.90821256] 25 | [0.93457944] 26 | [0.88461538] 27 | [0.86956522] 28 | [0.83944954]] 29 | average : acc 0.9799 p 0.8610 r 0.8809 f1 0.8696 30 | 31 | 32 | pair.py 33 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 34 | 35 | batch-32, lr-0.005, kb1-0.5, kb2-1.0, l2_reg-1e-05 36 | training_iter-20, scope-Ind_BiLSTM_BERT 37 | 38 | 39 | Original pair_predict: test f1 in 10 fold: [[0.52061855] 40 | [0.50184501] 41 | [0.57777777] 42 | [0.54205607] 43 | [0.53243847] 44 | [0.60377358] 45 | [0.64503042] 46 | [0.60349127] 47 | [0.47196261] 48 | [0.48214285]] 49 | average : p 0.5461 r 0.5621 f1 0.5481 50 | 51 | 52 | Average keep_rate: 0.7199 53 | 54 | 55 | Filtered pair_predict: test f1 in 10 fold: [[0.55153203] 56 | [0.63788968] 57 | [0.61904761] 58 | [0.63157894] 59 | [0.61818181] 60 | [0.70165745] 61 | [0.78109452] 62 | [0.66091954] 63 | [0.5625 ] 64 | [0.546875 ]] 65 | average : p 0.7446 r 0.5522 f1 0.6311 66 | 67 | 68 | -------------------------------------------------------------------------------- /ECPE_withBERT/training_info/training_info_Ind_BERT_ext.txt: -------------------------------------------------------------------------------- 1 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 2 | 3 | batch-32, lr-0.005, kb1-0.8, kb2-1.0, l2_reg-1e-05 4 | training_iter-15, scope-Ind_BiLSTM_BERT_ext 5 | 6 | 7 | cause_predict: test f1 in 10 fold: [[0.61425061] 8 | [0.64533333] 9 | [0.7038835 ] 10 | [0.69099757] 11 | [0.69733656] 12 | [0.70557029] 13 | [0.77722772] 14 | [0.69387755] 15 | [0.57297297] 16 | [0.53619303]] 17 | average : acc 0.9529 p 0.7297 r 0.6108 f1 0.6638 18 | 19 | position_predict: test f1 in 10 fold: [[0.77386935] 20 | [0.8346056 ] 21 | [0.89095128] 22 | [0.83 ] 23 | [0.88 ] 24 | [0.92874693] 25 | [0.92740047] 26 | [0.88135593] 27 | [0.86138614] 28 | [0.84918794]] 29 | average : acc 0.9799 p 0.8759 r 0.8580 f1 0.8658 30 | 31 | 32 | pair.py 33 | >>>>>>>>>>>>>>>>>>>>TRAINING INFO: 34 | 35 | batch-32, lr-0.005, kb1-0.5, kb2-1.0, l2_reg-1e-05 36 | training_iter-20, scope-Ind_BiLSTM_BERT_ext 37 | 38 | 39 | Original pair_predict: test f1 in 10 fold: [[0.50580046] 40 | [0.54054054] 41 | [0.60927152] 42 | [0.59759036] 43 | [0.57399103] 44 | [0.64810126] 45 | [0.69545454] 46 | [0.61425061] 47 | [0.49222797] 48 | [0.47300771]] 49 | average : p 0.6016 r 0.5551 f1 0.5750 50 | 51 | 52 | Average keep_rate: 0.7830 53 | 54 | 55 | Filtered pair_predict: test f1 in 10 fold: [[0.54353562] 56 | [0.58407079] 57 | [0.69035532] 58 | [0.64415584] 59 | [0.65445026] 60 | [0.69376693] 61 | [0.77353689] 62 | [0.65940054] 63 | [0.5595238 ] 64 | [0.51558073]] 65 | average : p 0.7552 r 0.5464 f1 0.6318 66 | -------------------------------------------------------------------------------- /ECPE_withBERT/training_info/实验结果汇总.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/ECPE_withBERT/training_info/实验结果汇总.xlsx -------------------------------------------------------------------------------- /ECPE_withBERT/utils/__init__.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/ECPE_withBERT/utils/__init__.pyc -------------------------------------------------------------------------------- /ECPE_withBERT/utils/prepare_data.py: -------------------------------------------------------------------------------- 1 | # encoding:utf-8 2 | 3 | import codecs 4 | import random 5 | import numpy as np 6 | import pickle as pk 7 | from sklearn.metrics import precision_score, recall_score, f1_score 8 | import pdb, time 9 | import csv 10 | 11 | def print_time(): 12 | print '\n----------{}----------'.format(time.strftime("%Y-%m-%d %X", time.localtime())) 13 | 14 | def load_w2v(embedding_dim, embedding_dim_pos, train_file_path, embedding_path): 15 | print('\nload embedding...') 16 | 17 | words = [] 18 | inputFile1 = open(train_file_path, 'r') 19 | for line in inputFile1.readlines(): 20 | line = line.strip().split(',') 21 | emotion, clause = line[2], line[-1] 22 | words.extend( [emotion] + clause.split()) 23 | words = set(words) # 所有不重复词的集合 24 | word_idx = dict((c, k + 1) for k, c in enumerate(words)) # 每个词及词的位置 25 | word_idx_rev = dict((k + 1, c) for k, c in enumerate(words)) # 每个词及词的位置 26 | 27 | w2v = {} 28 | inputFile2 = open(embedding_path, 'r') 29 | inputFile2.readline() 30 | for line in inputFile2.readlines(): 31 | line = line.strip().split(' ') 32 | w, ebd = line[0], line[1:] 33 | w2v[w] = ebd 34 | 35 | embedding = [list(np.zeros(embedding_dim))] 36 | hit = 0 37 | for item in words: 38 | if item in w2v: 39 | vec = list(map(float, w2v[item])) 40 | hit += 1 41 | else: 42 | vec = list(np.random.rand(embedding_dim) / 5. - 0.1) # 从均匀分布[-0.1,0.1]中随机取 43 | embedding.append(vec) 44 | print('w2v_file: {}\nall_words: {} hit_words: {}'.format(embedding_path, len(words), hit)) 45 | 46 | embedding_pos = [list(np.zeros(embedding_dim_pos))] 47 | embedding_pos.extend( [list(np.random.normal(loc=0.0, scale=0.1, size=embedding_dim_pos)) for i in range(200)] ) 48 | 49 | embedding, embedding_pos = np.array(embedding), np.array(embedding_pos) 50 | 51 | print("embedding.shape: {} embedding_pos.shape: {}".format(embedding.shape, embedding_pos.shape)) 52 | print("load embedding done!\n") 53 | return word_idx_rev, word_idx, embedding, embedding_pos 54 | 55 | def load_w2v_BERT(embedding_dim, embedding_dim_pos): 56 | print('\nload embedding_BERT...') 57 | 58 | # Load 59 | fileName1 = "./BERT_RES/word_idx.csv" 60 | with open(fileName1, "rb") as csv_file: 61 | reader = csv.reader(csv_file) 62 | word_idx = dict(reader) 63 | 64 | fileName2 = "./BERT_RES/word_idx_rev.csv" 65 | with open(fileName2, "rb") as csv_file: 66 | reader = csv.reader(csv_file) 67 | word_idx_rev = dict(reader) 68 | 69 | word_embedding = np.loadtxt('./BERT_RES/word_embedding.txt') 70 | 71 | embedding = [list(np.zeros(embedding_dim))] 72 | 73 | for item in word_embedding: 74 | vec = item.tolist() 75 | embedding.append(vec) 76 | 77 | embedding_pos = [list(np.zeros(embedding_dim_pos))] 78 | embedding_pos.extend([list(np.random.normal(loc=0.0, scale=0.1, size=embedding_dim_pos)) for i in range(200)]) 79 | 80 | embedding, embedding_pos = np.array(embedding), np.array(embedding_pos) 81 | 82 | print("embedding.shape: {} embedding_pos.shape: {}".format(embedding.shape, embedding_pos.shape)) 83 | print("load embedding done!\n") 84 | 85 | return word_idx_rev, word_idx, embedding, embedding_pos 86 | 87 | def load_w2v_BERT_ext(embedding_dim, embedding_dim_pos): 88 | print('\nload embedding_BERT...') 89 | 90 | # Load 91 | fileName1 = "./BERT_RES/wmm-ext/word_idx.csv" 92 | with open(fileName1, "rb") as csv_file: 93 | reader = csv.reader(csv_file) 94 | word_idx = dict(reader) 95 | 96 | fileName2 = "./BERT_RES/wmm-ext/word_idx_rev.csv" 97 | with open(fileName2, "rb") as csv_file: 98 | reader = csv.reader(csv_file) 99 | word_idx_rev = dict(reader) 100 | 101 | word_embedding = np.loadtxt('./BERT_RES/wmm-ext/word_embedding.txt') 102 | 103 | embedding = [list(np.zeros(embedding_dim))] 104 | 105 | for item in word_embedding: 106 | vec = item.tolist() 107 | embedding.append(vec) 108 | 109 | embedding_pos = [list(np.zeros(embedding_dim_pos))] 110 | embedding_pos.extend([list(np.random.normal(loc=0.0, scale=0.1, size=embedding_dim_pos)) for i in range(200)]) 111 | 112 | embedding, embedding_pos = np.array(embedding), np.array(embedding_pos) 113 | 114 | print("embedding.shape: {} embedding_pos.shape: {}".format(embedding.shape, embedding_pos.shape)) 115 | print("load embedding done!\n") 116 | 117 | return word_idx_rev, word_idx, embedding, embedding_pos 118 | 119 | def load_data(input_file, word_idx, max_doc_len = 75, max_sen_len = 45): 120 | print('load data_file: {}'.format(input_file)) 121 | y_position, y_cause, y_pairs, x, sen_len, doc_len = [], [], [], [], [], [] 122 | doc_id = [] 123 | 124 | n_cut = 0 125 | inputFile = open(input_file, 'r') 126 | while True: 127 | line = inputFile.readline() 128 | if line == '': break 129 | line = line.strip().split() 130 | doc_id.append(line[0]) 131 | d_len = int(line[1]) 132 | pairs = eval('[' + inputFile.readline().strip() + ']') 133 | doc_len.append(d_len) 134 | y_pairs.append(pairs) 135 | pos, cause = zip(*pairs) 136 | y_po, y_ca, sen_len_tmp, x_tmp = np.zeros((max_doc_len, 2)), np.zeros((max_doc_len, 2)), np.zeros(max_doc_len,dtype=np.int32), np.zeros((max_doc_len, max_sen_len),dtype=np.int32) 137 | for i in range(d_len): 138 | y_po[i][int(i+1 in pos)]=1 139 | y_ca[i][int(i+1 in cause)]=1 140 | words = inputFile.readline().strip().split(',')[-1] 141 | sen_len_tmp[i] = min(len(words.split()), max_sen_len) 142 | for j, word in enumerate(words.split()): 143 | if j >= max_sen_len: 144 | n_cut += 1 145 | break 146 | x_tmp[i][j] = int(word_idx[word]) 147 | 148 | y_position.append(y_po) 149 | y_cause.append(y_ca) 150 | x.append(x_tmp) 151 | sen_len.append(sen_len_tmp) 152 | 153 | y_position, y_cause, x, sen_len, doc_len = map(np.array, [y_position, y_cause, x, sen_len, doc_len]) 154 | for var in ['y_position', 'y_cause', 'x', 'sen_len', 'doc_len']: 155 | print('{}.shape {}'.format( var, eval(var).shape )) 156 | print('n_cut {}'.format(n_cut)) 157 | print('load data done!\n') 158 | return doc_id, y_position, y_cause, y_pairs, x, sen_len, doc_len 159 | 160 | def load_data_2nd_step(input_file, word_idx, max_doc_len = 75, max_sen_len = 45): 161 | print('load data_file: {}'.format(input_file)) 162 | pair_id_all, pair_id, y, x, sen_len, distance = [], [], [], [], [], [] 163 | 164 | n_cut = 0 165 | inputFile = open(input_file, 'r') 166 | while True: 167 | line = inputFile.readline() 168 | if line == '': break 169 | line = line.strip().split() 170 | doc_id = int(line[0]) 171 | d_len = int(line[1]) 172 | pairs = eval(inputFile.readline().strip()) 173 | pair_id_all.extend([doc_id*10000+p[0]*100+p[1] for p in pairs]) 174 | sen_len_tmp, x_tmp = np.zeros(max_doc_len,dtype=np.int32), np.zeros((max_doc_len, max_sen_len),dtype=np.int32) 175 | pos_list, cause_list = [], [] 176 | for i in range(d_len): 177 | line = inputFile.readline().strip().split(',') 178 | if int(line[1].strip())>0: 179 | pos_list.append(i+1) 180 | if int(line[2].strip())>0: 181 | cause_list.append(i+1) 182 | words = line[-1] 183 | sen_len_tmp[i] = min(len(words.split()), max_sen_len) 184 | for j, word in enumerate(words.split()): 185 | if j >= max_sen_len: 186 | n_cut += 1 187 | break 188 | x_tmp[i][j] = int(word_idx[word]) 189 | for i in pos_list: 190 | for j in cause_list: 191 | pair_id_cur = doc_id*10000+i*100+j 192 | pair_id.append(pair_id_cur) 193 | y.append([0,1] if pair_id_cur in pair_id_all else [1,0]) 194 | x.append([x_tmp[i-1],x_tmp[j-1]]) 195 | sen_len.append([sen_len_tmp[i-1], sen_len_tmp[j-1]]) 196 | distance.append(j-i+100) 197 | y, x, sen_len, distance = map(np.array, [y, x, sen_len, distance]) 198 | for var in ['y', 'x', 'sen_len', 'distance']: 199 | print('{}.shape {}'.format( var, eval(var).shape )) 200 | print('n_cut {}, (y-negative, y-positive): {}'.format(n_cut, y.sum(axis=0))) 201 | print('load data done!\n') 202 | return pair_id_all, pair_id, y, x, sen_len, distance 203 | 204 | def acc_prf(pred_y, true_y, doc_len, average='binary'): 205 | tmp1, tmp2 = [], [] 206 | for i in range(pred_y.shape[0]): 207 | for j in range(doc_len[i]): 208 | tmp1.append(pred_y[i][j]) 209 | tmp2.append(true_y[i][j]) 210 | y_pred, y_true = np.array(tmp1), np.array(tmp2) 211 | acc = precision_score(y_true, y_pred, average='micro') 212 | p = precision_score(y_true, y_pred, average=average) 213 | r = recall_score(y_true, y_pred, average=average) 214 | f1 = f1_score(y_true, y_pred, average=average) 215 | return acc, p, r, f1 216 | 217 | def prf_2nd_step(pair_id_all, pair_id, pred_y, fold = 0, save_dir = './pair_res/'): 218 | pair_id_filtered = [] 219 | for i in range(len(pair_id)): 220 | if pred_y[i]: 221 | pair_id_filtered.append(pair_id[i]) 222 | def write_log(): 223 | pair_to_y = dict(zip(pair_id, pred_y)) 224 | g = open(save_dir+'pair_res_Ind_fold{}.txt'.format(fold), 'w') 225 | doc_id_b, doc_id_e = pair_id_all[0]/10000, pair_id_all[-1]/10000 226 | idx_1, idx_2 = 0, 0 227 | for doc_id in range(doc_id_b, doc_id_e+1): 228 | true_pair, pred_pair, pair_y = [], [], [] 229 | line = str(doc_id) + ' ' 230 | while True: 231 | p_id = pair_id_all[idx_1] 232 | d, p1, p2 = p_id/10000, p_id%10000/100, p_id%100 233 | if d != doc_id: break 234 | true_pair.append((p1, p2)) 235 | line += '({}, {}) '.format(p1,p2) 236 | idx_1 += 1 237 | if idx_1 == len(pair_id_all): break 238 | line += '|| ' 239 | while True: 240 | p_id = pair_id[idx_2] 241 | d, p1, p2 = p_id/10000, p_id%10000/100, p_id%100 242 | if d != doc_id: break 243 | if pred_y[idx_2]: 244 | pred_pair.append((p1, p2)) 245 | pair_y.append(pred_y[idx_2]) 246 | line += '({}, {}) {} '.format(p1, p2, pred_y[idx_2]) 247 | idx_2 += 1 248 | if idx_2 == len(pair_id): break 249 | if len(true_pair)>1: 250 | line += 'multipair ' 251 | if true_pair == pred_pair: 252 | line += 'good ' 253 | line += '\n' 254 | g.write(line) 255 | if fold: 256 | write_log() 257 | keep_rate = len(pair_id_filtered)/(len(pair_id)+1e-8) 258 | s1, s2, s3 = set(pair_id_all), set(pair_id), set(pair_id_filtered) 259 | o_acc_num = len(s1 & s2) 260 | acc_num = len(s1 & s3) 261 | o_p, o_r = o_acc_num/(len(s2)+1e-8), o_acc_num/(len(s1)+1e-8) 262 | p, r = acc_num/(len(s3)+1e-8), acc_num/(len(s1)+1e-8) 263 | f1, o_f1 = 2*p*r/(p+r+1e-8), 2*o_p*o_r/(o_p+o_r+1e-8) 264 | 265 | return p, r, f1, o_p, o_r, o_f1, keep_rate 266 | 267 | -------------------------------------------------------------------------------- /ECPE_withBERT/utils/prepare_data.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/ECPE_withBERT/utils/prepare_data.pyc -------------------------------------------------------------------------------- /ECPE_withBERT/utils/tf_funcs.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # encoding: utf-8 3 | # @author: zxding 4 | # email: d.z.x@qq.com 5 | 6 | import numpy as np 7 | import tensorflow as tf 8 | import os 9 | 10 | #读入词嵌入 11 | def load_w2v(w2v_file, embedding_dim, debug=False): 12 | fp = open(w2v_file) 13 | words, _ = map(int, fp.readline().split()) 14 | 15 | w2v = [] 16 | # [0,0,...,0] represent absent words 17 | w2v.append([0.] * embedding_dim) 18 | word_dict = dict() 19 | print 'load word_embedding...' 20 | print 'word: {} embedding_dim: {}'.format(words, embedding_dim) 21 | cnt = 0 22 | for line in fp: 23 | cnt += 1 24 | line = line.split() 25 | if len(line) != embedding_dim + 1: 26 | print 'a bad word embedding: {}'.format(line[0]) 27 | continue 28 | word_dict[line[0]] = cnt 29 | w2v.append([float(v) for v in line[1:]]) 30 | print 'done!' 31 | w2v = np.asarray(w2v, dtype=np.float32) 32 | #w2v -= np.mean(w2v, axis = 0) # zero-center 33 | #w2v /= np.std(w2v, axis = 0) 34 | if debug: 35 | print 'shape of w2v:',np.shape(w2v) 36 | word='the' 37 | print 'id of \''+word+'\':',word_dict[word] 38 | print 'vector of \''+word+'\':',w2v[word_dict[word]] 39 | return word_dict, w2v 40 | 41 | #用于生成minibatch训练数据 42 | def batch_index(length, batch_size, test=False): 43 | index = range(length) 44 | if not test: np.random.shuffle(index) 45 | for i in xrange(int( (length + batch_size -1) / batch_size ) ): 46 | ret = index[i * batch_size : (i + 1) * batch_size] 47 | if not test and len(ret) < batch_size : break 48 | yield ret 49 | 50 | # tf functions 51 | class Saver(object): 52 | def __init__(self, sess, save_dir, max_to_keep=10): 53 | if not os.path.exists(save_dir): 54 | os.makedirs(save_dir) 55 | self.sess = sess 56 | self.save_dir = save_dir 57 | self.saver = tf.train.Saver(write_version=tf.train.SaverDef.V2, max_to_keep=max_to_keep) 58 | 59 | def save(self, step): 60 | self.saver.save(self.sess, self.save_dir, global_step=step) 61 | 62 | def restore(self, idx=''): 63 | ckpt = tf.train.get_checkpoint_state(self.save_dir) 64 | model_path = self.save_dir+idx if idx else ckpt.model_checkpoint_path # 'dir/-110' 65 | print("Reading model parameters from %s" % model_path) 66 | self.saver.restore(self.sess, model_path) 67 | 68 | 69 | def get_weight_varible(name, shape): 70 | return tf.get_variable(name, initializer=tf.random_uniform(shape, -0.01, 0.01)) 71 | 72 | def tf_load_w2v(w2v_file, embedding_dim, embedding_type): 73 | print('\n\n>>>>>>>>>>>>>>>>>>>>MODEL INFO:\n\n## embedding parameters ##') 74 | print('w2v_file-{}'.format(w2v_file)) 75 | word_id_mapping, w2v = load_w2v(w2v_file, embedding_dim) 76 | print('embedding_type-{}\n'.format(embedding_type)) 77 | if embedding_type == 0: # Pretrained and Untrainable 78 | word_embedding = tf.constant(w2v, dtype=tf.float32, name='word_embedding') 79 | elif embedding_type == 1: # Pretrained and Trainable 80 | word_embedding = tf.Variable(w2v, dtype=tf.float32, name='word_embedding') 81 | elif embedding_type == 2: # Random and Trainable 82 | word_embedding = get_weight_varible(shape=w2v.shape, name='word_embedding') 83 | return word_id_mapping, word_embedding 84 | 85 | # def tf_load_w2v(w2v_file, embedding_dim, embedding_type): 86 | # print('\n\n>>>>>>>>>>>>>>>>>>>>MODEL INFO:\n\n## embedding parameters ##') 87 | # print('w2v_file-{}'.format(w2v_file)) 88 | # word_id_mapping, w2v = load_w2v(w2v_file, embedding_dim) 89 | # print('embedding_type-{}\n'.format(embedding_type)) 90 | # if embedding_type == 0: # Pretrained and Untrainable 91 | # return word_id_mapping, tf.constant(w2v, dtype=tf.float32, name='word_embedding') 92 | # w2v = w2v[1:] 93 | # if embedding_type == 1: # Pretrained and Trainable 94 | # word_embedding = tf.Variable(w2v, dtype=tf.float32, name='word_embedding') 95 | # else: # Random and Trainable 96 | # word_embedding = get_weight_varible(shape=w2v.shape, name='word_embedding') 97 | # embed0 = tf.Variable(np.zeros([1, embedding_dim]), dtype=tf.float32, name="embed0", trainable=False) 98 | # return word_id_mapping, tf.concat((embed0, word_embedding), 0) 99 | 100 | def getmask(length, max_len, out_shape): 101 | ''' 102 | length shape:[batch_size] 103 | ''' 104 | ret = tf.cast(tf.sequence_mask(length, max_len), tf.float32) 105 | return tf.reshape(ret, out_shape) 106 | 107 | #实际运行比biLSTM更快 108 | def biLSTM_multigpu(inputs,length,n_hidden,scope): 109 | ''' 110 | input shape:[batch_size, max_len, embedding_dim] 111 | length shape:[batch_size] 112 | return shape:[batch_size, max_len, n_hidden*2] 113 | ''' 114 | outputs, state = tf.nn.bidirectional_dynamic_rnn( 115 | cell_fw=tf.contrib.rnn.LSTMCell(n_hidden), 116 | cell_bw=tf.contrib.rnn.LSTMCell(n_hidden), 117 | inputs=inputs, 118 | # sequence_length=length, 119 | dtype=tf.float32, 120 | scope=scope 121 | ) 122 | 123 | max_len = tf.shape(inputs)[1] 124 | mask = getmask(length, max_len, [-1, max_len, 1]) 125 | return tf.concat(outputs, 2) * mask 126 | 127 | def LSTM_multigpu(inputs,length,n_hidden,scope): 128 | ''' 129 | input shape:[batch_size, max_len, embedding_dim] 130 | length shape:[batch_size] 131 | return shape:[batch_size, max_len, n_hidden*2] 132 | ''' 133 | outputs, state = tf.nn.dynamic_rnn( 134 | cell=tf.contrib.rnn.LSTMCell(n_hidden), 135 | inputs=inputs, 136 | # sequence_length=length, 137 | dtype=tf.float32, 138 | scope=scope 139 | ) 140 | 141 | max_len = tf.shape(inputs)[1] 142 | mask = getmask(length, max_len, [-1, max_len, 1]) 143 | return outputs * mask 144 | 145 | def biLSTM_multigpu_last(inputs,length,n_hidden,scope): 146 | ''' 147 | input shape:[batch_size, max_len, embedding_dim] 148 | length shape:[batch_size] 149 | return shape:[batch_size, max_len, n_hidden*2] 150 | ''' 151 | outputs, state = tf.nn.bidirectional_dynamic_rnn( 152 | cell_fw=tf.contrib.rnn.LSTMCell(n_hidden), 153 | cell_bw=tf.contrib.rnn.LSTMCell(n_hidden), 154 | inputs=inputs, 155 | # sequence_length=length, 156 | dtype=tf.float32, 157 | scope=scope 158 | ) 159 | 160 | batch_size = tf.shape(inputs)[0] 161 | max_len = tf.shape(inputs)[1] 162 | 163 | index = tf.range(0, batch_size) * max_len + tf.maximum((length - 1), 0) 164 | fw_last = tf.gather(tf.reshape(outputs[0], [-1, n_hidden]), index) # batch_size * n_hidden 165 | index = tf.range(0, batch_size) * max_len 166 | bw_last = tf.gather(tf.reshape(outputs[1], [-1, n_hidden]), index) # batch_size * n_hidden 167 | 168 | return tf.concat([fw_last, bw_last], 1) 169 | 170 | 171 | 172 | 173 | def biLSTM(inputs,length,n_hidden,scope): 174 | ''' 175 | input shape:[batch_size, max_len, embedding_dim] 176 | length shape:[batch_size] 177 | return shape:[batch_size, max_len, n_hidden*2] 178 | ''' 179 | outputs, state = tf.nn.bidirectional_dynamic_rnn( 180 | cell_fw=tf.contrib.rnn.LSTMCell(n_hidden), 181 | cell_bw=tf.contrib.rnn.LSTMCell(n_hidden), 182 | inputs=inputs, 183 | sequence_length=length, 184 | dtype=tf.float32, 185 | scope=scope 186 | ) 187 | 188 | return tf.concat(outputs, 2) 189 | 190 | def LSTM(inputs,sequence_length,n_hidden,scope): 191 | outputs, state = tf.nn.dynamic_rnn( 192 | cell=tf.contrib.rnn.LSTMCell(n_hidden), 193 | inputs=inputs, 194 | sequence_length=sequence_length, 195 | dtype=tf.float32, 196 | scope=scope 197 | ) 198 | return outputs 199 | 200 | def att_avg(inputs, length): 201 | ''' 202 | input shape:[batch_size, max_len, n_hidden] 203 | length shape:[batch_size] 204 | return shape:[batch_size, n_hidden] 205 | ''' 206 | max_len = tf.shape(inputs)[1] 207 | inputs *= getmask(length, max_len, [-1, max_len, 1]) 208 | inputs = tf.reduce_sum(inputs, 1, keepdims =False) 209 | length = tf.cast(tf.reshape(length, [-1, 1]), tf.float32) + 1e-9 210 | return inputs / length 211 | 212 | def softmax_by_length(inputs, length): 213 | ''' 214 | input shape:[batch_size, 1, max_len] 215 | length shape:[batch_size] 216 | return shape:[batch_size, 1, max_len] 217 | ''' 218 | inputs = tf.exp(tf.cast(inputs, tf.float32)) 219 | inputs *= getmask(length, tf.shape(inputs)[2], tf.shape(inputs)) 220 | _sum = tf.reduce_sum(inputs, reduction_indices=2, keepdims =True) + 1e-9 221 | return inputs / _sum 222 | 223 | def att_var(inputs,length,w1,b1,w2): 224 | ''' 225 | input shape:[batch_size, max_len, n_hidden] 226 | length shape:[batch_size] 227 | return shape:[batch_size, n_hidden] 228 | ''' 229 | max_len, n_hidden = (tf.shape(inputs)[1], tf.shape(inputs)[2]) 230 | tmp = tf.reshape(inputs, [-1, n_hidden]) 231 | u = tf.tanh(tf.matmul(tmp, w1) + b1) 232 | alpha = tf.reshape(tf.matmul(u, w2), [-1, 1, max_len]) 233 | alpha = softmax_by_length(alpha, length) 234 | return tf.reshape(tf.matmul(alpha, inputs), [-1, n_hidden]) 235 | 236 | def average_gradients(tower_grads): 237 | average_grads = [] 238 | for grad_and_vars in zip(*tower_grads): 239 | # Note that each grad_and_vars looks like the following: 240 | # ((grad0_gpu0, var0_gpu0), ... , (grad0_gpuN, var0_gpuN)) 241 | grads = [g for g, _ in grad_and_vars] 242 | # Average over the 'tower' dimension. 243 | grad = tf.stack(grads, 0) 244 | grad = tf.reduce_mean(grad, 0) 245 | # Keep in mind that the Variables are redundant because they are shared 246 | # across towers. So .. we will just return the first tower's pointer to 247 | # the Variable. 248 | v = grad_and_vars[0][1] 249 | grad_and_var = (grad, v) 250 | average_grads.append(grad_and_var) 251 | return average_grads 252 | -------------------------------------------------------------------------------- /ECPE_withBERT/utils/tf_funcs.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/ECPE_withBERT/utils/tf_funcs.pyc -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## 目录说明 2 | 3 | **详细报告** 4 | https://czardas42.github.io/post/ECPE/ 5 | 6 | - ./ECPE_withBERT **改进的模型** 7 | 8 | **【参考论文】** 9 | 10 | Rui Xia and Zixiang Ding. Emotion-Cause Pair Extraction: A New Task to Emotion Analysis in Texts. ACL 2019 (Outstanding Paper Award). [[pdf](https://www.aclweb.org/anthology/P19-1096.pdf)] 11 | 12 | **原模型的GitHub地址**: https://github.com/NUSTM/ECPE 13 | 14 | - ./bert-utils 15 | 16 | 使用BERT预训练模型生成句向量的部分 17 | 18 | **【参考】腾讯 AI Lab 开源的 BERT 服务**: https://github.com/hanxiao/bert-as-service 19 | 20 | - ./visualization 21 | 22 | 识别结果分析可视化部分 23 | 24 | **【参考】大连理工大学情感词汇本体库**: https://github.com/ZaneMuir/DLUT-Emotionontology 25 | 26 | - ./spider 27 | 28 | 抑郁数据爬取部分 29 | 30 | ## Requirements 31 | 32 | - tensorlfow==1.14.0 33 | - numpy==1.16.0 34 | - python==3.7 35 | 36 | 37 | 38 | ## 前期准备 39 | 40 | - 下载`w2v_200.txt`放入ECPE_withBERT\data_combine目录下 41 | 42 | https://github.com/NUSTM/ECPE/blob/master/data_combine/w2v_200.txt 43 | 44 | 45 | 46 | ## BERT预训练模型生成句向量 47 | 48 | #### Requirments 49 | 50 | - tensorflow-gpu >= 1.11.0 51 | - GPU version of TensorFlow. 52 | 53 | #### 方法 54 | 55 | 56 | 1. 下载并解压BERT中文模型 57 | 地址: https://github.com/ymcui/Chinese-BERT-wwm 58 | - (选择一)chinese_wwm_ext_L-12_H-768_A-12 59 | - (选择二)chinese_bert_chinese_wwm_L-12_H-768_A-12 60 | 61 | 2. 句向量生成 62 | 生成句向量不需要做fine tune,使用预先训练好的模型即可,注意参数必须是一个list 63 | 64 | 65 | 66 | ## ECPE_withBERT 模型 67 | 68 | ##### Step0:使用BERT预训练模型生成语料库词向量(可选) 69 | 70 | 须预先启动 bert-as-service 71 | ###### 基于新浪新闻的 ECPE 语料库 72 | `python BERT.py` 73 | ###### 自定义数据 74 | 1. 使用前提:将需要生成词向量的数据集的词语汇总为一个List,保存为同一目录下的wordList.txt; 75 | 2. `python BERT_new.py` 76 | 调用 BERT-wwm 或 BERT-wwm-ext 为其生成词向量,并将其用于之后的 ECPE 任务 77 | 78 | 79 | ##### Step1 (一共九种方法供选择): 80 | 81 | 1. 使用200维word2vec(./data_combine/w2v_200.txt) 82 | 83 | - python Ind-BiLSTM.py 84 | - python P_cause.py 85 | - python P_emotion.py 86 | 87 | 2. 使用BERT-wwm预训练模型 88 | 89 | - python Ind-BiLSTM_BERT.py 90 | - python P_cause_BERT.py 91 | - python P_emotion_BERT.py 92 | 93 | 3. 使用BERT-wwm-ext预训练模型 94 | 95 | - python Ind-BiLSTM_BERT_ext.py 96 | - python P_cause_BERT_ext.py 97 | - python P_emotion_BERT_ext.py 98 | 99 | ##### Step2:(按照Step1选用对应的Step2) 100 | 101 | - python pair.py 102 | - python pair_BERT.py 103 | - python pair_BERT_ext.py 104 | 105 | ##### 训练数据集 106 | 107 | ./data_combine/fold_train.txt 108 | ./data_combine/fold_test.txt 109 | 110 | ##### 结果保存 111 | 112 | 1. Step0生成结果保存在./BERT_RES 113 | 2. Step1结果保存在./pair_data 114 | 3. Step2结果保存在./pair_res 115 | 4. 训练完成后模型将保存于./save 116 | 117 | ##### 实验数据 118 | 119 | 详见 ./training_info 120 | 121 | 122 | 123 | ## Visualization 124 | 125 | #### 可执行文件: 126 | 127 | 1. evaluate_test.py:是对测试集中数据进行处理,并根据数据生成词云 128 | 2. evaluate_crawler.py:是对爬取数据的分析整理,并生成词云 129 | 130 | #### 使用到的文件: 131 | 132 | 1. predict.txt:测试集的文件 133 | 2. pair.txt:模型预测的结果 134 | 3. from_web:从抑郁吧爬取的数据及预测结果 135 | 4. hit_stopwords.txt:是使用的停用词的库,里面包含了常见的停用词,来自哈工大 136 | 5. 情感词汇.xlsx:对应情感词汇分类的excel文件,提供了常见情感词的分类,来自大连理工大学 137 | 6. simsun.ttc:生成词云需要的字体文件,这里使用的是仿宋 138 | 139 | #### 中间文件: 140 | 141 | 1. 词频字典(文件见):是evaluate_test.py统计的测试集中7类原因中词出现的频次 142 | 2. 分类结果(文件夹):是evaluate_test.py产生根据情感对原因分类的结果,里面包含了7类情感原因的集合 143 | 3. result.txt:把predicate.txt中情感句与原因句结合起来的结果 144 | 4. del_re.txt:删除result.txt中单字的词,减少查找的次数,加快运行速度 145 | 5. evaluate_file.txt:情感分类的结果与情感原因放在一起的结果 146 | 6. web_cause.txt:从from_web.txt文件提取出的原因句 147 | 7. web_emotion.txt:从from_web.txt文件提取出的情感句 148 | 149 | #### 结果文件: 150 | 151 | 1. 测试集词云:包含了7类情感原因的词云 152 | 2. 爬取数据词云:包含了情感和原因的词云 153 | 154 | -------------------------------------------------------------------------------- /bert-utils/__init__.py: -------------------------------------------------------------------------------- 1 | # coding=utf-8 2 | # Copyright 2018 The Google AI Language Team Authors. 3 | # 4 | # Licensed under the Apache License, Version 2.0 (the "License"); 5 | # you may not use this file except in compliance with the License. 6 | # You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | -------------------------------------------------------------------------------- /bert-utils/args.py: -------------------------------------------------------------------------------- 1 | import os 2 | import tensorflow as tf 3 | 4 | tf.logging.set_verbosity(tf.logging.INFO) 5 | 6 | file_path = os.path.dirname(__file__) 7 | 8 | model_dir = os.path.join(file_path, 'chinese_L-12_H-768_A-12/') 9 | config_name = os.path.join(model_dir, 'bert_config.json') 10 | ckpt_name = os.path.join(model_dir, 'bert_model.ckpt') 11 | output_dir = os.path.join(model_dir, '../tmp/result/') 12 | vocab_file = os.path.join(model_dir, 'vocab.txt') 13 | data_dir = os.path.join(model_dir, '../data/') 14 | 15 | num_train_epochs = 10 16 | batch_size = 128 17 | learning_rate = 0.00005 18 | 19 | # gpu使用率 20 | gpu_memory_fraction = 0.8 21 | 22 | # 默认取倒数第二层的输出值作为句向量 23 | layer_indexes = [-2] 24 | 25 | # 序列的最大程度,单文本建议把该值调小 26 | max_seq_len = 5 27 | 28 | # graph名字 29 | graph_file = 'tmp/result/graph' -------------------------------------------------------------------------------- /bert-utils/bert_vec.py: -------------------------------------------------------------------------------- 1 | import pickle 2 | from graph import set_logger 3 | from termcolor import colored 4 | 5 | logger = set_logger(colored('BERT_VEC', 'yellow')) 6 | bert_file_name = 'bert_data.pkl' 7 | 8 | 9 | class BertData: 10 | def __init__(self): 11 | self.dic = {} 12 | self._read_dic() 13 | 14 | # 批量插入数据 15 | def add_batch_data(self, keys, values): 16 | for key, value in zip(keys, values): 17 | self.dic[key] = value 18 | 19 | # 插入单条数据 20 | def add_data(self, key, value): 21 | self.dic[key] = value 22 | 23 | # 根据key删除数据 24 | def delete_data(self, key): 25 | if self.dic and self.dic.get(key, ''): 26 | self.dic.pop(key) 27 | 28 | # 根据key获取数据 29 | def get_data(self, key): 30 | return self.dic.get(key, '') 31 | 32 | # 获取全部数据 33 | def get_all_data(self): 34 | return self.dic 35 | 36 | # 提交 37 | def commit(self): 38 | self._save_dic() 39 | 40 | def _save_dic(self): 41 | try: 42 | with open(bert_file_name, 'wb')as file: 43 | pickle.dump(self.dic, file) 44 | logger.info('bert data saved successfully') 45 | except: 46 | logger.info('save bert data failed') 47 | 48 | def _read_dic(self): 49 | try: 50 | with open(bert_file_name, 'rb')as file: 51 | self.dic = pickle.load(file) 52 | except FileNotFoundError: 53 | logger.info('local bert data is none') 54 | 55 | 56 | if __name__ == '__main__': 57 | bd = BertData() 58 | data = [] 59 | vec = [] 60 | import numpy as np 61 | 62 | for i in range(30000): 63 | data.append('阿迪和考虑就鞍山市会计法哈三联空间和福利卡就很烦' + str(i)) 64 | vec.append(np.random.rand(768)) 65 | bd.add_batch_data(data, vec) 66 | # 增删改需要调用commit方法才会修改本地缓存的内容,查询不需要调用该方法 67 | bd.commit() 68 | # bd.delete_data('上午好啊天气真的不错0') 69 | # res = bd.get_data('上午好啊天气真的不错1') 70 | # bd.add_data('上午好啊天气真的不错test', [1, 2, 3]) 71 | # res = bd.get_all_data() 72 | # print(res.keys()) 73 | # for i in res.items(): 74 | # print(i[0], ':', i[1]) 75 | # print(res.values()) 76 | -------------------------------------------------------------------------------- /bert-utils/graph.py: -------------------------------------------------------------------------------- 1 | import json 2 | import logging 3 | from termcolor import colored 4 | import modeling 5 | import args 6 | import tensorflow as tf 7 | import os 8 | 9 | 10 | def set_logger(context, verbose=False): 11 | logger = logging.getLogger(context) 12 | logger.setLevel(logging.DEBUG if verbose else logging.INFO) 13 | formatter = logging.Formatter( 14 | '%(levelname)-.1s:' + context + ':[%(filename).5s:%(funcName).3s:%(lineno)3d]:%(message)s', datefmt= 15 | '%m-%d %H:%M:%S') 16 | console_handler = logging.StreamHandler() 17 | console_handler.setLevel(logging.DEBUG if verbose else logging.INFO) 18 | console_handler.setFormatter(formatter) 19 | logger.handlers = [] 20 | logger.addHandler(console_handler) 21 | return logger 22 | 23 | 24 | def optimize_graph(logger=None, verbose=False): 25 | if not logger: 26 | logger = set_logger(colored('BERT_VEC', 'yellow'), verbose) 27 | try: 28 | # we don't need GPU for optimizing the graph 29 | from tensorflow.python.tools.optimize_for_inference_lib import optimize_for_inference 30 | tf.gfile.MakeDirs(args.output_dir) 31 | 32 | config_fp = args.config_name 33 | logger.info('model config: %s' % config_fp) 34 | 35 | # 加载bert配置文件 36 | with tf.gfile.GFile(config_fp, 'r') as f: 37 | bert_config = modeling.BertConfig.from_dict(json.load(f)) 38 | 39 | logger.info('build graph...') 40 | # input placeholders, not sure if they are friendly to XLA 41 | input_ids = tf.placeholder(tf.int32, (None, args.max_seq_len), 'input_ids') 42 | input_mask = tf.placeholder(tf.int32, (None, args.max_seq_len), 'input_mask') 43 | input_type_ids = tf.placeholder(tf.int32, (None, args.max_seq_len), 'input_type_ids') 44 | 45 | jit_scope = tf.contrib.compiler.jit.experimental_jit_scope 46 | 47 | with jit_scope(): 48 | input_tensors = [input_ids, input_mask, input_type_ids] 49 | 50 | model = modeling.BertModel( 51 | config=bert_config, 52 | is_training=False, 53 | input_ids=input_ids, 54 | input_mask=input_mask, 55 | token_type_ids=input_type_ids, 56 | use_one_hot_embeddings=False) 57 | 58 | # 获取所有要训练的变量 59 | tvars = tf.trainable_variables() 60 | 61 | init_checkpoint = args.ckpt_name 62 | (assignment_map, initialized_variable_names) = modeling.get_assignment_map_from_checkpoint(tvars, 63 | init_checkpoint) 64 | 65 | tf.train.init_from_checkpoint(init_checkpoint, assignment_map) 66 | 67 | # 共享卷积核 68 | with tf.variable_scope("pooling"): 69 | # 如果只有一层,就只取对应那一层的weight 70 | if len(args.layer_indexes) == 1: 71 | encoder_layer = model.all_encoder_layers[args.layer_indexes[0]] 72 | else: 73 | # 否则遍历需要取的层,把所有层的weight取出来并拼接起来shape:768*层数 74 | all_layers = [model.all_encoder_layers[l] for l in args.layer_indexes] 75 | encoder_layer = tf.concat(all_layers, -1) 76 | 77 | mul_mask = lambda x, m: x * tf.expand_dims(m, axis=-1) 78 | masked_reduce_mean = lambda x, m: tf.reduce_sum(mul_mask(x, m), axis=1) / ( 79 | tf.reduce_sum(m, axis=1, keepdims=True) + 1e-10) 80 | 81 | input_mask = tf.cast(input_mask, tf.float32) 82 | # 以下代码是句向量的生成方法,可以理解为做了一个卷积的操作,但是没有把结果相加, 卷积核是input_mask 83 | pooled = masked_reduce_mean(encoder_layer, input_mask) 84 | pooled = tf.identity(pooled, 'final_encodes') 85 | 86 | output_tensors = [pooled] 87 | tmp_g = tf.get_default_graph().as_graph_def() 88 | 89 | # allow_soft_placement:自动选择运行设备 90 | config = tf.ConfigProto(allow_soft_placement=True) 91 | with tf.Session(config=config) as sess: 92 | logger.info('load parameters from checkpoint...') 93 | sess.run(tf.global_variables_initializer()) 94 | logger.info('freeze...') 95 | tmp_g = tf.graph_util.convert_variables_to_constants(sess, tmp_g, [n.name[:-2] for n in output_tensors]) 96 | dtypes = [n.dtype for n in input_tensors] 97 | logger.info('optimize...') 98 | tmp_g = optimize_for_inference( 99 | tmp_g, 100 | [n.name[:-2] for n in input_tensors], 101 | [n.name[:-2] for n in output_tensors], 102 | [dtype.as_datatype_enum for dtype in dtypes], 103 | False) 104 | # tmp_file = tempfile.NamedTemporaryFile('w', delete=False, dir=args.output_dir).name 105 | tmp_file = args.graph_file 106 | logger.info('write graph to a tmp file: %s' % tmp_file) 107 | with tf.gfile.GFile(tmp_file, 'wb') as f: 108 | f.write(tmp_g.SerializeToString()) 109 | return tmp_file 110 | except Exception as e: 111 | logger.error('fail to optimize the graph!') 112 | logger.error(e) 113 | -------------------------------------------------------------------------------- /bert-utils/optimization.py: -------------------------------------------------------------------------------- 1 | # coding=utf-8 2 | # Copyright 2018 The Google AI Language Team Authors. 3 | # 4 | # Licensed under the Apache License, Version 2.0 (the "License"); 5 | # you may not use this file except in compliance with the License. 6 | # You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | """Functions and classes related to optimization (weight updates).""" 16 | 17 | from __future__ import absolute_import 18 | from __future__ import division 19 | from __future__ import print_function 20 | 21 | import re 22 | import tensorflow as tf 23 | 24 | 25 | def create_optimizer(loss, init_lr, num_train_steps, num_warmup_steps, use_tpu): 26 | """Creates an optimizer training op.""" 27 | global_step = tf.train.get_or_create_global_step() 28 | 29 | learning_rate = tf.constant(value=init_lr, shape=[], dtype=tf.float32) 30 | 31 | # Implements linear decay of the learning rate. 32 | learning_rate = tf.train.polynomial_decay( 33 | learning_rate, 34 | global_step, 35 | num_train_steps, 36 | end_learning_rate=0.0, 37 | power=1.0, 38 | cycle=False) 39 | 40 | # Implements linear warmup. I.e., if global_step < num_warmup_steps, the 41 | # learning rate will be `global_step/num_warmup_steps * init_lr`. 42 | if num_warmup_steps: 43 | global_steps_int = tf.cast(global_step, tf.int32) 44 | warmup_steps_int = tf.constant(num_warmup_steps, dtype=tf.int32) 45 | 46 | global_steps_float = tf.cast(global_steps_int, tf.float32) 47 | warmup_steps_float = tf.cast(warmup_steps_int, tf.float32) 48 | 49 | warmup_percent_done = global_steps_float / warmup_steps_float 50 | warmup_learning_rate = init_lr * warmup_percent_done 51 | 52 | is_warmup = tf.cast(global_steps_int < warmup_steps_int, tf.float32) 53 | learning_rate = ( 54 | (1.0 - is_warmup) * learning_rate + is_warmup * warmup_learning_rate) 55 | 56 | # It is recommended that you use this optimizer for fine tuning, since this 57 | # is how the model was trained (note that the Adam m/v variables are NOT 58 | # loaded from init_checkpoint.) 59 | optimizer = AdamWeightDecayOptimizer( 60 | learning_rate=learning_rate, 61 | weight_decay_rate=0.01, 62 | beta_1=0.9, 63 | beta_2=0.999, 64 | epsilon=1e-6, 65 | exclude_from_weight_decay=["LayerNorm", "layer_norm", "bias"]) 66 | 67 | if use_tpu: 68 | optimizer = tf.contrib.tpu.CrossShardOptimizer(optimizer) 69 | 70 | tvars = tf.trainable_variables() 71 | grads = tf.gradients(loss, tvars) 72 | 73 | # This is how the model was pre-trained. 74 | (grads, _) = tf.clip_by_global_norm(grads, clip_norm=1.0) 75 | 76 | train_op = optimizer.apply_gradients( 77 | zip(grads, tvars), global_step=global_step) 78 | 79 | new_global_step = global_step + 1 80 | train_op = tf.group(train_op, [global_step.assign(new_global_step)]) 81 | return train_op 82 | 83 | 84 | class AdamWeightDecayOptimizer(tf.train.Optimizer): 85 | """A basic Adam optimizer that includes "correct" L2 weight decay.""" 86 | 87 | def __init__(self, 88 | learning_rate, 89 | weight_decay_rate=0.0, 90 | beta_1=0.9, 91 | beta_2=0.999, 92 | epsilon=1e-6, 93 | exclude_from_weight_decay=None, 94 | name="AdamWeightDecayOptimizer"): 95 | """Constructs a AdamWeightDecayOptimizer.""" 96 | super(AdamWeightDecayOptimizer, self).__init__(False, name) 97 | 98 | self.learning_rate = learning_rate 99 | self.weight_decay_rate = weight_decay_rate 100 | self.beta_1 = beta_1 101 | self.beta_2 = beta_2 102 | self.epsilon = epsilon 103 | self.exclude_from_weight_decay = exclude_from_weight_decay 104 | 105 | def apply_gradients(self, grads_and_vars, global_step=None, name=None): 106 | """See base class.""" 107 | assignments = [] 108 | for (grad, param) in grads_and_vars: 109 | if grad is None or param is None: 110 | continue 111 | 112 | param_name = self._get_variable_name(param.name) 113 | 114 | m = tf.get_variable( 115 | name=param_name + "/adam_m", 116 | shape=param.shape.as_list(), 117 | dtype=tf.float32, 118 | trainable=False, 119 | initializer=tf.zeros_initializer()) 120 | v = tf.get_variable( 121 | name=param_name + "/adam_v", 122 | shape=param.shape.as_list(), 123 | dtype=tf.float32, 124 | trainable=False, 125 | initializer=tf.zeros_initializer()) 126 | 127 | # Standard Adam update. 128 | next_m = ( 129 | tf.multiply(self.beta_1, m) + tf.multiply(1.0 - self.beta_1, grad)) 130 | next_v = ( 131 | tf.multiply(self.beta_2, v) + tf.multiply(1.0 - self.beta_2, 132 | tf.square(grad))) 133 | 134 | update = next_m / (tf.sqrt(next_v) + self.epsilon) 135 | 136 | # Just adding the square of the weights to the loss function is *not* 137 | # the correct way of using L2 regularization/weight decay with Adam, 138 | # since that will interact with the m and v parameters in strange ways. 139 | # 140 | # Instead we want ot decay the weights in a manner that doesn't interact 141 | # with the m/v parameters. This is equivalent to adding the square 142 | # of the weights to the loss with plain (non-momentum) SGD. 143 | if self._do_use_weight_decay(param_name): 144 | update += self.weight_decay_rate * param 145 | 146 | update_with_lr = self.learning_rate * update 147 | 148 | next_param = param - update_with_lr 149 | 150 | assignments.extend( 151 | [param.assign(next_param), 152 | m.assign(next_m), 153 | v.assign(next_v)]) 154 | return tf.group(*assignments, name=name) 155 | 156 | def _do_use_weight_decay(self, param_name): 157 | """Whether to use L2 weight decay for `param_name`.""" 158 | if not self.weight_decay_rate: 159 | return False 160 | if self.exclude_from_weight_decay: 161 | for r in self.exclude_from_weight_decay: 162 | if re.search(r, param_name) is not None: 163 | return False 164 | return True 165 | 166 | def _get_variable_name(self, param_name): 167 | """Get the variable name from the tensor name.""" 168 | m = re.match("^(.*):\\d+$", param_name) 169 | if m is not None: 170 | param_name = m.group(1) 171 | return param_name 172 | -------------------------------------------------------------------------------- /bert-utils/tokenization.py: -------------------------------------------------------------------------------- 1 | # coding=utf-8 2 | # Copyright 2018 The Google AI Language Team Authors. 3 | # 4 | # Licensed under the Apache License, Version 2.0 (the "License"); 5 | # you may not use this file except in compliance with the License. 6 | # You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | """Tokenization classes.""" 16 | 17 | from __future__ import absolute_import 18 | from __future__ import division 19 | from __future__ import print_function 20 | 21 | import collections 22 | import unicodedata 23 | import six 24 | import tensorflow as tf 25 | 26 | 27 | def convert_to_unicode(text): 28 | """Converts `text` to Unicode (if it's not already), assuming utf-8 input.""" 29 | if six.PY3: 30 | if isinstance(text, str): 31 | return text 32 | elif isinstance(text, bytes): 33 | return text.decode("utf-8", "ignore") 34 | else: 35 | raise ValueError("Unsupported string type: %s" % (type(text))) 36 | elif six.PY2: 37 | if isinstance(text, str): 38 | return text.decode("utf-8", "ignore") 39 | elif isinstance(text, unicode): 40 | return text 41 | else: 42 | raise ValueError("Unsupported string type: %s" % (type(text))) 43 | else: 44 | raise ValueError("Not running on Python2 or Python 3?") 45 | 46 | 47 | def printable_text(text): 48 | """Returns text encoded in a way suitable for print or `tf.logging`.""" 49 | 50 | # These functions want `str` for both Python2 and Python3, but in one case 51 | # it's a Unicode string and in the other it's a byte string. 52 | if six.PY3: 53 | if isinstance(text, str): 54 | return text 55 | elif isinstance(text, bytes): 56 | return text.decode("utf-8", "ignore") 57 | else: 58 | raise ValueError("Unsupported string type: %s" % (type(text))) 59 | elif six.PY2: 60 | if isinstance(text, str): 61 | return text 62 | elif isinstance(text, unicode): 63 | return text.encode("utf-8") 64 | else: 65 | raise ValueError("Unsupported string type: %s" % (type(text))) 66 | else: 67 | raise ValueError("Not running on Python2 or Python 3?") 68 | 69 | 70 | def load_vocab(vocab_file): 71 | """Loads a vocabulary file into a dictionary.""" 72 | vocab = collections.OrderedDict() 73 | index = 0 74 | with tf.gfile.GFile(vocab_file, "r") as reader: 75 | while True: 76 | token = convert_to_unicode(reader.readline()) 77 | if not token: 78 | break 79 | token = token.strip() 80 | vocab[token] = index 81 | index += 1 82 | return vocab 83 | 84 | 85 | def convert_by_vocab(vocab, items): 86 | """Converts a sequence of [tokens|ids] using the vocab.""" 87 | output = [] 88 | for item in items: 89 | output.append(vocab[item]) 90 | return output 91 | 92 | 93 | def convert_tokens_to_ids(vocab, tokens): 94 | return convert_by_vocab(vocab, tokens) 95 | 96 | 97 | def convert_ids_to_tokens(inv_vocab, ids): 98 | return convert_by_vocab(inv_vocab, ids) 99 | 100 | 101 | def whitespace_tokenize(text): 102 | """Runs basic whitespace cleaning and splitting on a piece of text.""" 103 | text = text.strip() 104 | if not text: 105 | return [] 106 | tokens = text.split() 107 | return tokens 108 | 109 | 110 | class FullTokenizer(object): 111 | """Runs end-to-end tokenziation.""" 112 | 113 | def __init__(self, vocab_file, do_lower_case=True): 114 | self.vocab = load_vocab(vocab_file) 115 | self.inv_vocab = {v: k for k, v in self.vocab.items()} 116 | self.basic_tokenizer = BasicTokenizer(do_lower_case=do_lower_case) 117 | self.wordpiece_tokenizer = WordpieceTokenizer(vocab=self.vocab) 118 | 119 | def tokenize(self, text): 120 | split_tokens = [] 121 | for token in self.basic_tokenizer.tokenize(text): 122 | for sub_token in self.wordpiece_tokenizer.tokenize(token): 123 | split_tokens.append(sub_token) 124 | 125 | return split_tokens 126 | 127 | def convert_tokens_to_ids(self, tokens): 128 | return convert_by_vocab(self.vocab, tokens) 129 | 130 | def convert_ids_to_tokens(self, ids): 131 | return convert_by_vocab(self.inv_vocab, ids) 132 | 133 | 134 | class BasicTokenizer(object): 135 | """Runs basic tokenization (punctuation splitting, lower casing, etc.).""" 136 | 137 | def __init__(self, do_lower_case=True): 138 | """Constructs a BasicTokenizer. 139 | 140 | Args: 141 | do_lower_case: Whether to lower case the input. 142 | """ 143 | self.do_lower_case = do_lower_case 144 | 145 | def tokenize(self, text): 146 | """Tokenizes a piece of text.""" 147 | text = convert_to_unicode(text) 148 | text = self._clean_text(text) 149 | 150 | # This was added on November 1st, 2018 for the multilingual and Chinese 151 | # models. This is also applied to the English models now, but it doesn't 152 | # matter since the English models were not trained on any Chinese data 153 | # and generally don't have any Chinese data in them (there are Chinese 154 | # characters in the vocabulary because Wikipedia does have some Chinese 155 | # words in the English Wikipedia.). 156 | text = self._tokenize_chinese_chars(text) 157 | 158 | orig_tokens = whitespace_tokenize(text) 159 | split_tokens = [] 160 | for token in orig_tokens: 161 | if self.do_lower_case: 162 | token = token.lower() 163 | token = self._run_strip_accents(token) 164 | split_tokens.extend(self._run_split_on_punc(token)) 165 | 166 | output_tokens = whitespace_tokenize(" ".join(split_tokens)) 167 | return output_tokens 168 | 169 | def _run_strip_accents(self, text): 170 | """Strips accents from a piece of text.""" 171 | text = unicodedata.normalize("NFD", text) 172 | output = [] 173 | for char in text: 174 | cat = unicodedata.category(char) 175 | if cat == "Mn": 176 | continue 177 | output.append(char) 178 | return "".join(output) 179 | 180 | def _run_split_on_punc(self, text): 181 | """Splits punctuation on a piece of text.""" 182 | chars = list(text) 183 | i = 0 184 | start_new_word = True 185 | output = [] 186 | while i < len(chars): 187 | char = chars[i] 188 | if _is_punctuation(char): 189 | output.append([char]) 190 | start_new_word = True 191 | else: 192 | if start_new_word: 193 | output.append([]) 194 | start_new_word = False 195 | output[-1].append(char) 196 | i += 1 197 | 198 | return ["".join(x) for x in output] 199 | 200 | def _tokenize_chinese_chars(self, text): 201 | """Adds whitespace around any CJK character.""" 202 | output = [] 203 | for char in text: 204 | cp = ord(char) 205 | if self._is_chinese_char(cp): 206 | output.append(" ") 207 | output.append(char) 208 | output.append(" ") 209 | else: 210 | output.append(char) 211 | return "".join(output) 212 | 213 | def _is_chinese_char(self, cp): 214 | """Checks whether CP is the codepoint of a CJK character.""" 215 | # This defines a "chinese character" as anything in the CJK Unicode block: 216 | # https://en.wikipedia.org/wiki/CJK_Unified_Ideographs_(Unicode_block) 217 | # 218 | # Note that the CJK Unicode block is NOT all Japanese and Korean characters, 219 | # despite its name. The modern Korean Hangul alphabet is a different block, 220 | # as is Japanese Hiragana and Katakana. Those alphabets are used to write 221 | # space-separated words, so they are not treated specially and handled 222 | # like the all of the other languages. 223 | if ((cp >= 0x4E00 and cp <= 0x9FFF) or # 224 | (cp >= 0x3400 and cp <= 0x4DBF) or # 225 | (cp >= 0x20000 and cp <= 0x2A6DF) or # 226 | (cp >= 0x2A700 and cp <= 0x2B73F) or # 227 | (cp >= 0x2B740 and cp <= 0x2B81F) or # 228 | (cp >= 0x2B820 and cp <= 0x2CEAF) or 229 | (cp >= 0xF900 and cp <= 0xFAFF) or # 230 | (cp >= 0x2F800 and cp <= 0x2FA1F)): # 231 | return True 232 | 233 | return False 234 | 235 | def _clean_text(self, text): 236 | """Performs invalid character removal and whitespace cleanup on text.""" 237 | output = [] 238 | for char in text: 239 | cp = ord(char) 240 | if cp == 0 or cp == 0xfffd or _is_control(char): 241 | continue 242 | if _is_whitespace(char): 243 | output.append(" ") 244 | else: 245 | output.append(char) 246 | return "".join(output) 247 | 248 | 249 | class WordpieceTokenizer(object): 250 | """Runs WordPiece tokenziation.""" 251 | 252 | def __init__(self, vocab, unk_token="[UNK]", max_input_chars_per_word=200): 253 | self.vocab = vocab 254 | self.unk_token = unk_token 255 | self.max_input_chars_per_word = max_input_chars_per_word 256 | 257 | def tokenize(self, text): 258 | """Tokenizes a piece of text into its word pieces. 259 | 260 | This uses a greedy longest-match-first algorithm to perform tokenization 261 | using the given vocabulary. 262 | 263 | For example: 264 | input = "unaffable" 265 | output = ["un", "##aff", "##able"] 266 | 267 | Args: 268 | text: A single token or whitespace separated tokens. This should have 269 | already been passed through `BasicTokenizer. 270 | 271 | Returns: 272 | A list of wordpiece tokens. 273 | """ 274 | 275 | text = convert_to_unicode(text) 276 | 277 | output_tokens = [] 278 | for token in whitespace_tokenize(text): 279 | chars = list(token) 280 | if len(chars) > self.max_input_chars_per_word: 281 | output_tokens.append(self.unk_token) 282 | continue 283 | 284 | is_bad = False 285 | start = 0 286 | sub_tokens = [] 287 | while start < len(chars): 288 | end = len(chars) 289 | cur_substr = None 290 | while start < end: 291 | substr = "".join(chars[start:end]) 292 | if start > 0: 293 | substr = "##" + substr 294 | if substr in self.vocab: 295 | cur_substr = substr 296 | break 297 | end -= 1 298 | if cur_substr is None: 299 | is_bad = True 300 | break 301 | sub_tokens.append(cur_substr) 302 | start = end 303 | 304 | if is_bad: 305 | output_tokens.append(self.unk_token) 306 | else: 307 | output_tokens.extend(sub_tokens) 308 | return output_tokens 309 | 310 | 311 | def _is_whitespace(char): 312 | """Checks whether `chars` is a whitespace character.""" 313 | # \t, \n, and \r are technically contorl characters but we treat them 314 | # as whitespace since they are generally considered as such. 315 | if char == " " or char == "\t" or char == "\n" or char == "\r": 316 | return True 317 | cat = unicodedata.category(char) 318 | if cat == "Zs": 319 | return True 320 | return False 321 | 322 | 323 | def _is_control(char): 324 | """Checks whether `chars` is a control character.""" 325 | # These are technically control characters but we count them as whitespace 326 | # characters. 327 | if char == "\t" or char == "\n" or char == "\r": 328 | return False 329 | cat = unicodedata.category(char) 330 | if cat.startswith("C"): 331 | return True 332 | return False 333 | 334 | 335 | def _is_punctuation(char): 336 | """Checks whether `chars` is a punctuation character.""" 337 | cp = ord(char) 338 | # We treat all non-letter/number ASCII as punctuation. 339 | # Characters such as "^", "$", and "`" are not in the Unicode 340 | # Punctuation class but we treat them as punctuation anyways, for 341 | # consistency. 342 | if ((cp >= 33 and cp <= 47) or (cp >= 58 and cp <= 64) or 343 | (cp >= 91 and cp <= 96) or (cp >= 123 and cp <= 126)): 344 | return True 345 | cat = unicodedata.category(char) 346 | if cat.startswith("P"): 347 | return True 348 | return False 349 | -------------------------------------------------------------------------------- /presentation.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/presentation.pptx -------------------------------------------------------------------------------- /spider/spider.py: -------------------------------------------------------------------------------- 1 | __author__ = 'CQC' 2 | # -*- coding:utf-8 -*- 3 | import urllib 4 | import urllib.request 5 | import urllib.error 6 | import re 7 | 8 | 9 | # 处理页面标签类 10 | class Tool: 11 | removeImg = re.compile('| {7}|') 12 | removeAddr = re.compile('|') 13 | replaceLine = re.compile('|
|
|

') 14 | replaceTD = re.compile('') 15 | replacePara = re.compile('') 16 | replaceBR = re.compile('

|
') 17 | removeExtraTag = re.compile('<.*?>') 18 | 19 | def replace(self, x): 20 | x = re.sub(self.removeImg, "", x) 21 | x = re.sub(self.removeAddr, "", x) 22 | x = re.sub(self.replaceLine, "\n", x) 23 | x = re.sub(self.replaceTD, "\t", x) 24 | x = re.sub(self.replacePara, "\n ", x) 25 | x = re.sub(self.replaceBR, "\n", x) 26 | x = re.sub(self.removeExtraTag, "", x) 27 | 28 | return x.strip() 29 | 30 | 31 | # 百度贴吧爬虫类 32 | class BDTB: 33 | 34 | # 初始化,传入基地址,参数 35 | def __init__(self, baseUrl, seeLZ, floorTag): 36 | self.baseURL = baseUrl 37 | self.seeLZ = '?see_lz=' + str(seeLZ) 38 | self.tool = Tool() 39 | self.file = None 40 | self.floor = 1 41 | self.defaultTitle = u"百度贴吧" 42 | self.floorTag = floorTag 43 | 44 | # 传入页码,获取该页帖子的代码 45 | def getPage(self, pageNum): 46 | try: 47 | url = self.baseURL + self.seeLZ + '&pn=' + str(pageNum) 48 | request = urllib.request.Request(url) 49 | response = urllib.request.urlopen(request) 50 | return response.read().decode('utf-8') 51 | except urllib.request.URLError as e: 52 | if hasattr(e, "reason"): 53 | print 54 | u"连接百度贴吧失败,错误原因", e.reason 55 | return None 56 | 57 | # 获取帖子标题 58 | def getTitle(self, page): 59 | pattern = re.compile('

.*?(.*?)', re.S) 69 | result = re.search(pattern, page) 70 | if result: 71 | return result.group(1).strip() 72 | else: 73 | return None 74 | 75 | # 获取每一层楼的内容,传入页面内容 76 | def getContent(self, page): 77 | pattern = re.compile('
185 | ( 186 | ) 187 | 〔 188 | 〕 189 | [ 190 | ] 191 | ( 192 | ) 193 | - 194 | + 195 | ~ 196 | × 197 | / 198 | / 199 | ① 200 | ② 201 | ③ 202 | ④ 203 | ⑤ 204 | ⑥ 205 | ⑦ 206 | ⑧ 207 | ⑨ 208 | ⑩ 209 | Ⅲ 210 | В 211 | " 212 | ; 213 | # 214 | @ 215 | γ 216 | μ 217 | φ 218 | φ. 219 | × 220 | Δ 221 | ■ 222 | ▲ 223 | sub 224 | exp 225 | sup 226 | sub 227 | Lex 228 | # 229 | % 230 | & 231 | ' 232 | + 233 | +ξ 234 | ++ 235 | - 236 | -β 237 | < 238 | <± 239 | <Δ 240 | <λ 241 | <φ 242 | << 243 | = 244 | = 245 | =☆ 246 | =- 247 | > 248 | >λ 249 | _ 250 | ~± 251 | ~+ 252 | [⑤f] 253 | [⑤d] 254 | [②i] 255 | ≈ 256 | [②G] 257 | [①f] 258 | LI 259 | ㈧ 260 | [- 261 | ...... 262 | 〉 263 | [③⑩] 264 | 第二 265 | 一番 266 | 一直 267 | 一个 268 | 一些 269 | 许多 270 | 种 271 | 有的是 272 | 也就是说 273 | 末##末 274 | 啊 275 | 阿 276 | 哎 277 | 哎呀 278 | 哎哟 279 | 唉 280 | 俺 281 | 俺们 282 | 按 283 | 按照 284 | 吧 285 | 吧哒 286 | 把 287 | 罢了 288 | 被 289 | 本 290 | 本着 291 | 比 292 | 比方 293 | 比如 294 | 鄙人 295 | 彼 296 | 彼此 297 | 边 298 | 别 299 | 别的 300 | 别说 301 | 并 302 | 并且 303 | 不比 304 | 不成 305 | 不单 306 | 不但 307 | 不独 308 | 不管 309 | 不光 310 | 不过 311 | 不仅 312 | 不拘 313 | 不论 314 | 不怕 315 | 不然 316 | 不如 317 | 不特 318 | 不惟 319 | 不问 320 | 不只 321 | 朝 322 | 朝着 323 | 趁 324 | 趁着 325 | 乘 326 | 冲 327 | 除 328 | 除此之外 329 | 除非 330 | 除了 331 | 此 332 | 此间 333 | 此外 334 | 从 335 | 从而 336 | 打 337 | 待 338 | 但 339 | 但是 340 | 当 341 | 当着 342 | 到 343 | 得 344 | 的 345 | 的话 346 | 等 347 | 等等 348 | 地 349 | 第 350 | 叮咚 351 | 对 352 | 对于 353 | 多 354 | 多少 355 | 而 356 | 而况 357 | 而且 358 | 而是 359 | 而外 360 | 而言 361 | 而已 362 | 尔后 363 | 反过来 364 | 反过来说 365 | 反之 366 | 非但 367 | 非徒 368 | 否则 369 | 嘎 370 | 嘎登 371 | 该 372 | 赶 373 | 个 374 | 各 375 | 各个 376 | 各位 377 | 各种 378 | 各自 379 | 给 380 | 根据 381 | 跟 382 | 故 383 | 故此 384 | 固然 385 | 关于 386 | 管 387 | 归 388 | 果然 389 | 果真 390 | 过 391 | 哈 392 | 哈哈 393 | 呵 394 | 和 395 | 何 396 | 何处 397 | 何况 398 | 何时 399 | 嘿 400 | 哼 401 | 哼唷 402 | 呼哧 403 | 乎 404 | 哗 405 | 还是 406 | 还有 407 | 换句话说 408 | 换言之 409 | 或 410 | 或是 411 | 或者 412 | 极了 413 | 及 414 | 及其 415 | 及至 416 | 即 417 | 即便 418 | 即或 419 | 即令 420 | 即若 421 | 即使 422 | 几 423 | 几时 424 | 己 425 | 既 426 | 既然 427 | 既是 428 | 继而 429 | 加之 430 | 假如 431 | 假若 432 | 假使 433 | 鉴于 434 | 将 435 | 较 436 | 较之 437 | 叫 438 | 接着 439 | 结果 440 | 借 441 | 紧接着 442 | 进而 443 | 尽 444 | 尽管 445 | 经 446 | 经过 447 | 就 448 | 就是 449 | 就是说 450 | 据 451 | 具体地说 452 | 具体说来 453 | 开始 454 | 开外 455 | 靠 456 | 咳 457 | 可 458 | 可见 459 | 可是 460 | 可以 461 | 况且 462 | 啦 463 | 来 464 | 来着 465 | 离 466 | 例如 467 | 哩 468 | 连 469 | 连同 470 | 两者 471 | 了 472 | 临 473 | 另 474 | 另外 475 | 另一方面 476 | 论 477 | 嘛 478 | 吗 479 | 慢说 480 | 漫说 481 | 冒 482 | 么 483 | 每 484 | 每当 485 | 们 486 | 莫若 487 | 某 488 | 某个 489 | 某些 490 | 拿 491 | 哪 492 | 哪边 493 | 哪儿 494 | 哪个 495 | 哪里 496 | 哪年 497 | 哪怕 498 | 哪天 499 | 哪些 500 | 哪样 501 | 那 502 | 那边 503 | 那儿 504 | 那个 505 | 那会儿 506 | 那里 507 | 那么 508 | 那么些 509 | 那么样 510 | 那时 511 | 那些 512 | 那样 513 | 乃 514 | 乃至 515 | 呢 516 | 能 517 | 你 518 | 你们 519 | 您 520 | 宁 521 | 宁可 522 | 宁肯 523 | 宁愿 524 | 哦 525 | 呕 526 | 啪达 527 | 旁人 528 | 呸 529 | 时 530 | 都 531 | 后 532 | 很 533 | 都 534 | 还 535 | 非常 536 | 不 537 | 凭 538 | 凭借 539 | 没有 540 | 其 541 | 其次 542 | 其二 543 | 其他 544 | 其它 545 | 其一 546 | 其余 547 | 其中 548 | 起 549 | 起见 550 | 起见 551 | 岂但 552 | 恰恰相反 553 | 前后 554 | 前者 555 | 且 556 | 然而 557 | 然后 558 | 然则 559 | 让 560 | 人家 561 | 任 562 | 任何 563 | 任凭 564 | 如 565 | 如此 566 | 如果 567 | 如何 568 | 如其 569 | 如若 570 | 如上所述 571 | 若 572 | 若非 573 | 若是 574 | 啥 575 | 上下 576 | 尚且 577 | 设若 578 | 设使 579 | 甚而 580 | 甚么 581 | 甚至 582 | 省得 583 | 时候 584 | 什么 585 | 什么样 586 | 使得 587 | 是 588 | 是的 589 | 首先 590 | 谁 591 | 谁知 592 | 顺 593 | 顺着 594 | 似的 595 | 虽 596 | 虽然 597 | 虽说 598 | 虽则 599 | 随 600 | 随着 601 | 所 602 | 所以 603 | 他 604 | 他们 605 | 他人 606 | 它 607 | 它们 608 | 她 609 | 她们 610 | 倘 611 | 倘或 612 | 倘然 613 | 倘若 614 | 倘使 615 | 腾 616 | 替 617 | 通过 618 | 同 619 | 同时 620 | 哇 621 | 万一 622 | 往 623 | 望 624 | 为 625 | 为何 626 | 为了 627 | 为什么 628 | 为着 629 | 喂 630 | 嗡嗡 631 | 我 632 | 我们 633 | 呜 634 | 呜呼 635 | 乌乎 636 | 无论 637 | 无宁 638 | 毋宁 639 | 嘻 640 | 吓 641 | 相对而言 642 | 像 643 | 向 644 | 向着 645 | 嘘 646 | 呀 647 | 焉 648 | 沿 649 | 沿着 650 | 要 651 | 要不 652 | 要不然 653 | 要不是 654 | 要么 655 | 要是 656 | 也 657 | 也罢 658 | 也好 659 | 一 660 | 一般 661 | 一旦 662 | 一方面 663 | 一来 664 | 一切 665 | 一样 666 | 一则 667 | 依 668 | 依照 669 | 矣 670 | 以 671 | 以便 672 | 以及 673 | 以免 674 | 以至 675 | 以至于 676 | 以致 677 | 抑或 678 | 因 679 | 因此 680 | 因而 681 | 因为 682 | 哟 683 | 用 684 | 由 685 | 由此可见 686 | 由于 687 | 有 688 | 有的 689 | 有关 690 | 有些 691 | 又 692 | 于 693 | 于是 694 | 于是乎 695 | 与 696 | 与此同时 697 | 与否 698 | 与其 699 | 越是 700 | 云云 701 | 哉 702 | 再说 703 | 再者 704 | 在 705 | 在下 706 | 咱 707 | 咱们 708 | 则 709 | 怎 710 | 怎么 711 | 怎么办 712 | 怎么样 713 | 怎样 714 | 咋 715 | 照 716 | 照着 717 | 者 718 | 这 719 | 这边 720 | 这儿 721 | 这个 722 | 这会儿 723 | 这就是说 724 | 这里 725 | 这么 726 | 这么点儿 727 | 这么些 728 | 这么样 729 | 这时 730 | 这些 731 | 这样 732 | 正如 733 | 吱 734 | 之 735 | 之类 736 | 之所以 737 | 之一 738 | 只是 739 | 只限 740 | 只要 741 | 只有 742 | 至 743 | 至于 744 | 诸位 745 | 着 746 | 着呢 747 | 自 748 | 自从 749 | 自个儿 750 | 自各儿 751 | 自己 752 | 自家 753 | 自身 754 | 综上所述 755 | 总的来看 756 | 总的来说 757 | 总的说来 758 | 总而言之 759 | 总之 760 | 纵 761 | 纵令 762 | 纵然 763 | 纵使 764 | 遵照 765 | 作为 766 | 兮 767 | 呃 768 | 呗 769 | 咚 770 | 咦 771 | 喏 772 | 啐 773 | 喔唷 774 | 嗬 775 | 嗯 776 | 嗳 777 | -------------------------------------------------------------------------------- /visualization/simsun.ttc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/simsun.ttc -------------------------------------------------------------------------------- /visualization/中间文件/web_cause.txt: -------------------------------------------------------------------------------- 1 | 有些 人会 问得 了 抑郁症 会 好 起来 吗 2 | 晚安 3 | 晚安 4 | 晚安 5 | 晚安 6 | 晚安 7 | 2010 年 的 时候 自己 想着 去 西藏 那个 最 接近 天堂 的 地方 去 和 这个 让 人 痛苦 的 世界 做 一个 告别 8 | 后来 听 父亲 说 母亲 每次 都 是 强忍 着 去 做 一些 家务 9 | 晚安 10 | 谈恋爱 11 | 找个 又 暖 又 甜 的 男朋友 不香 吗 12 | 追 不到 的 梦 就 换下 一个 13 | 再 不 下车 就要 晕 了 14 | 就 不想 看 下 几十年 后 的 世界 吗 15 | 一 晚上 向 阿弥陀佛 祈祷 16 | 谢谢 那些 一件件 接连不断 发生 在 我 身上 的 残忍 事情 17 | 有着 令人 绝望 的 时刻 18 | 我 以前 怕 自己 19 | 搞 啥 也 不 知道 自问自答 20 | 也 不是 那么 傻 回人 海里 21 | 哎 一样 什么 都 不想 22 | 是 到 站 了 吧 陪 我 哭 陪 我 闹 陪 我 癫狂 陪 我 吃药 慢慢 的 在 平静 23 | 肯定 自己 的 还 需要 自己 来 又 来 了 再 熟悉 的 人 身上 找 陌生感 24 | 或者 是 不 喜欢 男人 的 女人 25 | 又 想 逃离 南无 观世音 菩萨 南无 观世音 菩萨 南无 观世音 菩萨 好 安静 的 夜 明天 会 好 吗 26 | 其实 每个 人 都 或多或少 有 一些 心理 问题 但 并 不是 每次 心理 难 受到 崩溃 都 是 抑郁症 退 一万步 来说 就算 是 抑郁症 也 不是 什么 绝症 27 | 有些 事 有些 话 说 出来 说 出来 也许 解决不了 什么 根本 问题 但 至少 至少 会 让 你 好受 一些 因为 听 你 说 这些 话 的 我 绝无 28 | 我 不 知道 你 但 你 知道 我 所以 你 是 绝对 安全 的 而 我 就 在 这里 所以 你 是 有人 陪伴 的 29 | 我 本意 是 想 做 个 心理医生 的 但是 我 又 不想 做 医院 里 的 那些 医生 我 只是 想要 可以 让 人 放心大胆 的 说话 而 我 就 30 | 我 有 故事 我 有 初心 我 有 时间 那么 你 愿意 和 我 说话 吗 那 你 想要 在 哪里 和 我 说话 呢 31 | 那么 你 愿意 和 我 说说话 吗 32 | 这 应该 是 一个 好 的 改变 吧 不 这 就是 一个 好 的 改变 不然 我 这么 多年 和 这个 情绪 病 打 的 交道 岂 不是 白费 了 33 | 我 这个 人 吧 特别 懒 懒得 去 尝试 新鲜 事物 也 懒得 去 改变 34 | 我 怕疼 但是 我 从来 不怕死 你 这 是 失恋 了 想不开 吗 35 | 我 记得 特别 清楚 的 一篇 是 类似 于 有 几栋 房产 但是 家里人 或者 亲戚 什么 的 生病 了 就 立马 跑 去 网上 求 好心人 支持 帮助 36 | 最后 满脸 笑容 地 在 那里 说 谢谢 那些 没有 房产 还 没有 什么 存款 的 人 帮忙 解决 了 大 问题 什么 的 37 | 我 感觉 这句 话 就 类似 于 我们 不是 骗子 呀 我们 说 的 也 是 实话 只是 可能 没有 那么 严重 或者说 我们 是 还有 办法 解决 但是 别人 38 | 我 不 善良 了 世界 没 你 想象 的 那么 好 39 | 我 不 知道 是 我 的 这个 举动 打开 了 他 的 话匣子 还是 说 叔叔 本身 就是 一个 性格外向 且 健谈 的 人 40 | 我 承认 在 现实 社会 中 的确 会 有 一些 农村 里 的 孩子 比不上 诚实 里 的 孩子 41 | 相比 于忠犬八公 来说 至少 它 等到 了 它 的 主人 42 | 因为 它 的 原 主人 从来 都 没有 放弃 过 它 在 他们 的 心里 Leo 是 一个 特别 重要 的 如同 家人 一般 的 存在 在 发现 Leo 不 43 | 那些 只图 一时 新鲜 觉得 可爱 好玩 然后 没多久 就 嫌 麻烦 然后 就 把 狗子 给 扔 了 任由 其 自生自灭 的 有 多少 呢 44 | 所以 这 就 有点 对不起 那些 喜欢 只 看 楼主 的 人 了 只能 麻烦 你们 耐心 的 看 了 感恩 的 心 感谢 有 你 45 | 最后 呢 希望 大家 今天 都 能 有 个 好 心情 加油 唷 别人 说 的话 随便 听 一 听 自己 做 决定 咬到 舌头 才 知道 吃 东西 不能 46 | 真的 就是 一个 人 一秒 一秒 熬过来 的 我 不 后悔 我 青春 里 的 所有 过往 因为 我 的的确确 做到 了 扪心无愧 可是 如果 再 来 一次 我 不要 47 | 我 是 多 梦 的 男 · · · · 孩 48 | 我 这辈子 有过 对不起 的 人 但是 对不起 我 的 人 更 多 49 | 就是 以为 自己 配得 上 自己 想要 的 一切 也 不是 说 悲观 情绪 就是 特别 强烈 的 无所适从 感 50 | 我们 都 是 孤独 患者 刚 分开 那阵 我会 去 你 的 空间 读着 读 着 动态 看 你 的 留言 我 就 会 皱起 眉头 有时候 会 吃醋 现在 51 | 我 以为 的 都 是 错 的 我们 最先 苍老 的 从来不 是 容貌 而是 那 份 不顾一切 的 闯劲 关于 抑郁症 它 最难 最难 的 就是 完全 不 被 52 | 你 不 回 任何人 的 消息 通讯录 里 的 人 都 觉得 陌生 你 能 联系 的 人 越来越少 53 | 你 不 明白 为什么 你 这 一生 从未 做过 任何 伤天害理 的 事 甚至 经常 有人 夸 你 善良 懂事 却 未 得 过 什么 善终 54 | 鱼 都 当 你 有时候 还 挺 想 回到 小时候 那个 时候 虽然 也 不是 多 快乐 但 至少 没有 情绪 病 也 不会 想 多 我 信奉 正义 却 55 | 对于 我 而言 但 凡是 让 我 觉得 恶心 难受 不 舒服 的 一些 行为 都 是 56 | 其实 做 这个 之前 我 就 有 想 过 我会 面临 什么 负 能量 不 了解 还有 就是 一些 有 关于 那 方面 的 玩笑 之类 的 57 | 我 很 庆幸 我 遇到 的 绝大部分 人 都 是 良善 之 人 而 那 小 部分 人 在 我 表达 了 我 的 不 喜欢 拒绝 之后 也 暂停 58 | 如果说 我 最 开始 的 委婉 拒绝 他 没有 看 明白 的话 在 我 明确 表示 了 我 不 喜欢 我 拒绝 谈论 此 话题 之后 他 的 下 一个 59 | 或许 会 有人 质疑 我 或者说 笑话 我 觉得 我 弱不禁风 什么 都 要说 出来 60 | 其实 这个 问题 我 想 了 很 久 我 这 一生 也许 算不上 一个 好人 但 至少 我 不是 一个 坏人 可是 为什么 偏偏 我会 得 这个 病 一 得 61 | 情绪 病 的 患者 没有 胃口 不想 吃饭 吃 不 下去 也 不想 下 床 什么 都 不想 做 什么 也 不 愿意 去 做 62 | 人心 有时候 很难 自我调节 和 控制 63 | 所以 立马 变 身 刺猬 64 | 那种 电磁波 一般 的 耳鸣 从 一点点 在 你 耳边 徘徊 到 最后 你 就算 捂住 耳朵 却 还是 一个劲地 在 你 的 脑子里 游荡 65 | 无论 身边 多少 悲欢离合 抑或 是 喜怒哀乐 平常心 冷淡 不是 冷漠 这个 世界 有 我 无 我 已经 不 重要 了 只是 过客 所以 呼吸 着 阅尽 浮华 品尽 沧桑 66 | 空想 是 没有 任何 意义 说 什么 承诺 什么 都 不 重要 重要 的 是 转化 为 实际行动 40 颗 雪里红 种好 了 剩下 的 就是 随时 光 渐渐 一同 67 | 满脑子 的 疑问 貌似 家里 冰箱 坏 了 好 吧 明天 修 冰箱 没想 那 台用 了 23 年 的 冰箱 居然 不知不觉 中用 了 23 年 最近 终于 出现 68 | 又 老老实实 踏踏实实 的 折腾 了 一天 虽然 做事 效率 低 感觉 自己 像 小学生 一样 磨磨蹭蹭 同时 又 觉得 生活 之中 自己 有太多 不 懂 的 事情 居然 会 69 | 这 大白天 的 还是 好 想 睡 昨天 明明 睡得 很沉 也 休息 得 非常 充足 为什么 还会 觉得 倦意 十足 嗯 遵从 自己 的 内心 懒懒 得 睡 到 70 | 睡得 迷迷糊糊 嗯 踏实 的 一上午 看 了 看 时间 11 点半 了 要 不要 起床 做 午饭 呢 算了 71 | 当 你 充满希望 和 斗志 时 突然 被 浇 了 盆 冷水 当 你 万念俱灰 和 沮丧 时 冥冥中 引燃 了 盏 星光 半吊子 游荡 徘徊 在 是非 边界 我 72 | 中午 还是 鸡蛋 煮 面条 吧 吃 到 撑 那种 然后 美美 的 再 躺 回 温暖 的 被窝 不过 煮 面条 好像 也 麻烦 扔 十个 鸡蛋 到 电热水壶 73 | 这个 房间 东西 太 多 显得 拥挤 嗯 猛男 的 体力 终于 可以 派上用场 了 搬 吧 至少 累得 像 二哈 就 不会 有 力气 瞎意 yin 妹纸 什么 的 74 | 你 过于 关注 活着 的 痛苦 75 | 则 需 在 本能 自信 外 建立 起 外缘 自信 76 | 那 又 怎样 后来 演变成 了 想 去 死 想 离开 这个 世界 当 我 真正 面对 死亡 的 时候 我 退缩 了 当 死神 一下子 扣住 你 的 时候 77 | 处于 同一 工作 空间 就 会 紧张 的 头脑 空白 78 | 即使 对 着 长辈 也 是 冷漠 脸 79 | 想 去 努力 却 没有 想 做 的 事 80 | 朋友 有事 需要 帮助 81 | 即使 没事 发生 82 | 即使 想 积极 自信 83 | 你 不是 一个 人 在 战斗 ! 还有 只要 坚持 就 会 看到 明天 不是 84 | 即使 是 身边 人 85 | 然后 每天 跑步 或者 其他 的 运动 至少 30 分钟 1 小时 86 | 自己 精神 变化很大 分享 加油 年前 又 把 工作 辞 了 87 | 可 想到 对不起 的 人 88 | 到 外地 是否 能 下决心 工作 呢 89 | 即使 在 家里 90 | 即使 在 家里 我 什么 都 不 做 91 | 混吃 等 死 92 | 是 一种 很 沉重 的 责任 93 | 不如 现在 就断 了 94 | 但是 即使 知道 有 同样 的 存在 95 | 即使 不 说话 也 不会 觉得 紧张 96 | 至于 能 做 多久 谁 知道 呢 97 | 快到 冬天 时 就 开始 发愁 98 | 现在 望 着 那段 回忆 也 只能 苦笑 说 说 童年 我 有 一个 爸爸 一个 妈妈 99 | 即使 看到 想 吐 也 只能 继续 看 下去 100 | 真的 看不下去 时 我会 去 小 店里 找 我 妈 但 她 打麻将 懒得 理 我 看到 我 也 只是 说 几句 我 站 在 旁边 看 她 打麻将 很 101 | 就 这样 持续 了 三年 为什么 要 主动 去 问 别人 的 幸福 ? 然后 让 自己 痛苦 ? 老师 说 过 102 | 虽然 不 知道 他 什么 时候 死 说 是 谈心 也 只是 他 说 一大堆 我 站 着 一边 应答 103 | 只是 这份 善 变质 了 常 被 前桌 的 男生 惹火 104 | 说 着 猥琐 的话 做 着 猥琐 的 行为 105 | 我 写 过 很多 篇 关于 母爱 的 106 | 他 同意 女人 一家 去 逛街 107 | 边 吃 早饭 边 跟 在 男人 和 女人 后面 和 他们 逛街 事后 也 想起 很多 事 108 | 他 休假 女人 要 逛街 第二天 我 起不来 109 | 因为 有 东西 代替 了 太阳 110 | 我 文科 给 他 长 面子 了 知道 不 小时 在 饭桌 前 是 最 恐怖 的 一段时间 111 | 我们 一起 加油 就是 喜欢 瞎 想 楼主 112 | 你 在 班里 有 关系 较 好 的 吗 113 | 好 恐怖 就 怕 他 会 突然 掀 桌子 然后 给 我 一巴掌 为什么 我要 生活 在 这样 一个 环境 里 114 | 你 最好 给 我 去 死 好 死 不 死 的 东西 眼泪 孕育 在 眼眶 世界 变得 扭曲 我 讨厌 别人 外公 也 讨厌 他 跟 别人 一样 总是 115 | 把 我 的 头发 都 砍下来 不想 去 上学 116 | 男人 就 吃 了 一个月 的 面 就 心疼 如此 自己 好 矫情 还 很作 老头 怎么 不死 117 | 看着 生厌 女人 和 老头 吵过 好 多次 118 | 现实 中 真的 会 有 这样 的 吗 119 | 作业 讲 着 讲 着 就 骂 了 120 | 像是 男人 不 在 对 他 的 喜欢 没处 发泄 才 买 的 男人 明天 回来 男人 回来 了 男人 回来 后 女人 会 不会 又 变回去 121 | 这样 的 人生 也 真是 荒废 可笑 孤独 并 沉默 着 唯一 幸运 的 是 还有 一只 狗狗 作伴 湘雅 和 窗外 的 树 楼主 坚强 啊 122 | 看 小说 的 人 多少 可以 享受 一些 独处 楼主 现在 可好 123 | 我 也 有 抑郁 但 我 也 有 自己 所 爱 124 | 或许 我 的 看法 是 错 的 楼楼 是 怎么 自杀 的 125 | 用 我 的 命 换回 一个 癌症病人 的 健康 好不好 126 | 所以 的 好意 都 回绝 了 127 | 自己 把 自己 从 监狱 救出去 楼主 听 我 把 话 说完 我 94 年 的 己 经 抑郁 五年 多 了 128 | 学校 太过分 了 啊 楼主 画画 很 好 喔 129 | 不 也 是 无比 伟大 的 死亡 吗 130 | 你 是 选择 的 怎么 个 自杀 法 131 | 每 一天 都 在 酝酿 遗书 的 内容 同时 也 在 想 明天 吃 什么 132 | 还 没有 一只 属于 自己 的 柴犬 和 虎纹 猫 133 | “ 我 从 北京 回来 半个 多月 了 你 关心 过 我 一次 吗 134 | 我 就 这么 没 资格 知道 你 的 事 吗 135 | “ 不 说话 了 吗 136 | 蓝鹅 我 现在 连爱 都 没有 啦 137 | 还有 对 她 无法 释怀 的 愧疚 么 对不起 138 | 我 现在 什么 都 没有 只有 病病 你 是 假装 没 看见 吗 关爱 自己 139 | ” 说完 还要 支起 耳朵 听 动静 140 | 我 就是 喜欢 小奶 狗 喝醉 抱 着 我 说 我 是 河豚 你 知道 我守 着 你 多久 了 吗 141 | 我 没有 回应 142 | 我 永远 是 你 的 小朋友 143 | srz 活着 就 会 有 希望 活着 本身 就是 奇迹 啊 经过 逻辑 缜密 的 推理 之后 144 | 并且 腰酸 腿疼 感觉 身边 好多 抑郁症 的 孩子 啊 145 | 我 住 的 城市 开始 下雪 我 忍不住 想起 当年 雪地 里 的 少年 我 不 知道 他 过 得 好不好 他 的 一切 已经 与我无关 了 146 | 他 站 在 桥 上 147 | 好怕 被 隔壁 投诉 啊 阿奴 说 148 | 用 粗俗 的 语言 和 行为 去 掩盖 内心 的 小 情绪 149 | 他 不 知道 你 为什么 这么 做 150 | 我 死 于 肺癌 和 心脏病 151 | -------------------------------------------------------------------------------- /visualization/中间文件/web_emotion.txt: -------------------------------------------------------------------------------- 1 | 答案 是 可以 的 2 | 好 梦 3 | 做个 好 梦 4 | 加油 每个 抑郁 的 宝宝 5 | 每个 抑郁 的 宝宝 6 | 好 梦 7 | 好 梦 8 | 好 梦 9 | 祝你们 好 梦 10 | 好 梦 11 | 好 梦 12 | 好 梦 13 | 困了 14 | 还 在 吗 15 | 玩游戏 不香 吗 16 | 找个 又 暖 又 甜 的 男朋友 不香 吗 17 | 还 需要 自助 方法 避免 复发 18 | 也 希望 你 多多 思考 一下 人生 的 意义 或者 什么 是 自我 19 | 以往 那些 次 心如止水 闭上眼睛 栖身 黑暗 却 被 排斥 20 | 这么 巧 吗 21 | 追 不到 的 梦 就 换下 一个 22 | 你 在家 吗 23 | 再 不 下车 就要 晕 了 24 | 有类 事情 的确 让 自己 开心 25 | 就 不想 看 下 几十年 后 的 世界 吗 26 | 人间 需要 你 的 27 | 阿弥陀佛 说 你 应该 活 下来 28 | 不然 坚定 不了 呢 29 | 酷狗 给 你 唱首歌 好不好 30 | 有着 令人 绝望 的 时刻 31 | 还好 吗 32 | 你 还 在 吗 33 | 崩溃 就要 有 崩溃 的 样子 才 对 回家 要 整理 好 自己 的 脸上 的 表情 34 | 这里 算 吗 抑郁 的 人 35 | 困了 不想 睡觉 36 | 不敢 再 去 打扰 楼主 搁 这 写 小说 呢 今天 37 | 好不好 38 | 不是 吗 39 | 又 想 逃离 南无 观世音 菩萨 南无 观世音 菩萨 南无 观世音 菩萨 好 安静 的 夜 明天 会 好 吗 40 | 有些 事 有些 话 说 出来 说 出来 也许 解决不了 什么 根本 问题 但 至少 至少 会 让 你 好受 一些 因为 听 你 说 这些 话 的 我 绝无 41 | 我 有 故事 我 有 初心 我 有 时间 那么 你 愿意 和 我 说话 吗 那 你 想要 在 哪里 和 我 说话 呢 42 | 那么 你 愿意 和 我 说说话 吗 43 | 没什么 特别 的 或者 具体 的 原因 就 只是 单纯 的 不 喜欢 44 | 可是 没过多久 我 就 没 逃过 真香 定律 45 | 我 怕疼 但是 我 从来 不怕死 你 这 是 失恋 了 想不开 吗 46 | 最后 满脸 笑容 地 在 那里 说 谢谢 那些 没有 房产 还 没有 什么 存款 的 人 帮忙 解决 了 大 问题 什么 的 47 | 所以 这 就 有点 对不起 那些 喜欢 只 看 楼主 的 人 了 只能 麻烦 你们 耐心 的 看 了 感恩 的 心 感谢 有 你 48 | 开始 和 结局 都 是 好 的 49 | 真的 就是 一个 人 一秒 一秒 熬过来 的 我 不 后悔 我 青春 里 的 所有 过往 因为 我 的的确确 做到 了 扪心无愧 可是 如果 再 来 一次 我 不要 50 | 我 是 多 梦 的 男 · · · · 孩 51 | 我 这辈子 有过 对不起 的 人 但是 对不起 我 的 人 更 多 52 | 鱼 都 当 你 有时候 还 挺 想 回到 小时候 那个 时候 虽然 也 不是 多 快乐 但 至少 没有 情绪 病 也 不会 想 多 我 信奉 正义 却 53 | 其实 这个 问题 我 想 了 很 久 我 这 一生 也许 算不上 一个 好人 但 至少 我 不是 一个 坏人 可是 为什么 偏偏 我会 得 这个 病 一 得 54 | 多疑 等等 55 | 所以 立马 变 身 刺猬 56 | 因为 她 比 你 想象 中 的 还要 爱 你 57 | 你 会 发现 她 的 心里 58 | 那种 电磁波 一般 的 耳鸣 从 一点点 在 你 耳边 徘徊 到 最后 你 就算 捂住 耳朵 却 还是 一个劲地 在 你 的 脑子里 游荡 59 | 在 他们 需要 我 的 时候 60 | 至少 现在 的 我 61 | 你 的 善良 需要 带点 锋芒 62 | 满脑子 的 疑问 貌似 家里 冰箱 坏 了 好 吧 明天 修 冰箱 没想 那 台用 了 23 年 的 冰箱 居然 不知不觉 中用 了 23 年 最近 终于 出现 63 | 又 老老实实 踏踏实实 的 折腾 了 一天 虽然 做事 效率 低 感觉 自己 像 小学生 一样 磨磨蹭蹭 同时 又 觉得 生活 之中 自己 有太多 不 懂 的 事情 居然 会 64 | 当 你 充满希望 和 斗志 时 突然 被 浇 了 盆 冷水 当 你 万念俱灰 和 沮丧 时 冥冥中 引燃 了 盏 星光 半吊子 游荡 徘徊 在 是非 边界 我 65 | 这个 房间 东西 太 多 显得 拥挤 嗯 猛男 的 体力 终于 可以 派上用场 了 搬 吧 至少 累得 像 二哈 就 不会 有 力气 瞎意 yin 妹纸 什么 的 66 | 你 关注 过 死亡 这件 事 吗 67 | 两者 相辅相成 同时 护体 68 | 午睡 中 两个 逝去 的 亲人 69 | 却 无 觅 根处 70 | 即使 苦于 生计 71 | 多次 需要 钱 的 时候 72 | 即使 没事 发生 73 | 即使 想 积极 自信 74 | 午休 时 即使 十分钟 也 能 做梦 75 | 以前 即使 和 亲戚 吃饭 也 会 逃避 76 | 头痛 极了 77 | 即使 明天 再 阴沉 78 | 即使 是 身边 人 79 | 然后 每天 跑步 或者 其他 的 运动 至少 30 分钟 1 小时 80 | 两个 月 多些 81 | 可 想到 对不起 的 人 82 | 即使 有钱 了 83 | 到 外地 是否 能 下决心 工作 呢 84 | 即使 在 家里 85 | 即使 在 家里 我 什么 都 不 做 86 | 还是 难受 极了 87 | 至少 相比 以前 88 | 至少 以后 不会 一生 痛苦 了 89 | 即使 见 家长 90 | 但是 即使 知道 有 同样 的 存在 91 | 只 需要 一点点 脑子 就 可以 了 92 | 即使 不 说话 也 不会 觉得 紧张 93 | 快到 冬天 时 就 开始 发愁 94 | 一个 奶奶 95 | 即使 看到 想 吐 也 只能 继续 看 下去 96 | 就 这样 持续 了 三年 为什么 要 主动 去 问 别人 的 幸福 ? 然后 让 自己 痛苦 ? 老师 说 过 97 | 盘子 什么 的 噼里啪啦 响 98 | 只是 这份 善 变质 了 常 被 前桌 的 男生 惹火 99 | 说 着 猥琐 的话 做 着 猥琐 的 行为 100 | 他 同意 女人 一家 去 逛街 101 | 结局 倒 也 简单 102 | 边 吃 早饭 边 跟 在 男人 和 女人 后面 和 他们 逛街 事后 也 想起 很多 事 103 | 他 休假 女人 要 逛街 第二天 我 起不来 104 | 最后 还是 去 逛街 了 105 | 你 的 经历 并不比 大多数 人 特殊 到 哪里 去 106 | 你 是 独生子女 吗 107 | 你 在 班里 有 关系 较 好 的 吗 108 | 手机 要 被 没收 了 109 | 把 我 的 头发 都 砍下来 不想 去 上学 110 | 看着 生厌 女人 和 老头 吵过 好 多次 111 | 现实 中 真的 会 有 这样 的 吗 112 | 像是 男人 不 在 对 他 的 喜欢 没处 发泄 才 买 的 男人 明天 回来 男人 回来 了 男人 回来 后 女人 会 不会 又 变回去 113 | 出 了 院 得到 的 第一个 消息 是 被 第一 师范 退 了 学 114 | 无比 的 丑陋 阴郁 画 觉得 冬天 一个 人 的 死亡 太冷 太 孤独 渴望 朋友 也 害怕 朋友 115 | 但远 不及 你 116 | 不疼 吗 楼主 117 | 用 我 的 命 换回 一个 癌症病人 的 健康 好不好 118 | 自己 把 自己 从 监狱 救出去 楼主 听 我 把 话 说完 我 94 年 的 己 经 抑郁 五年 多 了 119 | 学校 太过分 了 啊 楼主 画画 很 好 喔 120 | 每 一天 都 在 酝酿 遗书 的 内容 同时 也 在 想 明天 吃 什么 121 | 还 没有 一只 属于 自己 的 柴犬 和 虎纹 猫 122 | 我 还有 好多 地方 没去 呢 123 | 有时候 却 很 享受 124 | 我 就 这么 没 资格 知道 你 的 事 吗 125 | “ 不 说话 了 吗 126 | 没什么 意义 我 怎么 一觉 睡 到 现在 知道 吗 127 | 蓝鹅 我 现在 连爱 都 没有 啦 128 | 还有 对 她 无法 释怀 的 愧疚 么 对不起 129 | 自残 什么 的 太 伤人 了 呢 130 | 我 爱 自爱 的 你 131 | 我 舍友 的 男朋友 说 132 | 我 现在 什么 都 没有 只有 病病 你 是 假装 没 看见 吗 关爱 自己 133 | 被 雷劈 的 那个 人 134 | ” 说完 还要 支起 耳朵 听 动静 135 | 他顿 了 顿 136 | 我 站 在 火山口 137 | 我 觉得 你 不会 来 找 我 了 138 | 真的 好累 好 累缓 了 一个 星期 139 | 悬在 半空 的 灵魂 140 | 自怜 141 | 其实 我 还 穿着 粉色 上面 有 小 红心 的 袜子 142 | 这 也 没过多久 就 能 喜欢 上 别人 143 | 好怕 被 隔壁 投诉 啊 阿奴 说 144 | 用 粗俗 的 语言 和 行为 去 掩盖 内心 的 小 情绪 145 | 化开 了 你 坚硬 如铁 的 铠甲 146 | 今天 只 抽 了 两根 烟 147 | -------------------------------------------------------------------------------- /visualization/中间文件/分类结果/ai.txt: -------------------------------------------------------------------------------- 1 | 小男孩 胸口 蔫 瘦 得 让 人 心疼 家中 又 急需 用钱 妻子 没有 深圳 户籍 日子 会 更 难 妻子 没有 深圳 户籍 日子 会 更 难 看着 曾经 各 方面 优异 的 女儿 如今 成 了 这个 样子 想到 自己 无能为力 再次 因 丈夫 撒手人寰 而 陷入 无限 绝望 中 很快 就 不行 了 年轻 时 的 情感 创伤 让 黄 女士 心有余悸 年轻 时 的 情感 创伤 让 黄 女士 心有余悸 怎知 婚后 小伙 两次 拿走 黄 女士 钱财 由于 过度 惊慌 且 害怕 婴儿 的 啼哭 声 被 宿舍 同学 听到 情急之下 不择手段 面对 日益 找茬 的 婆婆 和 经常 醉酒 的 丈夫 面对 日益 找茬 的 婆婆 和 经常 醉酒 的 丈夫 对 前妻 和 孩子 的 思念 但是 看着 他 躺 在 医院 不能 动 李梅 却 发现 丈夫 刘军 有 外遇 李梅 却 发现 丈夫 刘军 有 外遇 并且 这个 潜伏 已久 的 第三者 也 已 怀孕 并且 这个 潜伏 已久 的 第三者 也 已 怀孕 自觉 愧疚 的 丈夫 刘军 不停 地 道歉 希望 能够 挽留 李梅 自觉 愧疚 的 丈夫 刘军 不停 地 道歉 希望 能够 挽留 李梅 吐槽 自己 成为 被 催 婚族 的 苦恼 和 无奈 回忆起 最难 的 日子 再 想想 父母 的 年纪 也 越来越 大 了 格瑞斯 因 曾 欺骗 对方 一直 深感 愧疚 我 因 曾经 欺骗 他 而 一直 深感 愧疚 妻子 在家 照顾 瘫痪 的 爷爷 和 两个 小孩 父亲 这么 大 年纪 还 在 工地 打工 挣钱 男子 认为 受到 欺骗 回忆起 这 段 日子 阿莹 发现 了 丈夫 有 外遇 她 对 这场 婚姻 彻底 绝望 见 已 身患 老年痴呆 的 老 领导 和 老伴儿 寄居 在 废弃 的 教室 里 空荡荡 的 大 院子 里 就 一个 人 发现 被 骗 后 心里 好 难过 害怕 作为 一个 贫困家庭 失去 一个 孩子 心情 是 何等 痛苦 作为 一个 贫困家庭 失去 一个 孩子 心情 是 何等 痛苦 丈夫 面临 的 困境 一度 令 她 绝望 丈夫 面临 的 困境 一度 令 她 绝望 倪琼 做出 了 令 她 至今 愧疚 不已 的 事 她 背着 不满 周岁 的 女儿 初为 父母 的 满腔 喜悦 被 妻子 的 病情 给 打击 得 不知所措 遥遥无期 的 等待 中 刘某 感到 刘伟 释放 无望 如果 没有 这些 荒唐 的 行为 一名 30 多岁 的 男子 蜷缩 在 角落 上身 赤裸 并 伴随 着 全身 青紫 的 伤痕 谁知 一进 家门 就 看到 自己 的 儿子 在 收拾 房子 擦 地 儿媳 王某 去 串门 打麻将 去 了 谁知 一进 家门 就 看到 自己 的 儿子 在 收拾 房子 擦 地 儿媳 王某 去 串门 打麻将 去 了 王小梅 被 拐走 后 小雪 走 了 是 与 男友 感情纠葛 想不开 的哥 孙桂发 目睹 到 了 这个 画面 孙桂发 说 看见 孩子 的 小 身影 如今 已 康复 出院 的 尹宾怡 提起 哥哥 为了 救 她 做 5 次 骨髓移植 的 事 她 对 自己 当初 的 选择 是否 后悔 呢 她 有点 后悔 当初 的 冲动 决定 这次 被 拒 让 伍先生 感到 格外 沮丧 她 知道 就要 被 执行 死刑 孙 女士 打算 报警 却 被 吴 某 阻止 并 以 分手 相 要挟 内容 大意 透露 犯 过错 事 母女 相见 那一刻 看到 魂牵梦萦 的 女儿 愧疚 自己 对 父亲 了解 太 少 看到 老婆 和 我 父母 关系 这么 僵 对 我 所犯 的 罪行 感到 很 后悔 跟随 前男友 去 了 深圳 前妻 的 善解人意 让 张 先生 愧疚 对于 妻子 的 无端 遭遇 在 得知 对方 的 死讯 之后 他 对 伤害 母亲 的 行为 非常 愧疚 他 对 伤害 母亲 的 行为 非常 愧疚 女儿 出 事后 阔别 故乡 多年 更是 思念 有些 球迷 不 懂得 感恩 很多 网友 为 陈 贝宝 的 遭遇 感到 心酸 3000 元 钱 很多 网友 为 陈 贝宝 的 遭遇 感到 心酸 3000 元 钱 家长 的 一句 话 让 小 珂 颇感 心寒 李某 承认 自己 经不住 诱惑 与 跑 出租车 的 秦 某 发生 了 关系 但 男方 却 拒付 抚养费 她 喃喃地 说 我 真的 不 想要 他 的 命 我 知道 我错 了 张 荣华 后悔 当时 没 能 看出 一些 端倪 笔者 不能不 为 女子 的 死 而 深感 悲哀 连 婚戒 都 买不起 特别 后悔 当初 没有 带上 同样 喜欢 骑行 的 女友 那次 点 完才 看到 内容 钱包 莫名其妙 不见 了 哪 知 电话 那头 的 托寿凯 一 听 妻子 要 起诉 离婚 竟然 情绪 挺 激动 你 知道 她 得 了 癌症 吗 最 主要 是 错过 了 3 至 5 岁 自闭症 的 最佳 治疗 时间 后悔 曾经 的 冲动 遭遇 到 多次 暴力 后 可 都 被 女友 拒绝 孩子 外公 外婆 说 爸妈 不 回来 过年 外界 对 他 有点 歧视 她 无法 面对 家人 为 医药 费用 发愁 时 的 绝望 刘春华 舍不得 剪 他 无意间 看到 了 郭学敏 的 报道 考上 那么 好 的 大学 却 读 不起 让 孩子 承受 那么 大 的 痛苦 让 孩子 承受 那么 大 的 痛苦 看着 父亲 带病 操劳 他们 为 不能 帮助 女儿 而 难过 她 得病 时 我 忙于 工作 很少 回去 照顾 他 对于 家中 着火 的 事情 悔恨 不已 孝顺 的 他 觉得 没有 能力 照顾 聋哑 妈妈 妈 都 没得 人 样子 了 老大爷 发现 上当受骗 后 伤心 痛哭 老大爷 发现 上当受骗 后 伤心 痛哭 一直 没有 找到 合适 的 工作 可是 她 又 替花 心疼 她 老伴 刚 去世 回忆起 这 一段 他 的 老丈人 死 于 一场 没有 找到 肇事者 的 车祸 他 的 老丈人 死 于 一场 没有 找到 肇事者 的 车祸 陈天翼 的 母亲 后来 得 了 轻微 帕金森症 半身 瘫痪 陈天翼 的 母亲 后来 得 了 轻微 帕金森症 半身 瘫痪 没 能 及时 救起 遇难 的 那位 小孩 而 深感 痛心 没 能 及时 救起 遇难 的 那位 小孩 而 深感 痛心 我 新 认识 的 几个 孩子 因为 抢劫 被 抓 了 起来 回忆起 落水 的 一幕 15 岁 的 徐梦瑶 仍 痛苦 不已 他 遇难 了 老师 因此 受伤 严重 看到 自己 把 精力 都 用 在 孩子 们 身上 丈夫 却 一个 人 在家 忙活 因 当年 没有 尽义务 将 儿子 抚养 成人 忙于 课业 的 她 感觉 忽略 了 父母 高泽美 完全 顾不上 家 单位 打 来 电话 将 他 辞退 但 提及 后期 的 治疗费 回想到 这 终于 见到 了 苦苦 寻找 两天 的 老父亲 听说 没有 票 苏琪华 只好 想到 求助 孩子 的 亲生 母亲 玲玲 知道 了 自己 身世 这 渺茫 的 希望 令 他 恐惧 那 伤感 凄楚 的 哭喊 得知 陈正水 已 去世 一直 是 车队 乘客 公认 的 好 司机 韦立忠 的 殉职 让 我们 非常 沉痛 一直 是 车队 乘客 公认 的 好 司机 韦立忠 的 殉职 让 我们 非常 沉痛 但 时不时 还是 会 有 城管 人员 驱赶 因为 没有 为 大家 买 平安 果 所以 当 儿子 选择 离 他 而 去 时 要是 我 放弃 她 但 现实 却 让 万金 强 欲哭无泪 浪费 那么 多 好心人 的 钱 回到 许昌 襄城县 检查 发现 是 尿毒症 面对 妻子 家人 的 这番 真话 她 连续 失去 爷爷 舅舅 两位 至亲 她 连续 失去 爷爷 舅舅 两位 至亲 高考 失利 还 狠心 把 他们 赶走 了 看到 他 这么 小 就 这么 懂事 一 听说 到 去 渝中区 司机 直接 开车 走 人 司机 直接 开车 走 人 对于 戴腊明 的 离去 交朋友 的 事情 就 黄 了 这个 理由 比 嫌 我 学历 低 还 让 我 伤心 种 的 树苗 还 没 成活 这个 苦难 的 家庭 又 一次 面临 灾难 — — — 大儿子 罗振成 出 了 车祸 受助 学生 从 100 人 增加 到 300 人 一 想起 那天 舞场 的 待遇 黄继龙 的 遇难 如今 毕业 后 找到 工作 的 喜悦 还 没有 持续 多久 父亲 的 突然 受伤 让 姚丽娇 伤心 不已 考上 大学 是 一件 大喜事 他 的 逝世 让 学校 老师 感到 震惊 和 难过 他 的 逝世 让 学校 老师 感到 震惊 和 难过 回忆 早 几年 的 经历 农民工 的 安全 保障 让 人 心寒 落水 的 孩子 还是 没有 捞 上来 到 了 医院 当 他 看到 昏迷不醒 的 妻子 躺 在 重症 监护室 的 病床 上 突遭 变故 每当 看到 有 学生 因 家境贫寒 无力 继续 学业 时 她 的 骨髓 与 弟弟 百分百 相合 她 听到 消息 后 开心 得 笑 了 他 以 一分之差 跌倒 在 高考 二本 分数线 的 门槛 下 当时 听到 这个 消息 非常 兴奋 他 想到 自己 被 拐骗 走 的 儿子 如果 哪 天 儿子 回来 了 找 不到 他 丈夫 病逝 后 这件 事 让 牛香莲 感到 害怕 我怕 哪一天 我 突然 走 了 女儿 都 不知情 这件 事 让 牛香莲 感到 害怕 我怕 哪一天 我 突然 走 了 女儿 都 不知情 而 我 已经 无法 供养 你们 了 当 桂林 消防官兵 发现 小猫 后 只是 对 自己 的 家庭 满心 愧疚 我 没有 尽到 一个 丈夫 和 父亲 的 责任 看着 小蓉 抑郁 的 样子 看着 小蓉 一天天 病情 加重 看着 小蓉 一天天 病情 加重 得知 事情 经过 后 是 酒后 冲动 才 刀 砍 父亲 再 难受 也 比不上 兄弟 背叛 我 来得 伤心 仍 在 为 逝去 的 1 岁 多 男童 而 深深 惋惜 想到 自己 的 经历 和 现在 的 处境 因 害怕 龙 某 伤害 孩子 忽然 满脸 悲怆 我 老婆 跟 别人 私奔 了 为 还人情 而 愚忠地 犯案 没能 对 子女 尽到 抚养 责任 也 没有 好好 赡养 双亲 村民 们 听闻 张帅 杀人 的 事后 仍 觉得 不可思议 恐怕 就 没有 人为 他 作证 了 两任 丈夫 的 相继 过世 使 张艳 伤心欲绝 村里人 对 她 的 流言飞语 李夏 提出 见面 一看 爱车 被 亲 侄子 砸 成 这样 不禁 伤心 痛哭 起来 一看 爱车 被 亲 侄子 砸 成 这样 不禁 伤心 痛哭 起来 正 残忍 地用 刀 从 藏 野驴 身上 割肉 不料 期间 并 没 发现 值钱 财物 林某 自杀身亡 令人 惋惜 小华 的 母亲 对 自己 的 疏忽 给 孩子 造成 的 伤害 一直 很 内疚 小华 的 母亲 对 自己 的 疏忽 给 孩子 造成 的 伤害 一直 很 内疚 唯一 的 孩子 陈熙浩死 后 见 无法挽回 这 段 恋情 对 当年 冲动 后悔 万分 落网 后 怀疑 妻子 有 外遇 看到 宋某 尸体 后 伤心 痛哭 看到 宋某 尸体 后 伤心 痛哭 李 劲松 确实 为 保护 江豚 作出 了 贡献 王某 千里 寻爱 却 发现 谢某 已经 有 了 老公 和 孩子 他 与 小琳 因为 一点 琐事 发生 争吵 我 知道 自己 犯 了 很大 的 错误 回忆起 这 段 噩梦般 的 经历 还 毁坏 了 家里 的 名声 看到 憔悴 的 张琪 骂 了 陈华 看到 憔悴 的 张琪 大家 都 对 古树 被盗 感到 惋惜 对于 自己 员工 无故 被 砍伤 对于 自己 的 罪行 难以承受 是 自己 杀 了 外婆 的 事实 发生 这样 的 悲剧 经 民警 转告 获悉 女友 并未 变心 时 当 陈某 对 受害人 进行 这种 侵害 后 出 了 这样 的 事情 不能 采取 如此 极端 的 方式 家长 不该 因 忽略 老大 而 心存 愧疚 家长 不该 因 忽略 老大 而 心存 愧疚 而 忽略 对 老大 的 照顾 林某 发现 这 竟然 全是 假钞 对于 突如其来 的 变故 父子俩 激烈 争吵 起来 因为 一些 小事 被 老师 一连 批评 了 5 次 某 西餐厅 就 两名 大学生 参加 活动 发生 意外事件 表示 对 发生 这样 的 事情 给 家庭 造成 极大 损害 温刚 也 对 自己 的 冲动 行为 感到 十分 后悔 温刚 也 对 自己 的 冲动 行为 感到 十分 后悔 紧抱 奄奄一息 的 羊羔 羊羔 还是 死去 了 她 是 气不过 自己 的 丈夫 老 酗酒 才 轻生 的 表哥 没 了 两人 协议 离婚 女儿 得到 这个 消息 高兴 极了 看着 老伴 难受 的 样子 即将 领到 车 面对 两 被告方 的 互相推诿 如果 爱犬 突然 不知所终 成绩 稍微 不好 就 在 夏静 为 婚姻 之 事 情绪低落 之 时 张 大山 既 为 妻子 去世 而 伤心 又 为 儿子 困境 而 担忧 张 大山 既 为 妻子 去世 而 伤心 又 为 儿子 困境 而 担忧 李某 听到 女儿 的 名字 时 流下 了 悔恨 的 泪水 李某 听到 女儿 的 名字 时 流下 了 悔恨 的 泪水 我们 对 这 一 不幸 事件 深感 痛心 我们 对 这 一 不幸 事件 深感 痛心 小荷 哭 着 解释 婚姻 的 不幸 后悔 自己 当初 的 幼稚 将 被害人 强强 叫 到 自家 平房 顶 进行 恐吓 这 也 让 他 为 自己 的 举动 感到 后悔 谈起 小孩 坠楼 受伤 的 经过 谈起 小孩 坠楼 受伤 的 经过 见 女儿 做出 这种 事来 她 至今 仍 未找到 女儿 警方 的 冷漠 态度 令 苏珊娜 深感 失望 大 丫头 要 知道 妹妹 没 了 儿子 儿媳 的 态度 让 老人 非常 伤心 当时 这个 小伙子 不住 地 后悔 连 说 自己 被 人 骗 了 他 也 因 没有 更 多 的 时间 照顾 龙龙 而 感到 内疚 结果 发生 了 这样 的 意外 最终 扔下 伤心 的 胡杰 走 了 丈夫 和 公公 婆婆 的 行为 让 她 感到 很 伤心 因为 没有 看到 旁听席 上 有 家人 比 医生 证实 摰 亲 撒手尘寰 更 令人 哀伤 但 也 有 不少 内地 网民 对于 广告 羞辱 内地 人为 蝗虫 表示 愤怒 每当 看见 在外 流浪 的 小狗 小猫 作为 不好 的 榜样 让 妙 某 极为 沮丧 亲属 已经 为 过世 的 老太太 办理 后事 亲属 已经 为 过世 的 老太太 办理 后事 人们 在 痛惜 小林 生命 逝去 的 同时 妻子 魏某 早已 对 丈夫 的 行为 大失所望 眼睁睁 看着 孙子 坠落 师涛 讲 起 自己 的 遭遇 不料 被 网友 放 了 鸽子 没有 发现 女孩 的 踪迹 蜗牛 死 了 看到 身体 残疾 的 儿子 整日 待在家里 没有 比 这个 消息 更令 他们 兴奋 的 消息 了 — — 有着 世界 上 最 臭 的 花之称 的 泰坦 魔芋 日前 在 瑞士 盛开 没有 比 这个 消息 更令 他们 兴奋 的 消息 了 — — 有着 世界 上 最 臭 的 花之称 的 泰坦 魔芋 日前 在 瑞士 盛开 和 家人 的 关系 出现 了 问题 胡洁 对 丈夫 的 冷漠 心灰意冷 一个 好人 的 突然 离去 让 人 痛心 惋惜 一个 好人 的 突然 离去 让 人 痛心 惋惜 我 为 失去 了 这么 好 一位 员工 感到 非常 的 痛心 我 为 失去 了 这么 好 一位 员工 感到 非常 的 痛心 提起 女儿 的 病情 我 等 了 5 年 多 了 也 没有 人回 是 在 中学 时因 某次 考试 失败 经历 了 多次 相亲 失败 妈妈 听到 消息 高兴 得 落泪 了 结果 亏了 一万 马忠秀 是 为了 保护 公司 集体 财产 不 受损害 挺身 去 阻止 盗窃 牺牲 的 看着 她 原先 漂亮 的 脸庞 已 被 病痛 折磨 得 异常 憔悴 是 因 失去 女儿 伤心 过度 才 做出 的 是 因 失去 女儿 伤心 过度 才 做出 的 对 所 做 的 事情 非常 后悔 我 气不过 就 和 她 辩解 了 几句 母亲 的 抱怨 让 张耀 很 心酸 目前 没 办法 让 孩子 见到 养母 回忆起 那天 发生 的 事儿 被控 寻衅滋事 罪 的 谭某 在 法庭 受审 时 认罪 李某 怎么 也 没想到 当初 起誓 爱 你 一万年 的 丈夫 竟然 在 她 最最 需要 他 的 时候 抛弃 了 她 直接 当面 以 他 口吃 为 由 跟 他 说 No 却 没有 借到 钱 他 终于 找到 了 儿子 后天 失明 对 他 的 心理 造成 了 巨大 的 打击 查到 所 汇钱 已 被 骗子 取 走 孩子 不理 我 看到 这些 蝴蝶 遭人 捉 逮 对于 女儿 被 扔 在 法院 这件 事 谈起 刚刚 陨落 的 一个 年轻 生命 他 的 100 多万元 迅速 输 了 个 一干二净 街坊 事后 对 孝子 救母 丧命 感 惋惜 街坊 事后 对 孝子 救母 丧命 感 惋惜 李师傅 的 儿子 对 这段 感情 丝毫 没有 留恋 对于 李 大爷 的 突然 去世 26 岁 的 陈某 因为 生意 上 的 事情 和 家人 有 分歧 但是 看到 这个 小伙子 因为 自己 而 受伤 但 爱犬 被 抢 还是 令 徐某 既 气愤 又 伤心 得知 孩子 得 了 胃癌 得知 自家 狗 被 击毙 狗狗 的 主人 吴 女士 哭 得 很 伤心 两人 随后 爆发 严重 口角 孩子 们 因贫 辍学 年仅 三岁 多 的 儿子 京京 突然 在 幼儿园 受伤 驾驶员 年轻 被 打 了 那么 多 下 被 打 了 那么 多 下 心里 也 难受 无奈 还手 当 他 听到 未婚妻 通情达理 的 话语 后 谢颜骏 把 对 未婚妻 的 愧疚 化着 干 好 工作 的 动力 她 先后 叫来 3 个 男友 一起 为 手术费 埋单 家人 第一次 看到 老人 乞讨 的 照片 二人 没有 想到 自己 的 荒唐 行为 会 引发 这样 的 后果 二人 没有 想到 自己 的 荒唐 行为 会 引发 这样 的 后果 伟棠 后悔 自己 平时 没有 注意 身体健康 说起 发生 的 交通事故 直说 很 后悔 孩子 在 系里 能 排前 20 名 他 退学 后 辅导员 和 专业 老师 都 表示 挺 惋惜 谭 德林 因犯 抢劫罪 和 盗窃罪 被 判处 有期徒刑 13 年 隐瞒 真相 为了 不让 谭 德林 的 爷爷 伤心 这场 更加 意外 的 生离死别 但 夜间 陪护 这个 并 不过 分 的 心愿 都 无法 满足 一个 人 生活 甭说 孤单 想到 母亲 90 岁 生日 在 即 兄弟 姊妹 因事 或 太远 无法 来汉 这时 她 听到 从前 机器 盖处 传来 了 喵 喵 的 叫声 担心 继续 开车 会 伤害 小猫 毕竟 自己 一个 人 逐渐 走出 了 失去 女儿 的 悲伤 中 逐渐 走出 了 失去 女儿 的 悲伤 中 都 后悔 当时 没有 理解 老人 的 一片苦心 哪个 当 儿女 的 也 不 愿意 自己 年迈 的 老父亲 出去 拾破烂 儿 啊 给 家里 造成 这么 大 困难 给 家里 造成 这么 大 困难 在 农活 上 无法 帮助 李昌女 祝国明 儿子 在 深圳 打工 时 意外 溺亡 生病 后 社区 亲人 邻居 朋友 都 给 了 我 很多 帮助 我 很 感激 一 想到 自己 将 不久 于 人世 不是 十分 理想 的 考分 曾一度 让 他 情绪 非常 低落 即将 离开 学校 的 毕业生 们 总是 非常 伤感 只是 依旧 不知下落 的 母亲 不 应该 一时冲动 并 说 了 张 某 的 坏话 这个 昔日 的 好 邻居 如今 因为 阻拦 自己 的 车子 被盗 走 而 受伤 他 已 得知 两个 好友 去世 而 陈 男 回过 神后 发现 闯下大祸 当宋 某 得知 因为 他们 的 偷盗 行为 导致 一位 淳朴 的 老人 含恨而死 关 振兴 愤然 摔坏 了 女友 的 眼镜 和 手机 可 女友 拒绝 和 好 还 因此 丢 了 工作 当初 没 能力 让 小伟 继续 上学 这一 消息 迅速 在 这个 偏僻 的 沿山 村落 传开 了 大家 都 对 古树 被盗 感到 惋惜 王某 对 自己 一时冲动 的 行为 表示 非常 后悔 目前 对 酒 驾 行为 悔恨 不已 目前 对 酒 驾 行为 悔恨 不已 被 一名 陌生 男子 抱 起 扔进 嘉陵江 中 溺亡 连 最后 一次 都 错过 了 得知 儿子 在 南非 遇害 得知 儿子 在 南非 遇害 阿科 母亲 在 长久 没有 丈夫 的 消息 后 显得 非常 着急 小 区内 很多 居民 说起 4 个 月 前 发生 的 这起 意外 儿子 却 为 索要 30 万元 房款 把 她 告上 法院 儿子 却 为 索要 30 万元 房款 把 她 告上 法院 以前 也 有 发生 过 遗弃 孩子 又 后悔 了 结果 我 一怒之下 做 了 不该 做 的 事 没 上前 帮忙 其 意外 亡故 给 父母 带来 巨大 打击 被告 称 服务员 身亡 是 意外 被告方 律师 称 3 名 被告 对 张海燕 的 去世 表示 惋惜 和 哀悼 被告 称 服务员 身亡 是 意外 被告方 律师 称 3 名 被告 对 张海燕 的 去世 表示 惋惜 和 哀悼 其 父亲 对于 儿子 的 种种 所 为 感到 失望 交代 失恋 致 心灰意冷 在 证据 面前 交代 失恋 致 心灰意冷 在 证据 面前 她 多次 发短信 说 要 勾引 我 老公 不但 因为 自己 醉驾 想到 平日 里 自己 疏于 对 孩子 照看 陈某 的 大方 体贴 让 孤独 的 小 潘 很 倾心 得知 女儿 交友不慎 参与 贩毒 尤其 是 失去 独生子 的 沈某 家人 更是 异常 伤心 尤其 是 失去 独生子 的 沈某 家人 更是 异常 伤心 周华 如实 交代 了 自己 的 盗窃 事实 因 悲伤 过度 错失 了 及早 发现 并 制止 猥亵 的 时机 孩子 受罪 了 要求 离婚 会 通过 一条 电话线 告诉 李燕 一个 单身 母亲 在 北京 这样 一个 大城市 独自 打拼 的 艰辛 与 孤寂 会 通过 一条 电话线 告诉 李燕 一个 单身 母亲 在 北京 这样 一个 大城市 独自 打拼 的 艰辛 与 孤寂 钱用 完后 大家 都 为 这位 好 医生 的 离去 感到 惋惜 对于 酒后 滋事 怒 踹 学校 大门 骗 了 阿绿 那么 多次 当时 儿子 在 崖 边 的 平台 上 内心 肯定 充满 了 绝望 和 害怕 希望 其他人 不要 再 随便 来 穿越 了 洛伦兹 说 离婚 令 我 很 意外 正在 睡觉 的 一对 中年 夫妻 也 坠入 井里 可 这 二十多年 来 儿子 都 不曾 去 看过 她 一眼 屈卉 旻 我 当时 看到 孕妇 躺 地 马路上 称 自己 和 前妻 李某 及 前妻 母亲 岳某 将 刚出生 70 天 的 儿子 以 4 万元 的 价格 卖 给 了 一个 平定 人 园林 部门 决定 对 这棵 陪伴 了 居民 近 20 年 的 大树 实施 摘冠 保树 处理 当 女性 遭遇 男朋友 背叛 后 看着 儿子 每天 在 鼻涕 咳嗽 甚至 是 低烧 的 状态 下 饱受 折磨 到 小玲 提出 离婚 前 总共 欠下 了 百余万 的 债务 内外交困 的 生活 让 小玲 对 婚姻 彻底 失望 转过 脸 对 他 骂 了 一句 潘某 与 同学 小张 在 走廊 里 因为 相撞 而 争吵 起来 其 已 做 节育手术 的 丈夫 却 怀疑 妻子 出 了 轨 认为 夫妻感情 不再 但 教唆 5 岁 小男孩 来 盗窃 我 更 痛心 这名 39 岁 的 定安 男子 罗某 解释 称 我 家里 两部 车 不见 了 我 真 后悔 打 了 她 一 耳光 谈及 儿子 晓东 将 脏 衣服 快递 回家 洗 一事 他 眼看 家里 老人 被 忽悠 身体 的 残疾 不 可怕 当年 与 妻子 采用 试管婴儿 方式 生下 的 女儿 竟是 前妻 与其 前男友 的 孩子 当年 与 妻子 采用 试管婴儿 方式 生下 的 女儿 竟是 前妻 与其 前男友 的 孩子 当年 与 妻子 采用 试管婴儿 方式 生下 的 女儿 竟是 前妻 与其 前男友 的 孩子 周围 很多 人 都 讥笑 她 为 老太婆 丑八怪 一时 糊涂 才 谎称 交警 打 了 自己 第二个 女人 去世 之后 但 没 找到 老人 最近 头发 掉 的 特别 厉害 打人 后 我 也 后悔 伤心 的 安妮 含着 眼泪 回忆 说 当 医生 一 开始 告诉 我 阿丽巴 患有 癌症 最 多 只能 再活 两个 月 时 伤心 的 安妮 含着 眼泪 回忆 说 当 医生 一 开始 告诉 我 阿丽巴 患有 癌症 最 多 只能 再活 两个 月 时 伤心 的 安妮 含着 眼泪 回忆 说 当 医生 一 开始 告诉 我 阿丽巴 患有 癌症 最 多 只能 再活 两个 月 时 秃顶 10 年 母亲 的 音容笑貌 就 会 出现 在 他 脑海中 网友 有光 1986 说 看着 拄着 的 拐杖 和 这位 乞丐 大叔 的 残腿 有些 心酸 悲伤 的 主人 格里菲斯 以为 塔克 已经 淹死 在 了 海水 中 邓鸣 贺因 白血病 复发 去世 看到 女儿 遭受 的 疼痛 我 讨厌 这种 失去 自由 的 生活 在 全家人 还 沉浸 在 外公 离世 的 悲伤 中 时 发生 了 一件 令人震惊 的 血案 这起案 的 犯罪 嫌疑人 大部分 都 是 大学生 他们 没想到 会 出人命 还 不 给 工资 就让 我 离职 并用 拳头 与 茶壶 打 我 如果 你们 因 遗弃 小孩 而 心感 内疚 王师傅 的 车 前后 两个 车胎 被 扎 了 -------------------------------------------------------------------------------- /visualization/中间文件/分类结果/hao.txt: -------------------------------------------------------------------------------- 1 | 妻子 被 温馨 的 话语 感动 谢德友 镇定自若 为 溺亡 村民 黄某 入殓 的 场景 再次 因 丈夫 撒手人寰 而 陷入 无限 绝望 中 张崇贞以 她 的 品格 赢得 了 所有人 的 敬重 张崇贞以 她 的 品格 赢得 了 所有人 的 敬重 不愿来 现场 不愿来 现场 李梅 却 发现 丈夫 刘军 有 外遇 李梅 却 发现 丈夫 刘军 有 外遇 并且 这个 潜伏 已久 的 第三者 也 已 怀孕 并且 这个 潜伏 已久 的 第三者 也 已 怀孕 自觉 愧疚 的 丈夫 刘军 不停 地 道歉 希望 能够 挽留 李梅 自觉 愧疚 的 丈夫 刘军 不停 地 道歉 希望 能够 挽留 李梅 她 连个 男朋友 都 没谈过 老人 十多年 坚持 义务 表演 的 行为 老人 十多年 坚持 义务 表演 的 行为 志愿者 的 一言一行 温暖 和 感动 着 李世铭 一家 两位 百岁老人 百年好合 的 爱情故事 两位 百岁老人 百年好合 的 爱情故事 病危 关头 念叨 的 还是 学生 的 校长 病危 关头 念叨 的 还是 学生 的 校长 病危 关头 念叨 的 还是 学生 的 校长 关键 是 喜欢 这种 团聚 的 热闹 气氛 我们 不能 因为 惧怕 存在 这样 的 侵权 风险 便 放弃 人 与 人 之间 友好 互助 的 美好 品格 我们 不能 因为 惧怕 存在 这样 的 侵权 风险 便 放弃 人 与 人 之间 友好 互助 的 美好 品格 古镇 海州 一 灯饰厂 18 岁 女孩 留下 绝笔 信 至今 未归 作为 一个 贫困家庭 失去 一个 孩子 心情 是 何等 痛苦 被 他 的 执着 所 感动 两人 基本 没吵 过嘴 接下来 发生 的 事 女儿 的 出生 为 黄魁 吾 夫妇 带来 了 无与伦比 的 喜悦 看到 字 写 得 好 的 人 很 羡慕 江苏 扬州 75 岁 的 患癌 老人 夏居茂 留下 手表 钱包 及 一封 遗书 后 出走 如今 已 康复 出院 的 尹宾怡 提起 哥哥 为了 救 她 做 5 次 骨髓移植 的 事 在场 的 所有人 都 被 两位 老人 的 深明大义 所 感动 但 通过 团购 让 我 看到 了 他 的 强势 但 眼神 中 透出 对 号友 的 感激 和 不舍 好心人 都 被 眼前 的 一幕 惊呆 了 — — — 两个 小姑娘 睡觉 的 床铺 是 砖块 支撑 替换 下来 的 旧 门板 垒 起来 的 却 也 敬佩 大 雄 家人 发挥 大爱 车队 领导 知道 了 徐连林 的 事迹 后 也 非常 感动 66 岁 还 跳入 江水 救人 真是 令人 敬佩 骆嘉文 却 在 为 当初 执着 于 一纸 婚书 后悔不已 但 最 让 方丽 感动 的 还是 王华 的 细心 体贴 但 最 让 方丽 感动 的 还是 王华 的 细心 体贴 她 没有 恳求 过 任何人 帮忙 全是 靠 自己 张 富华 亲自 开车 帮 她 买 被子 等 生活用品 张 先生 觉得 自己 老 来得 子 很 是 高兴 前妻 的 善解人意 让 张 先生 愧疚 她 的 自信 让 我 很 诧异 女儿 出 事后 魏 开诚 的 真情 打动 了 新浪 工作人员 魏 开诚 的 真情 打动 了 新浪 工作人员 但 对于 他 的 倾情 献艺 15 年 风雨无阻 义务 照顾 偏瘫 邻居 回忆 王林荣 帮助 自己 的 这 15 年 这 在 女童 性侵 频发 的 今天 实在 让 人 害怕 提起 当时 的 情景 她 被 孙菊 坚守 爱情 的 信念 所 感动 她 被 孙菊 坚守 爱情 的 信念 所 感动 她 被 孙菊 坚守 爱情 的 信念 所 感动 一直 在 坚持 工作 90 后 莹莹 和 海斌 的 爱情 感动 了 无数 市民 和 网友 90 后 莹莹 和 海斌 的 爱情 感动 了 无数 市民 和 网友 了解 到 晶晶 的 事情 后 很 感动 我 是 被 他们 的 真挚 爱情 感动 了 我 是 被 他们 的 真挚 爱情 感动 了 张 荣华 后悔 当时 没 能 看出 一些 端倪 王刚 为 我 付出 得太多 了 特别 后悔 当初 没有 带上 同样 喜欢 骑行 的 女友 从 只会 哭 到 开口 喊 爸爸 谁 受伤 了 心情 都 肯定 不好 且 焦虑 电话 里 陈某 焦急 地说 母亲 突遇 车祸 急需 抢救 曲家 的 大爱 汪敬海 对 自己 的 创意 很 满意 汪敬海 对 自己 的 创意 很 满意 结果 一家人 被 他们 的 执着 感动 新郎 杨恒 的 誓言 让 在场 的 亲人 和 医护人员 感动 落泪 新郎 杨恒 的 誓言 让 在场 的 亲人 和 医护人员 感动 落泪 新郎 杨恒 的 誓言 让 在场 的 亲人 和 医护人员 感动 落泪 您 的 善举 感动 了 我 但是 这份 爱心 真的 太 让 人 感动 了 她 都 因为 羡慕 而 流泪 对于 大家 的 热心 帮助 他们 为 不能 帮助 女儿 而 难过 因 担心 组织 不让 他 随军 前进 曾经 有 居民 看到 他 坚持 干 这 又 脏 又 累 的 活 有些 过意不去 他们 的 勤俭节约 他们 的 勤俭节约 温暖 的 举动 让 人 感动 致电 本报 热线 的 于 先生 被 殷永池 的 爱心 深深感动 致电 本报 热线 的 于 先生 被 殷永池 的 爱心 深深感动 得知 亲生 母亲 有 可能 还 健在 没 能 及时 救起 遇难 的 那位 小孩 而 深感 痛心 当 得知 钱包 是 一个 流浪汉 捡 到 并 交给 民警 时 总有 一些 温情 让 我们 感动 这种 伟大 的 母爱 让 医护人员 震惊 和 感动 这种 伟大 的 母爱 让 医护人员 震惊 和 感动 她 的 勇敢 和 孝心 感动 了 不少 爱心 人 她 的 勇敢 和 孝心 感动 了 不少 爱心 人 一个 身患 重病 的 孩子 还 能 想到 他人 老人 都 会 慷慨 相助 他 的 古道热肠 和 英勇 行为 感动 了 洛阳 市民 他 的 古道热肠 和 英勇 行为 感动 了 洛阳 市民 回想到 这 白 师傅 的 心情 先是 因 丢失 两万多元 懊恼不已 而后 为 失而复得 欣喜若狂 这 渺茫 的 希望 令 他 恐惧 她 对 蒋冬姣 的 那份 孝顺 一直 是 车队 乘客 公认 的 好 司机 韦立忠 的 殉职 让 我们 非常 沉痛 对于 好心人 的 帮助 觉得 他们 好 自由 张龙 这样 拾金不昧 的 人 张龙 这样 拾金不昧 的 人 李小姐 被 男友 的 浪漫 和 真心 所 感动 要是 我 放弃 她 她 连续 失去 爷爷 舅舅 两位 至亲 蔡 秋月 见证 了 孙源隆 与 病魔 作 斗争 的 过程 老人 因 生病 心情 一度 沮丧 低迷 孩子 们 送 我 小汽车 村里 对 赵晨明 的 义举 非常 敬佩 村里 对 赵晨明 的 义举 非常 敬佩 与 父亲 的 相见 罗静 最 焦虑 的 问题 是 俊杰 做 移植手术 的 费用 还 没有 着落 农民工 的 安全 保障 让 人 心寒 丢失 提包 的 失主 肯定 着急 万分 作为 一个 普通 的 农村妇女 能 做出 捐献 器官 的 决定 当 得知 林兆强 的 困境 即将 被 解决 孙善英 的 奉献 赢得 了 乡亲们 的 敬重 孙善英 的 奉献 赢得 了 乡亲们 的 敬重 孙善英 的 奉献 赢得 了 乡亲们 的 敬重 竟能 下 如此 毒手 怀疑 妻子 有 外遇 家长 不该 因 忽略 老大 而 心存 愧疚 而 忽略 对 老大 的 照顾 网友 盛赞 大连 好 大哥 能 冒 生命危险 去 救 一位 素不相识 的 坠楼 老人 崔泉山 的 英勇 行为 让 网友 们 感动不已 看到 孩子 这样 喊叫 一 开始 感到 挺 刺激 的 黄某 开始 感到 害怕 和 心软 看着 女儿 在 学校 发展 很 好 徐某 儿子 上学 的 事情 终于 落实 好 了 最令 他 兴奋 的 是 看到 蒙特利尔 国际 烟花 大赛 同时 如 家 酒店 承诺 今后 全国 所有 的 如家 酒店 都 对 导盲犬 敞开大门 陈燕 很 高兴 我们 为 所有 的 导盲犬 争取 到 了 权益 让 她 愤怒 的 是 普达措 国家 公园 巧妙 的 拒绝 宏宏 却 没有 抵达 学校 苏珊娜 的 母爱 勇气 和 执著 令人 赞叹 苏珊娜 的 母爱 勇气 和 执著 令人 赞叹 苏珊娜 的 母爱 勇气 和 执著 令人 赞叹 不 可能 把 每件 喜欢 的 衣服 都 买下来 长假 期间 很多 人 因为 被 堵 在 高速 路上 而 郁闷 不已 看着 病床 上 的 儿子 冷然 的 学习 经历 让 人 吃惊 面对 这样 的 处理 方法 作为 不好 的 榜样 让 妙 某 极为 沮丧 作为 不好 的 榜样 让 妙 某 极为 沮丧 他 现在 已经 接受 了 女儿 提娅 14 岁 怀孕 生女 的 事实 而 外孙女 的 出生 令 他 感到 无比 喜悦 看到 身体 残疾 的 儿子 整日 待在家里 不免 深深地 为 他 的 未来 忧虑 没有 比 这个 消息 更令 他们 兴奋 的 消息 了 — — 有着 世界 上 最 臭 的 花之称 的 泰坦 魔芋 日前 在 瑞士 盛开 一个 好人 的 突然 离去 让 人 痛心 惋惜 卢应 相 破解 数学 难题 的 执著 精神 让 人 敬佩 杭州 连发 两起 飙车 撞人案 朋友 们 由 不 相信 变成 了 震惊 朋友 们 由 不 相信 变成 了 震惊 女孩 郭佳诺 的 归来 女友 也 时常 将 樊 先生 的 照片 发到 朋友 圈里 秀下 恩爱 女友 也 时常 将 樊 先生 的 照片 发到 朋友 圈里 秀下 恩爱 住 在 太原市 大马 村 的 车主 小王 遇到 了 郁闷 又 可笑 的 一件 事 他 的 面包车 被 小偷 光顾 了 街坊 事后 对 孝子 救母 丧命 感 惋惜 对于 儿子 能够 减刑 回家 她 先后 叫来 3 个 男友 一起 为 手术费 埋单 两个 女儿 的 出生 令 他们 无比 开心 听到 阿珍 与 他人 亲密 通话 后 顿生 愤怒 想到 母亲 90 岁 生日 在 即 兄弟 姊妹 因事 或 太远 无法 来汉 都 后悔 当时 没有 理解 老人 的 一片苦心 生病 后 社区 亲人 邻居 朋友 都 给 了 我 很多 帮助 我 很 感激 生病 后 社区 亲人 邻居 朋友 都 给 了 我 很多 帮助 我 很 感激 生病 后 社区 亲人 邻居 朋友 都 给 了 我 很多 帮助 我 很 感激 生病 后 社区 亲人 邻居 朋友 都 给 了 我 很多 帮助 我 很 感激 丢包 的 人 肯定 也 非常 着急 他们 都 多次 来看 我 还 安排 人来 照顾 我 给 我 拿 医药费 但是 颞音 nie 部 俗称 太阳穴 凹陷 让 这个 爱美 的 小伙子 真心 烦恼 我 先 给 你 100 元 回家 过年 但 女 学生 走失 找到 后 器官 被 割 的 传言 频繁 在 微信 和 微博上 流传 并 掌 掴 郑 爱国 在 厚厚的 衣被 中 发现 了 一沓 沓 现金 没有 想到 办假 的 行驶证 是 犯罪 陈某 的 大方 体贴 让 孤独 的 小 潘 很 倾心 陈某 的 大方 体贴 让 孤独 的 小 潘 很 倾心 陈某 的 大方 体贴 让 孤独 的 小 潘 很 倾心 小红 的 父亲 返回 宿舍 后 发现 女儿 不对劲 看着 别的 人家 小康生活 甚 是 羡慕 周围 很多 女性朋友 都 收到 了 节日 礼物 当时 儿子 在 崖 边 的 平台 上 内心 肯定 充满 了 绝望 和 害怕 希望 其他人 不要 再 随便 来 穿越 了 当时 儿子 在 崖 边 的 平台 上 内心 肯定 充满 了 绝望 和 害怕 希望 其他人 不要 再 随便 来 穿越 了 主人 发现 驴 丢 了 一定 着急 上火 更 让 阿钟 恼火 的 是 雪儿 将 钱款 挥霍 在 包养 少爷 到 高档 娱乐场所 消费 上 更 让 阿钟 恼火 的 是 雪儿 将 钱款 挥霍 在 包养 少爷 到 高档 娱乐场所 消费 上 生意 渐 有起色 的 苏永青 一直 牢记 这份 温暖 和 感动 对方 表示 可以 免费 给 自己 的 车 做 一次 封釉 当天 受伤 是因为 护理员 打 了 她 耳光 这些 来看 书 学习 的 失主 郁闷 啊 当年 与 妻子 采用 试管婴儿 方式 生下 的 女儿 竟是 前妻 与其 前男友 的 孩子 网速 又 慢下来 了 偷窃 的 行为 确实 让 人 鄙夷 网友 们 除了 对 小伙子 的 运气 感到 羡慕 之外 但 老师 的 热心 仍令 小德 感动 万分 这一 合格 成绩 令 她 分外 喜悦 他们 对 孩子 具有 的 超凡 记忆力 很 惊喜 被 其 真情 感动 林后 领 的 表哥 孙某 买 彩票 中 了 500 万元 大奖 还 不 给 工资 就让 我 离职 并用 拳头 与 茶壶 打 我 他 为 自己 的 梦想 付出 -------------------------------------------------------------------------------- /visualization/中间文件/分类结果/jing.txt: -------------------------------------------------------------------------------- 1 | 小雯 误认 对方 是 她 的 邱姓 男友 而 赴约 当时 在 公司 尾牙 宴上 听到 这一 决定 格兰特 的 一个 邻居 对 他 被 指控 性侵 非常 吃惊 学院 纪委书记 谈到 段雄春涉 婚外情 遭 举报 的 事情 惊讶 他 才 获释 2 天 就 又 有 毒品 这 一连串 的 疯狂 撞击 可 把 周围 的 路 人 吓 得 目瞪口呆 好心人 都 被 眼前 的 一幕 惊呆 了 — — — 两个 小姑娘 睡觉 的 床铺 是 砖块 支撑 替换 下来 的 旧 门板 垒 起来 的 颜色 鲜艳 用料 独特 创意 非凡 她 的 自信 让 我 很 诧异 张立祥 的 女儿 张红 接到 车站 打来 的 电话 时 可是 检查 的 结果 王君 当时 来 应聘 时 自己 非常 惊讶 他 买 完菜 回家 一名 小女孩 掉 下 站台 当 得知 钱包 是 一个 流浪汉 捡 到 并 交给 民警 时 他 的 变化 让 每个 人 都 非常 吃惊 纪晓鹏 的 精力充沛 得 让 人 惊讶 王灵丽 丝毫 不 避讳 谈论 自己 的 病情 他 的 这番话 让 记者 吃惊 来 的 小女孩 仅仅 12 岁 来 的 小女孩 仅仅 12 岁 他 第一次 织出 的 云锦 织品 就是 优等品 听说 了 他 救人 的 事 3 个 孩子 被 请 进 校长室 时 也 有些 吃惊 是不是 犯 了 什么 错误 不满 室友 经常 拿 自己 开玩笑 面对 突如其来 的 民警 当 得知 李某 初中 没 毕业 时 回到 工地 时 他 回想 之前 的 一幕 吃惊 地 发现 儿子 不 在 房间 却 惊讶 地 发现 棺内 尸身 依然 完整 称 自己 对 判决 感到 诧异 和 愤怒 这 突如其来 的 情形 让 游客 们 震惊 不已 冷然 的 学习 经历 让 人 吃惊 一段 名为 史上 最 厉害 小孩 打架 的 视频 在 各大 视频 网站 上 疯传 连体 双胞胎 能活 这么 大 让 许多 医学专家 都 深感 惊讶 突如其来 的 线索 让 所有 民警 都 兴奋异常 她 先后 叫来 3 个 男友 一起 为 手术费 埋单 竟是 一只 蟑螂 在 作怪 他 的 宝马 5 系豪车 被 人 砸碎 玻璃 有时 甚至 以 泡菜 度日 但 老乡 家 的 这 只 巨无霸 甲鱼 还是 让 他 吃惊 不小 他 没有勇气 去 追求 让 他 动心 的 女孩子 无法 举手 无法 穿衣 正在 变成 活 雕像 母亲 玛丽恩 震惊 地 说 当 医生 告诉 我西妮 患有 这种 可怕 的 怪病 时 -------------------------------------------------------------------------------- /visualization/中间文件/分类结果/ju.txt: -------------------------------------------------------------------------------- 1 | 年轻 时 的 情感 创伤 让 黄 女士 心有余悸 因 害怕 被现 男友 知道 由于 过度 惊慌 且 害怕 婴儿 的 啼哭 声 被 宿舍 同学 听到 由于 过度 惊慌 且 害怕 婴儿 的 啼哭 声 被 宿舍 同学 听到 但 春节 期间 的 那场 战争 — — 相亲 可 哪里 也 看不到 孙子 的 影子 我们 不能 因为 惧怕 存在 这样 的 侵权 风险 便 放弃 人 与 人 之间 友好 互助 的 美好 品格 发现 被 骗 后 心里 好 难过 害怕 初为 父母 的 满腔 喜悦 被 妻子 的 病情 给 打击 得 不知所措 没想到 火势 越来越 大 在 这 深山中 徒手 凿出 一条 6000 级 的 台阶 太 让 人 震撼 了 却 遭江姓 男子 一把 强拉其 左手 阻止 江苏 扬州 75 岁 的 患癌 老人 夏居茂 留下 手表 钱包 及 一封 遗书 后 出走 余敬民 面对 记者 的 采访 有些 担忧 并 说 我 杀死 妻子 我 想 去 死 说起 6 月 11 日 下午 5 点半 发生 的 事 看到 有 这么 多 乘客 愿意 留下来 帮 我 作证 我 没想到 会 怀孕 她 听说 妈妈 在 找 她 他 对 王玲 抱 着 女儿 沉江 的 举动 表示 震惊 蔡京京 偕同 男友 弑 母弃 尸 一案 震惊 社会 黄 女士 的 遭遇 只有 她 丈夫 知道 威胁 要 对 她 不利 这 在 女童 性侵 频发 的 今天 实在 让 人 害怕 在 企图 下水 时 深陷 淤泥 害怕 指纹 留在 现场会 被 公安 查到 的 钟 建宁 提起 当时 的 情景 杀人 后 喉咙 被 割破 后 看着 日渐 憔悴 的 姚望 舟 见 仍然 无法 止住 血 看着 丈夫 的 病情 一天天 恶化 回忆起 前日 的 事故 乐乐 有如 18 岁 成人 的 高大 体型 范 女士 忆起 落水 经过 医生 被 曹于 亚救父 的 急切 心情 感动 了 电话 里 陈某 焦急 地说 母亲 突遇 车祸 急需 抢救 电话 里 陈某 焦急 地说 母亲 突遇 车祸 急需 抢救 听 我 说 叫 老伴 回村 叫 人 孩子 待 在 水里 的 时间 太长 了 朝小蕊 胸前 重重地 连 捅 四刀 随后 转头 跑掉 刺骨 的 冰水 让 他 感到 极其 寒冷 与 害怕 附近 孩子 的 上学 问题 让 家长 颇为 担心 不少 居民 还 未 从 刚才 的 惊恐 中缓 过来 特别 害怕 侄子 出事 最 让 陈 大爷 着急 的 就是 老伴儿 进食 困难 她 在 广州 东湖 御苑 路口 被 疾停 的 汽车 惊吓 小施 出现 了 急性 排斥 反应 接下来 的 事情 让 小 朱 跟 小 郑 感到 震惊 就是 害怕 独自 过夜 说起 当时 情况 警方 沿 疑犯 逃跑 方向 进行 了 围追堵截 吕 晶晶 高声 呼救 拼命 反抗 同时 又 有 路过 的 朱思洋 上前 帮忙 回 想起 确诊 时 的 绝望 这种 伟大 的 母爱 让 医护人员 震惊 和 感动 回忆起 地震 的 情景 将 自己 的 骨髓 捐献 给 爸爸 但 之后 发生 的 事情 物品 丢失 后 这 渺茫 的 希望 令 他 恐惧 拿 回 丢失 的 钱 当 得知 所谓 的 按摩 具体内容 后 说起 刚刚 发生 的 惊险 一幕 回忆起 车祸 发生 的 那 一幕 回到 许昌 襄城县 检查 发现 是 尿毒症 因为 害怕 被 父母 知道 而 受罚 因为 害怕 老人 身体 吃不消 看着 躺 在 病床 上 昏迷不醒 的 爸爸 沈如成 是 沈童西 唯一 的 亲人 第一次 见到 这种 情景 时 看着 丈夫 忙里忙外 自己 却 无所适从 明星 看到 郝伦 厚厚 一摞 献血 证 的 时候 该 女子 突然 在 列车 上犯 毒瘾 可能 是 以为 我要 带 它 去 洗澡 害怕 了 近 两米 深 的 洪水 让 她 十分 害怕 刘霞 越来越 害怕 自己 老伴 也 成 这样 回忆起 事发 时 的 情景 以为 地震 他 的 逝世 让 学校 老师 感到 震惊 和 难过 她 会 因为 陌生 想起 前一天 那 惊心动魄 的 一幕 看到 叔叔 受伤 的 样子 这件 事 让 牛香莲 感到 害怕 我怕 哪一天 我 突然 走 了 女儿 都 不知情 这件 事 让 牛香莲 感到 害怕 我怕 哪一天 我 突然 走 了 女儿 都 不知情 整个 过程 极为 惊险 面对 陌生人 看着 小蓉 一天天 病情 加重 看着 小蓉 一天天 病情 加重 因 害怕 龙 某 伤害 孩子 出现 这样 的 事情 张 先生 报警 的 事 传到 了 许某 耳朵 里 说起 前 几天 被 小偷 尾随 并 恐吓 的 事情 时常 受到 当地 黑社会 组织 敲诈 小梦一 闭眼 就是 被 打 场景 回忆 被 割 颈 一幕 女儿 拿 菜刀 要 砍 我 他 的 回答 让 人 震惊 我 养不起 了 经历 了 那 一次 惊吓 便 扔下 刀子 逃离 了 现场 但 又 惧怕 范某 对 他 动手 见到 满地 的 鲜血 听到 警笛声 就 心慌 气短 面对 李某 的 无理取闹 十分 害怕 说起 当时 的 情形 5 天前 震惊 山村 的 自杀 案 张庆达 惧怕 让 自己 承担责任 回忆起 今天 凌晨 的 那场 血案 常常 因为 小事 打骂 李某 回到 工地 时 他 回想 之前 的 一幕 当 陈某 对 受害人 进行 这种 侵害 后 当 陈某 对 受害人 进行 这种 侵害 后 格格 的 这些 举动 安徽 人老雷 也 和 同事 们 一道 堵 在 了 去往 公墓 的 路上 她 怀 了 三胞胎 她 的 哭喊 也 让 对方 有点 害怕 他 清楚 自己 取 了 钱会 在 银行 监控 上 显示 出来 看到 孩子 这样 喊叫 一 开始 感到 挺 刺激 的 黄某 开始 感到 害怕 和 心软 拿到 鉴定书 后 面对 滚烫 的 热油 张 大山 既 为 妻子 去世 而 伤心 又 为 儿子 困境 而 担忧 将 被害人 强强 叫 到 自家 平房 顶 进行 恐吓 儿子 不 理解 母亲 的 举动 宏宏 却 没有 抵达 学校 害怕 孩子 真的 被 弄错 了 回忆 当时 的 情景 小华 害怕 谎言 被 拆穿 秦家 二老 看着 他俩 一次次 地 看病 但 毫无效果 吓 得 她 心有余悸 地说 这里 的 居民 已经 习惯性 用 手把 电梯门 扒开 自救 看着 他们 身上 逼真 的 血迹 我 又 不会 游泳 看着 电动车 无法控制 这 突如其来 的 情形 让 游客 们 震惊 不已 因为 人们 对 袭击 反应 非常 恐慌 结果 老虎 不断 逼近 眼睁睁 看着 孙子 坠落 不料 小兰 失去知觉 对于 晓意 和 陌生 叔叔 因救 她 而 溺入 坑底 对于 晓意 和 陌生 叔叔 因救 她 而 溺入 坑底 这样 的 偷工减料 可恨 更 可怕 孩子 们 的 安全 问题 也 让 人 担忧 他 危险 的 举动 不由得 令 许多 市民 心 生 担忧 宿舍 被盗 事件 时有发生 杭州 连发 两起 飙车 撞人案 朋友 们 由 不 相信 变成 了 震惊 她 已 被 湍急 的 河水 困在河 中央 进退 不得 她 听到 枪声 后 小玲 并 没有 感受 到 新 生命 带来 的 喜悦 杨蒙 一家人 已经 按捺不住 战胜 病魔 的 喜悦 即将 相见 的 喜悦 和 害怕 老赵 结婚 的 焦虑 一则 阜阳市 于 3 月 15 日 凌晨 2 时 15 分有 6.8 级 地震 的 谣言 传出 对于 李 大爷 的 突然 去世 凶手 在 光天化日 之下 持刀 伤人 原因 是 吐 在 车上 妻子 失踪 后 到 西安 第二天 不慎 将 钱包 丢失 前天 上午 在 学校 机车 停车场 遭 不明 男子 以 钝器 袭击 头手 肿胀 瘀 青 虽 已 无 大碍 但 仍 相当 惊恐 五类 车 就是 这样 通过 改装 电池 这 充久 了 会 爆 的 嘛 谢晓丹 担忧 地说 京广线 张滩 至 土岭 区间 再次发生 边坡 溜坍 山体 垮塌 和 泥石流 影响 造成 了 京广线 上下行 线 中断 行车 他 15 岁 的 儿子 袁学宇 2007 年 3 月 在 河南 郑州 打工 时 失踪 但 一无所获 上周日 的 险情 仍 让 兰细兵 心有余悸 上周日 的 险情 仍 让 兰细兵 心有余悸 老人 是 看到 孩子 掉下去 第一次 被 强行 发生 关系 后 并 对 上述 人员 进行 殴打 频发 的 抢劫案件 让 过路 司机 人心惶惶 说 产妇 仍 在 抢救 有 脉搏 女儿 不仅 没有 回家 就 连 手机 也 一直 打 不通 抢劫 钱财 后 竟 又 输光 害怕 事情 败露 遂 杀人 抛 尸据 了解 之后 火势 越来越 大 一位 26 岁 的 中国 女 游客 因 被 SNCF 办公室 起火 冒出 的 浓烟 惊吓 大家 知道 这 是 要 放火烧 屋 其妻 害怕 乐某 酒后 施暴 外出 躲避 称其 儿子 阿维 被 梁 某坤 团伙 设赌 诈骗 在 快递 公司 上班 的 儿子 连 着 两天 不见踪影 因为 害怕 陈某 会 散布 这些 裸照 看着 婆婆 满是 血迹 的 脸 陈某 看着 尸体 恐惧 起来 网 曝商区 有人 砍 人 他 害怕 被 人 殴打 回忆起 今天 凌晨 的 那场 血案 于是 在 冲动 之下 掐死 了 小雅 自 2010 年 确诊 支架 断裂 至今 唯恐 事情 败露 三亚 琼州 学院 一名 学生 莫名 死 在 了 宿舍 里 小 区内 很多 居民 说起 4 个 月 前 发生 的 这起 意外 株洲 连发 六 起 售楼 人员 被 抢劫案件 但 女 学生 走失 找到 后 器官 被 割 的 传言 频繁 在 微信 和 微博上 流传 于 某 发现 张某 一动不动 已经 死亡 发现 妻子 外遇 同居 但 因 没有 看 后视镜 的 习惯 小偷 拿 着 刀 让 他 看着 害怕 晋从 银回 想起 被 抢 金项链 的 一幕 仍 心有余悸 面对 突如其来 的 变故 突然 遭到 上司 的 无理要求 被 男子 强脱 衣物 性侵 得逞 司机 言语 中带 着 威胁 而 在 公共场所 无故 咬伤 他人 雷 小姐 一方面 害怕 自己 的 男友 知晓 自己 卖淫 一事 要求 离婚 但 手机 又 没 了 电 于洋 还 在 重症 监护室 里 吴 女士 没有 想到 自己 贪吃 山楂 会 惹 上 这样 的 麻烦 可能 是 害怕 警察 竟是 一只 蟑螂 在 作怪 当时 儿子 在 崖 边 的 平台 上 内心 肯定 充满 了 绝望 和 害怕 希望 其他人 不要 再 随便 来 穿越 了 其 妻子 由于 害怕 该 男子 的 暴力行为 一个 直径 将近 1 米 的 马蜂窝 打破 了 护院 工人 们 平静 的 生活 乱飞 的 马蜂 让 人 胆战心惊 得知 妻子 向 法院 起诉 要求 离婚 身份 被 戳穿 后 他 急忙 退款 眼看 身份 被 戳穿 了 学得 太差 不好意思 大喊 着 我 要 杀 了 你 冰凉 的 河水 涌进 车内 浸至 头部 小华家 破产 了 男友 还 染上 了 肺结核 好像 是 说 有人 要害 他 之类 的话 好像 是 说 有人 要害 他 之类 的话 当时 差点 摔倒 她 都 快 临产 了 被 学校 开除 了 出于 对 传销 团伙 的 恐惧 她 突然 回想到 刚才 上 楼梯 时有 一个 黑影 掠过 一 出来 女 乘客 发现 外面 围观 了 不少 人 徐敏 突然 失踪 眼看 被 砸 的 人 越来越 多 除了 等 什么 也 做不了 莎伦说 知道 我 儿子 这种 病 在世界上 绝无仅有 因为 前男友 长相 比较 难看 气压 椅 炸伤 人 的 消息 不胫而走 对 4 月 16 日 那场 失败 的 演讲 他们 纠缠 于 我 是不是 复旦 在校生 他 发现自己 那天 偷 的 竟是 女朋友 家 由于 害怕 事情 败露 无法 举手 无法 穿衣 正在 变成 活 雕像 母亲 玛丽恩 震惊 地 说 当 医生 告诉 我西妮 患有 这种 可怕 的 怪病 时 无法 举手 无法 穿衣 正在 变成 活 雕像 母亲 玛丽恩 震惊 地 说 当 医生 告诉 我西妮 患有 这种 可怕 的 怪病 时 发现 推 着 尸体 的 变成 了 一个 小伙子 了 这种 乞讨 方式 太 恐怖 了 大巴 附近 的 隧道 墙壁 及 顶部 则 被 浓烟 熏黑 店主 余 女士 提起 被 抢劫 一事 导致 公交车 失控 碰撞 受损 驾驶员 受伤 更 让 她 苦恼 的 是 血糖高 得 吓人 鄞州区 潘火 街道 永达 路上 就 有 两个 路人 被 街道 两侧 高 楼上 扔下 的 物品 砸伤 因 小孩 性格 害羞 毕业 后 迟迟 找 不到 工作 因 越野车 属于 套牌车 因 越野车 属于 套牌车 但 谈起 当天 那场 突然 发生 的 火灾 是 由于 前不久 有 一名 高三 女生 曾 被 狗 追 看到 女儿 受到 惊吓 可是 怎么 都 打 不 开门 当 医生 告诉 我 是 四胞胎 时 她 表示 自己 并 不 害怕 高龄 产子 发现 女儿 没有 在家 27 名 家属 受困 30 分钟 突然 倒地 休克 身亡 -------------------------------------------------------------------------------- /visualization/中间文件/分类结果/le.txt: -------------------------------------------------------------------------------- 1 | 当初 获得 入户 指标 的 那份 欣喜 当初 获得 入户 指标 的 那份 欣喜 因为 老 吴 患上 肺癌 晚期 的 噩耗 而 荡然无存 因为 老 吴 患上 肺癌 晚期 的 噩耗 而 荡然无存 说起 自己 工作 过 的 地方 和 自己 的 荣誉 而且 让 生活 过得 更好 如果 能 和 父亲 团聚 现在 我 也 有 了 宝宝 我 当时 还 沉浸 在 买 了 新房 得知 有 很多 热心人 都 愿意 帮助 她 完成 心愿 宝贝 回家 了 孩子 的 出生 给 一家人 带来 了 无尽 的 喜悦 和 欢乐 孩子 的 出生 给 一家人 带来 了 无尽 的 喜悦 和 欢乐 提起 志愿者 志愿者 送来 的 一支 玫瑰 看到 童童 入学 她 总 说 自食其力 还会 得到 同事 的 祝福 姐姐 盛 女士 来到 合肥 打工 杨 女士 就 告诉 他 自己 决定 要 嫁给 他 关键 是 喜欢 这种 团聚 的 热闹 气氛 我们 不能 因为 惧怕 存在 这样 的 侵权 风险 便 放弃 人 与 人 之间 友好 互助 的 美好 品格 初为 父母 的 满腔 喜悦 被 妻子 的 病情 给 打击 得 不知所措 当 大家 把 这个 好消息 告诉 黄老时 许某 的 老 母亲 听说 儿子 在 新疆 结婚 了 许某 的 老 母亲 听说 儿子 在 新疆 结婚 了 女儿 的 出生 为 黄魁 吾 夫妇 带来 了 无与伦比 的 喜悦 在 这 深山中 徒手 凿出 一条 6000 级 的 台阶 太 让 人 震撼 了 准备 向 黄某 求婚 好心人 都 被 眼前 的 一幕 惊呆 了 — — — 两个 小姑娘 睡觉 的 床铺 是 砖块 支撑 替换 下来 的 旧 门板 垒 起来 的 老公 一门心思 看 世界杯 老公 一门心思 看 世界杯 最后 一次 献爱心 听 了 警察 的 那句话 他 当时 非常 振奋 从此 这个 孩子 就 成 了 我们 家 的 一员 儿子 也 同意 了 不 知道 是不是 我 和 他 走 得 太近 了 顶不住 压力 的 李娟 透露 了 打算 离婚 然后 离家出走 的 想法 父母 结婚 四年 后 才 生下 了 他 他 的 出生 给 家人 带来 了 莫大 的 欢喜 张 先生 觉得 自己 老 来得 子 很 是 高兴 软软 的 小手 让 人安 心念 儿 的 到来 对 我 绝对 是 个 惊喜 弟弟 有 希望 得知 情妇 给 自己 生 了 个 大 胖小子 但他却 为 我 拉 小提琴 当晚 周某 和 老婆 因 琐事 吵 了 一架 邱继磊 的 两个 哥哥 愿意 为 弟弟 捐献 骨髓 看着 牵手 成功 的 三 对 男女 看着 孩子 看着 孩子 我 经常 会 念诗 给 望 舟 听 陈华花 了 300 元 买 了 一大 束 蓝色妖姬 还有 更 让 妹子 心花怒放 的 研究成果 对 家务活 更是 抢 着 干 从 只会 哭 到 开口 喊 爸爸 从 只会 哭 到 开口 喊 爸爸 难得 车上 这么 多人 聊天 担心 我 一个 人 不 安全 白连珍 和 丈夫 都 没有 时间 陪 儿子 在 教育 过程 中 由于 缺乏 家长 的 帮助 而 事倍功半 一次次 的 推后 婚期 童俊以 不会 打为 由 婉拒 孩子 智障 是 专家 弄错 了 每次 当 邓广台 把 烟 递给 哥哥 的 时候 前 半个 月 全家 沉浸 在 盖新房 的 喜悦 中 得 了 奖 得知 老人 病情 恢复 平稳 后 得知 妹妹 能够 行走 后 得知 自己 的 造血 干细胞 与 一名 白血病 患者 配对 成功 后 惊喜万分 能 帮 她 我 也 蛮 高兴 宋扬 有 了 儿子 想到 警察 如此 细致 照顾 其 家人 看到 孩子 花 300 多元 网购 了 一块 女式 手表 作为 礼物 看到 我们 来 虽 是 短短的 两个 字 钱包 短短 半小时 失而复得 得知 禾 禾 已经 回家 但 看着 五星红旗 冉冉升起 今天 这么 多人 陪 他俩 过 中秋 明天 生日 我要 多 煎 两个 鸡蛋 孩子 生下 后 这 简单 的 两个 字 让 高 德金 欣喜若狂 胡 某某 主动 邀余 某到 芜湖 见面 并 相约 出去 游玩 每当 听到 有人 喊 他 雷锋 他 就 像 大热天 喝 了 杯 冰爽 的 饮料 秦旭磊 满眼 都 是 惊喜 得知 自己 能救 儿子 高兴 的 是 女儿 终于 有救 了 高兴 的 是 女儿 终于 有救 了 哪怕 想想 我俩 一起 去 时候 的 样子 都 高兴 看着 这 红红的 喜报 孩子 们 一点一滴 的 成长 白 师傅 的 心情 先是 因 丢失 两万多元 懊恼不已 在 河西 长塘山 小区 做 清洁工 的 孙国清 就 惊喜 地 领到 了 550 元 年终奖 这个 小区 真有 人情味 老板 竟然 买车 专门 送 我们 回家 过年 今年 他们 再也 不用 为 春节 回家 买票 的 事 担心 了 当 得知 所谓 的 按摩 具体内容 后 而是 不住 地 强调 做 这些 事 中年 得子 的 他 十分 开心 当时 母亲 对 他 的 善良 举动 给予 拥抱 赞许 你 做 的 是 行善积德 的 好事 水稻 长势 良好 对于 可以 在 90 岁 生日 时 与 66 岁 女儿 80 多岁 妹妹 及 亲戚 团聚 最 高兴 的 就是 看到 乡亲 一天天 富 起来 平静 享受 生活 的 样子 最 高兴 的 就是 看到 乡亲 一天天 富 起来 平静 享受 生活 的 样子 最 高兴 的 就是 看到 乡亲 一天天 富 起来 平静 享受 生活 的 样子 最 高兴 的 就是 看到 乡亲 一天天 富 起来 平静 享受 生活 的 样子 家欣 听到 这些 评价 很 开心 想着 就要 和 儿子 团聚 崔永元 确定 要 来 电话 里 徐 遵龙 得知 女儿 还 没回 学校 看到 好心 的 徐大哥 将 钱 交给 自己 钱 也 追回来 了 老人 因 生病 心情 一度 沮丧 低迷 初为人 母 的 麦容欢 很 开心 得到 通知书 当天 他 高兴 地 哭 了 其 妻子 还 在 担心 — — 这张 千万元 巨奖 彩票 究竟 能否 顺利 取回 孩子 们 送 我 小汽车 突然 在 异地 见到 大学老师 受助 学生 从 100 人 增加 到 300 人 没有 看到 肿瘤 现在 她 最 担心 是 没人 愿意 接 她 的 教鞭 小儿子 毕可清 的 出生 考上 大学 是 一件 大喜事 与 父亲 的 相见 罗静 最 焦虑 的 问题 是 俊杰 做 移植手术 的 费用 还 没有 着落 听说 了 他 救人 的 事 农民工 的 安全 保障 让 人 心寒 听说 张世芬 婆婆 的 捐款 汇入 得到 消息 后 现在 这条 路 竣工 了 到 2011 年 的 时候 妻子 病情 逐渐 好转 看到 好心人 捐 了 这么 多 的 健身器材 和 图书 她 的 骨髓 与 弟弟 百分百 相合 她 听到 消息 后 开心 得 笑 了 当时 听到 这个 消息 非常 兴奋 记得 我 拿到 大学 录取 通知书 时 他们 只是 因为 自己 的 原因 才 放弃 了 你 拥有 豁达 的 养父母 特别 是 以 寝室 个人 名义 手写 的 明信片 让 冯建梅 很 高兴 看到 报纸 和 网络 上 出现 自己 小区 里 有 这样 的 好事 当 桂林 消防官兵 发现 小猫 后 村民 们 你一言我一语 的 赞美 如果 自己 的 工作 对 社会 有用 第一次 作案 得手 吴志侠 感到 生活 绝望 还 没 来得及 享受 儿子 死而复生 的 喜悦 还 没 来得及 享受 儿子 死而复生 的 喜悦 张 某交 了 个 女友 不让 他 继续 喝 去年 薛某 妻子 生 了 个 大 胖小子 钱 终于 能 回来 李夏 提出 见面 她 因 邻居 侯某 曾 说 她 偷 过 其 钱 一看 爱车 被 亲 侄子 砸 成 这样 不禁 伤心 痛哭 起来 半夜 能拉到 这样 的 长 路线 生意 而且 孩子 的 成长 给 婆婆 带来 了 很多 快乐 从 邻居 口中 得知 刘家 已 报警 后 感觉 不对劲 的 王 某 以为 自己 哪里 得罪 了 妻子 小梅见 儿子 来 了 很 高兴 欧某 和 朋友 打牌 时输 了 几百元 在 法庭 上 听到 结果 后 只出 了 一万元 定 下来 之前 是 那个 男 的 指葵 勇 和 我 父母 说 我 同意 订婚 5 个 机器人 身上 泛起 炫目 的 光影 整齐划一 地 跳 起 了 舞 这 可 让 围观 的 几个 孩子 开心 坏 了 看见 陈 茂林 总会 问候 一声 陈 师傅 好 看见 陈 茂林 总会 问候 一声 陈 师傅 好 陈意 老 听 家人 在 为 林茜 工作 转正 的 事情 烦恼 想着 下班 就 能 用 上 iPhone6 了 父亲 称 哥哥 在家 忙 着 准备 婚礼 说 还 能 赶上 参加 哥哥 的 婚礼 真 好 羊羔 还是 死去 了 他 发现 卡里 有 十几万元 现金 女儿 得到 这个 消息 高兴 极了 得知 一点 线索 后 包括 同学 在内 的 我们 都 为 获 大奖 高兴 看见 儿子 学会 新 的 生活 技能 但是 很多 邻居 对 拆错 了 房子 表示 很 开心 黄某 好不容易 接到 了 一笔 生意 当 知道 自己 的 室友 都 是 同年同月 同日生 的 时候 最令 他 兴奋 的 是 看到 蒙特利尔 国际 烟花 大赛 同时 如 家 酒店 承诺 今后 全国 所有 的 如家 酒店 都 对 导盲犬 敞开大门 陈燕 很 高兴 我们 为 所有 的 导盲犬 争取 到 了 权益 中大奖 带给 自己 喜悦 的 同时 也 将 带来 不少 麻烦 金 女士 看到 了 自己 的 车子 见 儿子 带 回来 一个 新媳妇 见 儿子 带 回来 一个 新媳妇 见 张鹏 一表人才 降生 的 女婴 让 王磊 和 妻子 都 很 兴奋 她 一个 人 对抗 人口 贩卖 的 战争 逐渐 变成 一场 社会 运动 眼看 饱受 病痛 折磨 的 病人 要 治愈 出院 看到 刘 老太太 的 康复 情况 面对 老师 的 拥抱 3 万元 如愿 到手 陈 华东 的 手指 动 了 一下 能 收到 这样 特殊 的 祝福 儿子 出生 后 谈起 自己 在 节目 中 的 表现 陈芳 怀起 了 龙凤胎 又 非常 聪明 妻子 终于 怀孕 生下 一子 儿子 的 出生 让 一家人 喜出望外 因为 盗窃 顺利 再次 下手 前 一时 高兴 喝 了 1 斤 这 突如其来 的 情形 让 游客 们 震惊 不已 能 亲手 抓住 这 家伙 过年 家人 团聚 对于 这 首歌 受到 学生 的 追捧 抵达 拉萨 看到 布达拉宫 两人 高兴 得 像 小孩 从 如美过 澜沧江 大桥 进入 怒江大峡谷 老 了 还 能 有 机会 上学 他 现在 已经 接受 了 女儿 提娅 14 岁 怀孕 生女 的 事实 而 外孙女 的 出生 令 他 感到 无比 喜悦 提娅 刚出生 的 女儿 艾娃 将 必须 称 这名 只 比 她 大 9 个 月 的 男婴 叫 舅舅 但 已经 与 山姆 分手 的 前女友 刚当 上 外婆 的 凯丽 却 有些 忧心忡忡 看到 自己 写 成功 了 汉字 没有 比 这个 消息 更令 他们 兴奋 的 消息 了 — — 有着 世界 上 最 臭 的 花之称 的 泰坦 魔芋 日前 在 瑞士 盛开 卢应 相 破解 数学 难题 的 执著 精神 让 人 敬佩 孩子 们 的 安全 问题 也 让 人 担忧 没想到 老人 听到 记者 的 问话 立即 变得 愤怒 起来 相互 缠 在 一起 如今 得知 他 恢复 得 不错 看到 廖崴 很 活泼可爱 张 大姐 显得 分外 高兴 早 知道 让 我 儿子 来 跟 你 交流 交流 霍恩说 她 对 重获 自由 感到 很 高兴 有 了 丈夫 骨灰 陪伴 妈妈 听到 消息 高兴 得 落泪 了 英国人 妮基 · 库萨克 中 了 巨额 大奖 后 英国人 妮基 · 库萨克 中 了 巨额 大奖 后 当 三个 孩子 平安 出生 当 三个 孩子 平安 出生 股民 往往 兴奋 得 大叫 房屋 得救 听说 了 病房 里 有 一个 5.7 公斤 的 孩子 出生 是 个 不错 的 结婚 对象 斯 凯勒 更 高兴 的 则 是 自己 分文 未花 就 吃 了 这么 一顿 豪餐 斯 凯勒 更 高兴 的 则 是 自己 分文 未花 就 吃 了 这么 一顿 豪餐 能够 帮 患者 接活 断肢 我 觉得 有 希望 接活 了 看到 失主 能 拿 回 自己 丢 的 钱 手机 杨浦区 市东 中学 有 一名 家长 在 获悉 儿子 有 女朋友 后 不仅 没有 生气 燕子 化名 怀孕 了 女友 也 时常 将 樊 先生 的 照片 发到 朋友 圈里 秀下 恩爱 不少 网友 都 通过 微 长沙 表达 了 对 袁 某 行为 的 气愤 只有 一条 不足 4 米 的 通道 看到 自己 被 写 进 最高检 的 报告 当中 妹妹 因为 这次 穿着 中国 古装 出镜 而 十分 兴奋 得知 儿子 的 成绩 后 但何 亚军 的 脸上 却 写 满 了 兴奋 小玲 并 没有 感受 到 新 生命 带来 的 喜悦 刚刚 结束 中考 的 杨蒙 满心欢喜 杨蒙 一家人 已经 按捺不住 战胜 病魔 的 喜悦 好久不见 的 妈妈 突然 出现 即将 相见 的 喜悦 和 害怕 老赵 结婚 的 焦虑 不太可能 注意 到 乘客 是因为 吸烟 而 不 高兴 灵宝市 19 岁 的 僧 某 因 打麻将 输 了 1000 多元 僧 某 因为 输了钱 听 大夫 说 博文 再 过 一段时间 就 可以 回家 养病 时 对于 儿子 能够 减刑 回家 当 他 听到 未婚妻 通情达理 的 话语 后 最 高兴 的 莫过于 孩子 们 学习成绩 的 大幅提高 两个 女儿 的 出生 令 他们 无比 开心 但 又 担心 她 下 地铁 后 不 安全 五类 车 就是 这样 通过 改装 电池 这 充久 了 会 爆 的 嘛 谢晓丹 担忧 地说 母亲 在 晚年 找到 了 自己 的 幸福 孩子 不再 说 肚子痛 了 而且 又 开始 活泼 好动 逐渐 走出 了 失去 女儿 的 悲伤 中 面对 这么 多人 的 关心 上 学期 我们 学校 学生 数学 平均分 是 85 分 语文 平均分 65 分有 了 很大 提高 杜爱虎 高兴 地说 得知 首饰 失而复得 后 得知 首饰 失而复得 后 想到 董云有 好 大学 读 董雪能 找到 好 工作 我 就 开心 每当 看到 又 一人 获救 就 会 高兴 儿子 贺相龙 出生 了 如果 一个 人 救活 了 李女士 接过 失而复得 的 包后 显得 意外 而 又 惊喜 脑瘫 虽然 让 陈超 行动不便 但 智力 并 没有 受到 影响 可 也 很 犯愁 孙子 考上 了 大学 在 产后 大出血 抢救 过程 中 40 岁 才 结婚 生子 王某 觉得 妻子 的 朋友 陈某 挑拨 他们 夫妻 二人 感情 叔叔 捐建 的 第一所 希望 小学 已经 落成 陈某 看着 尸体 恐惧 起来 小林 看到 工资 要 回来 了 后 喜出望外 他 1 月 31 日 获悉 12 · 15 劫金案 已 侦破 唯恐 事情 败露 这 一点 令 资兴 公安 感到 欣慰 丈夫 们 就 结伴 开锁 偷盗 于 某 发现 张某 一动不动 已经 死亡 在 厚厚的 衣被 中 发现 了 一沓 沓 现金 王平 从 兜里 掏出 一只 小龟 这番 推心置腹 的话 现在 女儿 恢复 得 这么 好 10 日 中午 遇到 了 多年未见 的 同学 大 女儿 去年 还 因为 这起 飞来横祸 中断 博士班 学业 原本 黄靖凯 考取 逢甲 自动控制 系 硕士班 而且 双方 家属 见面 还 经常 恶言相向 沉浸 在 儿子 大婚 即将 到来 的 喜悦 之中 的 夹 竹园镇 瓦池村 刘某 一家 突然 炸开 了 锅 不慎 刮 碰到 了 张斌 不慎 刮 碰到 了 张斌 又 加 乔迁之喜 会 通过 一条 电话线 告诉 李燕 一个 单身 母亲 在 北京 这样 一个 大城市 独自 打拼 的 艰辛 与 孤寂 有 礼貌 有 修养 当 女性 遭遇 男朋友 背叛 后 从 父母 口中 得知 自己 可能 无缘 中科大 少年班 的 消息 后 看着 孩子 的 幸福生活 老两口 感到 非常 欣慰 得知 她们 母女 平安 当天 中午 有 朋友 请 他 吃饭 裘 老太 拿到 钱后 乐不可支 现场 没有 发现 一起 偷拿 茅台 的 事件 过年 家人 团聚 网友 们 除了 对 小伙子 的 运气 感到 羡慕 之外 原来 当天 他 跟 朋友 谈 了 一笔 生意 最终 惨败 普德 说 跑 到 终点 的 那一刻 看着 它 一天天 的 好 起来 看到 古墓 又 惊喜 又 气愤 听说 发现 郝家 祖坟 得知 这个 消息 后 手术 的 结果 十分 完美 她 6 日 表示 当 我 知道 他们 平安 降生 时 这一 合格 成绩 令 她 分外 喜悦 刚当 了 爸爸 的 郝瑞丰 还 没 来得及 欣喜 就 开始 犯愁 近日 他 淘到 了 一件 宝贝 他们 对 孩子 具有 的 超凡 记忆力 很 惊喜 又 意外 收获 两张 极具 收藏 价值 的 人民币 听 了 乡亲们 的话 丈夫 在 国外 的 事业 逐渐 有 了 起色 第 09007 期 足球彩票 大 奖得主 小张 手握 价值 535 万元 的 彩票 喜不自禁 她 带 着 儿子 去 买 了 辆 儿子 念叨 很久 的 自行车 她 带 着 儿子 去 买 了 辆 儿子 念叨 很久 的 自行车 -------------------------------------------------------------------------------- /visualization/中间文件/分类结果/nu.txt: -------------------------------------------------------------------------------- 1 | 儿子 并非 亲生 没想到 学姐 被 放鸽子 后 更加 气愤 四个 儿子 不仅 不 伺候 照顾 小儿子 还 将 她 的 胳膊 打断 就 听到 岳母 不停 地 数落 他 和 他 的 家人 称 他 配不上 她 的 女儿 而 作为 长辈 的 汤 某 也 经常 完全 站 在 女儿 一边 数落 女婿 吴某 见 小梅 不念旧情 每次 约会 都 要 用钱 维系 关系 而 超市 内 的 工作人员 也 表示 在 先前 多次 看到 女子 手持 孩子 父亲 的 照片 寻人 但 多次 未果 她 听到 大雄 在 电话 中 和 朋友 说 想 离婚 后 再娶 发现 妈妈 和 一名 陌生 男子 衣衫不整 地 在 卧室 里 对于 儿子 为了 和 一个 网友 结婚 卖掉 自己 给 他 买 的 房子 的 行为 阿菊 发现 阿强 另 有 家室 女友 以 性格不合 提出 分手 跟随 前男友 去 了 深圳 就 借上 厕所 之 由 逃离 了 洞井 派出所 感觉 被 糊弄 大多数 网友 对 这个 奇葩 婚礼 表示 了 愤慨 对阳 某 的 疯狂 举动 连 女士 手里 抓 着 拉扯 中 断裂 的 半截 金项链 气愤 不已 有时 会 对 改变 自己 的 日常 习惯 而 感到 憎恶 与 恼火 他 被捕 后 在 警诫 下称 被 女友 挑衅 看见 个别 老人 讹人 的 新闻 非常 气愤 张某 反复 听 丈夫 要 跟 自己 离婚 的 录音 争吵 中 并 认为 道观 住持 有 调戏 他 妻子 的 行为 在 微信 中 她 发现 几条 信息内容 暧昧 车里 的 他 也 忍不住 哭 出声 来 女人 又 是 一阵 臭骂 并 在 医院 对面 宾馆 开房 居住 并 在 医院 对面 宾馆 开房 居住 周润 莲对 这些 疑问 有点 气愤 少女 见到 家人 不断 泣诉 自己 遭 对方 非礼 要钱 不成 如果 简单 地 口头 说教 回忆起 这 一段 司机 口中 喊 着 不会 丢下 她 却 把 她 扔 在 了 2 公里 外 的 马路边 看到 车里 装满 现金 的 包 不翼而飞 妻子 的 背叛 再次 向 其 要钱 仍 未果 这段 约 50 秒 的 虐猫 视频 在 网络 上 热传 见面 后 被 对方 嫌弃 长相 与 照片 不符 而 拒绝 交往 不想 见面 后 李先生 突然 反悔 感觉 没有 面子 的 张 某 当晚 在 李先生 家 借宿 时 内心 窝火 因 害怕 龙 某 伤害 孩子 便用 一个 盖子 敲 了 一下 龙 某 头部 他 被 孙子 阿宝 化名 偷 了 21 元 钱 袁 某权 听 后 对 儿子 阿宝 的 行为 非常 恼火 阿宝 拒不回答 居然 心甘情愿 和 老汉 同居 并 从 河北 私奔 到 湖南 男子 见小田 死命 不 从 撞破 了 这件 事 对于 女儿 小学 就 谈恋爱 的 事情 当 王大爷 发现 并 制止 后 残忍 地 将 一家 三口 都 杀 了 这样 的 人 一定 要 让 他 得到 应有 的 惩罚 遭到 对方 谩骂 后 并 再次 对 她 实施 毛手毛脚 的 行为 可小甜 还是 不肯 听 他 的话 阿强 又 来到 老人院 欲 偷窃 二是 不愿 看到 汀洋 同学 因 状告 无门 在 发现 前台 的 抽屉 里 居然 没钱 后 孩子 被 扎 虽然 愤怒 正 残忍 地用 刀 从 藏 野驴 身上 割肉 查获 的 4 名 女童 竟 被 贩毒分子 当作 运毒 工具 从事 运输 毒品 犯罪活动 虽然 对 儿子 的 行为 极为 愤怒 并 狠狠 地 修理 了 儿子 一番 被 小雪 拒绝 陈郁 因 怀疑 姐夫 蓝强 与 其妻 有 不 正当 男女关系 刘某 与 妻子 在 家中 因 生活 琐事 和 孩子 教育 抚养 等 问题 发生 激烈 争吵 后 想起 周俊 对 自己 的 种种 不好 不 尊重 他 竟能 下 如此 毒手 丈夫 养 的 小 三 居然 住 在 自家 房屋里 但许 某某 夫妇 拒绝 了 他 的 帮助 崔某 被 拒绝 后 双方 争执不下 怀疑 妻子 有 外遇 杨某 与 安某 再次 争吵 家中 被 贼 光顾 附近 居民 听闻 发生 枪杀案 其 进入 该 民房 未盗 得 财物 23 日竟 亮出 改造 手枪 想 逼 哥哥 给钱 又 被 断然拒绝 小成 的 到来 激起 了 死者家属 的 愤怒 他 在 庭外 被 柯家 家属 痛打 了 一顿 受骗 的 王 某 气愤 不已 听到 安 师傅 的 遭遇 说 自己 被 一个二十 来 岁 的 男子 抢劫 并 强奸 我们 认购 户 完全 上当 了 浙江 台州 温岭 男子 刘某 因向 女友 求婚 不成 这次 以 失败 而 告终 的 求婚 让 刘某 觉得 颜面 尽失 丈夫 与 32 岁 的 女网友 史 某 有 暧昧关系 牛某 无意间 发现 了 丈夫 与 史 某 的 情人 关系 一 朋友 告知 其 女儿 萱 萱 被 三名 老人 强奸 在 街头 遇见 情敌 后 愤怒 的 丈夫 与 之 发生争执 并 持刀 将 其 捅 伤 但 妻子 每次 都 矢口否认 他 说 自己 觉得 妻子 给 他 戴 了 绿帽子 感觉 窝囊 的 同时 一时 恼怒 才 持刀 捅 伤 了 刘轩 见 汇款 依旧 未到 账 得知 这 消息 的 薛先生 非常 意外 和 郁闷 这才 发现 上当受骗 门外 的 男子 见 砸门 不成 对方 死活 不 同意 退钱 对于 爷爷 意外 受伤 罗玉莲 便 提出 分手 这位 经理 的 说法 让 她 十分 气愤 当时 他们 死不承认 而 现在 被 告知 这块 地 已经 属于 别人 朱 老太 吓倒 在 地 半天 起不来 就 这 一点 物业公司 都 不肯 承担 自己 费 了 九牛二虎之力 才 从 朋友 那里 交换 而 来 质问 妻子 为何 乱动 他 东西 担心 女朋友 吃亏 说起 打 陀螺 遭到 的 阻挠 苑 女士 向 记者 讲述 了 她 遭遇 拐狗 人 的 遭遇 儿媳妇 不 检点 即将 领到 车 面对 两 被告方 的 互相推诿 13 日晚 当 丈夫 杨先生 告知 自己 被 抢劫 的 时候 父亲 的 严加 看管 发泄 自己 无处 赌博 的 愤懑 这名 男子 被 开水烫 到 后 恼羞成怒 让 她 愤怒 的 是 普达措 国家 公园 巧妙 的 拒绝 理由 就是 姚在 数日 前 留下 的 日记 中有 一段话 公司 利用 结账 单据 骗 了 我 7000 元 钱 因毕 某 态度恶劣 并 出言 辱骂 该名 男子 是 在 本月 6 日 下午 酒后 与 妻子 起 了 严重 冲突 发现 其中 有 半只 长 翅膀 的 昆虫 晓云 便 在 车上 哭诉 了 叔父 为何 暴打 她 一事 称 自己 对 判决 感到 诧异 和 愤怒 看到 自己 的 手机 彻底 报废 而且 目前 不 排除 该 材料 致癌 的 可能性 徐伟 和 邻居 因 挪车 产生矛盾 面对 这样 的 处理 方法 毛荣 却 遭来 了 一顿 指责 觉得 可能 是 装 辣椒酱 的 罐子 被 摔坏 了 但 也 有 不少 内地 网民 对于 广告 羞辱 内地 人为 蝗虫 表示 愤怒 但 也 有 不少 内地 网民 对于 广告 羞辱 内地 人为 蝗虫 表示 愤怒 黄某 发现 胡某 竟然 并 没有 离婚 遭到 卖淫女 小兰 化名 的 嘲讽 不料 小兰 失去知觉 我 为 女儿 小小年纪 就 怀上 身孕 而 恼火 不已 二人 再次发生 言语 争吵 刘巧巧 回到 自己 家中 后 气愤 不已 没想到 老人 听到 记者 的 问话 立即 变得 愤怒 起来 霍曼 夫人 对 暴徒 毫无 人性 的 行为 十分 愤慨 并 当即 报警 我 的 律师 已经 建议 我 不要 再 与 卡 梅洛 特 公司 扯皮 此事 我 对 他们 的 疏忽 与 态度 感到 愤怒 对夏 某某 事件 产生 的 恶劣影响 和 严重后果 感到 愤慨 最 让 萧吟 气愤 的 是 周梦晗 的 谎言 这 期间 小 陈 出轨 了 也 对 女性 同胞 自我 防卫 意识 的 缺失 表示 心痛 不少 网友 都 通过 微 长沙 表达 了 对 袁 某 行为 的 气愤 对于 赵晓明 当庭 翻供 得知 对方 是 恶作剧 唐 先生 意识 到 这 是 一个 恶作剧 后 看到 自己 的 车 被划 了 老人 先 动手 用 拐杖 打 了 司机 一下 男子 发现 未婚妻 与 他人 玩 暧昧 但 爱犬 被 抢 还是 令 徐某 既 气愤 又 伤心 不料 男 乘客 破口大骂 称 保洁员 就是 干 这个 的 同行 的 女 乘客 更 上前 打 了 站务员 两 耳光 听到 阿珍 与 他人 亲密 通话 后 顿生 愤怒 李某 发现 刘某 夫妇 同 宿一室 还 听到 其 亲热 之声 林 女士 发现 自家 饭店 在 该 点评 网站 上 被 连续 差评 其中 不乏 诋毁 之词 一位 26 岁 的 中国 女 游客 因 被 SNCF 办公室 起火 冒出 的 浓烟 惊吓 他 母亲 因为 自己 和 妻子 闹 离婚 的 事 而 自杀 他 认为 这是 妻子 和 范德财 两人 奸情 造成 的 河南 周口 市民 张秋生 谈起 一个月 前 自己 围观 当地政府 强征 农民 土地 莫名 被 打 一事 时 依然 十分 的 愤怒 有人 打 了 我 一拳 可 女友 拒绝 和 好 让 人 气愤 的 一幕 发生 了 撞 人 的 车子 在 往后 倒车 想要 溜走 向 自己 反映 了 在 幼儿园 被 小朋友 拿 臭 袜塞到 自己 的 嘴里 23 日竟 亮出 改造 手枪 想 逼 哥哥 给钱 又 被 断然拒绝 万 想不到 母亲 通过 报失 房产证 悄悄 卖 了 房子 父亲 欲 带 其 回家 小肖 不肯 吕某 认为 被 欺骗 感情 吕某 认为 感情 受到 了 欺骗 她 挂 在 窗外 的 5 斤 猪肉 和 一只 白条 鹅 被 偷 了 这 又 是 一起 肇事 逃逸 事故 朴某 和 费 某 又 一次 因 生活 琐事 发生 争吵 挨 了 丈夫 的 打 但 妹妹 对此 毫不 领情 上周 还 动手 打伤 了 她 很多 路 人 看到 公共 自行车 服务 点 被 砸坏 都 很 愤慨 妻子 红杏出墙 女友 竟 和 前男友 李某 在 一起 一名 40 多岁 的 男子 接连 打伤 了 几名 女服务员 并 扬言 要 把 女儿 带走 家人 开始 埋怨 杨丽 办事 不力 发现 妻子 外遇 同居 要不是 这 小子 女儿 也 不会 这么 不听话 没有 等候 到 前夫 其 没有 在 室内 找到 现金 及其 他 任何 值钱 的 东西 大家 纷纷 指责 杨 的 暴行 发觉 自己 被 阿明 欺骗 得知 肇事 司机 王仕鸿让 其 侄子 顶包 蔡某 发现 妻子 王某 背着 自己 和 一个 叫 阿付 的 男子 混在 了 一起 自己 的 女朋友 小美 被 兴平 一所 小学校长 杨某 绑架 殴打 和 强奸 人群 更 愤怒 了 抢 了 钱 居然 还 伤人 可是 接下来 这名 女性 工作人员 的 行为 让 她 更 气愤 男子 一怒之下 将 前女友 母亲 勒死 遭王 某 家人 拒绝 小红 的 父亲 返回 宿舍 后 发现 女儿 不对劲 今年初 小芳 提出 分手 以 发泄 曾 被 欠薪 的 愤懑 也 没 进行 任何 有效 赔偿 当 女性 遭遇 男朋友 背叛 后 得知 妻子 向 法院 起诉 要求 离婚 主人 发现 驴 丢 了 一定 着急 上火 我 的 宝马 就 烧成 了 一堆 废铁 更 让 阿钟 恼火 的 是 雪儿 将 钱款 挥霍 在 包养 少爷 到 高档 娱乐场所 消费 上 被 骗 结识 网恋 女友 误入 传销 组织 被 骗走 3 万余元 说起 自己 被 骗 听 了 父亲 的 责备 因 自己 的 本田 车 被 刻 上 汉奸 字样 当天 受伤 是因为 护理员 打 了 她 耳光 快递 公司 一直 推诿 快递 公司 一直 推诿 男孩 体内 雌激素 有 2 项 指标 严重 超标 看到 古墓 又 惊喜 又 气愤 听说 发现 郝家 祖坟 看见 坟墓 被 破坏 了 但 说起 铁牛 被 偷 刚才 你 是不是 在 女厕所 偷拍 刘海 看到 宝马车 从 车头 到 车尾 被划 了 一条 长长的 划痕 因 被 其 两岁 的 儿子 发出声音 吵醒 而 气愤 至极 当贺 某 再次 要钱 时 遭到 拒绝 想到 妻子 已经 扔下 自己 和 儿子 记者 追访 公交车 上 被 猥琐 大叔 摸 大腿 儿子 知道 妻子 被 父亲 强奸 后 妻子 的 背叛 奸夫 的 无视 -------------------------------------------------------------------------------- /visualization/中间文件/分类结果/wu.txt: -------------------------------------------------------------------------------- 1 | 家中 又 急需 用钱 是 他 对 自己 生存期 的 忧虑 再次 因 丈夫 撒手人寰 而 陷入 无限 绝望 中 由于 过度 惊慌 且 害怕 婴儿 的 啼哭 声 被 宿舍 同学 听到 对 前妻 和 孩子 的 思念 吐槽 自己 成为 被 催 婚族 的 苦恼 和 无奈 每当 在 新闻 上 看到 血库 告急 的 消息 曾经 刘淑梅 一直 为 献血 年龄 限定 在 55 岁 而 苦恼 他 发现 一个 小孩 漫无目的 的 边 哭 边 走 格瑞斯 因 曾 欺骗 对方 一直 深感 愧疚 我 因 曾经 欺骗 他 而 一直 深感 愧疚 但是 彭某 想到 自己 白白 疼爱 了 别人 的 孩子 几年 又 从 覃某 同事 口中 听说 了 一些 不好 的 传言 在 病痛 和 经济 的 双重 压力 下 在 这 之后 杨 女士 的 手机 就 打 不通 了 结束 后 又 找 不到 妻子 赖敏 的 病情 发展 起来 迅猛 凶险 就算 医治 也 无法 增加 生命 的 质量 与 长度 我们 不能 因为 惧怕 存在 这样 的 侵权 风险 便 放弃 人 与 人 之间 友好 互助 的 美好 品格 古镇 海州 一 灯饰厂 18 岁 女孩 留下 绝笔 信 至今 未归 却 又 为 母亲 的 户口 难以 落户 而 发愁 却 又 为 母亲 的 户口 难以 落户 而 发愁 即将 面临 停药 的 周兴贵 即将 面临 停药 的 周兴贵 倪琼 做出 了 令 她 至今 愧疚 不已 的 事 她 背着 不满 周岁 的 女儿 因为 被 前女友 骗走 存款 而 怨恨 单身 年轻 女性 他 被 当时 的 女友 骗走 了 30 万元 的 存款 后 产生 怨恨 之心 担心 抽 骨髓 会 对 自己 身体 有 影响 担心 抽 骨髓 会 对 自己 身体 有 影响 他 自称 做 上门 女婿 的 生活 很 压抑 他 自称 做 上门 女婿 的 生活 很 压抑 婚后 的 家庭 生活 让 他 很 压抑 惊讶 他 才 获释 2 天 就 又 有 毒品 当唐 某 向 张 某 提出 离婚 后 被 拒 一 遇到 要手 写字 的 场合 这 一连串 的 疯狂 撞击 可 把 周围 的 路 人 吓 得 目瞪口呆 想到 胡某 与 自己 订婚 后 分手 现在 又 借钱 不 还 提起 这 事 是 与 男友 感情纠葛 想不开 但 男方 称 这家 团购 实惠 担心 女儿 被 人 控制 导致 与 家人 关系 不是 很 融洽 得知 母亲 被 父亲 杀死 看到 分别 就读 小二高 二 的 弟弟 和 妹妹 看到 有 这么 多 乘客 愿意 留下来 帮 我 作证 此时 夫妻 二人 继续 争吵 指责 因 对方 才 出 了 事故 贪玩 的 小鹏 让 李某 很 头痛 小孙子 被 开水 烫伤 我们 担心 她 无儿无女 一时 感触 加上 钱财 散尽 担心 不获 公司 续约 对 我 所犯 的 罪行 感到 很 后悔 看到 一些 患者 的 父母 对 此病 忧心忡忡 在 得知 对方 的 死讯 之后 在 得知 对方 的 死讯 之后 听到 男友 这样 说 被 这么 顶 了 一句 男友 的 身体状况 却 越来越 差 有时 会 对 改变 自己 的 日常 习惯 而 感到 憎恶 与 恼火 范 担心 孩子 哭闹 让 事情 败露 范 担心 孩子 哭闹 让 事情 败露 范 担心 孩子 哭闹 让 事情 败露 因 治疗 不 及时 导致 昏迷不醒 争吵 中 夏某 供述 因 怀疑 王某 与 其妻 有染 怀恨在心 夏某 供述 因 怀疑 王某 与 其妻 有染 怀恨在心 担心 孩子 被 拐跑 她 一 说 她 马上 要死 就 妥协 了 精心 准备 的 约会 泡汤 了 车里 的 他 也 忍不住 哭 出声 来 她 也 越来越 发愁 我 身体 越来越 不好 她 也 越来越 发愁 我 身体 越来越 不好 现在 他 父亲 已经 到 肺结核 晚期 了 母亲 又 受伤 但是 这种 以 亲情 为名 的 逼婚 优秀 的 小孟 迟迟 没有 交往 到 合适 的 男朋友 担心 我 一个 人 不 安全 家里 安排 相亲 母亲 频繁 帮 她 安排 相亲 谁 受伤 了 心情 都 肯定 不好 且 焦虑 谁 受伤 了 心情 都 肯定 不好 且 焦虑 听到 儿子 平安 的 消息 哪 知 电话 那头 的 托寿凯 一 听 妻子 要 起诉 离婚 竟然 情绪 挺 激动 你 知道 她 得 了 癌症 吗 但 又 担心 自己 年龄 偏 大 结果 赚 了 个 盆满 钵 溢 最 发愁 的 事 就是 每年 春运 一票 难求 如果 强行 让 他 改变 孩子 外公 外婆 说 爸妈 不 回来 过年 想到 无法 和 家人 交代 想到 无法 和 家人 交代 周润 莲对 这些 疑问 有点 气愤 小蕊 则 表现 得 越来越 反感 她 无法 面对 家人 为 医药 费用 发愁 时 的 绝望 担心 治不好 附近 孩子 的 上学 问题 让 家长 颇为 担心 附近 孩子 的 上学 问题 让 家长 颇为 担心 由于 担心 被 船主 开除 却 无法 靠礁 救人 她 担心 戴晨 笑 的 脚 长时间 不 运动会 萎缩 因 担心 组织 不让 他 随军 前进 担心 女儿 出事 最 让 陈 大爷 着急 的 就是 老伴儿 进食 困难 因为 担心 没法 上课 而是 一直 在 担心 弟弟 妹妹 的 学费 对于 自己 的 善行 不足挂齿 100 多只 流浪 动物 突然 没 了 去处 面对 村民 们 对 血汗钱 要 打水漂 的 焦虑 因 缺少 资金 中途 停工 陷入 淤泥 中 动弹不得 的 她 本 已 惊恐万分 高兴 的 是 女儿 终于 有救 了 高兴 的 是 女儿 终于 有救 了 但 如果 家里 实在 拿不出 钱 物品 丢失 后 小磊 的 无端 出走 更 让 马志敏 烦恼 因为 担心 孩子 被 冻坏 了 却 依然 不见 张勇 回家 今年 他们 再也 不用 为 春节 回家 买票 的 事 担心 了 有时候 不能 理解 他 的 意思 时 但 没有 任何 线索 让 王大妈 一家 十分 苦恼 见死不救 的 社会 冷漠 现象 连续 发生 令人担忧 见死不救 的 社会 冷漠 现象 连续 发生 令人担忧 回到 许昌 襄城县 检查 发现 是 尿毒症 担心 晚 高峰 期间 路况 不好 担心 晚 高峰 期间 路况 不好 因为 害怕 被 父母 知道 而 受罚 因为 害怕 老人 身体 吃不消 因为 害怕 老人 身体 吃不消 看到 积雪 滑落 看到 积雪 滑落 担心 误伤 路 人 担心 误伤 路 人 电话 里 徐 遵龙 得知 女儿 还 没回 学校 担心 母亲 消化 不好 担心 母亲 消化 不好 刚 听到 孙源隆 患病 时 当时 因为 病情 加重 第一次 见到 这种 情景 时 看着 丈夫 忙里忙外 自己 却 无所适从 可是 家里 还 没有 月饼 她 担心 丈夫 出事 其 妻子 还 在 担心 — — 这张 千万元 巨奖 彩票 究竟 能否 顺利 取回 我 最 担心 的 是 歹徒 伤及 前来 帮忙 的 村民 我 最 担心 的 是 歹徒 伤及 前来 帮忙 的 村民 眼见 9 月份 就要 开学 因为 别人 捐建 的 新 校舍 的 围墙 还 没盖 好 现在 她 最 担心 是 没人 愿意 接 她 的 教鞭 罗静 最 焦虑 的 问题 是 俊杰 做 移植手术 的 费用 还 没有 着落 家中 还有 12 岁 的 孩子 突遭 变故 突遭 变故 他 又 为 治疗 费用 而 犯愁 因为 等 不到 肝脏 在 这里 去世 的 女子 见 楼下 人 越来越 多 女子 见 楼下 人 越来越 多 但是 被 人 偷走 了 当 桂林 消防官兵 发现 小猫 后 同时 成 了 这幕 现实 剧 的 底色 妻子 病发 翠娜 因 丈夫 找 活儿 不顺 家庭 压力 过大 等 心情 烦躁 有时 一起 起哄 再 难受 也 比不上 兄弟 背叛 我 来得 伤心 再 难受 也 比不上 兄弟 背叛 我 来得 伤心 吴志侠 感到 生活 绝望 想到 自己 的 经历 和 现在 的 处境 男子 见小田 死命 不 从 忽然 满脸 悲怆 我 老婆 跟 别人 私奔 了 恐怕 就 没有 人为 他 作证 了 刘某 却 多次 拒绝 偷油 这事 太 让 人 痛恨 了 她 年 仅 1 岁 零两个 月 的 养女 啼哭 不止 因 女儿 哭闹 不止 她 因 邻居 侯某 曾 说 她 偷 过 其 钱 二是 不愿 看到 汀洋 同学 因 状告 无门 二是 不愿 看到 汀洋 同学 因 状告 无门 可 大笔 的 医疗费 让 生活 窘迫 的 宇阳 发愁 结果 就 被 几个 男 的 强行 拉到 房外 富鹏 因 嫌 父母 为 带 孩子 等 琐事 经常 唠叨 训斥 自己 而 心生 怨恨 富鹏 因 嫌 父母 为 带 孩子 等 琐事 经常 唠叨 训斥 自己 而 心生 怨恨 富鹏 因 嫌 父母 为 带 孩子 等 琐事 经常 唠叨 训斥 自己 而 心生 怨恨 在 广东 佛冈县 务工 的 吴 某 因为 赌博 输光 了 钱 两人 对 他 抛妻 弃子 潜逃 的 行为 充满 了 怨恨 两人 对 他 抛妻 弃子 潜逃 的 行为 充满 了 怨恨 陈郁 因 怀疑 姐夫 蓝强 与 其妻 有 不 正当 男女关系 两人 关系 化为泡影 两人 关系 化为泡影 小华 的 母亲 对 自己 的 疏忽 给 孩子 造成 的 伤害 一直 很 内疚 唯一 的 孩子 陈熙浩死 后 对 当年 冲动 后悔 万分 落网 后 听到 警笛声 就 心慌 气短 邵某 的 孩子 突然 生病 深感 懊恼 和 晦气 的 李某 不 甘心 这点 战利品 深感 懊恼 和 晦气 的 李某 不 甘心 这点 战利品 李 劲松 确实 为 保护 江豚 作出 了 贡献 面对 李某 的 无理取闹 十分 害怕 眼看 自己 堵 在 路上 不 动 地儿 前晚 他 和 妻子 因 琐事 发生争执 侯军 给 尤洪湧 劝酒 被 拒绝 5 天前 震惊 山村 的 自杀 案 因 没有 生活来源 女生 家人 反对 这门 婚事 由于 自己 不 愿意 伸手 向 父母 要钱 受骗 的 王 某 气愤 不已 两人 却 因 摔跤 结下 仇恨 家住 4 楼 的 两名 住户 更是 因为 大门 被 火 封堵 因 受害人 戴 某某 等 人 来到 该 面馆 后 在 桌前 大声 喧哗 浙江 台州 温岭 男子 刘某 因向 女友 求婚 不成 上海 虹桥 个别 旅客 因 航班 取消 情绪 激动 每天 老师 和 孩子 的 吵闹声 搞 得 我 退休 在家 的 母亲 烦躁 难熬 丈夫 与 32 岁 的 女网友 史 某 有 暧昧关系 牛某 无意间 发现 了 丈夫 与 史 某 的 情人 关系 赵兵 感觉 前方 的 一辆 红色 面包车 车速 过 慢 影响 了 自己 超车 因 扒窃 20 元 而 被 一 审判 处 有期徒刑 7 个 月 并 处罚金 1 千元 的 两名 男子 银 某华 和 刘 某忠 在 宜州市 看守所 里 懊悔不已 与 职员 发生 了 争执 他 说 自己 觉得 妻子 给 他 戴 了 绿帽子 感觉 窝囊 的 同时 一时 恼怒 才 持刀 捅 伤 了 刘轩 自己 省吃俭用 的 钱 白白地 送给 了 一个 连面 都 没见 过 的 小姐 而 二胎 带来 的 烦恼 在 我们 身边 也 有 而 忽略 对 老大 的 照顾 陈意 老 听 家人 在 为 林茜 工作 转正 的 事情 烦恼 担心 丈夫 有 什么 不测 因为 一些 小事 被 老师 一连 批评 了 5 次 由于 陈先生 并 不 在 本地 她 是 气不过 自己 的 丈夫 老 酗酒 才 轻生 的 担心 假 怀孕 的 事 被 陈鹏 发现 看到 孩子 这样 喊叫 一 开始 感到 挺 刺激 的 黄某 开始 感到 害怕 和 心软 苑 女士 向 记者 讲述 了 她 遭遇 拐狗 人 的 遭遇 从 得到 这个 消息 时 开始 可惜 婚姻 并 不 美满 发泄 自己 无处 赌博 的 愤懑 她 厌烦 记者 不停 打电话 骚扰 发生 这件 事 杜秀蓉闭 着眼 望天 他 还 没 懂事 吧 因毕 某 态度恶劣 小荷 哭 着 解释 婚姻 的 不幸 后悔 自己 当初 的 幼稚 中大奖 带给 自己 喜悦 的 同时 也 将 带来 不少 麻烦 由此 带来 的 尴尬 让 梦梦 非常 苦恼 由此 带来 的 尴尬 让 梦梦 非常 苦恼 发现 其中 有 半只 长 翅膀 的 昆虫 警方 的 冷漠 态度 令 苏珊娜 深感 失望 小华 害怕 谎言 被 拆穿 张 医生 至今 对 自己 的 鲁莽 行为 后悔不迭 对于 自己 造成 的 后果 懊恼不已 晏 某 因 女友 与其 分手 而 心生 怨恨 他 驾驶 一辆 三轮车 在 县城 上网 结束 后 仍感 郁闷 烦躁 校长 们 对 学校 老师 匮乏 的 现状 也 是 忧心忡忡 提起 找 代课老师 的 经历 看着 病床 上 的 儿子 家里 给 的 钱 不够 用 女友 提出 要 分手 自从 滕州 这 只 悲 催 的 哈士奇 被 当成 狼 对待 之后 家有 爱 宠 哈士奇 的 网友 深表 焦虑 毛荣 却 遭来 了 一顿 指责 作为 不好 的 榜样 让 妙 某 极为 沮丧 提娅 刚出生 的 女儿 艾娃 将 必须 称 这名 只 比 她 大 9 个 月 的 男婴 叫 舅舅 但 已经 与 山姆 分手 的 前女友 刚当 上 外婆 的 凯丽 却 有些 忧心忡忡 且许 某某 以为 史 某 打 其 的 小 报告 没有 发现 女孩 的 踪迹 看到 身体 残疾 的 儿子 整日 待在家里 不免 深深地 为 他 的 未来 忧虑 眼看 着 笋 菜 一天天 老去 胡洁 对 丈夫 的 冷漠 心灰意冷 提到 母亲 的 病 这样 的 偷工减料 可恨 更 可怕 这样 的 偷工减料 可恨 更 可怕 也 不见 丈夫 回来 提起 女儿 的 病情 霍曼 夫人 对 暴徒 毫无 人性 的 行为 十分 愤慨 并 当即 报警 他 表示 当 被 拒绝 时 我 的 律师 已经 建议 我 不要 再 与 卡 梅洛 特 公司 扯皮 此事 我 对 他们 的 疏忽 与 态度 感到 愤怒 杨 女士 星期一 得知 自己 中奖 后 而 盗贼 的 猖狂 也 让 小区 居民 感到 愤恨 而 盗贼 的 猖狂 也 让 小区 居民 感到 愤恨 最 让 萧吟 气愤 的 是 周梦晗 的 谎言 是 因 失去 女儿 伤心 过度 才 做出 的 母亲 的 抱怨 让 张耀 很 心酸 和 朋友 的 应酬 也 都 推掉 了 住 在 太原市 大马 村 的 车主 小王 遇到 了 郁闷 又 可笑 的 一件 事 他 的 面包车 被 小偷 光顾 了 每年 巨大 的 医药费 缺口 让 他 非常 发愁 病情 复发 后 即将 相见 的 喜悦 和 害怕 老赵 结婚 的 焦虑 除了 观念 冲突 让 老人 不快 男子 发现 未婚妻 与 他人 玩 暧昧 22 岁 的 大四 学生 魏娜 化名 错失 5 份 工作 但龙甲 得知 其 女友 被 堂弟 龙乙 强奸 后 想起 自己 的 女朋友 无故 离开 自己 驾驶员 年轻 被 打 了 那么 多 下 被 打 了 那么 多 下 心里 也 难受 无奈 还手 看到 照片 才 知道 自己 的 一部分 学费 是 爷爷 这样 挣来 的 陈某 发现 施某 与 潘 晶晶 之间 仍 有 来往 陈某 发现 施某 与 潘 晶晶 之间 仍 有 来往 丈夫 这么 嫌弃 自己 是不是 因为 新鲜 劲过 了 凶手 在 光天化日 之下 持刀 伤人 现在 人 突然 不见 了 最 担心 的 就是 他 遇到 什么 危险 潘某 称 自己 因为 生不出 儿子 由于 黄妇 的 69 岁 母亲 连日 无法 与 女儿 及 女婿 联络 到 西安 第二天 不慎 将 钱包 丢失 但 又 担心 她 下 地铁 后 不 安全 发现 只有 同村 的 王 某 已经 外出 去向不明 上个月 却 急性 脑梗 复发 谭 德林 因犯 抢劫罪 和 盗窃罪 被 判处 有期徒刑 13 年 隐瞒 真相 为了 不让 谭 德林 的 爷爷 伤心 这场 更加 意外 的 生离死别 因为 其他 兄弟 姊妹 无法 来汉 祝寿 大儿子 担心 会 冷场 这时 她 听到 从前 机器 盖处 传来 了 喵 喵 的 叫声 担心 继续 开车 会 伤害 小猫 看到 父母 都 不 在 身边 的 孩子 京广线 张滩 至 土岭 区间 再次发生 边坡 溜坍 山体 垮塌 和 泥石流 影响 造成 了 京广线 上下行 线 中断 行车 他 15 岁 的 儿子 袁学宇 2007 年 3 月 在 河南 郑州 打工 时 失踪 但 一无所获 祝国明 儿子 在 深圳 打工 时 意外 溺亡 一 想到 自己 将 不久 于 人世 一 想到 自己 将 不久 于 人世 一 想到 自己 将 不久 于 人世 不是 十分 理想 的 考分 曾一度 让 他 情绪 非常 低落 不是 十分 理想 的 考分 曾一度 让 他 情绪 非常 低落 养母 不幸病故 养母 不幸病故 妈妈 最 担心 我 身体 不好 妈妈 最 担心 我 身体 不好 很多 同学 想到 那里 自习 却 又 担心 复习资料 被盗 可 也 很 犯愁 孙子 考上 了 大学 担心 欧 某华会 伤到 老人 付巧 曾 向 章 飞 借钱 借车 承揽 工程 等等 但是 均 未遂 抢劫 钱财 后 竟 又 输光 害怕 事情 败露 遂 杀人 抛 尸据 了解 抢劫 钱财 后 竟 又 输光 害怕 事情 败露 遂 杀人 抛 尸据 了解 因 担心 被 告发 刘某 因 脸上 长有 青春痘 影响 容颜 隔三岔五 总要 到 张 某 的 理发店 里 纠缠 一番 担心 他 胡乱 贷款 败家 担心 他 胡乱 贷款 败家 担心 他 胡乱 贷款 败家 他 自 认为 平时 受到 了 店主 和 同事 的 排挤 和 愚弄 其妻 害怕 乐某 酒后 施暴 外出 躲避 他 已 得知 两个 好友 去世 已婚 的 赵先生 感情生活 并 不 十分 顺心 王某 觉得 妻子 的 朋友 陈某 挑拨 他们 夫妻 二人 感情 柯某 经常 找 陈某 麻烦 他 害怕 被 人 殴打 但是 颞音 nie 部 俗称 太阳穴 凹陷 让 这个 爱美 的 小伙子 真心 烦恼 吕某 认为 被 欺骗 感情 吕某 认为 感情 受到 了 欺骗 我 最 担心 的 是 以后 孩子 上 学会 被 别的 孩子 笑话 我 最 担心 的 是 以后 孩子 上 学会 被 别的 孩子 笑话 被 一名 陌生 男子 抱 起 扔进 嘉陵江 中 溺亡 得知 儿子 在 南非 遇害 而 孙 某要 发泄 的 是 他 因 赌博 欠债 的 郁闷 情绪 而 孙 某要 发泄 的 是 他 因 赌博 欠债 的 郁闷 情绪 儿子 却 为 索要 30 万元 房款 把 她 告上 法院 以前 也 有 发生 过 遗弃 孩子 又 后悔 了 谁知 元旦 这天 却 被 砸车 贼 砸 了 车 被 母亲 林 某兰女 殁 年 72 岁 责骂 他 和 李丽 从 下午 6 时 一直 吵 到 晚上 11 时 小熊 等 人 无 钱 可花 开始 犯愁 被告 称 服务员 身亡 是 意外 被告方 律师 称 3 名 被告 对 张海燕 的 去世 表示 惋惜 和 哀悼 被告 称 服务员 身亡 是 意外 被告方 律师 称 3 名 被告 对 张海燕 的 去世 表示 惋惜 和 哀悼 光头 哥 就 犯愁 了 被告人 胡 某某 与 被害人 谈 某 二人 因故 发生 矛盾 但 司机 没有 理会 他 因 郭 和 男友 吵架 眼见 别人 生意 这么 好 而 自己 每天 拼死拼活 才 勉强 能够 过日子 包内 巨额 现金 被盗 因 悲伤 过度 而 时至今日 发生 命案 更是 让 居民 感到 忧心忡忡 这 东西 吞下去 究竟 有没有 生命危险 金某 欠下 大量 赌债 未 还 男子 毛某 因为 工作 不顺 心情 烦躁 今年初 小芳 提出 分手 今年初 小芳 提出 分手 而且 双方 家属 见面 还 经常 恶言相向 一名 网民 在 微博上 轻蔑 地 写道 这 可能 是 中国 土豪 的 又 一次 炫富 之举 一名 网民 在 微博上 轻蔑 地 写道 这 可能 是 中国 土豪 的 又 一次 炫富 之举 于洋 还 在 重症 监护室 里 吴 女士 没有 想到 自己 贪吃 山楂 会 惹 上 这样 的 麻烦 周芬 时常 打电话 向 他 索要 生活费 并 一直 不停 地 劝说 外甥 不要 做 傻事 因 与 老婆 吵架 当时 儿子 在 崖 边 的 平台 上 内心 肯定 充满 了 绝望 和 害怕 希望 其他人 不要 再 随便 来 穿越 了 他 和 李顺 同年 考上 大学 其 妻子 由于 害怕 该 男子 的 暴力行为 女儿 的 身份 被 人 冒 用来 出国 而 自己 的 女儿 一直 未归 下落不明 到 小玲 提出 离婚 前 总共 欠下 了 百余万 的 债务 内外交困 的 生活 让 小玲 对 婚姻 彻底 失望 更 让 阿钟 恼火 的 是 雪儿 将 钱款 挥霍 在 包养 少爷 到 高档 娱乐场所 消费 上 小涵 长得 比 自己 美丽 也 比 自己 有钱 但 教唆 5 岁 小男孩 来 盗窃 我 更 痛心 但 教唆 5 岁 小男孩 来 盗窃 我 更 痛心 就业 歧视 不同 专业 情况 不一有 理工科 毕业 的 女 学生 对于 企业 或明 或 隐 的 就业 歧视 就 显得 有些 郁闷 就业 歧视 不同 专业 情况 不一有 理工科 毕业 的 女 学生 对于 企业 或明 或 隐 的 就业 歧视 就 显得 有些 郁闷 身上 的 钱 又 花光 了 失主 郭小姐 乘坐 K11 次列车 时 发现自己 的 书包 被 偷 包内 有 自己 刚 买来 的 一台 笔记本电脑 网速 又 慢下来 了 出于 对 传销 团伙 的 恐惧 我 就是 被 逼婚 的 命 我 就是 被 逼婚 的 命 偷窃 的 行为 确实 让 人 鄙夷 偷窃 的 行为 确实 让 人 鄙夷 出现 了 发烧 浑身 抽搐 口眼歪斜 等 现象 刚当 了 爸爸 的 郝瑞丰 还 没 来得及 欣喜 就 开始 犯愁 他 不 知道 自己 的 乳房 为什么 会 比 女性 还 大 还 因此 受 了 很多 委屈 和 嘲笑 听到 哭泣声 宠物 有 恶习 学校 管 纠正 我家 妮娜 太 活泼 了 他 发现自己 那天 偷 的 竟是 女朋友 家 由于 害怕 事情 败露 发现 推 着 尸体 的 变成 了 一个 小伙子 了 这种 乞讨 方式 太 恐怖 了 提起 相亲 他 就 反感 由于 学习成绩 差 一直 受到 班主任 的 鄙视 翠娜 因 丈夫 找 活儿 不顺 家庭 压力 过大 等 心情 烦躁 我 讨厌 这种 失去 自由 的 生活 更 让 她 苦恼 的 是 血糖高 得 吓人 如果 你们 因 遗弃 小孩 而 心感 内疚 向波 找到 张 迎春 借钱 救急 对方 没 借 -------------------------------------------------------------------------------- /visualization/中间文件/词频字典/ha.txt: -------------------------------------------------------------------------------- 1 | '感动', 33 2 | '人', 19 3 | '老人', 8 4 | '女儿', 8 5 | '帮助', 8 6 | '朋友', 8 7 | '爱情', 7 8 | '亲人', 7 9 | '行为', 6 10 | '孩子', 6 11 | '看到', 6 12 | '好', 6 13 | '先生', 6 14 | '儿子', 6 15 | '很多', 6 16 | '上', 6 17 | '丈夫', 5 18 | '赢得', 5 19 | '敬重', 5 20 | '却', 5 21 | '发现', 5 22 | '希望', 5 23 | '岁', 5 24 | '感激', 5 25 | '敬佩', 5 26 | '体贴', 5 27 | '邻居', 5 28 | '当时', 5 29 | '网友', 5 30 | '肯定', 5 31 | '医护人员', 5 32 | '爱心', 5 33 | '母爱', 5 34 | '生病', 5 35 | '中', 4 36 | '品格', 4 37 | '李梅', 4 38 | '刘军', 4 39 | '愧疚', 4 40 | '坚持', 4 41 | '两位', 4 42 | '学生', 4 43 | '心情', 4 44 | '羡慕', 4 45 | '在场', 4 46 | '令人', 4 47 | '最', 4 48 | '张', 4 49 | '害怕', 4 50 | '市民', 4 51 | '陈某', 4 52 | '震惊', 4 53 | '令', 4 54 | '感到', 4 55 | '执著', 4 56 | '社区', 4 57 | '妻子', 3 58 | '绝望', 3 59 | '所有人', 3 60 | '外遇', 3 61 | '已', 3 62 | '怀孕', 3 63 | '能够', 3 64 | '义务', 3 65 | '温暖', 3 66 | '病危', 3 67 | '关头', 3 68 | '念叨', 3 69 | '校长', 3 70 | '喜欢', 3 71 | '这种', 3 72 | '不能', 3 73 | '放弃', 3 74 | '执着', 3 75 | '事', 3 76 | '出生', 3 77 | '喜悦', 3 78 | '做', 3 79 | '真情', 3 80 | '照顾', 3 81 | '孙菊', 3 82 | '坚守', 3 83 | '信念', 3 84 | '90', 3 85 | '后悔', 3 86 | '女友', 3 87 | '不好', 3 88 | '母亲', 3 89 | '新郎', 3 90 | '杨恒', 3 91 | '誓言', 3 92 | '落泪', 3 93 | '得知', 3 94 | '想到', 3 95 | '英勇', 3 96 | '沮丧', 3 97 | '着急', 3 98 | '孙善英', 3 99 | '奉献', 3 100 | '乡亲们', 3 101 | '看着', 3 102 | '苏珊娜', 3 103 | '勇气', 3 104 | '赞叹', 3 105 | '郁闷', 3 106 | '大方', 3 107 | '孤独', 3 108 | '小', 3 109 | '潘', 3 110 | '倾心', 3 111 | '黄某', 2 112 | '张崇贞以', 2 113 | '不愿来', 2 114 | '现场', 2 115 | '潜伏', 2 116 | '已久', 2 117 | '第三者', 2 118 | '自觉', 2 119 | '不停', 2 120 | '道歉', 2 121 | '挽留', 2 122 | '十多年', 2 123 | '表演', 2 124 | '百岁老人', 2 125 | '百年好合', 2 126 | '爱情故事', 2 127 | '惧怕', 2 128 | '存在', 2 129 | '侵权', 2 130 | '风险', 2 131 | '便', 2 132 | '之间', 2 133 | '友好', 2 134 | '互助', 2 135 | '美好', 2 136 | '女孩', 2 137 | '留下', 2 138 | '失去', 2 139 | '钱包', 2 140 | '提起', 2 141 | '救', 2 142 | '好心人', 2 143 | '两个', 2 144 | '大爱', 2 145 | '车队', 2 146 | '当初', 2 147 | '方丽', 2 148 | '王华', 2 149 | '细心', 2 150 | '买', 2 151 | '觉得', 2 152 | '高兴', 2 153 | '前妻', 2 154 | '事后', 2 155 | '魏', 2 156 | '开诚', 2 157 | '打动', 2 158 | '新浪', 2 159 | '工作人员', 2 160 | '15', 2 161 | '年', 2 162 | '莹莹', 2 163 | '海斌', 2 164 | '无数', 2 165 | '事情', 2 166 | '真挚', 2 167 | '没', 2 168 | '付出', 2 169 | '受伤', 2 170 | '焦虑', 2 171 | '汪敬海', 2 172 | '创意', 2 173 | '满意', 2 174 | '这份', 2 175 | '热心', 2 176 | '勤俭节约', 2 177 | '致电', 2 178 | '本报', 2 179 | '热线', 2 180 | '殷永池', 2 181 | '深深感动', 2 182 | '可能', 2 183 | '痛心', 2 184 | '伟大', 2 185 | '勇敢', 2 186 | '孝心', 2 187 | '不少', 2 188 | '古道热肠', 2 189 | '洛阳', 2 190 | '丢失', 2 191 | '张龙', 2 192 | '拾金不昧', 2 193 | '男友', 2 194 | '真心', 2 195 | '村里', 2 196 | '赵晨明', 2 197 | '义举', 2 198 | '父亲', 2 199 | '失主', 2 200 | '万分', 2 201 | '器官', 2 202 | '忽略', 2 203 | '老大', 2 204 | '学校', 2 205 | '兴奋', 2 206 | '酒店', 2 207 | '所有', 2 208 | '导盲犬', 2 209 | '愤怒', 2 210 | '学习', 2 211 | '榜样', 2 212 | '妙', 2 213 | '极为', 2 214 | '无比', 2 215 | '消息', 2 216 | '惋惜', 2 217 | '相信', 2 218 | '变成', 2 219 | '时常', 2 220 | '樊', 2 221 | '照片', 2 222 | '发到', 2 223 | '圈里', 2 224 | '秀下', 2 225 | '恩爱', 2 226 | '回家', 2 227 | '来看', 2 228 | '小伙子', 2 229 | '崖', 2 230 | '平台', 2 231 | '内心', 2 232 | '充满', 2 233 | '其他人', 2 234 | '不要', 2 235 | '再', 2 236 | '随便', 2 237 | '穿越', 2 238 | '更', 2 239 | '阿钟', 2 240 | '恼火', 2 241 | '雪儿', 2 242 | '钱款', 2 243 | '挥霍', 2 244 | '包养', 2 245 | '少爷', 2 246 | '高档', 2 247 | '娱乐场所', 2 248 | '消费', 2 249 | '温馨', 1 250 | '话语', 1 251 | '谢德友', 1 252 | '镇定自若', 1 253 | '溺亡', 1 254 | '村民', 1 255 | '入殓', 1 256 | '场景', 1 257 | '再次', 1 258 | '撒手人寰', 1 259 | '陷入', 1 260 | '无限', 1 261 | '连个', 1 262 | '男朋友', 1 263 | '没谈过', 1 264 | '志愿者', 1 265 | '一言一行', 1 266 | '李世铭', 1 267 | '一家', 1 268 | '关键', 1 269 | '团聚', 1 270 | '热闹', 1 271 | '气氛', 1 272 | '古镇', 1 273 | '海州', 1 274 | '灯饰厂', 1 275 | '18', 1 276 | '绝笔', 1 277 | '信', 1 278 | '至今', 1 279 | '未归', 1 280 | '贫困家庭', 1 281 | '何等', 1 282 | '痛苦', 1 283 | '两人', 1 284 | '基本', 1 285 | '没吵', 1 286 | '过嘴', 1 287 | '接下来', 1 288 | '发生', 1 289 | '黄魁', 1 290 | '吾', 1 291 | '夫妇', 1 292 | '带来', 1 293 | '无与伦比', 1 294 | '字', 1 295 | '写', 1 296 | '江苏', 1 297 | '扬州', 1 298 | '75', 1 299 | '患癌', 1 300 | '夏居茂', 1 301 | '手表', 1 302 | '一封', 1 303 | '遗书', 1 304 | '出走', 1 305 | '如今', 1 306 | '康复', 1 307 | '出院', 1 308 | '尹宾怡', 1 309 | '哥哥', 1 310 | '5', 1 311 | '次', 1 312 | '骨髓移植', 1 313 | '深明大义', 1 314 | '团购', 1 315 | '强势', 1 316 | '眼神', 1 317 | '透出', 1 318 | '号友', 1 319 | '不舍', 1 320 | '眼前', 1 321 | '一幕', 1 322 | '惊呆', 1 323 | '小姑娘', 1 324 | '睡觉', 1 325 | '床铺', 1 326 | '砖块', 1 327 | '支撑', 1 328 | '替换', 1 329 | '下来', 1 330 | '旧', 1 331 | '门板', 1 332 | '垒', 1 333 | '起来', 1 334 | '大', 1 335 | '雄', 1 336 | '家人', 1 337 | '发挥', 1 338 | '领导', 1 339 | '知道', 1 340 | '徐连林', 1 341 | '事迹', 1 342 | '66', 1 343 | '跳入', 1 344 | '江水', 1 345 | '救人', 1 346 | '真是', 1 347 | '骆嘉文', 1 348 | '一纸', 1 349 | '婚书', 1 350 | '后悔不已', 1 351 | '恳求', 1 352 | '任何人', 1 353 | '帮忙', 1 354 | '全是', 1 355 | '富华', 1 356 | '亲自', 1 357 | '开车', 1 358 | '帮', 1 359 | '被子', 1 360 | '生活用品', 1 361 | '老', 1 362 | '来得', 1 363 | '子', 1 364 | '善解人意', 1 365 | '自信', 1 366 | '诧异', 1 367 | '出', 1 368 | '倾情', 1 369 | '献艺', 1 370 | '风雨无阻', 1 371 | '偏瘫', 1 372 | '回忆', 1 373 | '王林荣', 1 374 | '女童', 1 375 | '性侵', 1 376 | '频发', 1 377 | '今天', 1 378 | '实在', 1 379 | '情景', 1 380 | '工作', 1 381 | '了解', 1 382 | '晶晶', 1 383 | '荣华', 1 384 | '看出', 1 385 | '端倪', 1 386 | '王刚', 1 387 | '得太多', 1 388 | '特别', 1 389 | '带上', 1 390 | '同样', 1 391 | '骑行', 1 392 | '只会', 1 393 | '哭', 1 394 | '开口', 1 395 | '喊', 1 396 | '爸爸', 1 397 | '电话', 1 398 | '里', 1 399 | '焦急', 1 400 | '地说', 1 401 | '突遇', 1 402 | '车祸', 1 403 | '急需', 1 404 | '抢救', 1 405 | '曲家', 1 406 | '一家人', 1 407 | '善举', 1 408 | '真的', 1 409 | '太', 1 410 | '流泪', 1 411 | '大家', 1 412 | '难过', 1 413 | '担心', 1 414 | '组织', 1 415 | '不让', 1 416 | '随军', 1 417 | '前进', 1 418 | '曾经', 1 419 | '居民', 1 420 | '干', 1 421 | '脏', 1 422 | '累', 1 423 | '活', 1 424 | '过意不去', 1 425 | '举动', 1 426 | '亲生', 1 427 | '健在', 1 428 | '及时', 1 429 | '救起', 1 430 | '遇难', 1 431 | '那位', 1 432 | '小孩', 1 433 | '深感', 1 434 | '流浪汉', 1 435 | '捡', 1 436 | '交给', 1 437 | '民警', 1 438 | '总有', 1 439 | '温情', 1 440 | '身患', 1 441 | '重病', 1 442 | '会', 1 443 | '慷慨', 1 444 | '相助', 1 445 | '回想到', 1 446 | '白', 1 447 | '师傅', 1 448 | '先是', 1 449 | '两万多元', 1 450 | '懊恼不已', 1 451 | '而后', 1 452 | '失而复得', 1 453 | '欣喜若狂', 1 454 | '渺茫', 1 455 | '恐惧', 1 456 | '蒋冬姣', 1 457 | '那份', 1 458 | '孝顺', 1 459 | '乘客', 1 460 | '公认', 1 461 | '司机', 1 462 | '韦立忠', 1 463 | '殉职', 1 464 | '沉痛', 1 465 | '自由', 1 466 | '李小姐', 1 467 | '浪漫', 1 468 | '连续', 1 469 | '爷爷', 1 470 | '舅舅', 1 471 | '至亲', 1 472 | '蔡', 1 473 | '秋月', 1 474 | '见证', 1 475 | '孙源隆', 1 476 | '病魔', 1 477 | '作', 1 478 | '斗争', 1 479 | '过程', 1 480 | '一度', 1 481 | '低迷', 1 482 | '送', 1 483 | '小汽车', 1 484 | '相见', 1 485 | '罗静', 1 486 | '问题', 1 487 | '俊杰', 1 488 | '移植手术', 1 489 | '费用', 1 490 | '着落', 1 491 | '农民工', 1 492 | '安全', 1 493 | '保障', 1 494 | '心寒', 1 495 | '提包', 1 496 | '普通', 1 497 | '农村妇女', 1 498 | '做出', 1 499 | '捐献', 1 500 | '决定', 1 501 | '林兆强', 1 502 | '困境', 1 503 | '即将', 1 504 | '解决', 1 505 | '竟能', 1 506 | '下', 1 507 | '毒手', 1 508 | '怀疑', 1 509 | '家长', 1 510 | '不该', 1 511 | '心存', 1 512 | '盛赞', 1 513 | '大连', 1 514 | '大哥', 1 515 | '生命危险', 1 516 | '去', 1 517 | '一位', 1 518 | '素不相识', 1 519 | '坠楼', 1 520 | '崔泉山', 1 521 | '感动不已', 1 522 | '喊叫', 1 523 | '挺', 1 524 | '刺激', 1 525 | '心软', 1 526 | '发展', 1 527 | '徐某', 1 528 | '上学', 1 529 | '终于', 1 530 | '落实', 1 531 | '最令', 1 532 | '蒙特利尔', 1 533 | '国际', 1 534 | '烟花', 1 535 | '大赛', 1 536 | '家', 1 537 | '承诺', 1 538 | '今后', 1 539 | '全国', 1 540 | '如家', 1 541 | '敞开大门', 1 542 | '陈燕', 1 543 | '争取', 1 544 | '权益', 1 545 | '普达措', 1 546 | '国家', 1 547 | '公园', 1 548 | '巧妙', 1 549 | '拒绝', 1 550 | '宏宏', 1 551 | '抵达', 1 552 | '每件', 1 553 | '衣服', 1 554 | '买下来', 1 555 | '长假', 1 556 | '期间', 1 557 | '堵', 1 558 | '高速', 1 559 | '路上', 1 560 | '不已', 1 561 | '病床', 1 562 | '冷然', 1 563 | '经历', 1 564 | '吃惊', 1 565 | '面对', 1 566 | '处理', 1 567 | '方法', 1 568 | '现在', 1 569 | '已经', 1 570 | '接受', 1 571 | '提娅', 1 572 | '14', 1 573 | '生女', 1 574 | '事实', 1 575 | '外孙女', 1 576 | '身体', 1 577 | '残疾', 1 578 | '整日', 1 579 | '待在家里', 1 580 | '不免', 1 581 | '深深地', 1 582 | '未来', 1 583 | '忧虑', 1 584 | '更令', 1 585 | '有着', 1 586 | '世界', 1 587 | '臭', 1 588 | '花之称', 1 589 | '泰坦', 1 590 | '魔芋', 1 591 | '日前', 1 592 | '瑞士', 1 593 | '盛开', 1 594 | '好人', 1 595 | '突然', 1 596 | '离去', 1 597 | '卢应', 1 598 | '相', 1 599 | '破解', 1 600 | '数学', 1 601 | '难题', 1 602 | '精神', 1 603 | '杭州', 1 604 | '连发', 1 605 | '两起', 1 606 | '飙车', 1 607 | '撞人案', 1 608 | '郭佳诺', 1 609 | '归来', 1 610 | '住', 1 611 | '太原市', 1 612 | '大马', 1 613 | '村', 1 614 | '车主', 1 615 | '小王', 1 616 | '遇到', 1 617 | '可笑', 1 618 | '一件', 1 619 | '面包车', 1 620 | '小偷', 1 621 | '光顾', 1 622 | '街坊', 1 623 | '孝子', 1 624 | '救母', 1 625 | '丧命', 1 626 | '感', 1 627 | '减刑', 1 628 | '先后', 1 629 | '叫来', 1 630 | '3', 1 631 | '一起', 1 632 | '手术费', 1 633 | '埋单', 1 634 | '开心', 1 635 | '听到', 1 636 | '阿珍', 1 637 | '亲密', 1 638 | '通话', 1 639 | '顿生', 1 640 | '生日', 1 641 | '兄弟', 1 642 | '姊妹', 1 643 | '因事', 1 644 | '太远', 1 645 | '无法', 1 646 | '来汉', 1 647 | '理解', 1 648 | '一片苦心', 1 649 | '丢包', 1 650 | '多次', 1 651 | '安排', 1 652 | '人来', 1 653 | '医药费', 1 654 | '颞音', 1 655 | 'nie', 1 656 | '部', 1 657 | '俗称', 1 658 | '太阳穴', 1 659 | '凹陷', 1 660 | '爱美', 1 661 | '烦恼', 1 662 | '先', 1 663 | '100', 1 664 | '元', 1 665 | '过年', 1 666 | '女', 1 667 | '走失', 1 668 | '找到', 1 669 | '割', 1 670 | '传言', 1 671 | '频繁', 1 672 | '微信', 1 673 | '微博上', 1 674 | '流传', 1 675 | '掌', 1 676 | '掴', 1 677 | '郑', 1 678 | '爱国', 1 679 | '厚厚的', 1 680 | '衣被', 1 681 | '一沓', 1 682 | '沓', 1 683 | '现金', 1 684 | '办假', 1 685 | '行驶证', 1 686 | '犯罪', 1 687 | '小红', 1 688 | '返回', 1 689 | '宿舍', 1 690 | '不对劲', 1 691 | '小康生活', 1 692 | '甚', 1 693 | '周围', 1 694 | '女性朋友', 1 695 | '收到', 1 696 | '节日', 1 697 | '礼物', 1 698 | '主人', 1 699 | '驴', 1 700 | '丢', 1 701 | '一定', 1 702 | '上火', 1 703 | '生意', 1 704 | '渐', 1 705 | '有起色', 1 706 | '苏永青', 1 707 | '牢记', 1 708 | '对方', 1 709 | '表示', 1 710 | '免费', 1 711 | '车', 1 712 | '一次', 1 713 | '封釉', 1 714 | '当天', 1 715 | '是因为', 1 716 | '护理员', 1 717 | '耳光', 1 718 | '书', 1 719 | '当年', 1 720 | '采用', 1 721 | '试管婴儿', 1 722 | '方式', 1 723 | '生下', 1 724 | '竟是', 1 725 | '前男友', 1 726 | '网速', 1 727 | '慢下来', 1 728 | '偷窃', 1 729 | '确实', 1 730 | '鄙夷', 1 731 | '运气', 1 732 | '之外', 1 733 | '老师', 1 734 | '仍令', 1 735 | '小德', 1 736 | '这一', 1 737 | '合格', 1 738 | '成绩', 1 739 | '分外', 1 740 | '具有', 1 741 | '超凡', 1 742 | '记忆力', 1 743 | '惊喜', 1 744 | '林后', 1 745 | '领', 1 746 | '表哥', 1 747 | '孙某', 1 748 | '彩票', 1 749 | '500', 1 750 | '万元', 1 751 | '大奖', 1 752 | '工资', 1 753 | '就让', 1 754 | '离职', 1 755 | '并用', 1 756 | '拳头', 1 757 | '茶壶', 1 758 | '梦想', 1 759 | -------------------------------------------------------------------------------- /visualization/中间文件/词频字典/ji.txt: -------------------------------------------------------------------------------- 1 | '吃惊', 7 2 | '惊讶', 5 3 | '人', 5 4 | '小女孩', 3 5 | '民警', 3 6 | '突如其来', 3 7 | '男友', 2 8 | '当时', 2 9 | '一幕', 2 10 | '诧异', 2 11 | '得知', 2 12 | '仅仅', 2 13 | '12', 2 14 | '岁', 2 15 | '3', 2 16 | '发现', 2 17 | '震惊', 2 18 | '视频', 2 19 | '无法', 2 20 | '小雯', 1 21 | '误认', 1 22 | '对方', 1 23 | '邱姓', 1 24 | '赴约', 1 25 | '公司', 1 26 | '尾牙', 1 27 | '宴上', 1 28 | '听到', 1 29 | '这一', 1 30 | '决定', 1 31 | '格兰特', 1 32 | '邻居', 1 33 | '指控', 1 34 | '性侵', 1 35 | '学院', 1 36 | '纪委书记', 1 37 | '谈到', 1 38 | '段雄春涉', 1 39 | '婚外情', 1 40 | '遭', 1 41 | '举报', 1 42 | '事情', 1 43 | '才', 1 44 | '获释', 1 45 | '2', 1 46 | '天', 1 47 | '毒品', 1 48 | '一连串', 1 49 | '疯狂', 1 50 | '撞击', 1 51 | '周围', 1 52 | '路', 1 53 | '目瞪口呆', 1 54 | '好心人', 1 55 | '眼前', 1 56 | '惊呆', 1 57 | '两个', 1 58 | '小姑娘', 1 59 | '睡觉', 1 60 | '床铺', 1 61 | '砖块', 1 62 | '支撑', 1 63 | '替换', 1 64 | '下来', 1 65 | '旧', 1 66 | '门板', 1 67 | '垒', 1 68 | '起来', 1 69 | '颜色', 1 70 | '鲜艳', 1 71 | '用料', 1 72 | '独特', 1 73 | '创意', 1 74 | '非凡', 1 75 | '自信', 1 76 | '张立祥', 1 77 | '女儿', 1 78 | '张红', 1 79 | '接到', 1 80 | '车站', 1 81 | '打来', 1 82 | '电话', 1 83 | '检查', 1 84 | '王君', 1 85 | '应聘', 1 86 | '买', 1 87 | '完菜', 1 88 | '回家', 1 89 | '一名', 1 90 | '掉', 1 91 | '下', 1 92 | '站台', 1 93 | '钱包', 1 94 | '流浪汉', 1 95 | '捡', 1 96 | '交给', 1 97 | '变化', 1 98 | '每个', 1 99 | '纪晓鹏', 1 100 | '精力充沛', 1 101 | '王灵丽', 1 102 | '丝毫', 1 103 | '避讳', 1 104 | '谈论', 1 105 | '病情', 1 106 | '这番话', 1 107 | '记者', 1 108 | '第一次', 1 109 | '织出', 1 110 | '云锦', 1 111 | '织品', 1 112 | '优等品', 1 113 | '听说', 1 114 | '救人', 1 115 | '事', 1 116 | '孩子', 1 117 | '请', 1 118 | '进', 1 119 | '校长室', 1 120 | '是不是', 1 121 | '犯', 1 122 | '错误', 1 123 | '不满', 1 124 | '室友', 1 125 | '经常', 1 126 | '开玩笑', 1 127 | '面对', 1 128 | '李某', 1 129 | '初中', 1 130 | '没', 1 131 | '毕业', 1 132 | '回到', 1 133 | '工地', 1 134 | '回想', 1 135 | '之前', 1 136 | '儿子', 1 137 | '房间', 1 138 | '却', 1 139 | '棺内', 1 140 | '尸身', 1 141 | '依然', 1 142 | '完整', 1 143 | '称', 1 144 | '判决', 1 145 | '感到', 1 146 | '愤怒', 1 147 | '情形', 1 148 | '游客', 1 149 | '不已', 1 150 | '冷然', 1 151 | '学习', 1 152 | '经历', 1 153 | '一段', 1 154 | '名为', 1 155 | '史上', 1 156 | '最', 1 157 | '厉害', 1 158 | '小孩', 1 159 | '打架', 1 160 | '各大', 1 161 | '网站', 1 162 | '上', 1 163 | '疯传', 1 164 | '连体', 1 165 | '双胞胎', 1 166 | '能活', 1 167 | '大', 1 168 | '医学专家', 1 169 | '深感', 1 170 | '线索', 1 171 | '所有', 1 172 | '兴奋异常', 1 173 | '先后', 1 174 | '叫来', 1 175 | '一起', 1 176 | '手术费', 1 177 | '埋单', 1 178 | '竟是', 1 179 | '一只', 1 180 | '蟑螂', 1 181 | '作怪', 1 182 | '宝马', 1 183 | '5', 1 184 | '系豪车', 1 185 | '砸碎', 1 186 | '玻璃', 1 187 | '有时', 1 188 | '泡菜', 1 189 | '度日', 1 190 | '老乡', 1 191 | '家', 1 192 | '只', 1 193 | '巨无霸', 1 194 | '甲鱼', 1 195 | '不小', 1 196 | '没有勇气', 1 197 | '去', 1 198 | '追求', 1 199 | '动心', 1 200 | '女孩子', 1 201 | '举手', 1 202 | '穿衣', 1 203 | '正在', 1 204 | '变成', 1 205 | '活', 1 206 | '雕像', 1 207 | '母亲', 1 208 | '玛丽恩', 1 209 | '说', 1 210 | '医生', 1 211 | '告诉', 1 212 | '我西妮', 1 213 | '患有', 1 214 | '这种', 1 215 | '可怕', 1 216 | '怪病', 1 217 | -------------------------------------------------------------------------------- /visualization/中间文件/词频字典/nu.txt: -------------------------------------------------------------------------------- 1 | '发现', 17 2 | '妻子', 17 3 | '气愤', 14 4 | '愤怒', 13 5 | '男子', 11 6 | '儿子', 9 7 | '女儿', 8 8 | '看到', 8 9 | '行为', 8 10 | '拒绝', 8 11 | '丈夫', 7 12 | '听到', 6 13 | '父亲', 6 14 | '女友', 6 15 | '表示', 5 16 | '离婚', 5 17 | '争吵', 5 18 | '对方', 5 19 | '上', 5 20 | '人', 5 21 | '家人', 4 22 | '孩子', 4 23 | '中', 4 24 | '愤慨', 4 25 | '不已', 4 26 | '感到', 4 27 | '恼火', 4 28 | '老人', 4 29 | '听', 4 30 | '认为', 4 31 | '再次', 4 32 | '居然', 4 33 | '遭到', 4 34 | '刘某', 4 35 | '发生', 4 36 | '遭遇', 4 37 | '强奸', 4 38 | '得知', 4 39 | '公司', 4 40 | '内地', 4 41 | '更', 4 42 | '称', 3 43 | '见', 3 44 | '朋友', 3 45 | '说', 3 46 | '想', 3 47 | '网友', 3 48 | '提出', 3 49 | '分手', 3 50 | '感觉', 3 51 | '女士', 3 52 | '要钱', 3 53 | '司机', 3 54 | '背叛', 3 55 | '阿宝', 3 56 | '偷', 3 57 | '钱', 3 58 | '不肯', 3 59 | '家中', 3 60 | '岁', 3 61 | '觉得', 3 62 | '告知', 3 63 | '十分', 3 64 | '已经', 3 65 | '说起', 3 66 | '记者', 3 67 | '车', 3 68 | '骗', 3 69 | '不少', 3 70 | '女性', 3 71 | '母亲', 3 72 | '欺骗', 3 73 | '一起', 3 74 | '没想到', 2 75 | '数落', 2 76 | '完全', 2 77 | '每次', 2 78 | '关系', 2 79 | '工作人员', 2 80 | '多次', 2 81 | '照片', 2 82 | '未果', 2 83 | '一名', 2 84 | '里', 2 85 | '房子', 2 86 | '阿强', 2 87 | '前男友', 2 88 | '看见', 2 89 | '暧昧', 2 90 | '车里', 2 91 | '医院', 2 92 | '对面', 2 93 | '宾馆', 2 94 | '开房', 2 95 | '居住', 2 96 | '不会', 2 97 | '却', 2 98 | '2', 2 99 | '现金', 2 100 | '见面', 2 101 | '李先生', 2 102 | '龙', 2 103 | '一下', 2 104 | '化名', 2 105 | '元', 2 106 | '袁', 2 107 | '同居', 2 108 | '事', 2 109 | '残忍', 2 110 | '一定', 2 111 | '欲', 2 112 | '竟', 2 113 | '怀疑', 2 114 | '生活', 2 115 | '琐事', 2 116 | '小', 2 117 | '某某', 2 118 | '夫妇', 2 119 | '外遇', 2 120 | '杨某', 2 121 | '23', 2 122 | '日竟', 2 123 | '亮出', 2 124 | '改造', 2 125 | '手枪', 2 126 | '逼', 2 127 | '哥哥', 2 128 | '给钱', 2 129 | '断然拒绝', 2 130 | '一顿', 2 131 | '抢劫', 2 132 | '求婚', 2 133 | '史', 2 134 | '萱', 2 135 | '持刀', 2 136 | '捅', 2 137 | '伤', 2 138 | '才', 2 139 | '意外', 2 140 | '受伤', 2 141 | '便', 2 142 | '费', 2 143 | '东西', 2 144 | '女朋友', 2 145 | '面对', 2 146 | '两', 2 147 | '发泄', 2 148 | '愤懑', 2 149 | '这名', 2 150 | '前', 2 151 | '严重', 2 152 | '一事', 2 153 | '指责', 2 154 | '网民', 2 155 | '广告', 2 156 | '羞辱', 2 157 | '人为', 2 158 | '蝗虫', 2 159 | '小兰', 2 160 | '不料', 2 161 | '意识', 2 162 | '恶作剧', 2 163 | '被划', 2 164 | '动手', 2 165 | '抢', 2 166 | '乘客', 2 167 | '女', 2 168 | '耳光', 2 169 | '李某', 2 170 | '吕某', 2 171 | '感情', 2 172 | '肇事', 2 173 | '打伤', 2 174 | '快递', 2 175 | '推诿', 2 176 | '并非', 1 177 | '亲生', 1 178 | '学姐', 1 179 | '放鸽子', 1 180 | '更加', 1 181 | '四个', 1 182 | '伺候', 1 183 | '照顾', 1 184 | '小儿子', 1 185 | '胳膊', 1 186 | '打断', 1 187 | '岳母', 1 188 | '不停', 1 189 | '配不上', 1 190 | '长辈', 1 191 | '汤', 1 192 | '经常', 1 193 | '站', 1 194 | '一边', 1 195 | '女婿', 1 196 | '吴某', 1 197 | '小梅', 1 198 | '不念旧情', 1 199 | '约会', 1 200 | '用钱', 1 201 | '维系', 1 202 | '超市', 1 203 | '内', 1 204 | '先前', 1 205 | '女子', 1 206 | '手持', 1 207 | '寻人', 1 208 | '大雄', 1 209 | '电话', 1 210 | '再娶', 1 211 | '妈妈', 1 212 | '陌生', 1 213 | '衣衫不整', 1 214 | '卧室', 1 215 | '结婚', 1 216 | '卖掉', 1 217 | '买', 1 218 | '阿菊', 1 219 | '家室', 1 220 | '性格不合', 1 221 | '跟随', 1 222 | '去', 1 223 | '深圳', 1 224 | '借上', 1 225 | '厕所', 1 226 | '逃离', 1 227 | '洞井', 1 228 | '派出所', 1 229 | '糊弄', 1 230 | '大多数', 1 231 | '奇葩', 1 232 | '婚礼', 1 233 | '对阳', 1 234 | '疯狂', 1 235 | '举动', 1 236 | '手里', 1 237 | '抓', 1 238 | '拉扯', 1 239 | '断裂', 1 240 | '半截', 1 241 | '金项链', 1 242 | '有时', 1 243 | '会', 1 244 | '改变', 1 245 | '日常', 1 246 | '习惯', 1 247 | '憎恶', 1 248 | '被捕', 1 249 | '警诫', 1 250 | '下称', 1 251 | '挑衅', 1 252 | '个别', 1 253 | '讹人', 1 254 | '新闻', 1 255 | '张某', 1 256 | '反复', 1 257 | '录音', 1 258 | '道观', 1 259 | '住持', 1 260 | '调戏', 1 261 | '微信', 1 262 | '几条', 1 263 | '信息内容', 1 264 | '忍不住', 1 265 | '哭', 1 266 | '出声', 1 267 | '女人', 1 268 | '一阵', 1 269 | '臭骂', 1 270 | '周润', 1 271 | '莲对', 1 272 | '疑问', 1 273 | '有点', 1 274 | '少女', 1 275 | '见到', 1 276 | '不断', 1 277 | '泣诉', 1 278 | '遭', 1 279 | '非礼', 1 280 | '简单', 1 281 | '口头', 1 282 | '说教', 1 283 | '回忆起', 1 284 | '一段', 1 285 | '口中', 1 286 | '喊', 1 287 | '丢下', 1 288 | '扔', 1 289 | '公里', 1 290 | '外', 1 291 | '马路边', 1 292 | '装满', 1 293 | '包', 1 294 | '不翼而飞', 1 295 | '仍', 1 296 | '这段', 1 297 | '约', 1 298 | '50', 1 299 | '秒', 1 300 | '虐猫', 1 301 | '视频', 1 302 | '网络', 1 303 | '热传', 1 304 | '嫌弃', 1 305 | '长相', 1 306 | '不符', 1 307 | '交往', 1 308 | '不想', 1 309 | '突然', 1 310 | '反悔', 1 311 | '面子', 1 312 | '张', 1 313 | '当晚', 1 314 | '家', 1 315 | '借宿', 1 316 | '内心', 1 317 | '窝火', 1 318 | '害怕', 1 319 | '伤害', 1 320 | '便用', 1 321 | '盖子', 1 322 | '敲', 1 323 | '头部', 1 324 | '孙子', 1 325 | '21', 1 326 | '某权', 1 327 | '拒不回答', 1 328 | '心甘情愿', 1 329 | '老汉', 1 330 | '河北', 1 331 | '私奔', 1 332 | '湖南', 1 333 | '见小田', 1 334 | '死命', 1 335 | '撞破', 1 336 | '这件', 1 337 | '小学', 1 338 | '谈恋爱', 1 339 | '事情', 1 340 | '王大爷', 1 341 | '制止', 1 342 | '一家', 1 343 | '三口', 1 344 | '杀', 1 345 | '得到', 1 346 | '应有', 1 347 | '惩罚', 1 348 | '谩骂', 1 349 | '实施', 1 350 | '毛手毛脚', 1 351 | '可小甜', 1 352 | '来到', 1 353 | '老人院', 1 354 | '偷窃', 1 355 | '二是', 1 356 | '不愿', 1 357 | '汀洋', 1 358 | '同学', 1 359 | '状告', 1 360 | '无门', 1 361 | '前台', 1 362 | '抽屉', 1 363 | '没钱', 1 364 | '扎', 1 365 | '正', 1 366 | '地用', 1 367 | '刀', 1 368 | '藏', 1 369 | '野驴', 1 370 | '身上', 1 371 | '割肉', 1 372 | '查获', 1 373 | '4', 1 374 | '名', 1 375 | '女童', 1 376 | '贩毒分子', 1 377 | '当作', 1 378 | '运毒', 1 379 | '工具', 1 380 | '从事', 1 381 | '运输', 1 382 | '毒品', 1 383 | '犯罪活动', 1 384 | '极为', 1 385 | '狠狠', 1 386 | '修理', 1 387 | '小雪', 1 388 | '陈郁', 1 389 | '姐夫', 1 390 | '蓝强', 1 391 | '其妻', 1 392 | '正当', 1 393 | '男女关系', 1 394 | '教育', 1 395 | '抚养', 1 396 | '问题', 1 397 | '激烈', 1 398 | '想起', 1 399 | '周俊', 1 400 | '种种', 1 401 | '不好', 1 402 | '尊重', 1 403 | '竟能', 1 404 | '下', 1 405 | '毒手', 1 406 | '养', 1 407 | '三', 1 408 | '住', 1 409 | '房屋里', 1 410 | '但许', 1 411 | '帮助', 1 412 | '崔某', 1 413 | '双方', 1 414 | '争执不下', 1 415 | '安某', 1 416 | '贼', 1 417 | '光顾', 1 418 | '附近', 1 419 | '居民', 1 420 | '听闻', 1 421 | '枪杀案', 1 422 | '进入', 1 423 | '民房', 1 424 | '未盗', 1 425 | '财物', 1 426 | '小成', 1 427 | '到来', 1 428 | '激起', 1 429 | '死者家属', 1 430 | '庭外', 1 431 | '柯家', 1 432 | '家属', 1 433 | '痛打', 1 434 | '受骗', 1 435 | '王', 1 436 | '安', 1 437 | '师傅', 1 438 | '一个二十', 1 439 | '认购', 1 440 | '户', 1 441 | '上当', 1 442 | '浙江', 1 443 | '台州', 1 444 | '温岭', 1 445 | '因向', 1 446 | '这次', 1 447 | '失败', 1 448 | '告终', 1 449 | '颜面', 1 450 | '尽失', 1 451 | '32', 1 452 | '女网友', 1 453 | '暧昧关系', 1 454 | '牛某', 1 455 | '无意间', 1 456 | '情人', 1 457 | '三名', 1 458 | '街头', 1 459 | '遇见', 1 460 | '情敌', 1 461 | '发生争执', 1 462 | '矢口否认', 1 463 | '戴', 1 464 | '绿帽子', 1 465 | '窝囊', 1 466 | '一时', 1 467 | '恼怒', 1 468 | '刘轩', 1 469 | '汇款', 1 470 | '依旧', 1 471 | '未到', 1 472 | '账', 1 473 | '消息', 1 474 | '薛先生', 1 475 | '郁闷', 1 476 | '这才', 1 477 | '上当受骗', 1 478 | '门外', 1 479 | '砸门', 1 480 | '死活', 1 481 | '同意', 1 482 | '退钱', 1 483 | '爷爷', 1 484 | '罗玉莲', 1 485 | '这位', 1 486 | '经理', 1 487 | '说法', 1 488 | '当时', 1 489 | '死不承认', 1 490 | '现在', 1 491 | '这块', 1 492 | '属于', 1 493 | '别人', 1 494 | '朱', 1 495 | '老太', 1 496 | '吓倒', 1 497 | '半天', 1 498 | '起不来', 1 499 | '一点', 1 500 | '物业公司', 1 501 | '承担', 1 502 | '九牛二虎之力', 1 503 | '交换', 1 504 | '质问', 1 505 | '乱动', 1 506 | '担心', 1 507 | '吃亏', 1 508 | '陀螺', 1 509 | '阻挠', 1 510 | '苑', 1 511 | '讲述', 1 512 | '拐狗', 1 513 | '儿媳妇', 1 514 | '检点', 1 515 | '即将', 1 516 | '领到', 1 517 | '被告方', 1 518 | '互相推诿', 1 519 | '13', 1 520 | '日晚', 1 521 | '杨先生', 1 522 | '严加', 1 523 | '看管', 1 524 | '无处', 1 525 | '赌博', 1 526 | '开水烫', 1 527 | '恼羞成怒', 1 528 | '普达措', 1 529 | '国家', 1 530 | '公园', 1 531 | '巧妙', 1 532 | '理由', 1 533 | '姚在', 1 534 | '数日', 1 535 | '留下', 1 536 | '日记', 1 537 | '中有', 1 538 | '一段话', 1 539 | '利用', 1 540 | '结账', 1 541 | '单据', 1 542 | '7000', 1 543 | '因毕', 1 544 | '态度恶劣', 1 545 | '出言', 1 546 | '辱骂', 1 547 | '该名', 1 548 | '本月', 1 549 | '6', 1 550 | '日', 1 551 | '下午', 1 552 | '酒后', 1 553 | '冲突', 1 554 | '半只', 1 555 | '长', 1 556 | '翅膀', 1 557 | '昆虫', 1 558 | '晓云', 1 559 | '车上', 1 560 | '哭诉', 1 561 | '叔父', 1 562 | '暴打', 1 563 | '判决', 1 564 | '诧异', 1 565 | '手机', 1 566 | '彻底', 1 567 | '报废', 1 568 | '目前', 1 569 | '排除', 1 570 | '材料', 1 571 | '致癌', 1 572 | '可能性', 1 573 | '徐伟', 1 574 | '邻居', 1 575 | '挪车', 1 576 | '产生矛盾', 1 577 | '处理', 1 578 | '方法', 1 579 | '毛荣', 1 580 | '遭来', 1 581 | '可能', 1 582 | '装', 1 583 | '辣椒酱', 1 584 | '罐子', 1 585 | '摔坏', 1 586 | '黄某', 1 587 | '胡某', 1 588 | '竟然', 1 589 | '卖淫女', 1 590 | '嘲讽', 1 591 | '失去知觉', 1 592 | '小小年纪', 1 593 | '怀上', 1 594 | '身孕', 1 595 | '二人', 1 596 | '再次发生', 1 597 | '言语', 1 598 | '刘巧巧', 1 599 | '回到', 1 600 | '问话', 1 601 | '立即', 1 602 | '变得', 1 603 | '起来', 1 604 | '霍曼', 1 605 | '夫人', 1 606 | '暴徒', 1 607 | '毫无', 1 608 | '人性', 1 609 | '当即', 1 610 | '报警', 1 611 | '律师', 1 612 | '建议', 1 613 | '不要', 1 614 | '再', 1 615 | '卡', 1 616 | '梅洛', 1 617 | '特', 1 618 | '扯皮', 1 619 | '此事', 1 620 | '疏忽', 1 621 | '态度', 1 622 | '对夏', 1 623 | '事件', 1 624 | '产生', 1 625 | '恶劣影响', 1 626 | '严重后果', 1 627 | '最', 1 628 | '萧吟', 1 629 | '周梦晗', 1 630 | '谎言', 1 631 | '期间', 1 632 | '陈', 1 633 | '出轨', 1 634 | '同胞', 1 635 | '自我', 1 636 | '防卫', 1 637 | '缺失', 1 638 | '心痛', 1 639 | '微', 1 640 | '长沙', 1 641 | '表达', 1 642 | '赵晓明', 1 643 | '当庭', 1 644 | '翻供', 1 645 | '唐', 1 646 | '先生', 1 647 | '先', 1 648 | '拐杖', 1 649 | '未婚妻', 1 650 | '玩', 1 651 | '爱犬', 1 652 | '令', 1 653 | '徐某', 1 654 | '伤心', 1 655 | '男', 1 656 | '破口大骂', 1 657 | '保洁员', 1 658 | '干', 1 659 | '同行', 1 660 | '上前', 1 661 | '站务员', 1 662 | '阿珍', 1 663 | '亲密', 1 664 | '通话', 1 665 | '顿生', 1 666 | '宿一室', 1 667 | '亲热', 1 668 | '之声', 1 669 | '林', 1 670 | '饭店', 1 671 | '点评', 1 672 | '网站', 1 673 | '连续', 1 674 | '差评', 1 675 | '不乏', 1 676 | '诋毁', 1 677 | '之词', 1 678 | '一位', 1 679 | '26', 1 680 | '中国', 1 681 | '游客', 1 682 | 'SNCF', 1 683 | '办公室', 1 684 | '起火', 1 685 | '冒出', 1 686 | '浓烟', 1 687 | '惊吓', 1 688 | '闹', 1 689 | '自杀', 1 690 | '这是', 1 691 | '范德财', 1 692 | '两人', 1 693 | '奸情', 1 694 | '造成', 1 695 | '河南', 1 696 | '周口', 1 697 | '市民', 1 698 | '张秋生', 1 699 | '谈起', 1 700 | '一个月', 1 701 | '围观', 1 702 | '当地政府', 1 703 | '强征', 1 704 | '农民', 1 705 | '土地', 1 706 | '莫名', 1 707 | '依然', 1 708 | '有人', 1 709 | '一拳', 1 710 | '好', 1 711 | '一幕', 1 712 | '撞', 1 713 | '车子', 1 714 | '往后', 1 715 | '倒车', 1 716 | '想要', 1 717 | '溜走', 1 718 | '反映', 1 719 | '幼儿园', 1 720 | '小朋友', 1 721 | '臭', 1 722 | '袜塞到', 1 723 | '嘴里', 1 724 | '万', 1 725 | '想不到', 1 726 | '报失', 1 727 | '房产证', 1 728 | '悄悄', 1 729 | '卖', 1 730 | '带', 1 731 | '回家', 1 732 | '小肖', 1 733 | '受到', 1 734 | '挂', 1 735 | '窗外', 1 736 | '5', 1 737 | '斤', 1 738 | '猪肉', 1 739 | '一只', 1 740 | '白条', 1 741 | '鹅', 1 742 | '逃逸', 1 743 | '事故', 1 744 | '朴某', 1 745 | '一次', 1 746 | '挨', 1 747 | '妹妹', 1 748 | '对此', 1 749 | '毫不', 1 750 | '领情', 1 751 | '上周', 1 752 | '很多', 1 753 | '路', 1 754 | '公共', 1 755 | '自行车', 1 756 | '服务', 1 757 | '点', 1 758 | '砸坏', 1 759 | '红杏出墙', 1 760 | '40', 1 761 | '多岁', 1 762 | '接连', 1 763 | '几名', 1 764 | '女服务员', 1 765 | '扬言', 1 766 | '带走', 1 767 | '埋怨', 1 768 | '杨丽', 1 769 | '办事', 1 770 | '不力', 1 771 | '小子', 1 772 | '不听话', 1 773 | '等候', 1 774 | '前夫', 1 775 | '室内', 1 776 | '找到', 1 777 | '值钱', 1 778 | '大家', 1 779 | '纷纷', 1 780 | '杨', 1 781 | '暴行', 1 782 | '发觉', 1 783 | '阿明', 1 784 | '王仕鸿让', 1 785 | '侄子', 1 786 | '顶包', 1 787 | '蔡某', 1 788 | '王某', 1 789 | '背着', 1 790 | '阿付', 1 791 | '混在', 1 792 | '小美', 1 793 | '兴平', 1 794 | '一所', 1 795 | '小学校长', 1 796 | '绑架', 1 797 | '殴打', 1 798 | '人群', 1 799 | '伤人', 1 800 | '接下来', 1 801 | '一怒之下', 1 802 | '前女友', 1 803 | '勒死', 1 804 | '遭王', 1 805 | '小红', 1 806 | '返回', 1 807 | '宿舍', 1 808 | '不对劲', 1 809 | '今年初', 1 810 | '小芳', 1 811 | '曾', 1 812 | '欠薪', 1 813 | '没', 1 814 | '进行', 1 815 | '有效', 1 816 | '赔偿', 1 817 | '男朋友', 1 818 | '法院', 1 819 | '起诉', 1 820 | '要求', 1 821 | '主人', 1 822 | '驴', 1 823 | '丢', 1 824 | '着急', 1 825 | '上火', 1 826 | '宝马', 1 827 | '烧成', 1 828 | '一堆', 1 829 | '废铁', 1 830 | '阿钟', 1 831 | '雪儿', 1 832 | '钱款', 1 833 | '挥霍', 1 834 | '包养', 1 835 | '少爷', 1 836 | '高档', 1 837 | '娱乐场所', 1 838 | '消费', 1 839 | '结识', 1 840 | '网恋', 1 841 | '误入', 1 842 | '传销', 1 843 | '组织', 1 844 | '骗走', 1 845 | '3', 1 846 | '万余元', 1 847 | '责备', 1 848 | '本田', 1 849 | '刻', 1 850 | '汉奸', 1 851 | '字样', 1 852 | '当天', 1 853 | '是因为', 1 854 | '护理员', 1 855 | '男孩', 1 856 | '体内', 1 857 | '雌激素', 1 858 | '项', 1 859 | '指标', 1 860 | '超标', 1 861 | '古墓', 1 862 | '惊喜', 1 863 | '听说', 1 864 | '郝家', 1 865 | '祖坟', 1 866 | '坟墓', 1 867 | '破坏', 1 868 | '铁牛', 1 869 | '刚才', 1 870 | '是不是', 1 871 | '女厕所', 1 872 | '偷拍', 1 873 | '刘海', 1 874 | '宝马车', 1 875 | '车头', 1 876 | '车尾', 1 877 | '一条', 1 878 | '长长的', 1 879 | '划痕', 1 880 | '两岁', 1 881 | '发出声音', 1 882 | '吵醒', 1 883 | '至极', 1 884 | '当贺', 1 885 | '想到', 1 886 | '扔下', 1 887 | '追访', 1 888 | '公交车', 1 889 | '猥琐', 1 890 | '大叔', 1 891 | '摸', 1 892 | '大腿', 1 893 | '知道', 1 894 | '奸夫', 1 895 | '无视', 1 896 | -------------------------------------------------------------------------------- /visualization/情感词汇.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/情感词汇.xlsx -------------------------------------------------------------------------------- /visualization/结果文件/测试集词云/ai.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/结果文件/测试集词云/ai.jpg -------------------------------------------------------------------------------- /visualization/结果文件/测试集词云/ha.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/结果文件/测试集词云/ha.jpg -------------------------------------------------------------------------------- /visualization/结果文件/测试集词云/ji.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/结果文件/测试集词云/ji.jpg -------------------------------------------------------------------------------- /visualization/结果文件/测试集词云/ju.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/结果文件/测试集词云/ju.jpg -------------------------------------------------------------------------------- /visualization/结果文件/测试集词云/le.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/结果文件/测试集词云/le.jpg -------------------------------------------------------------------------------- /visualization/结果文件/测试集词云/nu.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/结果文件/测试集词云/nu.jpg -------------------------------------------------------------------------------- /visualization/结果文件/测试集词云/wu.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/结果文件/测试集词云/wu.jpg -------------------------------------------------------------------------------- /visualization/结果文件/爬取数据词云/cause_ciyun.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/结果文件/爬取数据词云/cause_ciyun.jpg -------------------------------------------------------------------------------- /visualization/结果文件/爬取数据词云/emotion_ciyun.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/visualization/结果文件/爬取数据词云/emotion_ciyun.jpg -------------------------------------------------------------------------------- /基于文本的情感-原因对抽取(ECPE)与抑郁情绪原因识别系统.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ruomengd/ECPE_withBERT_Depression/6a9cda125eb4f00cba81c3e21e3b93a815917460/基于文本的情感-原因对抽取(ECPE)与抑郁情绪原因识别系统.pdf --------------------------------------------------------------------------------