java rnn生成古诗_Tensorflow 基于RNN生成古诗词 自己的实践
在網(wǎng)上看到一篇利用Tensorflow+RNN模型生成古詩(shī)詞的練習(xí),覺(jué)得挺有意思的便自己來(lái)試了下,算是熟悉下Tensorflow+NLP的基本操作流程
首先pip 安裝NLTK
在你的Tensorflow環(huán)境下 運(yùn)行pip install nltk
下載數(shù)據(jù)集:
$?python
>>>import nltk
>>>?nltk.download()
使用的數(shù)據(jù)集:全唐詩(shī)(43030首):https://pan.baidu.com/s/1o7QlUhO
RNN介紹:
RNN的目的使用來(lái)處理序列數(shù)據(jù)。在傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)模型中,是從輸入層到隱含層再到輸出層,層與層之間是全連接的,每層之間的節(jié)點(diǎn)是無(wú)連接的。但是這種普通的神經(jīng)網(wǎng)絡(luò)對(duì)于很多問(wèn)題卻無(wú)能無(wú)力。例如,你要預(yù)測(cè)句子的下一個(gè)單詞是什么,一般需要用到前面的單詞,因?yàn)橐粋€(gè)句子中前后單詞并不是獨(dú)立的。RNNs之所以稱(chēng)為循環(huán)神經(jīng)網(wǎng)路,即一個(gè)序列當(dāng)前的輸出與前面的輸出也有關(guān)。具體的表現(xiàn)形式為網(wǎng)絡(luò)會(huì)對(duì)前面的信息進(jìn)行記憶并應(yīng)用于當(dāng)前輸出的計(jì)算中,即隱藏層之間的節(jié)點(diǎn)不再無(wú)連接而是有連接的,并且隱藏層的輸入不僅包括輸入層的輸出還包括上一時(shí)刻隱藏層的輸出。
由于原文的代碼版本比較低,所以很多還要自己調(diào)整,想一想還是把總的源碼貼上吧?GIT傳送
當(dāng)然,由于我的小破筆記本安裝的是CPU版本的Tensorflow,速度實(shí)在太慢,訓(xùn)練的時(shí)間就設(shè)的比較短,當(dāng)然對(duì)于古詩(shī)詞這種藝術(shù)創(chuàng)作,目前AI還是基本無(wú)能為力,生成的東西也都是狗屁不通的,但是至少格式對(duì)了:
總結(jié)
以上是生活随笔為你收集整理的java rnn生成古诗_Tensorflow 基于RNN生成古诗词 自己的实践的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 等保-信息安全等级保护的等级划分原则
- 下一篇: css精灵,又叫css背景精灵