
為了獲得更多民眾的支持,美國總統演講/發推時使用的語言通常都很「接地氣」,而現任總統唐納德·特朗普則更以「口無遮攔」著稱。由于「推特狂魔」已經為我們準備了大量訓練數據,現在讓我們嘗試一下如何使用循環神經網絡來模仿總統特朗普的語言風格。
誰了解最好的詞匯?
I know words. I have the best words.
在 2015 年 12 月 30 日舉行的南卡羅來納州競選會上,川普說出了上面這些話。這些「川普主義」的言論使得特朗普的粉絲更加喜歡他,但也使他成為其他人的笑柄。
無論每個人對他的看法如何,川普的說話方式毋庸置疑是十分獨特的:他的言語十分隨意且無視傳統句子結構約束。這類特點使他的講話十分具有辨識度。
正是這種獨特的風格吸引了我,我嘗試用機器學習來模仿它:生成看起來或聽起來像川普會說的文本。
數據收集與處理
要學習川普的說話風格,首先要獲取足夠多的語言樣本。我主要關注兩個主要的數據來源。
非常規句子結構的例子。
川普的推特是收集其語言樣本最好的地方。川普的獨特之處在于他利用推特直接與美國百姓進行交流。此外,作為一名「明星人物」,他的言論已經被收集組織了起來(http://www.trumptwitterarchive.com/),這幫我省去了不少麻煩。一共大約有接近 31000 份推文可供使用。
總統致辭和演講
然而,除了他在網絡上表現出的一面,我還想更多地了解他作為總統更加正式的一面。為此,我收集了白宮簡報檔案提供的相關數據。借助 Python 工具我快速匯總了大約 420 份川普的演講稿以及評論講話。文本內容涵蓋了各類活動,如與外國政要會面、與國會議員進行會議以及頒獎典禮。
與推特不同的是,雖然每一個字都是由特朗普本人所寫或口述的,但這些文本還包含其他政治家或者記者所說的話。將川普所說的話與其他人的區分開來似乎是一項艱巨的任務。
正則表達式很強大。相信我。
輸入正則表達式,雖然名字聽起來很無聊但是功能絕對強大。
正則表達式允許你指定要搜索的模式;此模式可以包含任意數量的特定約束、通配符或其他限制,以保證返回的數據能夠滿足你的要求。
經過一些試驗和調整,我生成了一個復雜的正則表達式,它只返回總統的言論,而不會返回其他的詞或注釋。
處理文本還是不處理?這是個問題
通常處理文本的第一步是對其進行歸一化。歸一化的程度和復雜度根據需求而變,從簡單地刪除標點符號或大寫字母,到將單詞的所有變體規范化為基本形式。工作流示例見:https://towardsdatascience.com/into-a-textual-heart-of-darkness-39b3895ce21e。
然而,對我而言,歸一化過程中會丟失的具體特質和模式正是我需要保留的。所以,為了讓我生成的文本更加可信和真實,我選擇繞過大部分標準歸一化工作流程。
文本生成
馬爾可夫鏈
在深入研究深度學習模型之前,我們先來了解另一種常用的文本生成方法——馬爾可夫鏈。馬爾可夫鏈之前用作生成笑話文本的捷徑:比如使用馬爾可夫鏈基于星際迷航(https://twitter.com/captain_markov?lang=en)、辛普森一家(https://github.com/cshenton/simpsons_markov)劇本生成文本等實例。
馬爾可夫鏈是快速且粗糙的,它只關注當前的詞,以確定接下來的詞是什么。這種算法每次只關注當前的詞以及接下來可能會出現的詞。下一個詞是隨機選擇的,其概率與頻率成正比。下面用一個簡單的例子來說明:
簡化的馬爾可夫鏈例子,其中接著「taxes」出現的可以是「bigly」、「soon」或者句號。
現實生活中,如果川普說「taxes」一詞,70% 的情況下他會在說完「taxes」后接著說「bigly」,而馬爾可夫鏈 70% 的情況下會選擇「bigly」作為下一個詞。但有時候,他不會說「bigly」。有時他會結束句子,或者選擇另一個詞接在后面。馬爾可夫鏈很可能會選擇「bigly」,但它也有可能選擇其他可選的選項,這為生成的文本引入了一些不確定因素。
之后馬爾可夫鏈可能會不斷的生成下去,或者直到句子結束才停止。
對于快速且隨機的應用場景,馬爾可夫鏈可能非常適用,但是它一旦出錯也很容易看出來。由于馬爾可夫鏈只關心當前的單詞,因此它生成的句子很容易跑偏。一個一開始討論國內經濟的句子可能結束的時候在討論《誰是接班人》。
使用我有限的文本數據集,馬爾可夫鏈的大部分輸出是無意義的。但偶爾也會有「靈光一現」:
用推文訓練馬爾可夫鏈所生成的句子(種子詞為「FBI」)。
循環神經網絡
然而如果要訓練得到更加真實的文本,需要一些更復雜的算法。循環神經網絡(RNN)已經成為許多文本或基于序列的應用的首選架構。RNN 的詳細內部工作原理不在本文的討論范圍之內。
這些神經元的顯著特征是它們具有各種內部「記憶」。單詞的選擇和語法很大程度上依賴于上下文,而這些「記憶」能夠跟蹤時態、主語和賓語等,這對生成連貫的句子是非常有用的。
這類網絡的缺點是它們的計算量非常大,在筆記本電腦上用模型將我的文本數據訓練一次要一個多小時,考慮到要這樣訓練大約 200 次,這類網絡不是很友好。
這里就需要云計算大展身手了。許多成熟的科技公司提供云服務,其中最大的是亞馬遜、谷歌和微軟。在需要大量 GPU 計算的實例中,之前需要一個小時的過程縮減為九十秒,時間減少大約四十倍!
評估
你能判斷這個句子是川普說的還是 RNN 生成的嗎?
California finally deserves a great Government to Make America Great Again! #Trump2016
這是從「特朗普對共和黨州長候選人的支持」推文(https://twitter.com/realDonaldTrump/status/997597940444221440)中生成的文本,但它可能會被當作特朗普在 2016 年大選前發布的推文。
我所實現的復雜版本的神經網絡(在循環層之前和之后有隱藏的全連接層)能夠在種子為 40 個或小于 40 個字符的情況下生成內部連貫的文本。
I want them all to get together and I want people that can look at the farms.
China has agreed to buy massive amounts of the world—and stop what a massive American deal.
而簡化版本的網絡在連貫性方面有所欠缺,但仍然能夠捕捉到特朗普總統講話的語言風格:
Obama. We'll have a lot of people that do we—okay? I'll tell you they were a little bit of it.
結語
雖然沒能一直產生足以欺騙你我的文本,但這種嘗試讓我看到了 RNN 的力量。簡而言之,這些網絡學習了拼寫、語法的某些方面,以及在特定情況下如何使用井號標簽和超鏈接。
數據分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
CDA數據分析師證書考試體系(更新于2025年05月22日)
2025-05-26解碼數據基因:從數字敏感度到邏輯思維 每當看到超市貨架上商品的排列變化,你是否會聯想到背后的銷售數據波動?三年前在零售行 ...
2025-05-23在本文中,我們將探討 AI 為何能夠加速數據分析、如何在每個步驟中實現數據分析自動化以及使用哪些工具。 數據分析中的AI是什么 ...
2025-05-20當數據遇見人生:我的第一個分析項目 記得三年前接手第一個數據分析項目時,我面對Excel里密密麻麻的銷售數據手足無措。那些跳動 ...
2025-05-20在數字化運營的時代,企業每天都在產生海量數據:用戶點擊行為、商品銷售記錄、廣告投放反饋…… 這些數據就像散落的拼圖,而相 ...
2025-05-19在當今數字化營銷時代,小紅書作為國內領先的社交電商平臺,其銷售數據蘊含著巨大的商業價值。通過對小紅書銷售數據的深入分析, ...
2025-05-16Excel作為最常用的數據分析工具,有沒有什么工具可以幫助我們快速地使用excel表格,只要輕松幾步甚至輸入幾項指令就能搞定呢? ...
2025-05-15數據,如同無形的燃料,驅動著現代社會的運轉。從全球互聯網用戶每天產生的2.5億TB數據,到制造業的傳感器、金融交易 ...
2025-05-15大數據是什么_數據分析師培訓 其實,現在的大數據指的并不僅僅是海量數據,更準確而言是對大數據分析的方法。傳統的數 ...
2025-05-14CDA持證人簡介: 萬木,CDA L1持證人,某電商中廠BI工程師 ,5年數據經驗1年BI內訓師,高級數據分析師,擁有豐富的行業經驗。 ...
2025-05-13CDA持證人簡介: 王明月 ,CDA 數據分析師二級持證人,2年數據產品工作經驗,管理學博士在讀。 學習入口:https://edu.cda.cn/g ...
2025-05-12CDA持證人簡介: 楊貞璽 ,CDA一級持證人,鄭州大學情報學碩士研究生,某上市公司數據分析師。 學習入口:https://edu.cda.cn/g ...
2025-05-09CDA持證人簡介 程靖 CDA會員大咖,暢銷書《小白學產品》作者,13年頂級互聯網公司產品經理相關經驗,曾在百度、美團、阿里等 ...
2025-05-07相信很多做數據分析的小伙伴,都接到過一些高階的數據分析需求,實現的過程需要用到一些數據獲取,數據清洗轉換,建模方法等,這 ...
2025-05-06以下的文章內容來源于劉靜老師的專欄,如果您想閱讀專欄《10大業務分析模型突破業務瓶頸》,點擊下方鏈接 https://edu.cda.cn/g ...
2025-04-30CDA持證人簡介: 邱立峰 CDA 數據分析師二級持證人,數字化轉型專家,數據治理專家,高級數據分析師,擁有豐富的行業經驗。 ...
2025-04-29CDA持證人簡介: 程靖 CDA會員大咖,暢銷書《小白學產品》作者,13年頂級互聯網公司產品經理相關經驗,曾在百度,美團,阿里等 ...
2025-04-28CDA持證人簡介: 居瑜 ,CDA一級持證人國企財務經理,13年財務管理運營經驗,在數據分析就業和實踐經驗方面有著豐富的積累和經 ...
2025-04-27數據分析在當今信息時代發揮著重要作用。單因素方差分析(One-Way ANOVA)是一種關鍵的統計方法,用于比較三個或更多獨立樣本組 ...
2025-04-25CDA持證人簡介: 居瑜 ,CDA一級持證人國企財務經理,13年財務管理運營經驗,在數據分析就業和實踐經驗方面有著豐富的積累和經 ...
2025-04-25