時事激發了一個思想實驗:
前幾天我在新聞中看到一個標題,說一位教授因為使用 AI 寫期末論文而讓班上一半的學生不及格。 事實證明,標題比實際故事更令人興奮:具有諷刺意味的是,教授濫用 AI 來檢測 AI 的使用。 無論如何,這讓我開始思考:JMP 能否確定文本正文的作者,它能否為不太了解文本分析的人執行此操作? 事實證明,JMP Pro 可以,如下圖所示:

獲取要分析的文本:
由於我無法訪問一堆學生論文,所以我使用了古騰堡計劃,其中託管版權已過期的圖書。 我選擇了五位作者的六本書作為候選:
- 了不起的蓋茨比,作者 F. Scott Fitzgerald
- Moby Dick,赫爾曼·梅爾維爾 (Herman Melville)
- 弗蘭肯斯坦,瑪麗雪萊著
- 野性的呼喚,傑克·倫敦
- 道林格雷的畫像,奧斯卡王爾德
- 認真的重要性,奧斯卡·王爾德 (Oscar Wilde)
每一本書都是由美國或英國作家撰寫的,它們的原始語言是英語。 我做出這個選擇是因為我不想因為不小心選擇了同一位譯者的書而毀了一切。
導入和清理:
導入文本很簡單:只需將所有書籍作為單獨的文本文件放在一個文件夾中,然後使用下圖所示的多文件導入工具。 我確保選擇了為文件名添加一列、每行添加一行以及堆疊類似文件的選項。 這樣的最終結果是一個大約有 53,000 行的數據表。

數據清理包括刪除每本書開頭的空白行和標題信息,以及為每本書的作者創建一個列名。 為此,我非常依賴內置公式列,尤其是第一個單詞公式列。 我附上了一份最終數據文件的副本作為 Cleaned Text.jmp,因此閱讀的任何人都應該能夠理解分析。
運行分析:
要進行分析,請選擇 Analyze...Text Explorer,然後將 Text 和 File Name 列放入對話框中,如下圖所示。 將所有其他選項保留為默認值,然後選擇確定繼續。

接下來,從文本瀏覽器的紅色小三角菜單中選擇“判別分析”,然後在出現的第一個對話框中選擇作者列以告知 JMP Pro 您想要確定每一行的作者。 請注意,文本判別分析僅在 JMP Pro 中可用。

在第二個對話框(如下圖所示)中單擊“確定”以接受默認值並開始分析。 此步驟可能需要大約一分鐘才能完成,因為 JMP 在後台進行數學計算。

初步結果到最終結果:
在“分類摘要”部分,起初看起來不太樂觀 — 該模型錯誤分類了 64.5% 的線。 但請記住,每行最多是 80 個字符的文本,而每本書都是數千行。 我們需要一種查看全局的方法,這涉及花時間查看誤分類率部分下方的預測率表。

右鍵單擊預測率表並選擇製作成數據表,然後快速堆疊數據表創建下圖所示的表(並作為分類摘要 - Stacked.jmp 附上)。

使用圖形生成器,預測作者與作者的熱圖顯示每個作者的最高預測是正確的,但右上角的 Oscar Wilde 除外。 這很好,但並不完美。

另一個可以在這裡提供幫助的平台是分析...多變量方法...多重對應分析。 如下所示運行它會創建一個非常有用的圖表,它表明預測作者非常接近實際作者。 奧斯卡王爾德再一次不像其他人那樣接近預測,但它足夠接近做出一個好的決定。


結論和進一步思考:
雖然判別分析工具一開始並沒有清楚地預測出每本書的作者是誰,但對輸出的進一步探索顯示出更有希望的結果:無需了解文本瀏覽器或判別分析中的選項,JMP Pro能夠很好地預測每本書的作者。
奧斯卡王爾德預測的不確定性比其他人大一點,但可能是由於
- 他在數據集中有兩本書,
- 我只是接受默認設置——也許可以調整模型,或者
- 事實上,《認真的重要性》是作為戲劇而不是小說來寫的,這是我在分析之後才發現的事實。
我的猜測是選項 c 是原因。 與其他作者和其他樣書一起重複這個實驗可能會很有趣。 如果你重新運行實驗,我對你得到的任何結果都很感興趣。 請在評論中發布您的結果!