1. 程式人生 > >基於依存句法與語義角色標註的事件抽取專案

基於依存句法與語義角色標註的事件抽取專案

EventTriplesExtraction

專案地址:https://github.com/liuhuanyong/EventTriplesExtraction EventTriplesExtraction based on dependency parser and semantic role labeling, 基於依存句法與語義角色標註的事件三元組抽取 文字表示一直是個重要問題,如何以清晰,簡介的方式對一個文字資訊進行有效表示是個長遠的任務 我嘗試過使用關鍵詞,實體之間的關聯關係,並使用textgrapher的方式進行展示,但以詞作為文字資訊單元表示這種效果不是特別好,所以,本專案想嘗試從事件三元組的方式出發,對文字進行表示.

使用方式

    from triples_extraction import *
    extractor = TripleExtractor()
    svos = extractor.triples_main(content)
    print('svos', svos)

測試樣例

    content = '李克強總理今天來我家了,我感到非常榮幸'
    svos = [
              ['李克強總理', '來', '我家'],
              ['我', '感到', '榮幸']
             ]

    content = ''' 以色列國防軍20日對加沙地帶實施轟炸,造成3名巴勒斯坦武裝人員死亡。此外,巴勒斯坦人與以色列士兵當天在加沙地帶與以交界地區發生衝突,一名巴勒斯坦人被打死。當天的衝突還造成210名巴勒斯坦人受傷。
當天,數千名巴勒斯坦人在加沙地帶邊境地區繼續“迴歸大遊行”抗議活動。部分示威者燃燒輪胎,並向以軍投擲石塊、燃燒瓶等,駐守邊境的以軍士兵向示威人群發射催淚瓦斯並開槍射擊。'''
    svos = [
             ['以色列國防軍', '實施', '轟炸'],
             ['衝突', '發生', '巴勒斯坦人與以色列士兵'],
             ['當天衝突', '造成', '受傷'],
             ['數千名巴勒斯坦人', '繼續', '迴歸大遊行抗議活動'],
             ['部分示威者', '投擲', '石塊'],
             ['駐守邊境以軍士兵', '發射', '催淚瓦斯']
             ]