SiameseAOE通用信息抽取模型,基于提示(Prompt)+文本(Text)的构建思路,利用指针网络(Poiter Network)实现片段抽取(Spa Extractio),从而实现各类属性情感抽取(ABSA)任务的抽取。该模型基于SiameseUIE框架,在500w条ABSA标注数据集进行预训练。 模型基于structbert-base-chiese在500w条ABSA标注数据集训练得到,模型框架如下图: 你可以使用该模型,实现各类属性情感抽取(ABSA)任务。 依据ModelScope的介绍,实验环境可分为两种情况。在此推荐使用第2种方式,点开就能用,省去本地安装环境的麻烦,直接体验ModelScope。 可参考ModelScope环境安装。 ModelScope直接集成了线上开发环境,用户可以直接在线训练、调用模型。 打开模型页面,点击右上角“在Notebook中打开”,选择机器型号后,即可进入线上开发环境。 模型训练数据有限,在特定行业数据上,效果可能存在一定偏差。SiameseAOE通用属性情感抽取介绍
模型描述
期望模型使用方式以及适用范围
如何使用
安装Modelscope
1 本地环境安装
2 Notebook
代码范例
Fie-Tue 微调示例
import os
import jso
from modelscope.traiers import build_traier
from modelscope.msdatasets import MsDataset
from modelscope.utils.hub import read_cofig
from modelscope.metaifo import Metrics
from modelscope.utils.costat import DowloadMode
model_id = 'damo/lp_structbert_siamese-aoe_chiese-base'
WORK_DIR = '/tmp'
trai_dataset = MsDataset.load('absa_aoe', amespace='damo', split='trai', dowload_mode=DowloadMode.FORCE_REDOWNLOAD)
eval_dataset = MsDataset.load('absa_aoe', amespace='damo', split='validatio', dowload_mode=DowloadMode.FORCE_REDOWNLOAD)
max_epochs=3
kwargs = dict(
model=model_id,
trai_dataset=trai_dataset,
eval_dataset=eval_dataset,
max_epochs=max_epochs,
work_dir=WORK_DIR)
traier = build_traier('siamese-uie-traier', default_args=kwargs)
prit('===============================================================')
prit('pre-traied model loaded, traiig started:')
prit('===============================================================')
traier.trai()
prit('===============================================================')
prit('trai success.')
prit('===============================================================')
for i i rage(max_epochs):
eval_results = traier.evaluate(f'{WORK_DIR}/epoch_{i+1}.pth')
prit(f'epoch {i} evaluatio result:')
prit(eval_results)
prit('===============================================================')
prit('evaluate success')
prit('===============================================================')
零样本推理示例
from modelscope.pipelies import pipelie
from modelscope.utils.costat import Tasks
sematic_cls = pipelie(Tasks.siamese_uie, 'damo/lp_structbert_siamese-aoe_chiese-base', model_revisio='v1.0')
# AOE模型仅支持以下这几种Schema
# 属性情感抽取 {属性词: {情感词: Noe}}
sematic_cls(
iput='很满意,音质很好,发货速度快,值得购买',
schema={
'属性词': {
'情感词': Noe,
}
}
)
# 允许属性词缺省,#表示缺省
sematic_cls(
iput='#很满意,音质很好,发货速度快,值得购买',
schema={
'属性词': {
'情感词': Noe,
}
}
)
# 支持情感分类
sematic_cls(
iput='很满意,音质很好,发货速度快,值得购买',
schema={
'属性词': {
"正向情感(情感词)": Noe,
"负向情感(情感词)": Noe,
"中性情感(情感词)": Noe
}
}
)
模型局限性以及可能的偏差
数据评估及结果
相关论文以及引用信息
@article{wag2019structbert,
title={Structbert: Icorporatig laguage structures ito pre-traiig for deep laguage uderstadig},
author={Wag, Wei ad Bi, Bi ad Ya, Mig ad Wu, Che ad Bao, Zuyi ad Xia, Jiaga ad Peg, Liwei ad Si, Luo},
joural={arXiv preprit arXiv:1908.04577},
year={2019}
}
@iproceedigs{Zhao2021AdjacecyLO,
title={Adjacecy List Orieted Relatioal Fact Extractio via Adaptive Multi-task Learig},
author={Fubag Zhao ad Zhuore Jiag ad Yagyag Kag ad Chaglog Su ad Xiaozhog Liu},
booktitle={FINDINGS},
year={2021}
}
点击空白处退出提示










评论