導航:首頁 > 手機軟體 > 可以讓對聯上下聯自動組合的軟體

可以讓對聯上下聯自動組合的軟體

發布時間:2022-10-01 07:21:28

❶ 有沒有免費對對聯的網站,就是一個上聯輸入會自動對出下聯

有,微軟亞洲電腦對聯,在網路輸入即可

❷ 有沒有將寫好的上下聯橫批拼成一幅像貼在門上的軟體

寫對聯是講究橫橫批和豎上邊和下聯和橫批講究對稱

❸ 使用Encoder-Decoder模型自動生成對聯的思路

在我看到第一篇Encoder-Decoder模型的論文的時候,我就覺得用這個來作對聯自動生成是再合適不過的了,做詩詞應該也是比較適合的,但是相對詩詞,用它來做對聯肯定更合適。今天的文章就講講這方面的內容。這篇文章主體內容是2015年底形成的,本來我的打算是收集些訓練數據,讓Encoder-Decoder+Attention生成些對聯把這篇文章補充些例子再發出去,不過因為精力原因,遲遲沒有做這個實驗,短期內可能也沒時間做,所以乾脆就現在分享出來,哪位有精力和興趣可以實際做一下試試,這看上去沒啥實際用處,但是還是挺好玩的一件事。不過我確信用這個模型做對聯生成一定可以做好。

為什麼說Encoder-Decoder模型適合作對聯呢?因為相對詩詞等任務來說,對聯要求嚴格的上下聯對仗,老話不是說了嗎,以前兒童詩詞啟蒙時都要學一些對仗規則,比如:天對地,雨對風,大陸對長空,王八對綠豆,八戒對悟空(後面兩句是本文作者詩才大發胡謅的,請未成年兒童切勿模仿或者在有大人監督場景下模仿@^^@)。這種嚴格的對仗關系意味著極強的映射規律性,而這個用RNN和Encoder-Decoder來說正好是能夠發揮它們長處的地方,所以說Encoder-Decoder加上RNN配置是非常適合用來做對聯的。

對聯的嚴格對仗性可以給個小故事,大家直觀感受下:

相傳解縉少時家貧,其家有片對著地主家的一片竹林,於是他作了副對聯:「門對千桿竹,家藏萬卷書」。地主心說:我幼兒園肄業文憑,你在我面前你這么裝有文化好嗎?於是不爽,命人把竹子砍短,解縉靈機一動把對聯加了一個字,改成:「門對千桿竹短,家藏萬卷書長」。地主氣不打一處來,放出功夫熊貓把竹子全吃了,解縉又改對聯:「門對千桿竹短無,家藏萬卷書長有」。氣得地主直跳腳罵娘。

從這個故事我們可以歸納出中心思想就是:從古至今,有錢就是大爺,可以隨便砍伐樹木破壞生態而不被法律制裁@^^@…..不對,跑偏了,中心思想應該是:肄業的同學都容易創業成功,成為新時達的地主老財,而好好上學的大都免不了家貧的結局…..也不對,你看我這三觀都歪到引力波都達不到的宇宙之外了,中心思想是:對聯是有極強的對仗性的。而這種對仗性代表了什麼?代表了語言單元之間極強的規律性,而這是非常適合通過機器來學習並容易做好的事情,這是為何我堅信用Encoder-Decoder做對聯一定能夠做好的原因。

|Encoder-Decoder模型

Encoder-Decoder框架可以看作是一種文本處理領域的研究模式,應用場景異常廣泛。下圖是文本處理領域里常用的Encoder-Decoder框架最抽象的一種表示:
圖1. 抽象的Encoder-Decoder框架

Encoder-Decoder框架可以這么直觀地去理解:可以把它看作適合處理由一個句子(或篇章)生成另外一個句子(或篇章)的通用處理模型。對於句子對<X,Y>,我們的目標是給定輸入句子X,期待通過Encoder-Decoder框架來生成目標句子Y。X和Y可以是同一種語言,也可以是兩種不同的語言。而X和Y分別由各自的單詞序列構成:

Encoder顧名思義就是對輸入句子X進行編碼,將輸入句子通過非線性變換轉化為中間語義表示C:

對於解碼器Decoder來說,其任務是根據句子X的中間語義表示C和之前已經生成的歷史信息y1,y2….yi-1來生成i時刻要生成的單詞yi

每個yi都依次這么產生,那麼看起來就是整個系統根據輸入句子X生成了目標句子Y。

|Encoder-Decoder自動生成對聯

機器自動生成對聯這個事情,可以分成兩種情況,一種情形是:假設對聯的上聯是已經知道的,比如人自己想的,任務是由機器來自動產生下聯;第二種情況是:假設要求上下聯全部都由機器自動生成。明顯第一種情況要求較低,相對簡單,第二種情況要求較高,相對復雜。下面我們分述兩者的可能解決思路。

情形一:已知上聯,機器自動生成下聯

假設我們已經拿到了上聯,例如:「風雲三尺劍」(註:這是我比較喜歡的一副對聯的上聯,作者左光斗先生,如果是你的話會對什麼下聯?),如何讓機器自動生成下聯?

很明顯,這個問題直接可以由Encoder-Decoder框架來進行下聯自動生成。這種場景是典型的Encoder-Decoder框架應用問題。我們所需要做的就是配置好Encoder-Decoder框架的具體模型,比如Encoder和Decoder都採用RNN模型來做,圖2展示了用Encoder-Decoder框架做對聯下聯自動生成的架構圖。

圖2. Encoder-Decoder生成下聯

只需要找到大量的對聯數據對這個模型進行訓練,那麼即可利用這個模型,輸入上聯,機器自動產生下聯了。

值得提的一點是,很明顯,對於做對聯這個事情來說,Encoder-Decoder框架加上Attention應該會顯著提升產生下聯的質量,原因還是因為它是要求嚴格對仗的,所以在生成下聯某個字的時候,找到對應上聯相應字作為生成的重點參考信息無疑是非常重要的。比如看到上聯的「三」字,Attention模型使得下聯產生對應字「一」的時候重點參考上聯的「三」這個字,應該知道對應的應該是一個數字型漢字。圖3是加上Attention模型的示意圖。

圖3. Attention模型

這里再插上一句,作為對聯下聯生成任務來說,使用Encoder-Decoder來做這個事情,我相信漢字之間的對仗關系應該能夠很好地被學會,但是如何保證生成下聯語義能夠一致其實並不一定能夠很好地解決。這是什麼意思呢?意思是可能機器看到上聯「風雲三尺劍」,極有可能對出下面的內容:「雨風萬丈刀」,單看每個字對仗的都很工整,但是作為一個整體,語義看上去不那麼協調。(註:其實如果真對出這個下聯,想想其實還是挺豪情萬丈的,是吧?這其實跟人在意識上會把連續出現的字通過想像組合出一種合理語境有關。)

當然如果訓練數據夠大的話,這個問題應該不會太大,因為本質上Encoder-Decoder在解碼階段是能夠學會語言模型的,而很明顯語言模型的引入對於生成下聯的可讀性和語言一致性是很有幫助的。但是如果訓練數據不是那麼大,我相信通過使用大量古詩來訓練一個詩詞語言模型,在Decoder生成階段,每個時間節點t生成很多可能的候選漢字,然後利用這個語言模型+Beam Search應該能夠使得生成的對聯保證一定的語義一致性。

到此為止,作為對聯生成其實還有個問題,就是上下聯對應漢字的平厭問題,這個也可以類似語言模型一樣作為後處理的步驟進行篩選過濾。不過我覺得Encoder-Decoder也極有可能會學會這種平厭關系,因為這個規律還是很明顯的,這點不確定,得通過實驗來證明這一點。

情形二:對聯由機器完全自動生成

上面講的是如果上聯是人給出的,機器如何自動產生和順的下聯。那麼如果問題難度增加一下,如果上聯也不知道,機器能夠完全自動生成完整的一幅對聯嗎?

很明顯,情形一是情形二的子問題,假設我們分兩步來完全自動地生成對聯,第一步是不論用什麼方法,先生成一句上聯。第二步根據上聯自動生成下聯。第二步明顯可以使用情形一訓練出的模型來做。所以情形二的關鍵問題轉換為:如何在一無所知情況下生成一句上聯?

我覺得這個子問題可以通過如下方式解決:使用RNN構建一個古詩詞的語言模型,然後上聯通過這個RNN語言模型自動生成,這從道理上是講得通的。也就是說,整體架構如圖4所示。

圖4 完全自動生成對聯

此外,對於對聯來說,還遺留一個小問題,就是對聯的橫批如何生成的問題。因為一般對聯還需要配上一個橫批來歸納上下聯的主旨。這個其實思路也是類似的,可以把上下聯看做一個整體作為Encoder的輸入,Decoder用來生成橫批即可,這個類似於用Encoder-Decoder+Attention做摘要的思路。關鍵是有沒有那麼多訓練數據是帶橫批的,我覺得這個挺懸的。

好了,通過以上方式,我相信能夠構建一個看上去還不錯的對聯自動生成系統。

❹ 有什麼做對聯的軟體嗎急!

正如你所說,機器的東西只適合玩玩的游戲;對聯是一門國粹的藝術,應該因人而設、應景而生、依情所至。。。。。你可以自己學著寫寫看,或找人寫、或在網路上問一問,很有趣的。

❺ 使用Encoder-Decoder模型自動生成對聯的思路

永備敬治金聰麗明以下是對聯生成器生成的下聯:久無留行水宿塵遠 不留行來水性澄清 不留行來玉性澄清 不有尊來玉性澄清 不留行來水媚時好 常開邀來月媚塵靜 不盡邀來月媚時好 常修行同水性澄清 不有吟知雪性澄清 空有吟知雪性澄清 不盡吟知雪性時好 常留吟知雪性澄清 不盡吟知雪性疏淡 不成行來月媚時好 久無酬知雪性澄清 常開邀來月媚塵清 久無留行水宿時好 空留吟知雪性澄清 久無留行水宿澄清 常修行知雪性澄清 不留行知玉悵然清 常開迎來玉性澄清 常修行來月媚時好 不留行同水性澄清

❻ 要尋求對聯,應安裝什麼軟體

對對聯有哪些基本要求是「六相」,分述如下:
一是字數相等
上聯字數等於下聯字數。長聯中上下聯各分句字數分別相等。有一種特殊情況,即上下聯故意字數不等,如民國時某人諷袁世凱一聯: 「袁世凱千古;中國人民萬歲。」上聯「袁世凱」三個字,下聯「中國人民」四個字,意思是袁世凱對不起中國人民。
對聯中允許出現疊字或重字,疊字與重字是對聯中常用的修辭手法,只是在重疊時要注意上下聯相一致。如明代顧憲成題無錫東林書院聯:「風聲、雨聲、讀書聲,聲聲入耳;家事、國事、天下事,事事關心。」
但對聯中應盡量避免「同位重字」和「異位重字」。所謂同位重字,就是以同一個字在上下聯同一個位置相對。所謂異位重字,就是同一個字出現在上下聯不同的位置。不過,有些虛詞的同位重字是允許的,如杭州西湖葛嶺聯:「桃花流水之曲,綠蔭芳草之間。」
上下聯「之」字同位重復,但因為是虛字,是可以的。不過,有一種比較特殊的「異位互重」格式是允許的(稱為「換位格」),如林森挽孫中山先生聯:「一人千古,千古一人。」

❼ 誰有自動生成對聯的軟體。。

誰有自動生成對聯的軟體:對聯生成器 v1.0 免費版、自動對對聯系統軟體2018最新版、春節對聯一鍵生成器、小螞蟻編輯器、微軟對聯。

1、對聯生成器 v1.0 免費版

對聯生成器是一款可以在電腦上使用的強大對聯生成器,這款對聯生成器完全免費,無需下載,平仄規范並嚴謹,數百萬條對聯,點擊即可使用,是一款綠色的pc端對聯生成器。對聯又稱楹聯、對偶、門對、春貼、春聯、對子、桃符等,一種對偶文學,起源於桃符。

2、自動對對聯系統軟體2018最新版

自動對對聯系統軟體是一款十分有趣的對聯軟體系統工具,只要你給出上聯,系統會自動生成相對應的下聯,十分有趣。對聯相傳起於五代後蜀主孟昶。對聯是中國漢族傳統文化瑰寶。對聯又稱楹聯。

5、微軟對聯

微軟對聯是由微軟亞洲研究院自然語言計算組研發的計算機自動對聯系統。 首先用戶給定上聯,然後系統自動提供若干下聯供用戶選擇, 用戶可以通過交互手段優選字詞來生成滿意的下聯;當確定一副對聯後還可以生成若干四字橫批供用戶參考。

❽ 自動對對聯系ǻ

自動生成對聯的軟體:對聯生成器v1.0免費版、自動對對聯系統軟體2018最新版、春節對聯一鍵生成器、小螞蟻編輯器、微軟對聯。

1、對聯生成器v1.0免費版

對聯發生器是一種能在計算機上使用的強力對聯發生器。這個對聯發生器是完全免費的。不需要下載。對聯又稱春聯、對聯、門對、春貼、春聯、對聯、桃字等,是一種對立文學,起源於桃字。

2、自動對對聯系統軟體2018最新版

自動對聯系統軟體是一個非常有趣的對聯軟體系統工具,只要你給了上面的對聯,系統就會自動生成相應的下面的對聯,非常有趣。對聯據說起源於五代後期蜀國的昌。春聯是中國傳統漢族文化的瑰寶。對聯也被稱為對聯。

3、春節對聯一鍵生成器

春聯一鍵發生器是一款專業的對聯生成軟體,可以自己配對,也可以從電腦裡面選擇,操作簡單,功能強大,使用方便,該軟體是由微軟亞洲研究院自然語言計算集團開發的計算機自動對聯系統。

4、小螞蟻編輯器

小螞蟻編輯專業微信公眾文章材料和微信的內容風格,包括微信圖片風格,微信動態圖片,微信的背景圖片、標題符號、二維代碼模板、全文模板、有趣的問題等等,還可以產生對聯,例如根據代的不規則的底線。

5、微軟對聯

微軟對聯是微軟亞洲研究院自然語言計算組開發的計算機自動對聯系統。首先用戶給出上面的鏈接,然後系統自動提供幾個下面的鏈接供用戶選擇。用戶可以通過交互的方式選擇最合適的單詞,生成滿意的下方鏈接。在確定一副對聯後,可以生成若干個四字塊供用戶參考。

❾ 求將多個詞語自動生成組合的軟體

樓主你好,很高興能回答這個具有挑戰性的問題。開始以為很簡單,我暗自慶幸這個高的分,這么久了居然還沒人給答案。
可是當做動手做的時候才發現它的難度就想組合本身一樣:隨著組合數的增多——難度瘋狂的增長!
應該說最後是用了遞歸原理才有了思路的,廢話不說了,且看代碼:

import java.util.*;
public class zuheTest{
public static void main(String[] args){
System.out.println("Java實現詞語自動組合例子");
System.out.println("請輸入片語,每個片語之間以空格分開,空格+Enter確認");
Scanner sc=new Scanner(System.in);
String str=sc.nextLine();
System.out.println("輸入的信息是:"+str);
Vector<String> vec=new Vector<String>();
String str2="";
for(int i=0;i<str.length();i++){
char ch=str.charAt(i);
if(ch!=' '){//空格不會添加上去的
str2+=ch;
}else{
if(str2.length()>0)//說明有內容
vec.add(str2);
str2="";
}
}
int len=vec.size();
System.out.println("獲得詞的個數是:"+len);
if(len<1){
System.out.println("你沒有輸入任何詞語!\n程序結束");
}else{
System.out.println("正在組合……");
String[] ary=new String[len];//要初始化
vec.toArray(ary);
Vector<Integer> font=new Vector<Integer>();
Vector<Integer> lim=new Vector<Integer>();
for(int i=0;i<ary.length;i++){
System.out.println("組合詞數:"+(i+1));
new hello(ary,font,lim,-1,(i+1));//開始一點也沒有限制所以取-1
System.out.println("\n* * * * * * * * * * * * * * * ***");
}
System.out.println("程序完畢!");
}
}
}

class hello{
private int maxl;//表示組合的詞數
private Vector<Integer> font;
private String[] ary;//mubiao 目標數組
private Vector<Integer> inde;//不能取的下表
private int limt=-1;//最大不能取的下標
private int reNum;//要其餘個數的結果數,即有多少個符合條件
public hello(){}
public hello(String[] ar,Vector<Integer> fon,Vector<Integer> ind,int malit,int max){
this.ary=ar;
this.font=fon;
this.inde=ind;
this.limt=malit;//限制最大坐標,前面的都不能取值
this.maxl=max;
reNum=ary.length-(limt+1);//總共書減去不能去的數,就是可以取的結果數
int[] kequ=new int[reNum];
int kqid=0;
for(int w=limt+1;w<ary.length;w++){
kequ[kqid]=w;
kqid++;
}

if(font.size()<maxl){
if(font.size()==maxl-1){//說明只要加上本次的結果就可以了
for(int k=0;k<reNum;k++){
showLine(kequ[k]);
}
}else if(font.size()<maxl-1){//說明在子現在font 的長度至少差2,的分兩步或多步實現
for(int k=0;k<reNum;k++){
font.add(kequ[k]);
inde.add(kequ[k]);
new hello(ary,font,inde,kequ[k],maxl);
inde.remove(inde.size()-1);
font.remove(font.size()-1);
}
}
}

}
public void showLine(int last){
for(int u=0;u<font.size();u++){
if(u==0){
System.out.print("'"+ary[font.get(u)]+" ");
}else{
System.out.print(ary[font.get(u)]+" ");
}
}//前面有詞的時候
if(font.size()==0){//說明前面每詞
System.out.print("'"+ary[last]+"', ");
}else
if(last<ary.length)
System.out.print(ary[last]+"',");
else
System.out.print("'");
}
public boolean canSelect(int inde){
boolean result=true;
for(int t=0;t<font.size();t++){
if(font.get(t)==inde){
result=false;
break;
}
}
return result;
}
}

呵呵,國慶快樂!!!

閱讀全文

與可以讓對聯上下聯自動組合的軟體相關的資料

熱點內容
電腦上怎麼下載班智達的軟體 瀏覽:1152
無痕跡消除圖片軟體 瀏覽:715
免費小票軟體 瀏覽:949
華為在哪裡設置軟體停止運行 瀏覽:956
用電腦鍵盤調節聲音大小 瀏覽:1255
自動刷軟體賺錢 瀏覽:1257
古裝連續劇免費版 瀏覽:1410
工免費漫畫 瀏覽:1141
手機軟體專門儲存文件 瀏覽:1504
uos如何用命令安裝軟體 瀏覽:1312
有線耳機插電腦麥克風 瀏覽:642
侏羅紀世界3在線觀看完整免費 瀏覽:991
單個軟體怎麼設置名稱 瀏覽:716
鳳凰網電腦版下載視頻怎麼下載視頻怎麼下載 瀏覽:1380
明白之後如何免費獲得無人機 瀏覽:827
如何解禁軟體菜單 瀏覽:847
副路由器連接電腦視頻 瀏覽:1347
內置wifi電視如何裝軟體 瀏覽:1099
手機換零免費雪碧 瀏覽:1584
國行蘋果如何下載美版軟體 瀏覽:1204