熊貓吃短信:全新基于機器學(xué)習(xí)的垃圾短信過濾應(yīng)用
作為一個生活在移動互聯(lián)網(wǎng)時代的技術(shù)宅,飽受騷擾短信之苦,但沒有一個簡單的又不用上傳自己短信的過濾應(yīng)用。于是我從自己收到的兩萬多條短信以及測試期間用戶提交的短信樣本中訓(xùn)練出了熊貓。
iOS 11 帶來了非常強大的 CoreML 機器學(xué)習(xí)框架,開發(fā)者都用來做視覺處理了,我就用它做一個文本歸類的應(yīng)用吧,讓熊貓可以在手機里安家。
準(zhǔn)確的語義識別
熊貓從龐大的樣本中學(xué)習(xí)到了垃圾短信的文本模式,可以非常準(zhǔn)確的從復(fù)雜的語義環(huán)境中對短信進行分類。比如下圖中非常相似的 【京東支付】 的兩條短信。
垃圾短信識別
你可以拷貝短信后,在應(yīng)用里面點擊 準(zhǔn)確性測試 來測試準(zhǔn)確度。
使用非常簡單
您只需要安裝后打開 設(shè)置 → 信息 → 未知與過濾信息 然后選中 熊貓吃短信 即可。熊貓就會默默的幫你吃掉垃圾短信。
關(guān)注隱私
熊貓不需要服務(wù)器端,不需要聯(lián)網(wǎng)。應(yīng)用自帶完整的訓(xùn)練模型,使用 CoreML 就可以在手機上對短信進行分類。iOS 11 的沙盒限制也不允許短信過濾器訪問網(wǎng)絡(luò)以及向主App共享數(shù)據(jù)。雖然通過配置項可以讓 iOS 11 向自己的服務(wù)器上發(fā)送短信在云端判斷,但是熊貓并沒有使用這一功能。
自動進化
熊貓正在飛速成長中,分類準(zhǔn)確性依賴于熊貓有沒有見過類似的信息。但是世界那么大,總有沒吃過的東西,熊貓也有見識淺的時候?;谧栽冈瓌t,您可以在應(yīng)用里面提交新的短信樣本喂養(yǎng)熊貓,熊貓會從新的樣本中學(xué)習(xí)到新的垃圾或者正常短信模式。
注意:提交短信樣本會將短信匿名上傳到服務(wù)器上,并非本地訓(xùn)練,熊貓將在云端完成學(xué)習(xí),然后分發(fā)到所有人的手機上。
關(guān)于偏食
由于熊貓是我教的(監(jiān)督學(xué)習(xí)),其一定程度上繼承了我的喜好,對于有些比較模糊的短信,比如優(yōu)惠、促銷信息,我是一律標(biāo)記為騷擾短信的。但是有些人可能會喜歡收到此類通知,大家自行取舍。
系統(tǒng)限制
由于 iOS 11 的系統(tǒng)設(shè)計原因,被過濾的短信也會顯示角標(biāo),以及在 Apple Watch 上通知。另外 iOS 11 過濾短信是基于對話的過濾,如果同一個號碼既發(fā)騷擾短信又發(fā)正常短信,那么整個對話都會被過濾。這種現(xiàn)象常見于五位數(shù)的號碼,但 10 開頭的短信發(fā)送端口非常少見。
***
- 熊貓的 Logo 來自于我最喜歡的一個滾滾背影圖。
- 熊貓目前只針對中文做了訓(xùn)練,其它語言環(huán)境下可能會撂攤子。