已經有一段時間了,但這是這個由三部分組成的系列的最後一個。第1部分現在對“披頭士樂隊”的歌詞進行情感分析,第2部分因此,我嘗試對“Queen”的歌詞進行情感分析。在本次的 Part 3 中,我們使用了一個名為 Term Selection 的函數來創建一個模型,該模型可以根據兩個樂隊的歌詞中包含的詞來預測哪個樂隊的歌曲,並為每個樂隊特徵化地查找詞(keywords)。
什麼是術語選擇?
在 JMP 中,可通過“文本資源管理器”平台進行文本分析,但在 JMP Pro 中,您可以選擇“術語選擇”作為該平台的一個選項。

在“選詞分析”中,當存在響應變量(Y)時,可以對文本分析提取的詞與響應變量之間的關係進行建模,哪些詞描述了響應變量你可以檢查像
在此示例中,我們將創建一個數據表,匯總“The Beatles”和“Queen”的歌曲名稱和歌詞,如下所示。

此時,響應變量(Y)和預測變量(X)如下。
響應變量(Y):“Band”(區分這首歌是披頭士樂隊還是皇后樂隊的變量)
預測變量(X):從“歌詞”中提取的單詞
應該考慮克制嗎?
讓我們更詳細地討論預測變量 (X)。
從文本中提取單詞時,文檔 - 術語矩陣 (DTM)單詞可以以矩陣形式放在一起。
例如,方法 A。 披頭士樂隊歌曲“You Like Me Too Much”第 166 行的歌詞包含(至少其中之一)單詞“know”、“time”、“just”,因此變量“know Binary”、“time Binary” , 而“just Binary”不包含值“1”和單詞“love”、“oh”、“yeah”,所以“love Binary”、“oh Binary”、“yeah Binary”被賦予“0”作為一個值。
方法A。 二進制(1/0)文檔字矩陣

以這種方式提取單詞會產生一個“數據行數乘以單詞數”矩陣(本例中值為 1 或 0),而實際預測變量是該文檔單詞矩陣中的單詞。
上面構造了值為1/0的文檔詞矩陣,但是下面的方法B。 也可以想像用“頻率”來配置它,比如某個特定的詞在文檔中出現了多少次。
方法 B。 詞頻文檔詞矩陣

在之前的文章中,我已經提到歌詞在文本分析中受副歌(一遍又一遍地使用相同的詞)的影響很大。因此,如果我們像上面的方法B那樣考慮詞頻,它會受到副歌的很大影響。
因此,在建模時,可以嘗試用方法A和方法B建模,比較哪種模型更好。
方法A。 二進制(1/0)文檔詞矩陣 ⇒ 不受副歌影響
方法 B。 詞頻文檔詞矩陣 ⇒ 受副歌影響
選詞分析報告
基於以上幾點,我們來使用“選詞分析”。當您選擇選項 Term Selection 時,您將看到類似於以下的配置大綱。

每個設置的詳細信息
“選擇響應列” :指定響應變量(Y)。在此示例中,它是“Band”(甲殼蟲樂隊/皇后樂隊)。
“目標水平” :指定響應變量中的事件級別。這裡我們指定“Queen”,以Queen為標準。由於 Y 僅取兩個值,Beatles 和 Queen,我們擬合邏輯回歸模型,假設 Y 服從二項分佈。
“模型設置” :指定建模方法和驗證方法。默認情況下,估計方法是 Elastic Net,驗證方法是 AICc,因此我們將在本示例中使用默認設置。
“術語設置” : 指定對上一節中顯示的文檔詞矩陣使用哪種方法。默認情況下它是二進制 (1/0)。您還可以指定要在文檔詞矩陣中使用的最大詞數,默認情況下為 400。換句話說,只有提取的單詞中出現頻率最高的前 400 個單詞用作預測變量。
單擊右上角的“運行”按鈕可查看指定設置的建模報告。
您可以在下面的報告 1 中看到結果。
報告 1 “A Hard Days Night”(甲殼蟲樂隊):預測正確

顯示使用 Elastic Net 為邏輯回歸模型選擇變量的結果。在本例中,從 400 個預測變量中選擇了 49 個對預測有用的變量,所選變量 (Term) 的回歸係數 (Coefficient) 顯示在報告的右上角。
正係數用橙色條表示,負係數用藍色條表示。 是一個對預測貢獻很大的詞,負值越大,這個詞對預測披頭士的水平貢獻越大。
在報告的左下角,“A Hard Days Night”(甲殼蟲樂隊的歌曲)的歌詞為橙色表示有助於預測甲殼蟲樂隊的詞,藍色表示有助於預測皇后樂隊的詞。在歌詞中,你可以看到使用了很多對披頭士有貢獻的詞,比如“just”、“give”、“days”。所以,即使你不知道這句歌詞出自哪個樂隊的歌曲,你也可以通過使用“just”、“give”和“days”猜出這是一首披頭士樂隊的歌曲。
更準確地說,從這些歌詞中,可以確定預測它是皇后樂隊的概率和預測它是甲殼蟲樂隊的概率。使用 Logist 函數 ( Logist(x) = 1/(1 + Exp(x)) ) 從上面獲得的邏輯回歸係數獲得 Queen 的預測概率,如下所示。

轉發建模報告,下面的“皇后概率”一欄顯示,對於每首歌,預測這首歌為皇后的概率,對於“A Hard Days Night”來說是32.7%。

因此,從 100% 中減去後,被預測為披頭士樂隊的概率為 67.3%。比這個,
從A Hard Days Night的歌詞裡的話,
預測出皇后歌曲的概率:32.7%
預測甲殼蟲樂隊歌曲的概率:67.3%
所以,我預測大概率是披頭士的歌曲。
成為。即實際值(actual value)和預測值(predicted value)相符。
我將查看其他兩首歌曲的報告(報告 2、報告 3)。
報告二《波西米亞狂想曲》(女王):預測正確

Queen代表歌曲《波西米亞狂想曲》可以預測為88.9%的高概率是Queen歌曲。
報告 3 “Hey Jude”(甲殼蟲樂隊):錯誤預測“Queen”

甲殼蟲樂隊的代表歌曲《Hey Jude》被預測為 Queen 的概率為 56.3%,因此預測錯誤。
有些歌曲是這樣可以預測的,有些則不是。在創建預測模型時,誤分類率,即實際測量值與預測值之間差異的比率,被用作預測能力的指標,該值越小,預測能力越高。
型號對比
在上一節中,我們使用二進制(1/0)作為文檔詞矩陣進行建模,但是當我們將其與以相同方式使用詞頻建模進行比較時會發生什麼?
在選詞分析中,當應用多個模型時,以下報告比較模型的預測能力顯示為“摘要”報告。模型 1 是二進制的,模型 2 是詞頻的。

AICc作為驗證指標,Generalized RSquare(廣義R-square,值越大越好),AUC(曲面下面積,值越大越好),Misclassification Rate(誤分類率,值越小越好)看 ,可以看到模型1的2個值對任何指標都好。
從這個結果可以看出,以單詞出現(=1)/不出現(=0)為解釋變量的模型比以單詞出現頻率為解釋變量的模型具有更高的預測能力. .
概括
我們總結了迄今為止描述的“單詞選擇分析”的結果。
・我們創建了一個模型,可以根據歌曲歌詞中包含的詞來預測歌曲是關於披頭士樂隊還是關於皇后樂隊。
・將以下兩種方法建模為用作解釋變量的文檔詞矩陣,並比較了模型的預測能力。
方法A。 表示歌詞中是否包含對應的詞:Binary
方法 B。表示對應詞在歌詞中出現的次數:Frequency
⇒ 我們發現不考慮副歌的方法 A(二元)具有很高的預測能力。因此,以下使用方法 A 建模的結果。
・提取了 49 個對預測有較大影響的詞。根據對這些詞估計的回歸係數,計算每首歌曲的預測概率,計算預測歌曲(預測值)和實際歌曲(實際值),誤分類率為8.4%。考慮到作為預測能力的其他指標的 R 平方和 AUC 值,我們認為創建了一個良好的預測模型。
⇒ 僅憑49個選詞的信息,我們就能以91.6%的準確率猜出是哪首歌。
最後,我們展示了 49 個選定的詞(Term)和用 graph builder 繪製的回歸係數(Coefficient)。橙色的詞有助於女王的預測,淺藍色的詞有助於披頭士的預測。

具有最高正值的詞“blow”是皇后樂隊歌詞的定義詞。其實在分析的歌曲中,blow在各種Queen歌曲中都有使用,但在Beatles歌曲中並沒有使用,這就解釋了為什麼這個詞的係數大。可以附上。
我們希望本文能啟發您嘗試使用單詞選擇分析。