{"id":13595460,"url":"https://github.com/liuhuanyong/EventTriplesExtraction","last_synced_at":"2025-04-09T13:32:04.231Z","repository":{"id":41176336,"uuid":"144796246","full_name":"liuhuanyong/EventTriplesExtraction","owner":"liuhuanyong","description":"An experiment and demo-level tool for text information extraction (event-triples extraction),  which can be a route to the event chain and topic graph, 基于依存句法与语义角色标注的事件三元组抽取，可用于文本理解如文档主题链，事件线等应用。","archived":false,"fork":false,"pushed_at":"2022-11-26T09:32:49.000Z","size":38,"stargazers_count":916,"open_issues_count":17,"forks_count":220,"subscribers_count":19,"default_branch":"master","last_synced_at":"2024-11-06T18:44:17.793Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/liuhuanyong.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-15T02:34:55.000Z","updated_at":"2024-11-02T11:17:47.000Z","dependencies_parsed_at":"2023-01-21T18:03:46.942Z","dependency_job_id":null,"html_url":"https://github.com/liuhuanyong/EventTriplesExtraction","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liuhuanyong%2FEventTriplesExtraction","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liuhuanyong%2FEventTriplesExtraction/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liuhuanyong%2FEventTriplesExtraction/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liuhuanyong%2FEventTriplesExtraction/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/liuhuanyong","download_url":"https://codeload.github.com/liuhuanyong/EventTriplesExtraction/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248049366,"owners_count":21039207,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T16:01:50.427Z","updated_at":"2025-04-09T13:32:03.965Z","avatar_url":"https://github.com/liuhuanyong.png","language":"Python","funding_links":[],"categories":["Python","关系抽取、信息抽取"],"sub_categories":["其他_文本生成、文本对话"],"readme":"# EventTriplesExtraction\n\u0026nbsp;\u0026nbsp;EventTriplesExtraction based on dependency parser and semantic role labeling, 基于依存句法与语义角色标注的事件三元组抽取\n\u0026nbsp;\u0026nbsp;文本表示一直是个重要问题，如何以清晰，简介的方式对一个文本信息进行有效表示是个长远的任务  \n   我尝试过使用关键词，实体之间的关联关系，并使用textgrapher的方式进行展示，但以词作为文本信息单元表示这种效果不是特别好，所以，本项目想尝试从事件三元组的方式出发，对文本进行表示．\n\n# 方法1-基于ltp依存句法分析和语义角色标注的事件三元组抽取\n\n        from triples_extraction import *\n        extractor = TripleExtractor()\n        svos = extractor.triples_main(content)\n        print('svos', svos)\n\n# 方法1-测试结果\n        content = '李克强总理今天来我家了,我感到非常荣幸'\n        svos = [\n                  ['李克强总理', '来', '我家'],\n                  ['我', '感到', '荣幸']\n                 ]\n\n        content = ''' 以色列国防军20日对加沙地带实施轰炸，造成3名巴勒斯坦武装人员死亡。此外，巴勒斯坦人与以色列士兵当天在加沙地带与以交界地区发生冲突，一名巴勒斯坦人被打死。当天的冲突还造成210名巴勒斯坦人受伤。\n    当天，数千名巴勒斯坦人在加沙地带边境地区继续“回归大游行”抗议活动。部分示威者燃烧轮胎，并向以军投掷石块、燃烧瓶等，驻守边境的以军士兵向示威人群发射催泪瓦斯并开枪射击。'''\n        svos = [\n                 ['以色列国防军', '实施', '轰炸'],\n                 ['冲突', '发生', '巴勒斯坦人与以色列士兵'],\n                 ['当天冲突', '造成', '受伤'],\n                 ['数千名巴勒斯坦人', '继续', '回归大游行抗议活动'],\n                 ['部分示威者', '投掷', '石块'],\n                 ['驻守边境以军士兵', '发射', '催泪瓦斯']\n                 ]\n                 \n# 方法2-基于百度DDParser依存句法分析的事件三元组抽取\n\n       from baidu_svo_extract import *\n       extractor = SVOParser()\n       svos = extractor.triples_main(content2)\n       print('svos', svos)\n    \n# 方法2-测试结果\n        content = '李克强总理今天来我家了,我感到非常荣幸'\n        svos = [\n                 ['总理李克强', '来', '我家'], \n                 ['我', '感到', '荣幸']]\n                 ]\n\n        content = ''' 以色列国防军20日对加沙地带实施轰炸，造成3名巴勒斯坦武装人员死亡。此外，巴勒斯坦人与以色列士兵当天在加沙地带与以交界地区发生冲突，一名巴勒斯坦人被打死。当天的冲突还造成210名巴勒斯坦人受伤。\n    当天，数千名巴勒斯坦人在加沙地带边境地区继续“回归大游行”抗议活动。部分示威者燃烧轮胎，并向以军投掷石块、燃烧瓶等，驻守边境的以军士兵向示威人群发射催泪瓦斯并开枪射击。'''\n        svos = [\n                  ['20日', '实施', '轰炸']\n                  ['当天冲突', '造成', '210名']\n                  ['巴勒斯坦人', '回归', '大游行']\n                  ['部分示威者', '燃烧', '轮胎']\n                 ]\n\n# 方法3-基于词性模板规则的事件三元组抽取\n\n       from pattern_event_triples import *\n       extractor = ExtractEvent()\n       events, spos = handler.phrase_ip(content1)\n       spos = [i for i in spos if i[0] and i[2]]\n       print('svos', svos)\n    \n# 方法3-测试结果\n        content = '李克强总理今天来我家了,我感到非常荣幸'\n        svos = [\n                  ('李克强总理', '来', '我家')\n                  ('李克强', '感到', '荣幸')\n                 ]\n\n        content = ''' 以色列国防军20日对加沙地带实施轰炸，造成3名巴勒斯坦武装人员死亡。此外，巴勒斯坦人与以色列士兵当天在加沙地带与以交界地区发生冲突，一名巴勒斯坦人被打死。当天的冲突还造成210名巴勒斯坦人受伤。\n    当天，数千名巴勒斯坦人在加沙地带边境地区继续“回归大游行”抗议活动。部分示威者燃烧轮胎，并向以军投掷石块、燃烧瓶等，驻守边境的以军士兵向示威人群发射催泪瓦斯并开枪射击。'''\n        svos = [\n                  ('数千名巴勒斯坦人在加沙地带边境地区', '继续回归游行', '抗议活动')\n                  ('部分示威者', '燃烧', '轮胎')\n                  ('边境', '以军', '士兵向示威人群发射催泪瓦斯开枪射击')\n                  ('士兵向示威人群', '发射', '催泪瓦斯开枪射击')\n                 ]\n\n\n\n# 总结\n\n本项目公开了基于ltp句法分析和语义角色标注、基于百度DDParser以及基于词法模式的事件三元组抽取方法，并给了实验示例。可以得到以下结论：  \n1、LTP在DDParser之外，还提供了语义角色标注的功能，这个可以用于事件三元组抽取的有效补充。  \n2、LTP速度比DDParser要快。   \n3、基于词法模式的事件三元组抽取速度最快，但效果取决于分词、词性标注性能。  \n4、基于词法模式，可以得到语义更长的三元组元素信息。  \n\n\nIf any question about the project or me ,see https://liuhuanyong.github.io/  \n如有自然语言处理、知识图谱、事理图谱、社会计算、语言资源建设等问题或合作，可联系我：    \n1、我的github项目介绍：https://liuhuanyong.github.io  \n2、我的csdn博客：https://blog.csdn.net/lhy2014  \n3、about me:刘焕勇，中国科学院软件研究所，lhy_in_blcu@126.com  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliuhuanyong%2FEventTriplesExtraction","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fliuhuanyong%2FEventTriplesExtraction","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliuhuanyong%2FEventTriplesExtraction/lists"}