在社會科學中,對文獻文本進行研究已經有很長的曆史。然而,由於技術上的各種難點,文本研究至今仍然沒有成為社會科學的主流分析範式。隨著計算機科學領域中“數據挖掘”方法的出現,文本分析的方法在技術上越來越成熟,其在人文領域的應用潛力也隨之增加。在計算機科學研究中,“數據挖掘”被認為是一種知識發現的過程:從數據中抽取模式,然後通過解釋和評價轉換成最終用戶可理解的知識。“數據挖掘”的方法通常是基於大量的、模糊的、隨機的數據集,並從中識別有效的、新穎的、潛在有用的以及最終可被相關研究者理解的模式的過程。從本質上看,基於文本分析的大數據方法和傳統的人文社會科學中定性的文本分析並沒有什麽差異。在基於史料的定性研究中,創新點通常在於能看到其他學者不能清楚看到的現象或者問題。基於文本分析的大數據方法通過定量的途徑,從一個新的視角看到了一些新的東西,然而也會損失或者忽略掉一些在定性分析中能感受到的問題。因此,文本分析相比於傳統的史料閱讀分析並不見得有絕對的優勢,兩種方法各有所長。“機器自動識別有很多不準確的地方,但仍然在很多方麵給學者提供了研究便利。自動文本分析不能取代學者的閱讀和思考。沒有一個最完美的自動識別方法。對自動文本分析結果的效度分析非常重要。”[21]在文本分析的過程中,無論研究者們采用計算機編碼還是人工編碼的方式,都可能會產生所謂的“效度”問題。也就是說,不同的人可能對同一段文字有著完全不同的理解。在編碼和分類中的誤差是不可避免的,無論研究者采用有監督的、半監督的,還是無監督的計算機編碼,都依賴於參考樣本。
在“數字人文”的研究中,文本分析是常用的探索文本和史料特征的定量方法。尤其在文學研究和應用當中,文本分析可以幫助文學研究者從大量的文學作品中找出重要的特征,比如說不同作者的寫作風格、不同學派的學術淵源和聯係,等等。在計算機科學和統計學領域發展出較為成熟的大數據方法之前,學者們對文本的分析主要采用“人工編碼”的方式,也就是通過人工閱讀,然後對相應的文本、文字或者段落做出主觀的判斷和度量。這樣的方法在樣本量比較小的時候反而比電腦的度量更準確到位。而當樣本量不斷變大的時候,人工對文本的處理就顯得比較低效。此時,若將這個複雜的任務交由計算機去處理,“自動文本分析”的方法就能相對比較有效地進行文本分析。格裏默認為“文本分析的核心工作是分類。分類有三種方法:字典法(dictionary methods),根據關鍵詞的出現次數來確定文本;有監督學習法(supervised learning methods),先由人工構建編碼練習庫,然後讓機器根據人工編碼模式進行自動編碼,最後將機器編碼與人工編碼相比較檢驗其效度;無監督學習法(unsupervised learning methods),不需要人工事先編碼,而是基於模型假設和文本性質來分類並自動將文本分配到各類別。第三種方法比較便捷,但容易混淆重點,可以通過兩項技術進行改進:一是通過混合成員模型(mixed membership models),將具體問題結構納入分析以輔助分類;二是通過計算機輔助分類(computer assisted clustering)來探索眾多潛在分類方法。”[22]
文本分析的“數據挖掘”技術可以廣泛地應用在結構化的和非結構化的文本數據中。下麵我們先以結構化的文本分析為例,具體闡述自動文本分析在文學研究中的潛在應用。所謂結構化的文本分析,主要是指已經能夠被計算機識別的(也就是已經被電子化的文學作品),或者是可以直接被計算機識別的文學作品。劉京臣指出,“‘結構化文本的數據分析’包含這樣三個概念。其一,‘結構化文本’主要是指詩、詞等體式較為固定的文體,在利用技術手段處理時,因其體式上的便利,易於尋覓到聲調、用韻、格律、小序等方麵的結構特征,故而對這類文體較易實現技術幹預。其二,‘結構化文本’還指排除掉文字識別、大字符集、分詞、斷句等因素幹擾,完全滿足用戶需求的、已進行過標注與分類的數據。同時,還要盡可能多地加載滿足分析所需要的第三方文獻庫——文獻庫主要由兩大類組成,一類是諸如人名、職官、地名、係年、典故等具有詞典性質的基礎文獻庫;另外一類是已經數字化的曆代研究者的研究專著,便於分析時與文本相參。”[23]除了結構化的文本數據之外,文本分析和“數據挖掘”的方法在非結構化的文本數據上的應用效果更為突出。用“數據挖掘”的辦法對文本進行分析可以幫助研究者從大量的文獻,尤其是非結構化的文本數據中發現重要的規律和趨勢。
當然,“數據挖掘”的方法再好,也無法完全替代人文學者的思考。人文學的研究,尤其是和文論相關的研究都要求學者有深厚的知識積累與獨立的判斷力。基本的思考範式和理論是研究中最基礎的元素。正如前文中提到的,基本的分析框架和理論可以很好地指導“數字人文”的研究,給“數字人文”的研究指明清晰的方向和路徑,避免很多時候大海撈針。毫無直接目標的“數據挖掘”不僅會浪費掉研究者寶貴的時間,還不一定能達到預想的效果。從數據分析的後續工作來看,前文中也提到,如果沒有文學的思考和文學理論的觀點,數據分析的結果隻是一些枯燥的數據,而不能給文學的研究任何新的啟發。這些都說明了“數據挖掘”其實不能代替研究者自身的素養在文學研究中起到的關鍵性作用。不過,我們也應該意識到基於“數據挖掘”的文本分析方法在文學研究中能其到獨特的作用。
結構化的文本分析可以幫助我們回答文學,尤其是中國古代文學研究中很多重要的問題。正如陳僅在《竹林答問》認為“作古詩聲調,須堅守杜、韓、蘇三家法律”。劉京臣就提到了“蔣寅先生以《韓愈七古的聲調分析》(《第三屆中國唐代文化學術研討會論文集》,台灣政治大學中文係1997年)為例進行詳盡研究,指出清人所論,雖看似出自主觀論斷,然用實證之法相驗卻大抵不謬。”[24]這是一種人工的分析範式。若想給這個論斷提供更科學的定量證據,就可以用大數據文本分析的辦法量化出後人的文風從關鍵詞、聲調、韻律等多大程度上分別跟“杜、韓、蘇三家”相似。
結構化的文本“數據挖掘”還可以幫助研究者發現文本中容易被忽視的一些細節,總結出其中的文字規律。比如,劉京臣的研究中就介紹了下麵這句詩,來說明結構化文本分析的應用潛力:“河陽飛鳥外,雪嶺大荒西。(郎士元《送楊中丞和番》)卷經歸鳥外,轉雪過山椒。(無可《送僧歸中條》)夕陽鳥外落,新月樹端生。(梅堯臣《中秋新霽,壕水初滿,自城東隅泛舟回》)新月已生飛鳥外,落霞更在夕陽西。(張耒《和周廉彥》)。”[25]劉京臣認為這四段詩詞確實有相通或者類似的語言特征,“但卻難像錢鍾書先生一樣見解深邃,錢先生稱朗士元與無可句:‘都是想象地方的遙遠,不是描寫眼前的景物;梅、張的寫法正像岑參《宿東溪王屋李隱者》‘天壇飛鳥過’,杜甫《船下夔州別王十二判官》‘柔櫓輕鷗外’,姚鵠《送友人出塞》‘入河殘日雕西盡’,以至文徵明《題子畏所畫黃茆小景》‘遙天一線鷗飛剩’等,把一件小事物作為一件大事物的坐標,一反通常以大者為主而小者為賓的說法。’”[26]通過深層次、高技術的機器學習和文本分析,研究者們可以嚐試定量地提煉出這些語段的語言特征和細微的差別。
文本分析除了自身的功能之外,在“數字人文”的研究中還通常和其他的工具一起使用。比如,我們關心文學、文論的發展對時代文化、社會風俗的跨時間跨區域的影響。要給出這個問題的答案,研究者不僅需要使用文本分析的工具,還需要同時使用地理信息係統(GIS)的工具。地理信息係統(GIS)不僅能提供給定時間段內不同因素的地理定位信息,還能提供更為翔實的跨時間的數據信息。這樣跨時間、跨空間的社會信息和相應的對文論進行文本分析的數據相結合,就有可能幫助我們回答文學的發展對不同時間、不同區域的社會文化的影響。對一個時代文學和文論的發展對其社會影響的理解,依賴於我們對這個時代文學特征的區域分布特征和時間特征的理解,通過海量的“數據挖掘”與地理信息係統的結合使用,研究者的視角便可以跳出傳統人文研究的範圍,走向與社會科學的有機融合。
劉京臣就介紹了一個文本分析和地理信息係統相結合的方法在宋代文學與社會交互研究中的應用。“宋代與遼、西夏、黑汗、西州回鶻、黃頭回紇、吐蕃諸部、大理以及蒙古、金、西遼等多個政權並存過,民族交往融合也帶來了文學交流,甚至是文學風尚的轉變——蘇學北上便是典型案例。利用數據挖掘,可以將當時的所有區域納入考察範圍,對於研究多民族的文學、文化、交融,具有重要的作用與意義。既可以設定某個具體地域,也可以檢索某片區域,給定地點之後,再與時間相參,係統便可將某區域某時段內的所有事件、參與人物、事件的前因後果等生成表格或圖表,並在數字地圖上相應呈現。例如我們可以以宋代晁氏家族為例,該家族派分三支,曆兩宋綿延而下。利用數據挖掘便可以實現對家族所有人物的生平、仕宦、貶謫、升遷、交遊等情況進行詳盡考察。同時,家族東、中、西三眷的遷徙,也可在數字地圖上直觀呈現。
“基於這個意義上的數據挖掘,一是拓寬了視野,許多隱含信息被挖掘、抽取出來;二是許多原來靠人力很難關聯起來的信息之間有了關聯,從而能建構起強大、豐富、可感的人物社交網絡體係。我們麵對的研究對象,已經不再是單獨的個體,而是以之為中心的群體。不同的群體之間又有交集,從一定程度上講,我們甚至能將文獻中出現的每一位宋人定位在某個特定的關係網中。這隻有依賴數據挖掘才可能實現。”[27]