曾元顯
近年來數字化技術的蓬勃發展,已獲得許多機構的廣泛認可和采用。擁有獨特內容的圖書館或是典藏機構,已陸續建立了數字化檔案服務。數字化的典藏,不僅讓使用者便利地隨時隨地查詢、取用,更成為其學習、創意的重要來源。
除了傳統的圖書館大量地導入數字化館藏服務,非傳統圖書館機構也紛紛加強其獨特典藏數位服務。例如,臺灣科學教育館將其自1974 年以來保存的超過12 000 份全臺灣中小學科學展覽獲獎作品,數字化后放置在其網站(https://twsf.ntsec.gov.tw/);高級中等學校圖書館輔導團則建立中學生網站,保存并分享自2008 年以來大約110 000 份臺灣中學生小論文比賽獲獎的作品。這些獨特資料的數字化分享,除了典藏的目的外,更重要的是其具有學校教育、學生學習的意義。
雖然立意良好,但這些典藏有被誤用的情形。由于科學競賽或是寫作競賽每年都會舉行,這些典藏文章的部分或是全部的內容偶爾會出現在不同年份的競賽作品中。這類抄襲案件并不罕見,而且一旦發生,就會對這些教育競賽造成嚴重損害。
相似性比對被認為是檢測這些作品有否異常的有效措施。然而商用比對系統不僅價格高昂,其客制化也不容易,因而阻礙了其部署與應用。在本文中,我們運用人工智能(Artificial Intelligence, AI)技術,采用相關的開源或是自由軟件,展示學校實驗室即可實作出來比對服務,用于檢測待歸檔作品和典藏檔案的相似內容。實際應用于上述兩個教育網站典藏資料的比對,可以幫助發現抄襲40 年前舊作之情形。透過AI 技術的自動比對,可以更快、更明確地指出不同作品間的異同之處,甚至比專家找出更多雷同作品。而比對結果反饋回學校,讓師生可從實際的活動中學習教訓,提升學術倫理素養的教育。
在下面的章節中,我們將先介紹相關的人工智能技術,再簡要說明利用開源軟件建置的比對系統架構,進而列出實際的比對案例與異常比例,最后提出相關建言,供圖書館與典藏機構參考,并提及未來的挑戰。
近十多年來,云端技術興起強化了計算機運算力、大數據時代提供巨量的訓練資料,以及機器學習算法的精進與突破,使得人工智能在計算機視覺、語音辨識、自然語言的理解與生成、語意比對等方面,有了突破性的進展,并被廣泛應用于搜尋引擎、智能型手機、自動駕駛等系統,逐漸融入到人們的日常生活中。這些人工智能新技術包含嵌入矢量、Transformer、語言模型、語意比對等,對信息檢索的學術理論與實務經驗,帶來很大的變革,其原理簡述如下。
矢量空間模型(Vector Space Model, VSM)是經典的傳統信息檢索方法(Salton, 1989)[1]。其將語料中每份文件的重要詞匯(有主題意義的詞匯),都視為矢量中的一個維度,而將詞匯在文件中的出現次數(Term Frequency, TF)以及在整個語料中出現篇數的倒數(Inverse Document Frequency, IDF)兩者相乘(TF×IDF),做為該維度的權重。如此n 篇文件的語料庫若共有m 個詞匯,就形成一個m × n 的矩陣,其中每一行矢量代表一篇文件,而每一列矢量則對應到一個重要詞匯。依矢量余弦公式(cosine),可計算任意兩文件或是兩詞匯的相似度。
另一種VSM 的表示法,則跟語料無關,單純以“獨熱編碼”(one-hot encoding)表示。亦即m 個詞匯,每個詞匯都占一個維度,該詞匯在該維度上的值為1,其余為0。例如,假若全部詞匯只有三個:政治、經濟、運動,則其獨熱表示法,分別為[1,0,0]、[0,1,0]、[0,0,1]。其優點是:(1)詞匯跟其矢量的對應,只需簡單的查表即可;(2)很多機器學習算法,只能做二分法,亦即偵測一個詞匯有出現(以1 表示)或沒出現(以0 表示),因此需要用到獨熱編碼。
上述兩種VSM 表示法的問題,在于用個別詞匯作為矢量的維度,當有不同詞匯卻語意相近時,因屬不同維度,也無法增加其相似度,造成詞匯不匹配問題(vocabulary mismatch)。例如:“宇宙”跟“太空”,以VSM 表示的話,其相似度為0。因此,在1990 年左右,隱含語意索引法(Latent Semantic Indexing, LSI)被提出[1],其運用線性代數的奇異值分解(Singular Value Decomposition, SVD)方法,將m × n 的矩陣降維轉換出d × d 的主題矩陣,其中d < m且d < n。亦即,語料C 被降維,并以新的矩陣來近似整個語料,如下式:
個別文件(或詞匯)的矢量仍可從這個降維的矩陣算出近似值,依此亦可算出任意兩篇文件(或是任意兩個詞匯)的相似度。此種降維的做法,讓語意相近的文件(詞匯),被轉換對應到同一維度,解決了前述詞匯不匹配的缺點,如圖1 范例所示 。

圖1 降維矩陣范例
圖1中語料C矩陣有“星際大戰”等5篇文件,若只搜錄7 個詞匯,各詞匯出現的次數(或權重)表示在公式(1)等號左邊的矩陣。等號的右邊有三個矩陣,分別為詞匯到主題的U 矩陣、主題矩陣 Σ、主題到文件的V 矩陣。從 Σ 對角線矩陣可知,此語料C 其實只有兩個主題比較重要(姑且稱為“動作科幻”“文藝愛情”兩個主題),且重要程度分別為12.4 與9.5。
在圖1 的例子中若再多收納兩個新詞匯T8(宇宙)、T9(太空),且其在這五篇文件出現的情況分別為:T8=[5,0,0,0,0]與T9=[0,4,5,0,0],則此兩詞匯的矢量余弦公式cosine 相似度為0;但若將其矢量轉換到主題空間,亦即各自乘以縮減后的V 矩陣,如下:
則轉換后的詞匯矢量T8*=[2.81, 0.63]、T9*=[5.18, 0.52],其cosine 相似度高達0.99,表示詞匯T8 與T9 屬于同一主題的訊息相當明確。在此例中,因為乘上V矩陣而轉換后的矢量,即為其嵌入矢量。
一個詞匯(或是文句、概念)的嵌入矢量,也可以運用神經網絡學習而得。如圖2,將C矩陣的資料送入學習,可得出如上述將五維詞矢量轉換成二維詞矢量的功能,此五份文件的嵌入矢量為圖2 神經網絡連結上的權重所示。亦即,五份文件的獨熱表示法,可以透過機器學習轉換成其嵌入矢量,而此嵌入矢量來自于學習后的權重:

圖2 透過神經網絡的學習,可將五維的整數詞矢量,轉成二維的實數詞矢量
在圖內中間兩個神經元的輸出值,相當于公式(2)或(3)的二維矢量;亦即相同主題的五維整數矢量輸入,會有相似的二維實數值輸出。
上述只有兩層、五個輸入的神經網絡,只能處理比較簡單的兩個概念問題。為了處理更復雜的語意概念,可以使用更多的人工神經元,加深、加廣神經網絡使用的層數及輸入個數。
2017 年Vaswani 等學者提出了Transformer編譯碼器(encoder-decoder)或稱為轉換器的深度神經網絡架構[2],如圖3。其運用可以平行運算且能夠處理長距離依賴(long-distance dependency)的自我注意力機制(self-attention),取代需要循序運算的遞歸神經網絡(recurrent neural network),而在自然語言處理領域,開啟了突飛猛進的時代。

圖3 Transformer 架構[2]
Transformer 中的多重注意力(multi-head attention)對最后的成效是極為重要的運算機制。其讓每個注意力專注于不同面向,例如有的注意力關注在動詞與其發起者或是作用對象的信息交流而抓住了文句的重點,有的則讓代名詞注意到其所代表的主詞而緩和了指代消解(Coreference Resolution)的問題等。
除了具備多重注意力機制,Transformer 還運用Byte Pair Encoding(BPE)解決詞匯量不夠與未知詞問題、引入位置編碼以學習詞匯的順序與距離、采用layer normalization 與residual connection 以增進網絡的學習效率和穩定性,而在語言理解與生成上,得到很好的成效。
許多自然語言處理的任務中,都需要建構一個準確的語言模型(language model)。亦即在獲知前t 個字詞后(t 可以是1、3,甚至是100、2000 等長度),需要準確估計下一個字詞的條件機率:
例如,從語音訊號辨識出“mao zhuo lao shu”四個音及前三個字“貓捉老”之后,下面的條件機率應該要符合:
依照常識,在自然語言的表達上,“貓捉老鼠”比起“貓捉老樹”應有較大的機率。此種條件機率沒有標準答案,只要相對合理即可。
建構此語言模型的過程,稱為語言建模(language modeling)。然而語言建模過去很難做得好,亦即“估計下一個字詞的條件機率”不易做得準確。以語料庫C=(貓跳, 狗躍, 貓奔, 狗跑, 跑車)為例,用此極小(五個字句)的語料庫擬訓練出P(跳|貓)等條件機率,應用傳統方法“最大似然估計”(maximum likelihood estimation)可得出:
等數據,因為在C 中貓出現2 次,而貓跳、貓奔各出現1 次。但是條件機率:
亦即(狗跳, 狗奔)兩詞的機率都為0,因為他們都沒有在語料庫C 中出現過。換言之,用C 訓練出來的語言模型,幾乎不會產生(狗跳, 狗奔)的詞句。但事實上,不僅C 中有類似的概念(狗躍, 狗跑),于一般語言常識上也應該允許該詞匯的出現。
顯然傳統的方法不夠好,其緣由為離散空間的字詞表達方式(discrete space word representation),亦即將貓、狗、跳、躍、奔、跑、車各字視為完全不同的概念(如同前述VSM 表示法),導致類似的概念無法類推,且訓練語料中沒有的字句,便難以估計其條件機率。
有鑒于此,神經機率語言模型于2000 年左右被提出(Bengio, Ducharme, Vincent, & Jauvi,2003),其將各個字詞w 以n 維實數矢量V(w)表示,亦即每個字都是n 維連續空間上的一個點,此種稱為連續空間的字詞表達方式(continuous space word representation), 與前述嵌入矢量類似。當神經機率語言模型從語料庫學習完后,V(貓)在連續空間上會近似于V(狗)、V(跳)會近似于V(躍)、而V(奔)會近似于V(跑),因而可用于推論出語料庫中不存在的詞匯。
如圖4 的范例所示,每個字詞可以是二維空間中任意連續坐標上的一點,當訓練完后貓的坐標(-1.1,0.8)接近于狗的坐標(-0.9,1.0),跳(1.2,-1.1)近似于躍(1.1,-0.8),依此類推。那么語料庫原有的(貓跳,貓奔)會有較高的機率值(例如0.45),而語料庫中沒有的(狗跳, 狗奔)也可在連續空間中推論出其機率值(例如0.35),而不再等于0 了。而車則因為與貓、狗較不相似,難以類推,使(車跳、車奔)這些字詞的機率較低,但也并非完全不可能出現。

圖4 在二維連續空間中表示字詞矢量關系之示意圖
這種以連續空間表示字詞的矢量表示法,降低了訓練語料無論大小,都無法窮舉所有語言現象的困擾;而且透過神經網絡的學習,可以學出“類似概念有近似矢量”的表達方式,亦即嵌入矢量的概念。
將一群離散的物件進行嵌入轉換后,除了容易進行相似度計算、推論原先不存在的關系外,也可以從極大量資料中,訓練出品質較佳的嵌入矢量(稱為預訓練模型, pre-trained model),而可以分享給其他類似的任務進行微調(fine-tuning)運用。
Transformer 是一個建構語言模型的優良架構,可以輕易地擴展其規模來學習更大的訓練資料、容納更長的輸入字符串,而能將輸入轉成優良的嵌入矢量,來代表輸入的語意。Transformer 的編碼器被Google 采用為善于理解語言的BERT(Bidirectional Encoder Representations from Transformer),而其譯碼器被OpenAI 采用為善于生成文字的GPT(Generative Pretrained Transformer)。即便都只用了Transformer 的一半架構,BERT 跟GPT 也都發展出了很好的嵌入矢量轉換器,并且演變成大型的預訓練語言模型。
使用大型的預訓練語言模型,可以有效地進行下游自然語言處理或是信息檢索的任務,如:語意比對、問答、分類等。以下面五個句子為例:
S1=“我的兒子!他猛然間喊道,我的兒子在哪兒?”
S2=“我的小孩呢!他突然高聲說:我的孩子在哪里?”
S3=“若未于2 周內完成中、高風險弱點修補或防御因應,公司系統網站將依資安規范下架”
S4=“因應中、高風險弱點修補的防御,假設兩周內不能完成,將依資安規定關閉公司系統的網站”
S5=“若未于2 周內完成中、高風險工事修補或防御因應,本司系統防務將依軍安規范不予下放”
以傳統字符串比對方式(將文句切割成單字詞以及雙字詞),計算這五句彼此之間的相似度,結果如下:

?
而以嵌入矢量,計算這五句彼此之間的相似度,程序碼如下:
通過運行程序計算,其結果如下:

?
可以看出,S1 跟S2 只是同義詞置換,但字符串相似度僅約0.3824 而很難被視為同樣意思的文句;但其嵌入矢量相似度達0.9280,接近1.0,兩者有相當高的語意相似度。S3 跟S4之間也做了類似同義詞的置換或是改寫,而S3與S5 句型一樣,只是一個在講公司的資安,一個在講司或處單位等級的軍事安全,兩個句子所處的主題領域不同。但是以字符串相似度而言,S5 比S4 更相似于S3,這是不正確的;而以嵌入矢量的相似度而言,S4 比S5 更相似于S3,這是我們想要的結果。此例顯示AI 技術運用于語意比對,有其優勢。
對于文本比對,Foltynek 等學者,將其分成五種樣態[3]。
(1)逐字拷貝:亦即簡單將別人的文字,拷貝到自己的文章內。
(2)語法拷貝:文字拷貝后,僅代換同義詞、技術詞匯等,而保留語法。
(3)語意拷貝:進一步改寫拷貝來的文句,或拷貝其他語文的文字再自動翻譯。
(4)構想拷貝:在結構或概念上抄襲別人的著作。
(5)找人代寫:將別人的寫作,誤導為出自己手。
比對技術的相關文獻已有提出各種方法,來偵測各類抄襲樣態。其中以資訊檢索的矢量空間模型,來進行字符串上的比對(lexical match),最廣為運用,且成效良好,而機器學習、人工智能技術則最有潛力運用在各類型抄襲樣態上。
雖然在偵測方法上,有很多研究在處理語意拷貝等較難辨識的抄襲樣態,但實務上,各種抄襲比對系統,大多針對逐字拷貝的抄襲樣態進行偵測。這是因為逐字拷貝的樣態不容易否認,而語意拷貝的樣態即使被偵測出來,可能還需其他方式佐證,否則很難認定為抄襲。如前面的S3 與S4 這兩個句子,除非有更多且連續的語意相似句,單就一句語意相似,不易證明其有抄襲情形。有了上述的概念,偵測文件相似的系統,架構設計如圖5。

圖5 比對服務系統架構
典藏單位將歷屆作品之PDF 檔案匯出,由比對系統轉檔為純文字,然后儲存到來源文件庫,透過比對核心系統建入索引數據庫。使用者將待檢驗之作品上傳到比對系統,比對系統先擷取文字后,將其與索引數據庫中的作品進行比對,并產生比對結果報告。圖5 中使用到的自由/開源軟件,列舉如下:
(1)影像文字檔解析:
A.Tesseract: https://github.com/tesseract-ocr/tesseract;
B.LSTM 為基礎的OCR 引擎,支援達116 種語言。
(2)檔案文字解析:
A.Apache Tika: https://tika.apache.org/;
B.可解讀出數位檔案的文字內容,超過1000 種檔案格式,包括:PDF、PPT、XLS、Word、RTF 等。
(3)搜尋引擎:
A.Elasticsearch: https://www.elastic.co/elasticsearch/;
B.基于開源的Lucene 的分散式全文搜尋引擎。
(4)斷句、斷詞:
A.Python的各種開源套件,如NLTK等。
以上軟件工具搭配我們發展過的技術,建立起實用的比對系統:
(1)曾元顯,概念性標題產生方法,專利號:ZL 2008 1 0127624.4.;
(2)曾元顯,相似文件的自動偵測方法,專利號 : I 317488.;
(3)曾元顯,漸進式關聯詞庫之建構方法,專利號: I 290684 .;
(4)曾元顯,中文數位文件之自動摘要方法,專利號: I 288335.;
(5)曾元顯,數字文件關鍵特征的自動擷取方法,專利號:ZL 00 1 22602.9.。
以科教館為例,其歷年來累計12 194 篇作品PDF 檔,但其中有2 506 篇的內容全部為影像文字檔。為了自動辨識影像中的文字,我們采用開源的OCR(Optical Character Recognition)工具 Tesseract,將2 506 篇影像全部自動辨識成數位文字后,連同其他全文檔案共12 194 篇歷屆作品建入索引,一同作為后續作品的比對來源。
將上述系統應用于科教館及中學生網站的典藏比對上。在2021 年10 月科教館收到的276 篇全臺科展的作品中,本系統除了成功檢測出41 篇科教館已知的延續性作品,也額外找出13 篇先前未知的雷同作品。
而在2022 年3 月至5 月間,29 個縣市(區)舉辦的地區科展中,共有5111 篇作品納入比對。相似度門檻值設定為0.5,這樣設定既能夠有效地發現復制貼上的文句,也可以看到經過改寫的文句。我們將比對后的狀況定義為四種類型,狀況名稱及其操作型定義如表1 所示。

表1 縣市科展比對情況定義
此次比對,相似對數總共有 449 對,疑似抄襲總共有 102 對。比例約102/5097= 2%,其中更有抄襲40 年前舊作之情形。
有2022 年的參賽作品檔案“生物/A15國小組-生物科-葉子比一比-常見植物葉片的分類與觀察.pdf”與1982 年的作品檔案“7641_092.pdf,作品名稱:排排葉子”,共計有7 段文句雷同(比例:23.33%)。然而這類型的掃描文獻檔,若非先行通過OCR 技術將其轉換成文字檔進行相似度比對,以人工審查實難發現雷同之文件。由于生物、物理、化學等基礎科學知識并不會隨時間大幅改變,若未能察覺2022 年作品雷同1982 年作品,后續可能會不斷有跟40 年前舊作雷同之現象,實非科學展覽活動所樂見。
而針對11 萬篇中學生網站小論文得獎作品的重復性比對,以人工檢視最相似的前500 對,結果如表2 所示。在疑似抄襲他人作品的 109對中,其抄襲的樣態統計如下:

表2 中學生小論文11 萬篇最相似前500 對統計結果
(1)疑似抄襲之年級分布為:高三(59%)、高二(26%)、高一(15%);
(2)疑似被抄襲年級分布為:高三(45%)、高二(38%)、高一(17%);
(3)疑似抄襲相隔期數比例:1 期(46%)、2 期(15%)、抄襲同期(12%);
(4)疑似抄襲同校作品的比例為 47%。
高年級生可能有爭取得獎的壓力,因而囫圇吞棗,甚至鋌而走險地使用別人的文字,充當自己的內容。
圖書館或典藏機構的數位館藏,以傳承、公益、知識傳播、教育為目的,雖然易于被使用,但也易于被濫用,引入相似性比對服務,有其必要。相似性比對服務不僅可在納入典藏以前,對文獻進行相似性檢測以發現異常,對于過去典藏的作品也可以進行回溯性檢測,以盤點重復典藏。現今人工智能技術雖然便于發展出成效良好的比對服務,但其誤用,也令人擔憂。研究發現,現成的7 種AI 生成文字的偵測器,都對非英語為母語的作者存在偏見,亦即非英語母語者寫的TOFEL 作文,容易被偵測為是AI 生成的文章,而近似程度的美國八年級學生寫的作文,則不容易被誤判為AI 生成的文章。顯示目前AI 的生成技術,較AI 的偵測技術成熟。未來學生或甚至成人若大量運用AI生成文章而有欺騙行為,將較以往更難防范。相關的技術與規范,宜及早規劃,以因應人工智能時代的來臨。