论文速读自动解题+认知推理+常识发现

Posted 囚生CY

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了论文速读自动解题+认知推理+常识发现相关的知识,希望对你有一定的参考价值。

序言

赶忙,不能写得很详细,所以把两篇类似的合并发在一篇paper里了,第一篇难度较低,是基于模板的做法,但是其中的概率模型方法值得借鉴,第二篇难度很大,想要彻底搞明白需要时间。第三篇很快的过了一遍,是讲常识知识推理的,感觉有点像知识图谱里的关系预测,考虑到它在baseline上的提升不是太多,没有特别仔细地看,方法可能是前人用过的,不过看起来还是比较新颖的。

之所以突然又开始看这块,那肯定是被wyl给恶心了呗。

注意第一篇的项目代码是Java。

好家伙,雨停了,去跑步。

——吐了,刚做完拉伸就开始下大雨,硬着头皮跑了10圈,17’41",差强人意,五月份截至17日一共跑了四次长距离,不知道月底前能不能再跑一次长距离了,反正这一周多以来都没有起到能跑长距离的状态,诸多因素。

PS:
我发现那个大佬WXY(keep@WXY啊啊啊)昨天也跑了一次场地15km,特别快,均配4’10",不过比起他半马配速破四还不是那么牛B,然后脚底磨了个跟我去年一样鸡蛋大小的血泡,哈哈哈。

其实我注意到的是这货最近keep上发POST说自己好像不顺心,怕不是也和npy闹矛盾,因为我看到他npy好久不在他的POST下面跟他互动,而且他也很久不跑长距离了,莫名奇妙跑了一次场地15km,肯定是想散散心(以我自己的经验,我也喜欢烦的时候养两天状态去跑长距离)。虽然跟他只是点头之交,在场上跟跑过几次,也不太熟,但是就是觉得人总是个很奇怪的动物,总是会自寻烦恼,说白了就是吃得太撑,事太少,害。主要是从我自己的角度出发,我觉得好不容易接受了被一个人彻底绝交的现实(实话说这还是我第一次被别人绝交),又把心思放到另一个人身上,自己真的是差劲透顶,行为上不逾矩,但是心思上已经逾矩了。


Learning to Automatically Solve Algebra Word Problems 笔注

论文标题:Learning to Automatically Solve Algebra Word Problems

中文标题:学习自动求解代数语言问题

下载链接:Citeseer

项目地址:wordsprobs

  1. 本文给出了一种自动求解由自然语言表达的代数问题的求解模型,比如下面这个自然语言表达的问题:

    An amusement park sells 2 kinds of tickets. Tickets for children cost $1.50. Adult tickets cost $4. On a certain day, 278 people entered the park. On that same day the admission fees collected totaled $792. How many children were admitted on that day? How many adults were admitted?

    即可通过下面的一元二次方程组求解:
    { x + y = 278 1.5 x + 4 y = 792 ⟹ { x = 128 y = 150 (1) \\left\\{\\begin{aligned} &x&+y&=278\\\\ &1.5x&+4y&=792 \\end{aligned}\\right. \\Longrightarrow \\left\\{\\begin{aligned} x=128\\\\ y=150 \\end{aligned}\\right. \\tag{1} {x1.5x+y+4y=278=792{x=128y=150(1)

  2. 本文的模型是在根据带槽位slots)的自然语言模板template)生成的训练数据集上训练而来的,比如上面的例题就是一种模板,里面的四个具体数字( 1.5 , 4 , 278 , 792 1.5,4,278,792 1.5,4,278,792)以及对应的两个名词( Tickets for children \\text{Tickets for children} Tickets for children中的 T i c k e t s \\rm Tickets Tickets Adult tickets \\text{Adult tickets} Adult tickets中的 t i c k e t s \\rm tickets tickets)都是模板槽位上的填充词。

    这些推断得到的对应关系可以用于定义跨语句特征cross-sentence features)以及给模型提供全局性的暗示global cue),比如在上面的例题中$($1.50,\\text{children}) 和 和 ($4,\\text{adults}) 都 围 绕 着 单 词 都围绕着单词 \\rm cost$,这就暗示模型需要将两个常量的乘积进行累和。

  3. 本文的监督学习有两种场景,分别是对问题解的监督和求解问题的方程组的监督,显然后者是更强的监督。

  4. 本文的模型在Algebra.com中提供的 514 514 514个代数语言问题上进行评估,成功求解了超过 69 % 69\\% 69%的代数语言问题(第二种较强的监督),如果只看问题解的话可以达到 70 % 70\\% 70%以上的精确度。

  5. 相关研究一览:

    • 情境语义解释Situated Semantic Interpretation):强化学习,高成本的逻辑形式标注(用于对话系统,问答系统)。
    • 信息提取Information Extraction):本文的方法是基于模板的信息提取。
    • 自动语言问题求解器Automatic Word Problem Solvers):基于规则的方法
  6. 具体将语言问题word problems)映射成方程组的方法:其实连方程组都是有模板的

    Figure2

  7. 接下来就是非常硬核的模型推导部分了,看起来还挺有意思:

    • 定义

      X \\mathcal{X} X是所有语言问题的集合,一个语言问题word problems x ∈ X x\\in\\mathcal{X} xX是由 k k k个单词的序列 ( w 1 , w 2 , . . . , w k ) (w_1,w_2,...,w_k) (w1,w2,...,wk)构成,定义方程模板equation template t t t,是公式 A = B A=B A=B,其中 A A A B B B都是表达式,表达式 A A A是下面四种之一:

      • 一个数字常量number constant f f f
      • 一个数字槽位number slot n n n
      • 一个未知数槽位unknown slot u u u
      • 两个表达式数学关系 R R R,如 n 1 × u 1 n_1\\times u_1 n1×u1

      定义一个系统模板system template T T T l l l方程模板的集合 { t 0 , t 2 , . . . , t l } \\{t_0,t_2,...,t_l\\} {t0,t2,...,tl} T \\mathcal{T} T是所有系统模板的集合(族)。

      注意到一个槽位可能在一个系统模板中出现不止一次,这样可以使得同一个变量可以在不同的方程中被重复使用。

      记一个槽位 u u u的具体实例 i i i u i u^i ui,简洁地,省略那些只出现一次的槽位的实例 i i i上标。

      为了捕获语言问题 x x x系统模板 T T T之间的对应关系,定义 p p p是一系列二元组 ( w , s ) (w,s) (w,s)的集合,其中 w w w x x x中的一个符号token), s s s T T T中的一个槽位实例。

    • 给定上述一系列定义,一个方程 e e e即可通过一个模板 t t t构造得到,其中:

      • 每个数字槽位 n n n将使用一个具体的实数替换;
      • 每个未知数槽位将使用一个变量替换;
      • 每个数字常数 f f f保持原样;

      称上述将模板转换为方程的过程为模板实例化template instantiation

    • 类似地,一个方程系统equation system E E E l l l个方程的集合 { e 0 , e 1 , . . . , e l } \\{e_0,e_1,...,e_l\\} {e0,e1,...,el},将其中每个方程都实例化即可,最终得到方程组的解 a a a(若干实数构成的元组)。

    • 定义语言问题派生(derivation)的 y = ( T , p , a ) y=(T,p,a) y=(T,p,a),其中 T T T是选定的系统模板 p p p T T T x x x之间的对应alignment), a a a是问题的解,令 Y \\mathcal{Y} Y是所有这些派生 y y y构成的集合。

    • 派生空间

      我们的目的是将每个语言问题 x x x映射到一个方程系统 E E E

      方程系统的空间可以定义为所有可能的系统模板 T T T的集合 T \\mathcal{T} T和原始问题 x x x中那些可以用于填充槽位的单词。

      实际操作中,我们根据训练数据生成 T \\mathcal{T} T Section 4.1 \\text{Section 4.1} Section 4.1),给定系统模板 T ∈ T T\\in\\mathcal{T} TT,创建 T T T x x x之间的对应alignment p p p,所有可能的对应对alignment pairs)被以下各项条件约束:

      • 每个数字槽位 n ∈ T n\\in T nT可以对应文本中的任意数字
      • 一个数字单词只能对应单一的数字槽位 n n n
      • 一个未知数槽位实例 u ∈ T u\\in T uT只能对应一个名词

      具体对应方式如下图所示:

      Figure 3

    • 概率模型:显然派生 y ∈ Y y\\in\\mathcal{Y} yY语言问题自然语言处理常识推理综述论文,60页pdf

      常识推理问答相关最新研究进展

      2021年MathorCup数学建模A题自动驾驶中的车辆调头问题全过程解题论文及程序

      [论文阅读] (22)图神经网络及认知推理总结和普及-清华唐杰老师

      SICP 习题 (1.38)解题总结

      学不会“常识”:人工智能的致命短板?