Machine-Learning

什麼是無‘信息率’算法?

  • May 19, 2017

我計劃實施“無信息率”作為匯總統計的一部分。這個統計是在 r 中實現的(優化 SVM 以避免二元分類中的假陰性),但不是在 Python 中(至少我找不到參考)。

有沒有我可以參考的規範參考來實現這個算法?

我搜索了 Wikipedia 和各種 Google 搜索,但沒有找到參考。

更新 :

閱讀插入符號文檔https://cran.r-project.org/web/packages/caret/caret.pdf

" 計算總體準確率以及該準確率的 95% 置信區間(使用 binom.test)和單邊測試以查看準確率是否優於“無信息率”,後者被認為是數據中最大的類別百分比。”

假設你有回應和協變量為了, 和一些損失函數. 模型的無信息錯誤率是平均損失在所有組合和:

如果您有一個預測predicted向量和一個響應向量,您可以通過生成所有組合然後在這些結果向量上評估某些函數response來計算無信息錯誤率。predicted``response``loss

在 R 中,假設 RMSE 損失,(使用tidyr庫)這看起來像:

predicted <- 1:3
response <- 4:6
loss <- function(x, y) sqrt(mean((x - y)^2))

combos <- tidyr::crossing(predicted, response)
loss(combos$predicted, combos$response)

在 Python 中,這看起來像

import numpy as np

predicted = np.arange(1, 4)
response = np.arange(4, 7)

combos = np.array(np.meshgrid(predicted, response)).reshape(2, -1)

def loss(x, y):
   return np.sqrt(np.mean((x - y) ** 2))

loss(combos[0], combos[1])

引用自:https://stats.stackexchange.com/questions/280597

comments powered by Disqus