以下是课程参加者在课程结束时评估教师的调查。
Communication Skills
1. The instructor communicated course material clearly and accurately.
Yes No
2. The instructor explained course objectives and learning outcomes.
Yes No
3. In the event of not understanding course materials the instructor was available outside of class.
Yes No
4. Was instructor feedback and grading process clear and helpful?
Yes No
5. Do you feel that your oral and written skills have improved while in this course?
Yes No
我们希望根据他选择的选项总结每位与会者的选择。
如果提供的答案是[否,否,是,是,是]。然后我们将其概括为“教师无法清楚地总结课程目标和学习成果,但是在课外可以获得并且通常是有帮助的。教师的反馈和评分过程是明确和有帮助的,我觉得我的口头和书面技能因为这门课程而有所改善。
根据与会者选择的选项,摘要将完全不同。这导致许多答案基于所选择的选项和调查中的此类问题的数量。这些问题通常由培训机构提供。您如何提出通用解决方案,以便将其有效地转换为人类可读的形式。我正在寻找工具或库(基于java),这些建议将帮助我创建这样的人类可读输出。我想尽可能地隐藏最终用户的复杂性。
答案 0 :(得分:6)
您可以为每个问题准备一个正面版本和否定回答句子。然后,您可以使用支持或矛盾性质的连接词来连接这些句子(此外,除此之外,尽管如此......)以便响应将按照
的方式进行。“教师清楚准确地传达了课程材料。此外,教师解释了课程目标和学习成果。但是,如果不理解课程材料,那么教师就无法在课堂外学习。”
等等。您所要做的就是检查对问题n的回答是否与问题n-1相同,以决定使用哪个连接词。 HTH
答案 1 :(得分:1)
不幸的是,我不认为这个问题有一个通用的解决方案。不仅很难/不可能弄清楚哪些问题是相关的,以及如何将它们分组并在适当的时候添加“但是”,“和”和“然而”这样的词语,但是你试图产生的措辞不是'一个明显的转变。问题4:如果回答者回答否,那么结果断言将是“教师反馈不清楚或没有帮助,或教师评分过程不清楚或没有帮助”,假设原始问题被完美解析。我怀疑这就是你要找的东西。我还要指出,您的摘要(假设它包含每种响应的某种形式)对于审阅者来说读取的速度并不快。你可能低估了英语的自然模糊性和你想要的结果的特殊性。
答案 2 :(得分:1)
您是否查看过任何自然语言处理项目,例如http://opennlp.sourceforge.net/?
答案 3 :(得分:1)
我会推荐类似于Yuval所提出的内容,只需稍作修改即可使语言更加自然。
<强>制备强>
您需要为每个语句创建正面版本和负面版本。 您还需要按主题对语句进行排序;在您的示例中,前四个问题可以生成关于教师的声明,而最后一个问题应该生成关于我自己的声明。这很重要,因为非runon句子往往有一个单一的主题。
主题:讲师
正: “清晰准确地传达课程材料”,“解释课程目标和学习成果”,“课外可用来解释课程材料”,“提供明确有用的反馈和成绩”
阴性: “没有明确或准确地传达材料”,“没有解释课程目标或学习成果”,“课外材料无法解释课程材料”,“没有提供明确或有帮助的反馈和成绩”
主题:我/我
正: “感觉我的口语和书面技能在本课程中有所提高”
阴性: “在这门课程中,”我觉得我的口头和书面技能没有提高“
合并语句
同意声明
当陈述1-4全部达成一致时(全部为正或全是否定),您只需要以非常简单的方式组合它们:“讲师{statement1},{statement2},{statement3}和{statement4 }“。
如果陈述5同意陈述1-4,则用以下内容完成:“总体而言,我{statement5}”
如果声明5不同意,请用以下内容完成:“但是,我仍然{statement5}”
不同意陈述
当一些陈述是积极的而有些是负面的时候,会发生棘手的事情。最终结果需要看起来像:“讲师{statement1}和{statement2},但{statement3}和{statement4}。总的来说,我{statement5}。”
我们基本上有两组陈述;在我的例子中,语句1和2在第一组中,语句3和4在第二组中。为了使这项工作,小组应包含同意的声明;每组都应该是积极的或全部是消极的。重新排序语句以使每个组达成一致。然后我们将组合这样的组语句:“教师{group_statement},但是{other_group_statement}”
如果组中只有一个语句,请使用单个语句作为组语句。如果组中有多个语句,请使用逗号链接除最终语句之外的所有语句。将组中的最终语句与“和”
链接英语'但'的使用倾向于更加强调之后的内容而不是之前:如果我们以积极的一组结束,整个声明听起来是积极的,如果我们完成负面的组,整个声明听起来更负面。由您来决定如何强调语句,但我建议您对语句进行排序,使其与语句5一致,并以“整体,我{语句5}”结束。如果您决定以不同于声明5的方式订购,则应以“但是,我仍然{statement5}”结束。
这应该让你开始,你可以根据需要做一些修改。
答案 4 :(得分:0)
这个问题的最简单的解决方案是一个大的if else块,但这可能不是你想要的。
如果你想要多个独特的答案而不是n! if else语句,尝试让每个答案产生一个或两个的差异。如果你有一个肯定和否定的检查,那么前一个答案是否与之形成鲜明对比后缀为'然而'或者某些东西。
我希望这很有帮助。
答案 5 :(得分:0)
尝试以Matlab的“为什么”函数的实现为例。
答案 6 :(得分:0)
当然,您可能有自己想要这样的功能的理由,但从设计的角度来看,如果这是我的代码,我会强烈反对。为您的示例编写32(在最坏的情况下)不同的段落肯定会为您的最终用户提供人类可读的句子,并让他们感觉有人正在与他们沟通。试图自动生成某些东西会让你失去很多时间,但仍然看起来太乏味,特别是如果最终用户应该多次看到调查结果。