一個22萬張NSFW圖片的鑒黃數據集?我有個大膽的想法……
機器之心報道
機器之心編輯部
如果你想訓練一個內容審核系統過濾不合適的信息,或用GAN做一些大膽的新想法,那麼數據集是必不可少的。例如圖像鑒黃,我們需要使用卷積神經網路訓練一個分類器,以區分正常圖像與限制級圖像。但限制級的圖像很難收集,也很少會開源。因此最近有開發者在 GitHub 上開源了一份 NSFW 圖像數據集,這是不是你們想要的?
內容審核在很多領域都有非常重要的作用,它不僅需要通過分類器識別圖像或其它數據不適合展示,同時還能結合語義分割模型對這些限制級圖像進行處理(Mask 掉敏感部分)。這樣在不過多影響內容的情況下去除掉不合適的信息。開發者 alexkimxyz 構建的這個項目大概收集了 20 多萬張敏感圖像,且通過 URL 的形式展示了 GitHub 中。
項目地址:https://github.com/alexkimxyz/nsfw_data_scrapper
這 20 萬多張圖像大概分為以下 5 個類別,它們可以用CNN訓練不同的分類器。這裡我們就保留 GitHub 中的原描述了:
其中每一個類別都是一個 Text 文本,文本中的每一行都對應一個 URL,所以讀取並下載都非常方便,自己寫也就幾行代碼。如下簡單展示了 sexy 類別下文本與圖像:
此外值得注意的是,有少量圖像 URL 是失效的,因此在處理的過程中需要把這些情況考慮進去。一般如果 URL 是失效的,它會返回一張 161×81 的聲明圖像。
當然,作者同樣提供了獲取 URL 和下載圖像的腳本,我們只需要運行就行了。目前,這些腳本僅在 Ubuntu 16.04 Linux 發行版本中進行了測試。
以下是重要腳本(位於 scripts 目錄下)及它們的作用:
1_get_urls.sh:遍歷 scripts / source_urls 下的文本文件,下載上述 5 個類別中每個類別的圖像 URL。Ripme 應用程序執行所有關鍵部分。源 URL 主要是鏈接到各種 subreddits,但可以是 Ripme 支持的任何網站。注意:作者已經運行了此腳本,其輸出位於 raw_data 目錄中。除非在 scripts / source_urls 下編輯文件,否則無需重新運行。
2_download_from_urls.sh:下載 raw_data 目錄中的文本文件中找到的 URL 的實際圖像。
5_create_train.sh:創建 data/train 目錄並從 raw_data 將所有* .jpg 和* .jpeg 文件複製到其中。並刪除損壞的圖像。
6_create_test.sh:創建 data/test 目錄,並從 data / trainto 為每個類隨機移動 N = 2000 個文件(如果需要不同的訓練/測試分割,則在腳本內更改此數字)到 data / test。或者,可以多次運行它,每次它將從 data/train 到 data/test 將每個類別移動 N 個圖像。
注意運行 get_urls.sh 後,生成的 URL 文本文件會覆蓋 raw_data 下已有的文本文件。所以在複製 GitHub 項目後,我們也可以直接運行 2_download_from_urls.sh 從已有 raw_data 文件下載圖像。
環境配置
Python3 環境:conda env create -f environment.yml
Java 運行時環境(Ubuntu linux):sudo apt-get install default-jre
Linux 命令行工具:wget, convert (imagemagick 工具套件), rsync, shuf
怎麼運行
將工作目錄轉到 scripts,並按文件名中的數字指示的順序執行每個腳本,例如:
如上所示為腳本的執行方法,五類一共 227995 張敏感圖像。這個腳本同樣會把它們分割為訓練集與測試集,因此直接利用它們實現 5 類別的分類任務會很簡單。當然如果我們需要用於其它的任務,就沒有必要直接分割了。
使用簡單的卷積神經網路直接實現分類任務可以達到 91% 的準確率,這已經非常高了,因為敏感數據手動分為 5 類本來就有一些模糊性存在。以下展示了在測試集上,5 分類任務的混淆矩陣:
其中對角線表示正確預測的樣本數,其它為誤分類樣本數。這個分類任務至少說明了 5 類別是有區分度的,不論我們用於正常內容與敏感內容的二分類,還是使用 GAN 做一些新奇的模型,類別都是很有區分度的特徵。
最後,各位請懷著敬畏之心嚴肅使用,且僅供研究使用(不要舉報)……
本文為機器之心報道,轉載請聯繫本公眾號獲得授權。
------------------------------------------------
※亞馬遜推出AI晶元、定製CPU:入局晶元軍備競賽
※普天同慶:GitHub提供免費私有Repo,真的賊好用啊~
TAG:機器之心 |