Menggunakan BERT untuk ekstraksi atribut dalam KnowledgeGraph dengan dua metode, penyempurnaan dan ekstraksi fitur.
Grafik Pengetahuan Baidu Encyclopedia Entri Ekstraksi Atribut Karakter, Eksperimen dilakukan dengan menggunakan metode penyempurnaan fine-tuning dan fitur-ekstraksi berdasarkan Bert.
Tensorflow >=1.10
scikit-learn
BERT-Base, Chinese : Cina disederhanakan dan tradisional, 12-lapis, 768-tersembunyi, 12-heads, parameter 110m
Tidak ada
Dataset dibangun menurut entri karakter Baidu Encyclopedia. Saring corpus yang tidak mengandung entitas dan atribut.
Entitas dan atribut diperoleh dari pengakuan entitas nama.
Label diperoleh dari Baidu Encyclopedia InfoBox, dan kebanyakan dari mereka diberi label secara manual, jadi beberapa tidak terlalu baik.
Misalnya:
黄维#1904年#1#黄维(1904年-1989年),字悟我,出生于江西贵溪一农户家庭。
陈昂#山东省滕州市#1#邀请担任诗词嘉宾。1992年1月26日,陈昂出生于山东省滕州市一个普通的知识分子家庭,其祖父、父亲都
陈伟庆#肇庆市鼎湖区#0#长。任免信息2016年10月21日下午,肇庆市鼎湖区八届人大一次会议胜利闭幕。陈伟庆当选区人民政府副区长。
strip.py bisa mendapatkan data stripeddata_process.py dapat memproses data untuk mendapatkan input file numpyparameters adalah parameter yang menjalankan model kebutuhan Misalnya dengan dataset tempat lahir:
fine-tuning
run_classifier.py untuk mendapatkan output probabilitas yang diprediksi python run_classifier.py
--task_name=my
--do_train=true
--do_predict=true
--data_dir=a
--vocab_file=/home/tiny/zhaomeng/bertmodel/vocab.txt
--bert_config_file=/home/tiny/zhaomeng/bertmodel/bert_config.json
--init_checkpoint=/home/tiny/zhaomeng/bertmodel/bert_model.ckpt
--max_seq_length=80
--train_batch_size=32
--learning_rate=2e-5
--num_train_epochs=1.0
--output_dir=./outputproba2metrics.py untuk mendapatkan hasil akhir dengan klasifikasi yang salahEkstraksi fitur
extract_features.py untuk mendapatkan representasi vektor dari kereta api dan data uji dalam format file JSON python extract_features.py
--input_file=../data/birth_place_train.txt
--output_file=../data/birth_place_train.jsonl
--vocab_file=/home/tiny/zhaomeng/bertmodel/vocab.txt
--bert_config_file=/home/tiny/zhaomeng/bertmodel/bert_config.json
--init_checkpoint=/home/tiny/zhaomeng/bertmodel/bert_model.ckpt
--layers=-1
--max_seq_length=80
--batch_size=16json2vector.py untuk mentransfer file json ke representasi vektorrun_classifier.py untuk menggunakan metode pembelajaran mesin untuk melakukan klasifikasi, MLP biasanya peforms terbaik Hasil yang diprediksi dan korpus yang salah diklasifikasi disimpan dalam Dir Hasil.
Misalnya dengan dataset tempat lahir menggunakan metode penyempurnaan, hasilnya adalah:
precision recall f1-score support
0 0.963 0.967 0.965 573
1 0.951 0.946 0.948 389
Proyek ini dilisensikan di bawah lisensi MIT