apple-aiml-research/ml-hierarchical-confusion-matrix

Neo: Hierarchical Confusion Matrix Visualization (CHI 2022)

Neo – 階層式混淆矩陣

是什麼 – 一個 JavaScript 庫,可嵌入支援 階層式多輸出 類別標籤的互動式混淆矩陣視覺化。專為研究論文《Neo: Generalizing Confusion Matrix Visualization to Hierarchical and Multi-Output Labels》(CHI 2022)所開發。

為何重要 – 傳統混淆矩陣假設類別為平面清單。許多現代模型預測結構化標籤(例如 fruit:citrus:lemon 或多個屬性如 fruit:apple, taste:sour)。Neo 讓資料科學家能在該階層的任意層級探索錯誤,重新歸一化計數,並匯出視圖,使模型診斷更加豐富。

如何使用

  1. 安裝 透過 npm 或 yarn:
    npm install --save @apple/hierarchical-confusion-matrix
    # 或
    yarn add @apple/hierarchical-confusion-matrix
    
  2. 匯入 模組並呼叫 confMat.embed(containerId, spec, confusions),其中:
    • spec 描述類別階層(例如 { classes: ['root'] })。
    • confusions 是一個物件陣列 { actual: [...], observed: [...], count: N }。該庫支援四種格式:普通、階層式(: 分隔層級)、多輸出(, 分隔獨立標籤群組),以及兩者的組合。
  3. 替代方案 – 若偏好使用普通腳本標籤,可在倉儲中執行 yarn install,將編譯後的 public/confMat.js 複製到您的網站,並依照 README 中的 HTML 範例完全嵌入。

資料格式 – 每個項目記錄具有給定 實際 標籤集的實例有多少被預測為特定的 觀測 標籤集。README 提供了以下具體 JSON 片段:

  • 簡單類別混淆(fruit:lemonfruit:apple)。
  • 階層式混淆(fruit:citrus:lemonfruit:pome:apple)。
  • 多輸出混淆(fruit:lemon, taste:sweetfruit:apple, taste:sour)。
  • 階層式 + 多輸出組合混淆。

開發 – 倉儲包含典型的 JavaScript 工具鏈:

  • yarn build – 編譯 TypeScript 源碼。
  • yarn dev – 啟動本地開發伺服器以快速迭代。
  • yarn test:unit – 執行單元測試。
  • yarn lint – 檢查並自動修復程式碼風格。

查看演示 – 實時演示托管於 https://apple.github.io/ml-hierarchical-confusion-matrix/,README 中連結了簡短的 YouTube 演示影片。

引用 – 若在出版物中使用 Neo,請引用 CHI 2022 論文(提供 BibTeX)。

授權 – 程式碼根據倉儲的 LICENSE 檔案發布(Apple 開源條款)。


  • 上述所有細節均直接取自倉儲的 README;未推斷任何額外功能。*

相關

  • 專案
  • 專案
  • 專案
  • 專案