中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

改進(jìn)的臟話審查方案

導(dǎo)言

我經(jīng)常光顧cnbeta,那里的評論很精辟,有時我也會忍不住評上兩句,但近來突然發(fā)現(xiàn)發(fā)布評論都必須經(jīng)過審核才會顯示了,這讓我感到非常掃興。由此我又想起了此前我曾討論過的“非法內(nèi)容核查方法”,我想這種人機(jī)結(jié)合的審核方式應(yīng)該會比較適合現(xiàn)在的cnbeta吧。

而現(xiàn)在我已經(jīng)對此方案有了更深、更好的思路了,想在此分享出來,和大家探討一下,我將在此逐步解析整個審查的流程:

準(zhǔn)備工作

要審查臟話,首先需要創(chuàng)建對應(yīng)的審查規(guī)則,每條規(guī)則需要提供以下基本信息:

1.         表達(dá)式:用于審查內(nèi)容是否匹配的正則表達(dá)式。使用正則的原因在于其靈活性,常規(guī)的純文本檢索雖然快,但遇到干擾符等情況時束手無策,而正則就可以輕松解決,例如表達(dá)式“[煞傻媽狗屎賤騷瘙搔臊][/s/S]{0,4}?[逼筆比BB鼻X]”可以匹配多種組合的臟話,并可兼容至多4個干擾字符。

2.         首字符列表:用于遍歷文章內(nèi)容時提取疑似首字符使用。對于表達(dá)式“[煞傻媽狗屎賤騷瘙搔臊][/s/S]{0,4}?[逼筆比BB鼻X]”來說,它的首字符列表中應(yīng)包含“煞傻媽狗屎賤騷瘙搔臊”。

3.         尾字符列表:用于遍歷文章內(nèi)容時提取疑似尾字符使用。對于表達(dá)式“[煞傻媽狗屎賤騷瘙搔臊][/s/S]{0,4}?[逼筆比BB鼻X]”來說,它的尾字符列表中應(yīng)包含“逼筆比BB鼻X”。

4.         分值:即匹配成功后,為該文章增加的危險(xiǎn)度分值。

5.         最大長度:就是臟話內(nèi)容可能出現(xiàn)的最大字?jǐn)?shù)。對于表達(dá)式“[煞傻媽狗屎賤騷瘙搔臊][/s/S]{0,4}?[逼筆比BB鼻X]”來說,它的最大長度應(yīng)當(dāng)是6

6.         精確長度:就是當(dāng)臟話內(nèi)容完全無干擾符的情況下的實(shí)際字?jǐn)?shù)。此屬性可以用于計(jì)算匹配內(nèi)容的精準(zhǔn)程度,比如還是用上面那個表達(dá)式“[煞傻媽狗屎賤騷瘙搔臊][/s/S]{0,4}?[逼筆比BB鼻X]”的例子,如果遇到語段“她的媽媽總是逼我們盡快完婚”也會匹配成功,但匹配到的內(nèi)容長度會是5,與精確長度2進(jìn)行比對的話,就可以得知此匹配項(xiàng)有可能屬于誤判;而且我們還可以讓程序依據(jù)精確程度為文章打分,比如此規(guī)則原始分值為10分,但只有40%的精確度,那么在加分時可以只加4分,這樣得出的危險(xiǎn)度分值將更具參考性。

盡管主要目的是為了檢驗(yàn)臟話,但此機(jī)制也完全適用于檢驗(yàn)文章內(nèi)的廣告、色情、血腥、政治、宗教等內(nèi)容,甚至還可能用來給內(nèi)容做積極方面的評分,比如用以審閱學(xué)生作文,對特定修辭手法予以加分。

初始化

在審查之前,需要事先載入先前創(chuàng)建的規(guī)則,并加以分類,以更方便及加速檢索。

分類的方法是建立一個Dictionary<規(guī)則>>類型的對象稱為規(guī)則字典,將規(guī)則可能觸發(fā)的首尾字符組合作為規(guī)則字典的鍵值,保存規(guī)則到對應(yīng)的字典內(nèi)的List中,這樣可以極大地提高檢索時獲取規(guī)則的速度。

比如規(guī)則的首尾字符分別為“王”和“蛋”,那么就將此規(guī)則存入規(guī)則字典[“王蛋”]內(nèi)的List中去,如果此規(guī)則存在多種首尾字符組合,那么就保存多個副本到各種首尾組合的規(guī)則字典鍵值中。

在分類的同時,還應(yīng)該采集并創(chuàng)建以下數(shù)據(jù),并保存?zhèn)溆茫?/span>

1.         全局最大長度:即所有規(guī)則中,最大長度屬性的最大值。此屬性將用在檢索時進(jìn)行預(yù)判斷,以減少不必要的遍歷次數(shù),提高效率。

2.         全局首字符列表:即所有規(guī)則中出現(xiàn)的首字符總列表。此屬性用于檢索文章全文時使用。

3.         全局尾字符列表:即所有規(guī)則中出現(xiàn)的尾字符總列表。此屬性用于檢索文章全文時使用。

遍歷內(nèi)容全文

遍歷內(nèi)容的每一個字符,依據(jù)全局首字符列表全局尾字符列表找出可能是非法內(nèi)容首字符或尾字符的字符,將該字符及其位置存入相應(yīng)列表中,我們在這里將捕獲到的列表稱為疑似首字符列表疑似尾字符列表

這里我建議在捕獲到尾字符時倒序插入到疑似尾字符列表中,這樣在遍歷匹配時可以優(yōu)先匹配字符較多的內(nèi)容,比如“傻”和“傻瓜”都符合臟話規(guī)則的情況下,優(yōu)先匹配“傻瓜”。

分析并處理捕獲內(nèi)容

接著遍歷疑似首字符列表,從疑似尾字符列表中找出可能與之搭配的尾字符(根據(jù)當(dāng)前首字符索引位置及規(guī)則的全局最大長度進(jìn)行預(yù)篩檢:尾字符索引位置>=首字符索引位置&&尾字符索引位置<=首字符索引位置+全局最大長度)。

再將當(dāng)前的首尾字符組合成字符串,當(dāng)作鍵值,向規(guī)則字典查詢鍵值內(nèi)可能匹配的規(guī)則(根據(jù)當(dāng)前首尾字符索引位置進(jìn)行預(yù)篩檢:規(guī)則最大長度>=尾字符索引位置-首字符索引位置+1)。

從原文中截取首字符索引位置到尾字符索引位置之間的片段,用當(dāng)前規(guī)則進(jìn)行檢驗(yàn),如匹配成功則依據(jù)匹配的精確度增加相應(yīng)比例的分值(算法就是使用規(guī)則的精確長度除以實(shí)際捕獲到的文本內(nèi)容長度,再乘以規(guī)則的分值),然后開始檢驗(yàn)跨過當(dāng)前尾字符索引位置之后的下一個首字符。

除了輸出累計(jì)評分外,還可以在審核時生成最高評分、平均精確度、危險(xiǎn)內(nèi)容覆蓋比例等信息,供人工審核時參考。

總結(jié)

依照上述步驟,即完成了整個機(jī)審過程,然后就可以根據(jù)評分結(jié)果來決定如何處理文章了。整個過程的簡略的流程示意圖如下:

這個經(jīng)過改進(jìn)的方案兼顧了性能與靈活性:只進(jìn)行一次全文掃描;使用正則表達(dá)式進(jìn)行語段匹配。預(yù)計(jì)稍加優(yōu)化,并加入緩存機(jī)制的話,常規(guī)文章的審核耗時不會超過半秒。

存在并期待改進(jìn)的缺點(diǎn):由于采用了首尾字符匹配形式觸發(fā)正則驗(yàn)證,正則中的斷言似乎就無用武之地了,這使得正則發(fā)揮的功能有所縮減,魚與熊掌真不可兼得嗎?

最后,再重申一下我對人機(jī)協(xié)作審核機(jī)制的處理建議:

不要嘗試將危險(xiǎn)文字自動替換后直接發(fā)布,省去人工審核,那樣只會招致無限的道魔戰(zhàn)。

無危險(xiǎn)的內(nèi)容應(yīng)直接發(fā)布;

有一定危險(xiǎn)的內(nèi)容也會發(fā)布,但在發(fā)布的同時會在后臺提請管理員進(jìn)行人工審查;

高危險(xiǎn)度的內(nèi)容延遲發(fā)布并通知管理員。

NET技術(shù)改進(jìn)的臟話審查方案,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲精品久久久一区二区三区 | 国产91在线播放精品91 | 国产 欧美 日韩 一区 | 久久91精品国产一区二区 | 久久久久亚洲视频 | 午夜精品一区二区三区在线观看 | 欧美日韩高清一区二区三区 | 中文字幕亚洲专区 | 91精品国产色综合久久 | 欧美1区2区 | 日本a在线| 亚洲国产18| 亚洲一二三区不卡 | 在线视频一区二区三区 | 国产精品一区二区无线 | 久干网| www.久草.com | 久久国产免费看 | 人人看人人射 | 欧美日韩一区二区三区四区五区 | 亚洲一区欧美一区 | 国产精品久久久久久久久久 | 日韩久久久久久久久久久 | 中文字幕人成乱码在线观看 | 中文字幕 欧美 日韩 | 日本三级做a全过程在线观看 | 久久国产精品-久久精品 | 国产小视频在线观看 | 亚洲香蕉在线视频 | 国产精品一区免费 | 亚洲一区在线播放 | 黄网免费看 | 日本精品视频 | aaaaaaa片毛片免费观看 | 不卡一区二区三区四区 | 免费在线一区二区三区 | 国产成人精品一区二区三区视频 | www.天堂av.com | 色综合天天天天做夜夜夜夜做 | 天天干国产 | 91电影在线播放 |