鄢天安, 張文強, 吳思, 張英杰
(中國科學技術信息研究所, 工程中心, 北京 100038)
目前互聯網中存在大量的數據冗余、數據缺失和數據異常的情況[1],造成地平線掃描搜集的數據質量較低,無法形成高質量的數據庫。為了提升地平線掃描數據質量,需要去除數據庫中造成數據冗余的重復數據以及干擾正常數據的噪聲數據。通過降低重復數據和噪聲數據比例來更好地利用數據,以便于數據分析師和科研人員能從數據中預測技術發(fā)展趨勢和尋找產業(yè)生命周期演化規(guī)律[2-3]。
本文聚焦地平線掃描數據,改進符合多源異構數據特征的重復數據和噪聲數據檢測算法,采用SOA架構設計地平線掃描數據消重去噪系統(tǒng)。系統(tǒng)可以通過數據類型不同,實現重點科技領域所采集的專利數據、期刊數據、論文數據和輿情數據的重復數據和噪聲數據檢測工作,降低多源異構重復數據和噪聲數據比例,來提升地平線掃描所獲得的海量多源異構數據的整體質量,為后續(xù)產業(yè)分析、技術識別做好數據層面的支撐。
Java技術是一門面向對象編程語言,Java技術完善了C語言和C++語言的不足之處,Java技術能夠實現更好的跨系統(tǒng)性,減少不同操作系統(tǒng)進行再次編寫的繁瑣步驟,實現一次編譯處處使用的效果。Java編程語言的安全系數較高,因此企業(yè)在開發(fā)和設計計算機軟件時大多使用Java編程語言,從而為企業(yè)內部信息化管理提供支持,所以Java編程語言在企業(yè)中廣泛地被應用[4]。
重復消重方法是一種基于文件或指紋提取匹配的數據冗余消重方法[5-6],主要思路是通過比較系統(tǒng)中文件和數據庫的Hash值來識別相同的數據內容。將數據對象記為S={S1,S2, …,Sn},根據數據集來源,對數據對象關鍵字段內容按照單詞空格分為不同長度的數據塊,得到數據塊集C= {C1,C2, …,Cn},接著對不同數據塊進行比對。若不同數據塊長度不同,則數據對象S1和數據對象S2不重復。反之,若數據塊長度相同,比較數據塊內容。若數據塊內容不同,則滑動數據塊比較窗口,從前至后進行比較。執(zhí)行完畢后,開始對數據對象S1與數據對象S3的重復內容進行檢測。
TF-IDF方法是一種常用的數據挖掘技術,用以評估數據集或文件集的其中一條數據和一份文件的重要程度[7]。TF代表詞頻,可以表示關鍵詞在文本中出現的頻率。IDF代表逆文檔頻率,可以說明關鍵詞的區(qū)分能力。首先,對文本進行預處理,將半結構化和非結構化文本轉化為結構化文本,利用分詞系統(tǒng)去除停用詞,將數據劃分為單詞。通過不同單詞出現的次數與全文詞的比值,得出TF值。接著,根據文本中數據量除以包含該詞語的數據數量的值取對數,計算IDF值,最終得到TF-IDF值,根據值的大小對關鍵詞的重要性進行劃分。
地平線掃描數據消重去噪系統(tǒng)是基于SOA架構研發(fā)的輕量化Web應用系統(tǒng),目的是解決地平線掃描數據中存在重復數據和噪聲數據,無法為重點領域產業(yè)分析和顛覆性技術識別提供有效支撐的問題。系統(tǒng)以地平線掃描科技領域公開數據為對象,能夠實現重點科技領域公開數據的消重去噪工作。系統(tǒng)與地平線掃描實際業(yè)務關聯,不同類型用戶可按照實際需求,對所獲取的數據進行重復數據、噪聲數據的檢測和刪除。通過系統(tǒng)的使用和推廣,可以在數據挖掘分析前,優(yōu)化和提升數據質量[8-9],實現對4種類型的地平線掃描數據消重去噪工作。系統(tǒng)可通過地平線掃描主平臺頁面,與用戶信息關聯,依據用戶自身權限進行重復數據和噪聲數據檢測,實現對不同領域、多種結構數據的地平線數據消重去噪工作。
系統(tǒng)按照輕量化、開放性的設計原則,應用SOA框架體系設計地平線掃描數據消重去噪系統(tǒng),建立包括數據層、邏輯層和應用層的3層框架結構,如圖1所示。數據層作為基礎層,能為系統(tǒng)運行提供基本的數據資源,主要包括匯集的網絡采集數據和自購數據,形成專利數據庫、期刊數據庫、論文數據庫以及輿情數據庫。邏輯層為中間層,作為系統(tǒng)核心,提供業(yè)務邏輯,能夠提供數據消重、數據去噪、視圖模型等服務,直接為應用層提供各實施技術。應用層是用戶和系統(tǒng)交互層,能直接為用戶提供用戶信息管理、數據導入、數據下載、重復數據處理、噪聲數據處理、統(tǒng)計分析等系統(tǒng)所有服務。
通過對網絡采集數據、自購數據的主要字段進行整合后,形成地平線掃描重點科技領域自建數據庫。系統(tǒng)數據庫表包括用戶信息表、用戶權限表、專利數據表、期刊數據表、論文數據表、輿情數據表等6個表。
2.3.1 專利數據表設計
專利數據表設計如表1所示。

表1 專利數據表設計
2.3.2 專利數據表創(chuàng)建
專利數據表創(chuàng)建如下。
CREATE TABLE `patent` (
`id` varchar(255) DEFAULT NULL,
`ApplicationNumber` varchar(64) DEFAULT NULL,
`ApplicationDate` varchar(64) DEFAULT NULL,
`PublicationNumber` varchar(64) DEFAULT NULL,
`PublicationDate` longtext,
`GrantNumber` longtext,
`GrantDate` longtext,
`Title` longtext,
`Abstract` longtext,
`MainClaim` longtext,
`LegalStatus` longtext,
`IPC` longtext,
`IPCFirst` longtext,
`ApplicationType` longtext,
`PublicationType` longtext,
`ApplicantName` longtext,
`Patentholder` longtext,
`PatentAddress` longtext,
`ApplicantContryCode` longtext,
`InventorName` longtext,
`AgentJiGou` longtext,
`AgentName` longtext,
`InventroCoutryCode` longtext,
`InventrorProvinceCode` longtext,
`PriorityApplicationNumber` longtext,
`PCTApplicationNumber` longtext,
`PCTApplicationDate` longtext,
`PCTPublicationNumber` longtext,
`PCTPublicationDate` longtext,
`EntryDate` longtext,
`領域` longtext,
`CPC` longtext,
`USPC` longtext,
`PatentCited` longtext,
`NonPatendCited` longtext,
`CitedTimes` longtext,
`InventorAddress` varchar(255) DEFAULT NULL,
`SimplePatentFamilyID` longtext,
`SimplePatentFamilyMembers` longtext,
`PatengAssignmentInfo` longtext,
`PatentLicenseInfo` longtext,
KEY `id` (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 mb4;
地平線掃描數據消重去噪系統(tǒng)包括用戶信息管理、數據導入、數據下載、重復數據處理、噪聲數據處理、統(tǒng)計分析等六大功能模塊,可以實現對地平線掃描工作中多源數據類型識別、多源數據導入和分類、數據處理后數據文件下載、多源異構重復數據檢測和刪除、多源異構噪聲數據檢測和去除以及數據檢測結果統(tǒng)計分析等功能性服務。為簡化系統(tǒng)操作流程,便于用戶理解與使用,對與未進行、已進行、處于進行中的按鈕進行不同顏色的展示,通過按鈕顏色變化來表示任務狀態(tài)和可進行的操作。
2.4.1 用戶信息管理
系統(tǒng)能支持對不同用戶權限的管理。管理員用戶具有管理系統(tǒng)內普通管理的權限,能夠查看普通用戶的個人信息和全系統(tǒng)重復數據和噪聲數據處理情況,還可以增加和刪除普通用戶,以及限制普通用戶使用系統(tǒng)。普通用戶能修改個人信息,查看個人重復數據和噪聲數據處理的情況。
2.4.2 數據導入
本系統(tǒng)主要支撐地平線掃描監(jiān)測重點領域多源異構數據的導入。為保障系統(tǒng)能準確進行多源數據消重去噪工作,平臺采用多源數據主動導入操作。對不同來源數據根據數據類型不同分別導入。在導入數據文件過程中,在系統(tǒng)頁面中可以查看已識別導入的多源數據信息,包括數據名稱、數據類型、數據來源、數據大小、導入狀態(tài)、導入時間。在導入數據后,可以使用系統(tǒng)的消重去噪功能。
2.4.3 數據下載
數據文件下載提供對已經進行重復數據刪除和噪聲數據刪除的文件下載。根據導入的源文件名稱,消重后的數據存放在空文件中,下載新文件名為源文件名_消重。降噪后的數據存放在空文件中,下載新文件名為源文件名_降噪。用戶對數據消重去噪后,可以根據自身需求選擇較高質量數據文件下載。
2.4.4 重復數據處理
本功能對于已經導入多源異構數據,使用基于可變長度數據分塊的重復數據檢測方法,通過導入文件的數據來源,分別對數據內容、摘要等關鍵字段進行重復數據檢測和消除,可以去除完全相同的多源數據。在進行數據消重時,根據數據處理進度條,可以實時跟蹤重復數據檢測進度。
2.4.5 噪聲數據處理
噪聲數據檢測功能可以對文本數據進行檢測,篩選出與文本中其他數據關聯性不大的或存在較大區(qū)分度的數據。對導入的文本數據,根據數據來源不同選擇不同的關鍵字段進行文本相似度檢查,計算出文檔中數據的TF-IDF值,接著根據TF-IDF值的大小進行噪聲數據的劃分。
2.4.6 統(tǒng)計分析
統(tǒng)計分析模塊主要包含對系統(tǒng)使用情況統(tǒng)計、重復數據檢測和消除的統(tǒng)計、噪聲數據檢測和刪除的統(tǒng)計等3部分。系統(tǒng)使用情況統(tǒng)計包括使用系統(tǒng)的用戶情況、系統(tǒng)已導入的文件情況、系統(tǒng)已處理數據的情況。重復數據檢測和刪除的統(tǒng)計包括檢測和消除的重復數據量、分來源的重復數據消除情況、重復數據消除率。噪聲數據檢測和消除統(tǒng)計包括檢測和消除的噪聲數據量、分來源的噪聲數據消除情況、噪聲數據去除率。
根據地平線掃描數據所屬重點科技領域進行分類,選取人工智能領域的測試數據進行消重去噪。首先對數據類型進行識別,系統(tǒng)識別數據共計4000條,專利數據、期刊數據、論文數據、輿情數據各1000條。在進行重復數據檢測后,經過系統(tǒng)處理和分析得出:人工智能領域檢測重復數據360條,人工智能領域重復數據檢測率為9%;噪聲數據296條,人工智能領域噪聲數據檢測率為7.4%。具體運行情況如表2所示。

表2 地平線掃描數據消重去噪系統(tǒng)運行結果
本文結合地平線掃描數據特點,針對數據重復、數據噪聲的問題,利用SOA架構的設計思想,實現了地平線掃描數據消重去噪系統(tǒng)的設計與開發(fā)。在系統(tǒng)試運行期間,進行4000條重點科技領域數據的消重去噪工作,刪除重復數據360條、噪聲數據296條,數據處理共耗時2.52 ms,證明了系統(tǒng)的可靠性和穩(wěn)定性,能夠有效提升高質量數據比例,為后續(xù)重點領域產業(yè)分析、顛覆性技術識別提供高質量數據支撐,實現了預期目標。