编码特定于域的文本生成器

时间:2010-11-09 21:15:50

标签: generator linguistics

我的一位朋友在房地产行业,在展示了房地产广告的写作艺术后,我意识到这是非常公式化的。特别是在线广告时,您会填写预定义的字段。

当然,我考虑创建一个几乎可以自动编写广告的生成器。我不希望它产生出色的甚至是非常好的副本,只是它可以像人类一样将单词和句子组合在一起。

我有一个定义广告的骨架/模板,我还将一组可以随机选择的短语和单词组合在一起,但是我对编码这样一个生成器的更一般方面感兴趣?我可以阅读哪些建议,提示或文献,以便更好地理解这个小项目?

2 个答案:

答案 0 :(得分:0)

使用有关列表的元数据将是一种方式。

对于给定的房子,你有这些属性:

(类型:bungalo,sq feet:< = 1400)您可以使用“舒适的小屋”这个短语。

卧室:明显,浴室也一样。假设使用大,中等字样

车库点: if> 2 然后“可以停放多辆车”等。

考虑到地址的纬度/经度,您可以更进一步,有网络服务,您可以找到附近的公园数量,附近的犯罪等等。

瑞克

答案 1 :(得分:0)

我想说你可以采取三种基本方法解决这样的问题,这取决于你希望系统的灵活程度以及你想要投入多少工作量。最简单的是将其视为报告生成问题,与Rick的建议一致。这可能就像我要制作一份上市初稿一样。结果将是纯粹的样板,但每个列表都可以由撰稿人快速打孔。

但是,如果你想获得幻想,你可以将它作为一种自然语言生成问题。您将从某种知识表示开始,描述列表的含义和规则集(比如说,有限状态传感器),用于将意义映射到语言形式。关于这类东西有大量的学术文献,尽管这些日子已经过时了。要开始的地方可能是Blackburn & Bos's book或NLTK套件(特别是contrib包中的一些项目)。

第三种方式是将其视为翻译问题,主要是将数据库条目“翻译”为广告文案。您将从大量列表和相应的人工书写广告开始,并构建两者之间关系的统计模型。 Moses/Giza++是用于构建和应用此类模型的通用工具。