[摘要生成]Boosting Factual Correctness of Abstractive Summarization with Knowledge Graph

2020
paper: https://arxiv.org/pdf/2003.08612.pdf

切入点:factual correctness

提出两个模型

  1. Fact-Aware Summarization model, FASUM:which extracts factual relations from the article to build a knowledge graph and integrates it into the neural decoding process.
  2. a Factual Corrector model, FC:that can modify abstractive summaries generated by any
    summarization model to improve factual correctness.

结论

  1. FASUM can generate summaries with higher factual correctness compared with state-of-the-art abstractive summarization systems.
  2. FC improves the factual correctness of summaries generated by various models via only modifying several entity tokens.

细节参考香侬科技,如下只记录了本文关注的点。

测评指标&结果:

测评数据集:CNN/DailyMail 和 Xsum

  1. FC指标:为了测评factual correctness。FactCC模型在xxx进行fine-tune之后用于评估。可以看到整理结果:
    图片名称

  2. Noval n-grams:Diab论文中提到"less abstractive summaries are more factual consistent with the article",所以作者想看看是否自己的模型"boost factual correctness simply by copying
    more portions of the article"。为此,计算了sum中出现article不存在的n-gram的比例,越高说明抽象程度越高。
    图片名称

  3. Relation Matching Rate RMR:为了测评factual correctness。将对事实的评估转化到从summary中抽取到三元组的准确率。具体来说从生成的sum中抽取出三元组合集 R s = ( s i , r i , o i ) R_s = {(s_i,r_i,o_i)} Rs=(si,ri,oi) ,同样从原始的article中抽出三元组合集 R a R_a Ra ( s i , r i , o i ) (s_i,r_i,o_i) (si,ri,oi) R a R_a Ra比较会出现三种情况:Correct hit ( C C C)命中、Wrong hit ( W W W)、Miss ( M M M)就是其他情况。基于此,定义RMR为:
    R M R 1 = 100 × C C + W RMR_1=100 \times \frac{C}{C+W} RMR1=100×C+WC
    R M R 2 = 100 × C C + W + M RMR_2=100 \times \frac{C}{C+W+M} RMR2=100×C+W+MC
    为了评估RMR指标的质量,文章计算了人评估RMR指标之间的correlation coefficient γ \gamma γ,计算得到 γ = 0.43 \gamma=0.43 γ=0.43,说明了RMR和人工评估结果之前存在可观察的关系。

  4. Natural Language Inference NLI models:为了测评factual correctness。用BERT-large模型在MNLI数据集上进行fine-tune,模型输出三种类型:entailment, neutral and contradiction. 对应到这个任务的度量上,NLI的输入和输出分别是article和sum,通过衡量NLI模型输出的contradiction的比例来衡量争取事实比例,比例越小说明 article和生成摘要的冲突越小。
    图片名称

  5. Human Evaluation:三个人,打分1-3,两个维度 factual correctnessinformativeness。效果如下
    图片名称

    为了测评FC部分的效果,作者从BottomUP和UNILM生成的sum中随机拿了100条,之后用FC进行correct,对比了corrected前后的效果,类似于业界的GSB吧,效果如下图,说明了FC能boost
    图片名称

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是使用Python的scikit-learn库来生成boosting算法和bagging算法预测学生成绩的代码: ## 导入需要的库 from sklearn.ensemble import GradientBoostingRegressor, BaggingRegressor from sklearn.metrics import mean_squared_error from sklearn.model_selection import train_test_split import pandas as pd ## 读取数据 data = pd.read_csv("data.csv") ## 划分训练集和测试集 X = data.drop("score", axis=1) y = data["score"] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) ## 训练Gradient Boosting模型 gb_model = GradientBoostingRegressor(n_estimators=100, learning_rate=0.1, random_state=42) gb_model.fit(X_train, y_train) ## 预测测试集 gb_pred = gb_model.predict(X_test) ## 计算Gradient Boosting模型的均方误差 gb_mse = mean_squared_error(y_test, gb_pred) print("Gradient Boosting MSE:", gb_mse) ## 训练Bagging模型 dt_model = DecisionTreeRegressor() bg_model = BaggingRegressor(base_estimator=dt_model, n_estimators=100, random_state=42) bg_model.fit(X_train, y_train) ## 预测测试集 bg_pred = bg_model.predict(X_test) ## 计算Bagging模型的均方误差 bg_mse = mean_squared_error(y_test, bg_pred) print("Bagging MSE:", bg_mse) 以上代码中,我们首先导入了需要的库。然后读取数据并划分训练集和测试集。接着,我们使用GradientBoostingRegressor和BaggingRegressor来分别训练Gradient Boosting模型和Bagging模型。最后,我们使用均方误差(MSE)来评估两个模型的预测效果。 需要注意的是,Gradient Boosting算法和Bagging算法都是常用的集成学习算法,它们的预测效果相对于单个决策树会更加准确和鲁棒。但是,它们也需要更多的计算资源和时间。同时,预测结果也需要根据实际情况进行修正和调整,以提高预测准确性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值