ConvNetJS 作者 Karpathy 曾发布了一个支持LSTM/RNN的系统 recurrent,js (https://github.com/karpathy/recurrentjs)
我安装后给它输入了300首宋词。训练约一个小时后下面是输出的一些伪宋词:
人香也红初雨,想暗娇明客。荒竟柱花里也,翠酒残气非句,参湿户,乱重沟呼点。自后练黄尊韵,
踪月,台词看去,参冷行春。
别韵初闲,空雁更烟 更下似风。花天困谁渐
今眉平骨秋梦,共翁暖、闲满断,漫凉疏佛样。匆欲欲犹眉渡,弃草不饶隔飞朝。吹后与纱教观?
窥恨吹我堆来时回篱,带底青萦约。
这系统完全不懂中文遑论宋词,所以输出的当然只是些服从概率的胡说八道而已。不过据此该有些方法可以进一步的优化输出的品质。例如一个方法是修改所用的loss function以进一步考虑其他的因素,如音韵,字义,整体结构,等等。这样当然还是不可能产生真正优质的宋词,不过这样将LSTM加上其他约束条件的做法该会是挺有趣的的一个研究方向。尤其是如果LSTM处理的不只是单字间的序列关系,而是也牵涉到从字词联想出来的一些深层语义资料的话,那么或许可以做出一些有意思的东西。
上面以宋词作为输入只是随手用上。如果真要做的话,或许还有更合适的其他领域。
我安装后给它输入了300首宋词。训练约一个小时后下面是输出的一些伪宋词:
人香也红初雨,想暗娇明客。荒竟柱花里也,翠酒残气非句,参湿户,乱重沟呼点。自后练黄尊韵,
踪月,台词看去,参冷行春。
别韵初闲,空雁更烟 更下似风。花天困谁渐
今眉平骨秋梦,共翁暖、闲满断,漫凉疏佛样。匆欲欲犹眉渡,弃草不饶隔飞朝。吹后与纱教观?
窥恨吹我堆来时回篱,带底青萦约。
这系统完全不懂中文遑论宋词,所以输出的当然只是些服从概率的胡说八道而已。不过据此该有些方法可以进一步的优化输出的品质。例如一个方法是修改所用的loss function以进一步考虑其他的因素,如音韵,字义,整体结构,等等。这样当然还是不可能产生真正优质的宋词,不过这样将LSTM加上其他约束条件的做法该会是挺有趣的的一个研究方向。尤其是如果LSTM处理的不只是单字间的序列关系,而是也牵涉到从字词联想出来的一些深层语义资料的话,那么或许可以做出一些有意思的东西。
上面以宋词作为输入只是随手用上。如果真要做的话,或许还有更合适的其他领域。