面試中遇到過的問題

2021-08-08 18:54:46 字數 2255 閱讀 6219

二分類問題,使用sigmoid函式,

為什麼使用sigmoid函式:

因為二分類問題標記為{0,1},lr產生的**值是連續的實數,因此要把它轉換為0/1。如果直接使用單位階躍函式,值是不連續的。而sigmoid是最理想的,在**值=0附近曲線很陡,而且能將**值轉化為乙個接近0/1的y值

怎麼得出loss function?

使用極大似然法mle來估計w和b,最大化「對數似然」

求解loss function?

梯度下降法,牛頓法

為什麼使用最小二乘法/mse?

歐式距離是最自然最直觀的距離,正態分佈是最常見最容易處理的雜訊分布,自然最小二乘就是最優的方法

如何選擇閾值?

最大化specificity(true negatives)和sensitivity(true positives)

通過cross validation

正則化是保證模型「簡單」的基礎上最小化訓練誤差m

l1與l2比較,l1得到的是稀疏解,正則化後去掉沒有資訊的feature,把這些特徵的權重置為0.l2則讓每個元素都很小,不為0。但是l2可導,而l1在0處不可導。

l2不能控制feature的「個數」,但是能防止模型overfit到某個feature上;相反l1是控制feature「個數」的,並且鼓勵模型在少量幾個feature上有較大的權重。

bic和l2範數的區別

l1,l2在模型訓練的過程中通過加約束來達到生成更好的模型的目的。

而aic,bic是在已經訓練好的不同模型裡面篩選出相對最好的那個模型。

直接留出training和testing

cross validation

均方誤差

錯誤率,精度: 精度=1-錯誤率

查準率precision,查全率recall,f1

roc auc: roc 橫座標false positive rate,縱座標true positive rate,比較兩個分類器因為they take into account all possible thresholds.

應用於model selection in linear regression,使用多少變數,哪些變數。比如best selection中,相同變數數的模型比較用r2,下一步不同模型需要得到lowest estimated test error,一般是lowest cross-validation error,linear regression中則可使用這幾種。

backward selection前提n>p,面試中被問過「如果n>p產生過擬合問題怎麼辦?」當時面試官的回答是加入正則化。

select variables with small p-values?

為什麼不直接選擇小的p-value?

1. only measures relevance on training data

2. only works well when n>>p (n: data; p: variables)

不使用r2和rss因此使用以下三種。

bic:bayesian information criterion

aic:akaike information criterion

cp:mallow』s cp

和用l1、l2有什麼差別?

(課件上)

r語言中使用:

library(leaps)

regfit.bwd=regsubsets(price~.,data = data.lm, nvmax = 39, method = "backward")

reg.summary=summary

(regfit.bwd)

# plot

bicplot

(reg.summary$bic ,xlab="number of variables ",ylab="bic",

type='l')

# select

variables

based

onbic

plot

(regfit.bwd,scale="bic")

假設空間由不同feature可能取值的形成的假設組成

知乎直觀好回答:

scala 遇到過的問題

1 在我安裝完scala的外掛程式後,在開啟方法的實現類 open implementactions 的時候,丟擲這個異常,後來發現這個異常是因為我的scala的外掛程式跟我eclipse版本不相容導致的。an error occurred while searching for implement...

遇到過的前端面試

1.settimeout與setinterval的區別 setinterval 方法可按照指定的週期 以毫秒計 來呼叫函式或計算表示式。setinterval 方法會不停地呼叫函式,直到 clearinterval 被呼叫或視窗被關閉。由 setinterval 返回的 id 值可用作 cleari...

用layui遇到過的問題

1.報錯 layui.form is not a function 問題 把 中這一串修改一下 form layui.form 括號去掉就行 form layui.form 如果你是從1.x公升級2.x造成的,那只需要在定義的時候吧後面的 去掉就可以了。1 獲取 form 模組介面,由之前的 var...