91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 17KB
    文件類型: .py
    金幣: 2
    下載: 1 次
    發布日期: 2021-06-17
  • 語言: Python
  • 標簽: 深度學習??TEXTCNN??

資源簡介

深度學習TextCNN的keras和tensorflow實現,精簡版。。。。

資源截圖

代碼片段和文件信息

import?tensorflow?as?tf
import?numpy?as?np
import?os
import?random


class?CNN_Config(object):
????“““CNN配置參數“““
????ckpt_dir?=?‘‘???#模型存放路徑
????validate_every?=?1?#幾輪計算一次指標
????embedding_dim?=?64??#?詞向量維度
????seq_length?=?600??#?序列長度
????num_classes?=?10??#?類別數
????kernel_size?=?5??#?卷積核尺寸
????vocab_size?=?5000??#?詞匯表達小
????filter_sizes?=?[23456]??#卷積和大小
????num_filters?=?128??#?卷積核數目
????num_filters_total?=?num_filters?*?len(filter_sizes)
????hidden_dim?=?128??#?全連接層神經元
????dropout_keep_prob?=?0.5??#?dropout保留比例
????learning_rate?=?1e-3??#?學習率
????batch_size?=?64??#?每批訓練大小
????num_epochs?=?10??#?總迭代輪次
????print_per_batch?=?100??#?每多少輪輸出一次結果
????save_per_batch?=?10??#?每多少輪存入tensorboard
????initializer=tf.random_normal_initializer(stddev=0.1)?#權值初始化
????l2_lambda?=?0.0001??#L2正則參數
????decay_steps?=?1000??#學習率衰減次數
????decay_rate?=?0.1????#學習率衰減率
????clip_gradients=5.0?????#學習率裁剪
????decay_rate_big=0.50?????#學習率最大衰減率



def?init_label_dict(num_classes):
????“““
????init?label?dict.?this?dict?will?be?used?to?save?TPFPFN
????:param?num_classes:
????:return:?label_dict:?a?dict.?{label_index:(000)}
????“““
????label_dict={}
????for?i?in?range(num_classes):
????????label_dict[i]=(000)
????return?label_dict

def?get_label_using_logits(logitstop_number=5):
????index_list=np.argsort(logits)[-top_number:]
????index_list=index_list[::-1]
????return?index_list
def?get_target_label_short(eval_y):
????eval_y_short=[]?#will?be?like:[226421391]
????for?indexlabel?in?enumerate(eval_y):
????????if?label>0:
????????????eval_y_short.append(index)
????return?eval_y_short

def?compute_confuse_matrix(target_ypredict_ylabel_dictname=‘default‘):
????“““
????compute?true?postive(TP)?false?postive(FP)?false?negative(FN)?given?target?lable?and?predict?label
????:param?target_y:
????:param?predict_y:
????:param?label_dict?{label:(TPFPFN)}
????:return:?macro_f1(a?scalar)micro_f1(a?scalar)
????“““
????#1.get?target?label?and?predict?label
????if?random.choice([x?for?x?in?range(300)])?==?1:
????????print(name+“.target_y:“target_y“;predict_y:“predict_y)

????#2.count?number?of?TPFPFN?for?each?class
????y_labels_unique=[]
????y_labels_unique.extend(target_y)
????y_labels_unique.extend(predict_y)
????y_labels_unique=list(set(y_labels_unique))
????for?ilabel?in?enumerate(y_labels_unique):?#e.g.?label=2
????????TP?FP?FN?=?label_dict[label]
????????if?label?in?predict_y?and?label?in?target_y:#predict=1truth=1?(TP)
????????????TP=TP+1
????????elif?label?in?predict_y?and?label?not?in?target_y:#predict=1truth=0(FP)
????????????FP=FP+1
????????elif?label?not?in?predict_y?and?label?in?target_y:#predict=0truth=1(FN)
????????????FN=FN+1
????????label_dict[label]?=?(TP?FP?FN)
????return?label_dict


def?compute_micro_macro(label_dict):
????“““
????compute?f1?of?micro?and?macro
????:param?label_dict:
????:return:?f1_microf1_macro:?scalar?scalar
????“““
????f1_micro?=?

評論

共有 條評論