e2e代碼分析

conll-2012-train.v4.tar.gz
conll-2012-development.v4.tar.gz
conll-2012-test-key.tar.gz
conll-2012-test-official.v9.tar.gz
conll-2012-scripts.v3.tar.gz(把ske文件轉換成conll文件的腳本)
reference-coreference-scorers.v8.01.tar.gz。
reference-coreference-scorers 移到了conll-2012/scorerjson

數據:dev.english.v4_gold_conll
train.english.v4_gold_conll
test.english.v4_gold_conlldom

minimize_partition:主要就是處理數據集:輸入是conll文件,輸出是.jsonline文件spa

dom.finalize():主要是把clusters裏面的val統一。blog

 hanld_bit:##stack ,在碰見(的時候彈入,(1,top),(1,s),(1,pp),在)的時候彈出。token

 labels裏的english_const_labels裏面放的就是這些parse拆分以後的,ner放的就是nerip

stats裏面放的是共指鏈的個數,mentions 的個數。ci

 get_char_vocab:得到各個數據集的詞典:char_vocab.english.txtv8

filter_embedding.py : 輸入是glove.840.txt,train.jsonline  test.jsonline  輸出是glove.840.filter,主要是對詞向量錶針對數據集進行必定的過濾,抽出須要的詞向量。get

 elmo_modul的使用:http://quabr.com/53570918/paragraph-embedding-with-elmostring

 cach_elmo:就是對應地得到每一句的詞向量的表示(可是elmo是基於charater的因此論文叫作charater embeding),實際上是基於字向量的embedding。

 ["elmo"]這個只是一個名字嗎?爲何這裏作了三次。

 以上都是setup_training的裏面的,是生成一些後續須要的文件的。

接下來的是train.py裏面的:

 tensorize_example:train_examples是一個list,這個list的每一行就是一個string

給每個共指鏈一個編號,

以後的一系列都是在求一些值,仍是相似於在處理數據,注意char_index

 (tokens, context_word_emb, head_word_emb, lm_emb, char_index, text_len, speaker_ids, genre, is_training, gold_starts, gold_ends, cluster_ids)

tokens

lm_emb就是個onehot估計。

 關於這個mask,在這裏面不是標籤的意思, 是說把這個二維的list,取對應的數出來進行一個拼接成一維的list。

相關文章
相關標籤/搜索