机器学习导论大作业
赛题
赛题名
小学数学应用题自动解题
背景
阅读理解是近年来NLU的一个常见任务,通常要求在大段文本中理解关键信息。由于很多关键信息直接来源于文本的关键句子,所以很难衡量模型本身的”理解能力“,而机器对内容的理解是衡量AI在教育领域发展的一个重要依据。应用题包含简单的文字表述,相对密集的推理和计算,是评估机器阅读理解能力的一个重要场景。同时,应用题也是K12教研的重要组成部分,如果机器能完美的理解题意,将会给AI在教育中的发展产生巨大的想象空间。
任务
该任务是为了衡量现有机器学习模型在应用题理解方面的能力,模型读入一个应用题,输出该题的结果。为了降低任务的难度,赛题选择小学数学1-6年级校内题目。
例如:
- 商店有4框苹果,每框55千克,已经卖出135千克,还剩多少千克苹果?=85
- 玩具厂生产了960个电子玩具,每3个装一盒,每5盒装一箱,一共装了多少箱?=64
数据集
数据样例:
{
"id": "254761",
"segmented_text": "小 王 要 将 150 千 克 含 药 量 20% 的 农 药 稀 释 成 含 药 量 5% 的 药 水 . 需 要 加 水 多 少 千 克 ?",
"original_text": "小王要将150千克含药量20%的农药稀释成含药量5%的药水.需要加水多少千克?",
"ans": "450",
"equation": "x=150*20%/5%-150"
}
模型
以original_text为输入、equation为输出,以“BERT+UniLM”为基础架构,训练一个Seq2Seq模型。1
BERT
bert4keras
https://github.com/bojone/bert4keras