時鎮軍
中國移動通信集團江蘇有限公司
使用手機的人常常會被手機短信“廣而告之”。短信廣告的泛濫在一定程度上影響了手機持有者的工作效率和日常生活,而且這些廣告的內容大多沒有經過審查,可信度極低,更暗藏詐騙陷阱。“優惠倒計時”、“折扣活動中”、“限量優惠券”……每逢“雙11”“618”等購物節,垃圾短信便向潮水一般涌來,令用戶不堪其憂。利用行業端口發送如:驗證碼、繳費提醒、會員通知、物流跟蹤、票務信息等,已成為互聯網+體系中必不可少的一部分,但與此同時也帶來了很多行業端口類的問題和風險,如肆意發送營銷推廣類短信、超范圍發送情況等等,給用戶造成極大困擾。
工信部于2015年發布的《通信短信息服務管理規定》中明確要求“短信息服務提供者、短信息內容提供者未經用戶同意或者請求,不得向其發送商業性短信息”,并對商業性短消息作出定義,“是指用于介紹、推銷商品、服務或者商業投資機會的短消息”。為了更好地規范行業端口,除了在行政法規方面加強對信息的管理,還應通過技術手段對垃圾短信進行有效的監控和過濾。
本文針對行業端口短信的實際情況,設計了一套完整的行業短信管控系統,通過行為管控、內容管控等多種手段,保證行業端口類短信被實時高效監控、分類和處理,并實現對垃圾短信的實時攔截。
平臺首先對接行業網關,接入行業消息,針對行業消息進行精細化管控,如名單管控、行為管控、內容管控、時間區域管控;經過層層監控管控后,過濾掉各類不良行業端口消息,確保正常的消息下發至用戶手機中。同時各類過濾消息經過畫像展示、指標分析、異常預警的方式給予管理人員警示及策略建議。系統架構圖如圖1所示。
各模塊功能如下:
(1)數據采集模塊:提供數據采集能力,通過和外部系統對接,獲取基礎數據。支持的數據獲取方式包括:數據文件、實時消息方式。消息通信模塊以并發形式部署,文件模塊主備部署。
(2)數據ETL(Extract-Transform-Load,抽取-轉換-加載)模塊:提供數據整合能力,負責完成數據從數據源向數據倉庫轉換的過程。ETL模塊內置規則引擎,可以按照系統需要完成數據的清洗、抽取、轉換、加載、刷新。
(3)數據倉庫:提供數據存儲查詢能力,可以根據業務量進行橫向擴展。數據倉庫存儲部分基礎數據、存儲經過ETL整合的數據、存儲分析引擎分析后的高質量數據。
(4)分析引擎:提供數據分析和特征分析能力。數據分析部分包括數據整合、數據計算、數據建模、模型驗證等能力。特征分析部分針對于實時消息進行基礎特征分析、內容特征分析、行為特征分析、信息監控等。
(5)數據引擎:提供對數據倉庫中的數據進行業務層的整合、分析能力。包括數據權限管理,指標分析、多維圖表、端口健康分析等。
(6)數據展示:提供數據可視化能力,根據業務提供直觀便捷的分析頁面,模塊采用BS架構,可分布式部署,滿足大量用戶同時使用需要。數據展現模塊具備數據權限管理能力,可以根據使用系統的角色不同展現不同的工作內容,保證易用性和安全性。

圖1 系統架構圖
(1)模板短信配置方式
端口消息的內容大多具有模式化,可以通過配置模板的方式來管理端口,當端口發送內容和配置的模板不相符時,會阻止其下發。模板短信匹配包括完全匹配和通配符匹配。
完全匹配:短信內容需與注冊模板內容完全一致。
通配符匹配:短信內容明文處與模板內容明文處完全一致,短信內容其他部分需要滿足模板對應位置設置的通配符規則,?號代表任意字符包括漢字、數字和英文字符,!號代表英文字符和數字,#號代表漢字,規則以[]號括起來。
線性滑動抽取算法:
在進行主要的匹配任務前,先將每個模板的最長漢字串提取存儲,并與它們各自的模板建立索引關系。此算法用于對每個端口配置的所有模板進行最長漢字串的抽取。
步驟1:若right指針指向的字符為漢字,則left指針保持原位置,right指針向右滑動;
步驟2:若right指針指向的字符不是漢字字符,則計算right-left并與max比較,若left-right>max,則將right-left賦給max,并將left賦值給pos,最后將right賦值給left;
步驟3:當right滑動到模板串的最后一個字符時,整個算法過程結束。
此時,max已經保存了最長漢字串的長度,而pos則保存了最長漢字串的開始位置,即只需做一次拷貝便可以提取出最長漢字串。
分析整個算法過程(如圖2所示)可知,在整個抽取過程中,left和right指針永遠不回退,當right指針指向模板串的末尾時,抽取過程結束。故該算法的時間復雜度為O(M),其中,M為模板串長度,是一個線性時間的復雜度,且不需要任何輔助數據結構。即此算法只需對模板串遍歷一次便可抽取出該模板的特征信息,與傳統的提取算法相比,此線性滑動抽取算法速度提升了一個量級。

圖2 線性滑動抽取算法
(2)日發送量異常管控
由于每個端口的發送行為和發送特征都不同,加上龐大的端口數量和發送量,管理員很難甄別,對于發送量較小的端口,又很難識別出被盜的可能,為了從根本上解決管理員的難題,采用智能手段管理,即使用態勢分析方式,進行端口日發送量的閾值預測,從而使端口未來發送閾值的判斷智能化。
根據對日發送量進行策略配置的業務需求特性,使用“多元線性回歸算法+浮動修正”的方式對日發送量策略進行自適應調整,根據歷史數據進行建模,得出未來數據的估算值和上浮度,用端口的預測值加上浮動值作為日發送量的閥值,并且系統每天自動按照不同端口構建不同模型,為每個端口生成新一天的監控策略,從而得到更實際的預測數據,實現自動化管理。這樣既能更準確地分析出端口是否存在被盜的可能性,又能更有效的管理端口。數據越多,估算準確率越高,建議3個月以上。
此外,為了防止被盜端口的數據樣本對模型的訓練造成干擾,我們還設計了剔除無用數據的方法,即:當某個端口判定為有被盜嫌疑時,及時下發短信通知管理員,待管理員回復后,一旦該端口被管理員確定為被盜,則將該端口的日發送量數據從算法的訓練集中剔除。如圖3所示。

圖3 日發送量異常管控過程
(3)相似內容管控方式
對行業端口發送的短信內容進行智能語義分析,將發送內容進行分類,如貸款類、驗證碼類、廣告類等類別,對于投訴率高的類別,進行策略提取或直接管控。主要步驟(如圖4所示)如下:

圖4 相似內容管控方式分類流程
步驟1:使用添加動態詞頻權重和添加動態詞組頻率權重方法為全部訓練文本數據進行分詞。
步驟2:分詞結果轉換成特征向量。將步驟1中文本分出的全部單詞進行去重操作,得到的分詞數量作為文本的特征維度,并且按照讀入先后順序把去重后的各個單詞保存到分詞數組中,將每個訓練文本分出的單詞在分詞數組中進行匹配,匹配成功后該單詞在數組中序號對應的向量值設為1。
步驟3:將特征向量帶入回歸算法。使用softmax回歸模型,將步驟2中獲取的訓練文本的特征向量和指定的類型,求出最小代價函數表示的權重矩陣。
步驟4:保存數據模型。將步驟2訓練后的文本分詞數組保存到文件,作為分類操作中文本轉換成特征向量的依據,以保證和訓練時特征向量轉換的一致性。保存步驟3求出的權重矩陣。
步驟5:短信文本分類。短信分類前,首先從數學模型中讀入分詞數組和權重矩陣。使用步驟1和步驟2中的分詞方法和文本向量轉換方式將待分類的文本轉換成特征向量。將文本特征向量帶入步驟3中的權重矩陣。用特征向量中每個值為1的分量的序號,找到權重矩陣中對應的行。將對應行中的權重值分別帶入模型,求出文本分別屬于一種類型的概率。將概率值最大的類型作為本次文本分類的結果。
平臺基于行業端口消息,針對名單類管控手段、內容類管控手段、行為類管控手段等能力進行說明,具體功能如圖5,上文中針對內容管控中的模板短信匹配管控和相似內容管控、發送行為管控中的日常發送量異常管控做了主要技術功能描述。
(1)行業消息接入
系統與行業網關建立連接,進行消息交互,接收行業網關傳輸的實時消息,行業網關等待系統反饋消息處理結果。
(2)消息內容預處理
在核心處理子系統上優先進行消息內容的預處理,包括消息內容繁轉簡、消息內容去除特殊字符、消息內容編碼轉換,保證消息內容能夠正常應用管控。
(3)端口基礎特征分析
針對發送端口的基礎特征屬性,如行業類型、客戶級別、接入時間、黑白名單模型、歷史發送量情況、歷史投訴量情況、歷史監控違規量情況等進行分析,獲取各項屬性值,作為模型識別輸入,對垃圾短信進行識別。
(4)名單管控
通過人工設置黑名單端口、舉報關系策略、敏感用戶和對應過濾條件、白名單策略對行業消息進行名單類管控。
(5)發送行為管控
通過人工設置日發送量管控閥值、設置端口發送頻次、端口月累計舉報率閥值、持續騷擾管控策略,對行業端口消息直接攔截或送人工審核。
(6)內容管控
模板短信匹配管控:針對經常發送大量嫌疑消息的端口,建立高風險端口配置,針對高風險端口配置模板,此類端口需要按照注冊的模板進行校驗后下發短信。注冊模板同時支持模板驗證功能。
相似內容管控:判定端口發送短信內容是否與要求管控短信內容相同或者相似,識別判定確認后,消息采取管控手段:攔截或人工線下審核。
通過人工設置敏感垃圾詞策略、常用短語策略、特殊端口和關鍵詞策略對端口發送行業消息進行管控。
支持嫌疑消息人工線下判定審核功能、舉報內容監控、端口簽名合法性功能。
(7)其他管控
通過時間管控、應急管控、區域屏蔽管控,對行業端口短信直接攔截或線下人工審核;支持PUSH、閃信等特殊格式消息管控功能,能夠設置具備發送特殊格式消息端口列表,對違規發送特殊格式消息端口進行管控。
(8)數據存儲
系統滿足數據存儲功能,存儲原始數據、統計數據、分析結果數據,在保留長期數據的前提下保證查詢效率。
(9)業務發展支撐
通過指標跟蹤分析、畫像展示、異常違規預警、端口健康度評估、業務監管輔助對數據進行分析和展示,更直觀展示平臺數據信息。
(10)外部接口
與行業網關、經分系統、投訴平臺進行消息和文件通信。

圖5 平臺功能
(1)組網方案
行業端口短信運營與管控平臺基于行業端口基礎信息、發送短信樣本、用戶舉報樣本三方面數據,針對“基礎屬性+行為特征+內容特征”相結合的大數據分析平臺,按投訴風險對行業短信分級,建立行業端口垃圾短信科學封堵策略管理模式。
(2)接口方案
①行業消息實時接口
行業端口短信運營與管控平臺接收行業網關實時消息,為行業網關返回消息鑒權結果,以SMPP協議為基礎,實現ISMG與SMMC的互聯,達到對經ISMG短信息的實時監控。
②預警短信下發接口
行業端口短信運營與管控平臺支持與行業網關交互通信,通過行業網關下發預警短信提醒,接收網關返回消息應答和狀態報告。
③端口基礎信息同步接口
行業端口短信運營與管控平臺與經分系統交互通信,接收經分系統定時同步行業端口基礎信息增量文件和全量文件,并自動進行解析、入庫、同步等業務處理。
平臺與經分系統間通過FTP通信,由經分系統提供基礎信息文件到指定的FTP服務器上,由平臺定期獲取文件。
④舉報數據同步接口
行業端口短信運營與管控平臺與舉報平臺交互通信,接收舉報平臺每天定時同步行業端口用戶舉報數據增量文件,并自動進行解析、入庫、同步等業務處理。
平臺與舉報平臺間通過FTP通信,由舉報平臺提供基礎信息文件到指定的FTP服務器上,由平臺定期獲取文件。如圖6所示。

圖6 行業端口短信運營與管控平臺系統組網圖
行業端口短信運營與管控平臺自上線以來,強化日常運營,累計更新部署關鍵字策略789條,月均人工審核量144萬條,攔截商業性營銷短信17.4萬條,送審攔截比12.07%。2020年行業端口百萬短彩信被舉報率同比下降21.88%。
本文針對行業端口垃圾短信的現狀,研究了行業端口短信運營與管控系統在內容類監控和發送行為策略方面的技術方案。通過采用線性滑動掃描算法、日發送量監控、相似內容管控等主要技術的應用,結合行業端口短信的實際情況進行全方位、多維度分析,尋找業務規律,形成一套完整的行業數據分析視圖,制定一套精細化管控機制,輔助管理人員全面掌控行業端口發展情況,提升業務健康度,降低垃圾短信舉報量。