C7.14.3Hidden grammars cause trial-and-error设计研究
系统只支持命令语法却不告知具体句式时,用户会反复试错
别名: 隐性文法 · 试错 · 不可发现口令
概念解释
产品其实只认命令语法,界面却装成“你随便说”。用户不知道合法句式,只能一遍遍改措辞,直到偶然撞上文法,或放弃。这种隐性文法把学习负担变成现场试错,失败看起来像识别不准。
机制
文法约束在解码端是硬的,用户模型里却是开放的。每次尝试若只返回“没听懂”或一个不相关的执行,反馈不含“你可以说的形状”。人会用近义词、加礼貌、放慢——这些对开放 NLU 有时有用,对固定图毫无帮助,甚至更偏。试错轮次消耗耐心,也把错误样本送进日志,看起来像 ASR 问题。可发现性失败发生在符号层:通道能听见,词不在图上。与自由表达的歧义不同:那里系统听懂了句子却选错技能;这里句子根本不在语言里。
怎么研究
不给示例,只给任务目标,记录直到成功或放弃的尝试次数、尝试如何偏离合法句式、以及用户是否认为是识别错了。对比在失败后展示合法例子的条件。眼动或口语报告用来看他们是否在搜帮助。内部人员当被试会严重低估试错。
边界
三五条极其自然的口令(“打电话给妈妈”)即使不公示,命中率也高。文法若与口语高度重合,隐性的伤害较小。帮助文档里写了但任务中找不到,仍等于没告知。把试错当成需要更大模型,会继续藏文法。
怎么落地
- 在聆听态展示一两条当前可说的例子,失败后再换一条,而不是只说“请再说一次”。
- 设置或首次教程列出命令清单,可搜索。
- 日志把“文法外话语”与“文法内识别错”分开,前者走可发现性,后者走 ASR。