
人工智能(AI) VS 商業(yè)智能(BI) 區(qū)別與聯(lián)系是什么?
辨別一張圖片是否是黃圖,從機器學習的角度看,本質(zhì)上是一個對圖片分類問題:給定一張圖片,讓機器判斷是否是“黃圖”。我們要做的就是研發(fā)一個“分類器”,它能根據(jù)輸入的圖片計算出該圖片屬于“黃圖”類別的概率,然后再根據(jù)這個概率值輸出一個“是”或“否”的結果。計算機擅長的是數(shù)學運算,所以我們要把這個“分類器”先抽象成某種數(shù)學模型,這樣才有可能用計算機來運算。
為了更加方便理解,我們把數(shù)學模型定義為:y=f(x)。即給定圖片x,我們要找到一個函數(shù)f,通過計算f(x)可以得到這個圖片的黃圖概率y。很簡單吧!理論上這個數(shù)學模型可以解決所有的分類問題。具體的實現(xiàn)分為以下幾步:給出定義、收集樣本、訓練模型、驗證。
具體理論細節(jié),請參考相關資料,此處不再詳述。
筆者開發(fā)者博客平臺采用后置審核的業(yè)務模式,因此API接口設計如下:
GET
方法。返回參數(shù)案例:
HTTP/1.1 200 OK
Content-Type: application/json
{
"code": "FAL00033",
"message": "圖片存在風險"
"data": {
"is_explicit": true,
"confidence": 0.92,
"adult_scores": {
"sexy": 0.85,
"violence": 0.07
},
"imgUrl": "https://cdn.explinks.com/contents/upload/img/****"
},
}
鑒于筆者喜歡站在巨人肩膀上的性格,在Github上找到了一個半成品,NudeNet。
由印度開發(fā)者Praneeth Bedapudi提供的開源項目,包含用于圖像分類和目標檢測的兩個預訓練模型。圖像分類模型可以區(qū)分“nude”和“safe”兩類圖片,而目標檢測模型能夠識別圖片中的關鍵部位。
from nudenet import NudeClassifier, NudeDetector
from nudenet.data import load_dataset
from nudenet.train import train_classifier, train_detector
from nudenet.utils import configure_paths
# 配置數(shù)據(jù)集路徑
configure_paths({
'base': '/home/mt_dev/imgs/base/', # 數(shù)據(jù)集基礎路徑
'train': '/home/mt_dev/imgst/train/', # 訓練數(shù)據(jù)集路徑
'validation': '/home/mt_dev/imgs/validation/' # 驗證數(shù)據(jù)集路徑
})
# 加載數(shù)據(jù)集
train_dataset, validation_dataset = load_dataset()
# 訓練圖像分類模型
classifier_model = NudeClassifier()
train_classifier(classifier_model, train_dataset, validation_dataset)
# 訓練目標檢測模型
detector_model = NudeDetector()
train_detector(detector_model, train_dataset, validation_dataset)
# 保存訓練好的模型
classifier_model.save('path/to/save/classifier/checkpoint')
detector_model.save('path/to/save/detector/checkpoint')
print("訓練完成,模型已保存。")
如何找到訓練圖片鑒黃模型的數(shù)據(jù)集?Github!
圖片鑒黃API接口不僅能夠幫助我們有效管理在線內(nèi)容,還能確保遵守當?shù)胤煞ㄒ?guī),維護良好的品牌形象。如何找到這些接口?百度等搜索引擎很難達到目標,在API市場搜索會更快一些。
例如,冪簡集成打造了一款覆蓋國內(nèi)外API的API市場,冪簡API平臺提供了多種維度發(fā)現(xiàn)API的功能:通過關鍵詞搜索API、從API Hub分類瀏覽API、從開放平臺分類瀏覽企業(yè)間接尋找API等。