0
雷鋒網(wǎng) AI 科技評論按:隨著機器學(xué)習(xí)蓬勃發(fā)展,新的研究領(lǐng)域不停出現(xiàn)。除了創(chuàng)造并解決新的問題之外,現(xiàn)有的應(yīng)用其實也可以從機器學(xué)習(xí)中大為受益。Salesforce 近期的一篇論文就介紹了利用機器學(xué)習(xí),無需學(xué)習(xí)SQL語言就可以在數(shù)據(jù)庫中進行查詢。雷鋒網(wǎng) AI 科技評論把相關(guān)報道編譯如下。
SQL在編程領(lǐng)域越來越少被提及,但是SQL語言的學(xué)習(xí)曲線仍然陡峭,這就讓很多人放棄了嘗試直接和關(guān)系型數(shù)據(jù)庫打交道。CRM 軟件服務(wù)商 Salesforce 的人工智能研究團隊就從自己的業(yè)務(wù)開始下手,探索如何讓不具備 SQL 知識的人通過機器學(xué)習(xí)打開數(shù)據(jù)庫操作的大門。
在他們近期的論文「Seq2SQL: Generating Structured Queries from Natural Language using Reinforcement Learning」(Seq2SQL:用強化學(xué)習(xí)從自然語言生成結(jié)構(gòu)化查詢語句)中,構(gòu)建了一個機器學(xué)習(xí)中典型的序列到序列模型。在其中用到的強化學(xué)習(xí)讓模型在翻譯自然語言到SQL數(shù)據(jù)庫查詢語句任務(wù)中取得了讓人眼前一亮的成果。
這就意味著,在實際應(yīng)用中用戶可以直接問系統(tǒng):“橄欖球高校巡回賽排名第一的是哪支隊伍”,系統(tǒng)就會自動查詢對應(yīng)的數(shù)據(jù)庫,然后告訴你答案是密歇根大學(xué)隊。正如下面這張動圖示意的?
Salesforce 研究員 Victor Zhong,也是這篇論文的第一作者,介紹說:“一個正確的查詢語句其實可以有好幾種寫法。如果給系統(tǒng)里輸入一個自然語言的問題,對應(yīng)的查詢語句可能會有兩三種。我們用強化學(xué)習(xí)來鼓勵系統(tǒng)選用能夠查詢到相同結(jié)果的語句?!?/p>
隨著自然語言的提問里包含的單詞變多,可以想象這種機器翻譯任務(wù)也會很快變得非常復(fù)雜。應(yīng)對方式就是,對于每一個缺失單詞的可能翻譯數(shù)目施加的限制越多,翻譯任務(wù)就會變得越簡單。Salesforce 的研究人員們就利用了這種想法,他們對系統(tǒng)的提問里、數(shù)據(jù)庫標(biāo)簽里和典型 SQL 查詢語句里能夠包含的單詞做了一些限制,從而簡化了翻譯系統(tǒng)的設(shè)計難度。
讓 SQL 平民化其實也不是新鮮事了,Tableau 最近收購了創(chuàng)業(yè)公司 ClearGraph,后者的業(yè)務(wù)就是提供用英語而不是SQL語言查詢數(shù)據(jù)的方案。
Victor Zhong 補充說:“有的模型直接在數(shù)據(jù)庫上做操作,但是如果提問一個關(guān)于身份證號的問題就會有潛在的隱私問題。”
除了論文里的方案本身,Salesforce 的這項研究還有一個貢獻是他們構(gòu)建的 WikiSQL 數(shù)據(jù)集,他們的翻譯模型就是用這個數(shù)據(jù)集訓(xùn)練出來的。他們首先從 Wikipedia 采集了HTML表單,這些表單就成為了隨機生成的 SQL 查詢語句的基礎(chǔ);他們從這些查詢生成了對應(yīng)的問題,然后把問題放到亞馬遜 Mechanical Turk 眾包平臺上讓人類把它們改寫成自然語言。每個改寫后的句子都會被確認兩次,而且還安排了單獨的人指導(dǎo)這些確認過程。最終構(gòu)成的 WikiSQL 數(shù)據(jù)集也是目前所有同類數(shù)據(jù)集中最大的一個。
via TechCrunch,雷鋒網(wǎng) AI 科技評論編譯
論文地址:https://einstein.ai/static/images/layouts/research/seq2sql/seq2sql.pdf
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。