永嘉县住房和城乡建设局网站,万网虚拟主机两个网站,百度有哪些网站可免费做软件推广,网站建设 书目录 方法一#xff1a;使用OmniEvent库安装OmniEvent使用OmniEvent进行事件抽取OmniEvent优点缺点 方法二#xff1a;使用大模型使用GPT网页版进行事件抽取事件类型列表 大模型优点缺点 总结 在自然语言处理#xff08;NLP#xff09;领域#xff0c;事件抽取是一项关键任… 目录 方法一使用OmniEvent库安装OmniEvent使用OmniEvent进行事件抽取OmniEvent优点缺点 方法二使用大模型使用GPT网页版进行事件抽取事件类型列表 大模型优点缺点 总结 在自然语言处理NLP领域事件抽取是一项关键任务它涉及从文本中识别和提取事件及其相关信息。 本文作者将介绍两种常见的事件抽取方法使用清华大学开源的OmniEvent工具包和ChatGPT大模型方法。
我们将分析这两种方法的优缺点并提供一些代码示例来展示其实际应用。
方法一使用OmniEvent库
OmniEvent是清华大学开源的一款用于事件抽取的库支持多种事件抽取任务包括触发词检测、事件论元抽取等。该库提供了预训练模型和易于使用的接口极大简化了事件抽取的实现。
全面涵盖各种范式并对广泛使用的英文和中文数据集提供公平、统一的评估。模块化实现使 OmniEvent 具有高度可扩展性。
安装OmniEvent
首先我们需要安装OmniEvent库。可以使用以下命令进行安装
pip install omnievent使用OmniEvent进行事件抽取
以下是一个使用OmniEvent进行事件抽取的示例代码 from OmniEvent import infer
devicecpu# 初始化OmniEvent模型
def init_models(devicecpu):ed_model, ed_tokenizer infer.get_pretrained(s2s-mt5-ed,devicedevice)eae_model, eae_tokenizer infer.get_pretrained(s2s-mt5-eae,devicedevice)return (ed_model, ed_tokenizer,eae_model,eae_tokenizer)# 进行事件抽取
def run_ee(models,news_text_list,devicecpu):schemas [ace]*len(news_text_list)ed_model, ed_tokenizer,eae_model,eae_tokenizermodelsevents infer.do_event_detection(ed_model, ed_tokenizer, news_text_list, schemas, device)instances infer.prepare_for_eae_from_pred(news_text_list, events, schemas)if len(instances[0][triggers]) 0:results [{text: instances[0][text],events: []}]return resultsarguments infer.do_event_argument_extraction(eae_model, eae_tokenizer, instances, device)results infer.get_eae_result(instances, arguments)return resultstext “中比动漫文化周”12日在布鲁塞尔中国文化中心开幕旨在通过动漫这一独特的艺术形式促进两国文化的交流与理解。
modelsinit_models(device)
eerun_ee(models,[text])
# 输出结果for events in ee:print(文本:, events[text])for event in events[events]:print(f事件类型: {event[type]})print(f触发词: {event[trigger]})print(f论元: {event[arguments]})Output
文本: “中比动漫文化周”12日在布鲁塞尔中国文化中心开幕旨在通过动漫这一独特的艺术形式促进两国文化的交流与理解。
事件类型: 组织行为开幕
触发词: 开幕
论元: [{mention: 12日, offset: [9, 12], role: 时间}, {mention: 布鲁塞尔中国文化中心, offset: [13, 23], role: 地点}, {mention: “中比动漫文化周”, offset: [0, 9], role: 活动名称}]
CPU times: user 21.2 s, sys: 78.3 ms, total: 21.3 s
Wall time: 5.53 sOmniEvent优点
易用性高OmniEvent提供了简单易用的API用户可以快速上手。预训练模型库中包含多种预训练模型可直接用于实际任务减少训练成本。多任务支持支持多种事件抽取任务包括触发词检测和事件论元抽取。
缺点
依赖数据集虽然预训练模型能应对大部分任务但特定领域的事件抽取可能需要额外的训练数据。运行效率低: 模型是直接将ED任务和EAE任务合并为EE任务因此耗时较长。(可将其分开再得到ED任务结果后选择满足条件的数据进行下一步EAE任务的测试
方法二使用大模型
大模型如GPT-4、BERT等在各种NLP任务中表现优异也可用于事件抽取。大模型的优势在于其强大的语言理解能力和泛化能力。
由于经费有限本文只能用网页版用来演示效果。项目中实际开发可以使用Pythonlangchain工具包调用大模型api接口达到此效果。
使用GPT网页版进行事件抽取
input prompt:
给定的句子为“中比动漫文化周”12日在布鲁塞尔中国文化中心开幕旨在通过动漫这一独特的艺术形式促进两国文化的交流与理解。给定事件类型列表[灾害/意外-坠机, 司法行为-举报, 财经/交易-涨价, 组织关系-解雇, 组织关系-停职, 财经/交易-加息, 交往-探班, 人生-怀孕, 组织关系-辞/离职, 组织关系-裁员, 灾害/意外-车祸, 人生-离婚, 司法行为-起诉, 竞赛行为-禁赛, 人生-婚礼, 财经/交易-涨停, 财经/交易-上市, 组织关系-解散, 财经/交易-跌停, 财经/交易-降价, 组织行为-罢工, 司法行为-开庭, 竞赛行为-退役, 人生-求婚, 人生-庆生, 交往-会见, 竞赛行为-退赛, 交往-道歉, 司法行为-入狱, 组织关系-加盟, 人生-分手, 灾害/意外-袭击, 灾害/意外-坍/垮塌, 组织关系-解约, 产品行为-下架, 灾害/意外-起火, 灾害/意外-爆炸, 产品行为-上映, 人生-订婚, 组织关系-退出, 交往-点赞, 产品行为-发布, 人生-结婚, 组织行为-闭幕, 人生-死亡, 竞赛行为-夺冠, 人生-失联, 财经/交易-出售/收购, 竞赛行为-晋级, 竞赛行为-胜负, 财经/交易-降息, 组织行为-开幕, 司法行为-拘捕, 交往-感谢, 司法行为-约谈, 灾害/意外-地震, 人生-产子/女, 财经/交易-融资, 司法行为-罚款, 人生-出轨, 灾害/意外-洪灾, 组织行为-游行, 司法行为-立案, 产品行为-获奖, 产品行为-召回]在这个句子中可能包含了哪些事件类型
请给出事件类型列表中的事件类型。
如果不存在则回答无
按照元组形式回复如 (事件类型1, 事件类型2, ……)output: Input prompt:
事件类型组织行为-开幕对应的论元角色列表为[时间, 地点, 活动名称]。
在给定的句子中根据论元角色提取出事件论元。
如果论元角色没有相应的论元内容则论元内容回答无
按照表格形式回复表格有两列且表头为论元角色论元内容Output:
事件类型列表
{灾害/意外-坠机: [时间, 地点, 死亡人数, 受伤人数],司法行为-举报: [时间, 举报发起方, 举报对象],财经/交易-涨价: [时间, 涨价幅度, 涨价物, 涨价方],组织关系-解雇: [时间, 解雇方, 被解雇人员],组织关系-停职: [时间, 所属组织, 停职人员],财经/交易-加息: [时间, 加息幅度, 加息机构],交往-探班: [时间, 探班主体, 探班对象],人生-怀孕: [时间, 怀孕者],组织关系-辞/离职: [时间, 离职者, 原所属组织],组织关系-裁员: [时间, 裁员方, 裁员人数],灾害/意外-车祸: [时间, 地点, 死亡人数, 受伤人数],人生-离婚: [时间, 离婚双方],司法行为-起诉: [时间, 被告, 原告],竞赛行为-禁赛: [时间, 禁赛时长, 被禁赛人员, 禁赛机构],人生-婚礼: [时间, 地点, 参礼人员, 结婚双方],财经/交易-涨停: [时间, 涨停股票],财经/交易-上市: [时间, 地点, 上市企业, 融资金额],组织关系-解散: [时间, 解散方],财经/交易-跌停: [时间, 跌停股票],财经/交易-降价: [时间, 降价方, 降价物, 降价幅度],组织行为-罢工: [时间, 所属组织, 罢工人数, 罢工人员],司法行为-开庭: [时间, 开庭法院, 开庭案件],竞赛行为-退役: [时间, 退役者],人生-求婚: [时间, 求婚者, 求婚对象],人生-庆生: [时间, 生日方, 生日方年龄, 庆祝方],交往-会见: [时间, 地点, 会见主体, 会见对象],竞赛行为-退赛: [时间, 退赛赛事, 退赛方],交往-道歉: [时间, 道歉对象, 道歉者],司法行为-入狱: [时间, 入狱者, 刑期],组织关系-加盟: [时间, 加盟者, 所加盟组织],人生-分手: [时间, 分手双方],灾害/意外-袭击: [时间, 地点, 袭击对象, 死亡人数, 袭击者, 受伤人数],灾害/意外-坍/垮塌: [时间, 坍塌主体, 死亡人数, 受伤人数],组织关系-解约: [时间, 被解约方, 解约方],产品行为-下架: [时间, 下架产品, 被下架方, 下架方],灾害/意外-起火: [时间, 地点, 死亡人数, 受伤人数],灾害/意外-爆炸: [时间, 地点, 死亡人数, 受伤人数],产品行为-上映: [时间, 上映方, 上映影视],人生-订婚: [时间, 订婚主体],组织关系-退出: [时间, 退出方, 原所属组织],交往-点赞: [时间, 点赞方, 点赞对象],产品行为-发布: [时间, 发布产品, 发布方],人生-结婚: [时间, 结婚双方],组织行为-闭幕: [时间, 地点, 活动名称],人生-死亡: [时间, 地点, 死者年龄, 死者],竞赛行为-夺冠: [时间, 冠军, 夺冠赛事],人生-失联: [时间, 地点, 失联者],财经/交易-出售/收购: [时间, 出售方, 交易物, 出售价格, 收购方],竞赛行为-晋级: [时间, 晋级方, 晋级赛事],竞赛行为-胜负: [时间, 败者, 胜者, 赛事名称],财经/交易-降息: [时间, 降息幅度, 降息机构],组织行为-开幕: [时间, 地点, 活动名称],司法行为-拘捕: [时间, 拘捕者, 被拘捕者],交往-感谢: [时间, 致谢人, 被感谢人],司法行为-约谈: [时间, 约谈对象, 约谈发起方],灾害/意外-地震: [时间, 死亡人数, 震级, 震源深度, 震中, 受伤人数],人生-产子/女: [时间, 产子者, 出生者],财经/交易-融资: [时间, 跟投方, 领投方, 融资轮次, 融资金额, 融资方],司法行为-罚款: [时间, 罚款对象, 执法机构, 罚款金额],人生-出轨: [时间, 出轨方, 出轨对象],灾害/意外-洪灾: [时间, 地点, 死亡人数, 受伤人数],组织行为-游行: [时间, 地点, 游行组织, 游行人数],司法行为-立案: [时间, 立案机构, 立案对象],产品行为-获奖: [时间, 获奖人, 奖项, 颁奖机构],产品行为-召回: [时间, 召回内容, 召回方]
}大模型优点
强大的语言理解能力大模型具有强大的语言理解和推理能力能够应对复杂的事件抽取任务。适应性强无需针对特定任务进行大量调整能较好地泛化到不同领域的任务。持续更新大模型通常由大型公司维护更新频率高性能不断提升。
缺点
成本高调用大模型通常需要付费成本较高。响应时间由于模型复杂度高推理时间较长可能影响实时性要求高的应用。依赖网络需要稳定的网络连接来访问模型服务。
总结
OmniEvent库和大模型各有优缺点适用于不同的应用场景。如果您需要快速实现事件抽取并且对特定领域有较高的定制化需求OmniEvent是一个不错的选择。如果您追求高精度和强泛化能力并且预算充足可以考虑使用大模型。
无论选择哪种方法都需要根据具体需求和资源情况进行权衡。希望本文能为您的事件抽取任务提供一些有价值的参考。 大数据分析为运营和各行业带来了前所未有的机会使企业能够更敏锐地洞察市场、优化运营并更有效地应对竞争和变革。在信息时代充分利用大数据分析将成为企业取得竞争优势的不可忽视的关键要素。 本人数据分析领域的从业者拥有专业背景和能力可以为您的数据采集、挖掘和分析需求提供支持。期待着能够与您共同探索更多有意义的数据洞见为您的项目和业务提供数据分析方面的帮助。 创作不易如果你觉得有帮助请点个赞支持一下。你的鼓励是我创作的最大动力期待未来能为大家带来更多有趣的分析文章。感谢大家的阅读和支持