使用doccano標註NER資料詳細教程

shizidushu發表於2024-10-12

使用doccano標註NER資料詳細教程

說明:

  • 首次發表日期:2024-10-12
  • 參考資料:
    • https://github.com/zjunlp/DeepKE/blob/main/README_TAG_CN.md
    • https://doccano.github.io/doccano/tutorial/
    • https://blog.csdn.net/GongYangXianShen/article/details/137270106 (轉換為BIO格式)

部署doccano

https://github.com/doccano/doccano 有說明如何部署。比如使用Docker部署:

docker run --name doccano \
  -d --restart always \
  -e "ADMIN_USERNAME=admin" \
  -e "ADMIN_EMAIL=admin@example.com" \
  -e "ADMIN_PASSWORD=password" \
  -v doccano-db:/data \
  -p 8001:8000 doccano/doccano

建立使用者

預設只有一個使用者,我們需要開啟ADMIN管理頁面新增新的使用者。

在主網址後加/admin/然後開啟ADMIN管理頁面(注意後邊的斜槓是必須的),點選Add

新增使用者名稱和密碼資訊後,點選SAVE以儲存:

如何進行NER標註

建立專案

預設的介面是英語的,不習慣英語的話,可以切換為中文:

然後點選登入,輸入使用者名稱和密碼登入,登入之後:

點選建立,會跳轉到以下頁面:

點選以選擇序列標註(Sequence Labeling),然後輸入名稱等必要資訊,根據需要配置其他屬性:

點選建立,跳轉到以下頁面:

匯入資料集

單擊左側的資料集按鈕:

移動滑鼠到操作按鈕:

點選匯入資料集:

doccano支援多種格式的文字,它們的區別如下:

  • Textfile:上傳的檔案為txt格式,打標時一整個txt檔案顯示為一頁內容;
  • Textline:上傳的檔案為txt格式,打標時txt檔案的一行文字顯示為一頁內容;
  • JSONLJSON Lines的簡寫,每行是一個有效的JSON值;
  • CoNLLCoNLL格式的檔案,每行均帶有一系列製表符分隔的單詞;

上傳一個TXT檔案:

點選匯入後:

定義標籤

點選左側的標籤,然後移動滑鼠到操作選單後點選建立標籤

建立3個常見的標籤,PER, LOC, ORG,實際應用中需要根據需求確定有哪些標籤。以下以建立PER標籤為例:

建立完後:

新增成員

點選左側的成員按鈕,然後點選增加

選擇需要新增到專案的使用者和角色,其中有3種角色(專案管理員 ,標註員,審查員)。選擇好後儲存:

儲存後可以看到:

分配標註任務

首先,選中需要分配的資料:

然後,點選操作選單下的Assign to member

選擇分配方案,然後點選右側的Assign按鈕

以上分配方案將15%的任務分配給admin使用者,85%的任務分配給user1使用者。

檢視分配結果:

標註

點選左側資料集,然後選擇一條資料,點選最右邊的標註按鈕開始標註。

舉例來說,點選右側的PER標籤,然後滑鼠分別選擇文字中的對應文字:

標註完成後,點選文字左上角的X按鈕表示已標註完成:

匯出資料

點選左側資料集按鈕,移動滑鼠到操作選單,點選匯出資料集

選擇JSONL格式,勾選Export only approved documents(僅匯出已稽核過的資料),然後點選匯出:

相關文章