第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從頭開始邏輯回歸

從頭開始邏輯回歸

阿波羅的戰(zhàn)車 2023-10-06 19:27:05
我正在 MNIST 數(shù)據(jù)集上使用梯度下降 + L2 正則化實現(xiàn)多項邏輯回歸。我的訓(xùn)練數(shù)據(jù)是一個形狀為(n_samples=1198,features=65)的數(shù)據(jù)框。在梯度下降的每次迭代中,我采用權(quán)重和輸入的線性組合來獲得 1198 次激活 (beta^T * X)。然后我通過 softmax 函數(shù)傳遞這些激活。但是,我對如何獲得每個激活的 10 個輸出類的概率分布感到困惑?我的權(quán)重是這樣初始化的n_features = 65# init random weightsbeta = np.random.uniform(0, 1, n_features).reshape(1, -1)這是我當(dāng)前的實現(xiàn)。def softmax(x:np.ndarray):     exps = np.exp(x)    return exps/np.sum(exps, axis=0)def cross_entropy(y_hat:np.ndarray, y:np.ndarray, beta:np.ndarray) -> float:    """    Computes cross entropy for multiclass classification      y_hat: predicted classes, n_samples x n_feats    y: ground truth classes, n_samples x 1    """    n = len(y)    return - np.sum(y * np.log(y_hat) + beta**2 / n)    def gd(X:pd.DataFrame, y:pd.Series, beta:np.ndarray,       lr:float, N:int, iterations:int) -> (np.ndarray,np.ndarray):        """    Gradient descent    """    n = len(y)    cost_history = np.zeros(iterations)        for it in range(iterations):                activations = X.dot(beta.T).values                y_hat = softmax(activations)                        cost_history[it] = cross_entropy(y_hat, y, beta)                        # gradient of weights        grads = np.sum((y_hat - y) * X).values                # update weights        beta = beta - lr * (grads + 2/n * beta)            return beta, cost_history
查看完整描述

1 回答

?
溫溫醬

TA貢獻(xiàn)1752條經(jīng)驗 獲得超4個贊

在多項式 Logistic 回歸中,您需要為每個類提供一組單獨的參數(shù)(在您的情況下為像素權(quán)重)。然后,實例屬于某個類別的概率被估計為該類別的實例得分的 softmax 函數(shù)。softmax 函數(shù)確保所有類別的估計概率之和為 1。



查看完整回答
反對 回復(fù) 2023-10-06
  • 1 回答
  • 0 關(guān)注
  • 113 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號