Open sicheng20 opened 4 years ago
可以增加遇到重复句子换个句式表达,就是所谓的洗稿的方法,增加一个替换变量,这个变量树形存储,第一级节点是同一个意思的句子的编号,它的子节点是各种表达,或者干脆嵌套映射也一样
可以增加遇到重复句子换个句式表达,就是所谓的洗稿的方法,增加一个替换变量,这个变量树形存储,第一级节点是同一个意思的句子的编号,它的子节点是各种表达,或者干脆嵌套映射也一样
名人名言也有重复的,这个完全不需要重复。
重复使用一句话是正常行为,只是目前经常会出现一个段落里面重复两三句话,频次太高太密了。 可以在生成句子后拉到一个名单里,生成的句子检测在名单里就重新生成,(200字/5句话)后再从名单里去除,这样就可以保证同样的句子不会太密。
这其实是个比较大的问题, 重复可以通过扩充语料库和换个抛色子的方法解决, 但我现在在想减小句子的粒度, 争取粒度更小.
https://github.com/menzi11/BullshitGenerator/pull/107 此 PR 提供了一些格言来部分规避这个问题。
考虑到该程序并不提供特别严肃的运用场合或者场景,简单用 list 来记录和跳过最近使用过的 8-10 种说法是否就足够呢?
重复使用一句话是正常行为,只是目前经常会出现一个段落里面重复两三句话,频次太高太密了。 可以在生成句子后拉到一个名单里,生成的句子检测在名单里就重新生成,(200字/5句话)后再从名单里去除,这样就可以保证同样的句子不会太密。
也分情况吧,我认为名人名言一般情况在同一篇文章中不应该重复。 转换总结类的句子倒是重复比较正常,但是怎么判定、怎么控制重复频率是个问题,简单点就直接不重复,稍微看起来真实点,可以多增加一些转换总结的语句。
107
此 PR 提供了一些格言来部分规避这个问题。
考虑到该程序并不提供特别严肃的运用场合或者场景,简单用 list 来记录和跳过最近使用过的 8-10 种说法是否就足够呢?
记录最近几个确实也是个简洁的解决办法,我认为名人名言在整个文章中出现一次就够了,其他语句可以按你说的简单记录最近几次使用过的就先不使用。
我觉得一篇文章中长句子的重复率不要太高,短句可以多次重复,长句算是10字以上应该可以算是长句了。
目前的语料还比较少,可能无法支撑6000字不重复。 解决方式一:可以增加语料库,这样能保证在生成不是太多(比如10000字以内)的字数以内,都不会出现重复句子。 二:设置达到字数前不重复,这样能动态保证只要要求的生成字数小于语料库总字数,那么就不会重复!