ML學習筆記第四周(四) 程式設計作業

2021-09-11 04:03:07 字數 994 閱讀 9068

lrcostfunction.m(邏輯回歸的代價函式)

%套用代價函式公式

hx=sigmoid(x*theta);

j = 1 / m * sum((-y) .* log(hx) - (1 - y) .* log(1 - hx)) + lambda / (2 * m) * (sum(theta .^ 2) - (theta(1) ^ 2));

%theta(1)無需進行梯度下降

grad=1/m*(x'*(hx-y)+lambda*theta);

grad(1)=grad(1)-lambda/m*theta(1);

onevsall.m(onevsall演算法應用於多分類)

%theta初始化

initial_theta=zeros(n+1,1);

%設定fminunc選項

options=optimset('gradobj','on','maxiter',50);

%fmincg使用梯度下降計算代價函式最優解

for i=1:num_labels

c=i*ones(size(y));

[theta]=fmincg(@(t)(lrcostfunction(t,x,(y==c),lambda)),initial_theta);

all_theta(i,:)=theta;

end

predictonevsall.m

predict=sigmoid(x*all_theta');

[x,ix]=max(predict,,2);

p=ix;

predict.m

x=[ones(m,1) x];

a=sigmoid(x*theta1');

a=[ones(size(a,1),1) a];

[x,p]=max(sigmoid(a*theta2'),,2);

第四周程式設計作業

5 1輸入乙個正整數 n 1 n 10 和n 階方陣a的元素,如果方陣a中的所有元素都沿主對角線對稱,輸出 yes 否則,輸出 no 主對角線為從矩陣的左上角至右下角的連線,方陣a中的所有元素都沿主對角線對稱指對所有i,k,a i k 和a k i 相等。輸入輸出示例如下 輸入 3 1 2 3 4 ...

第四周作業

第四周實驗作業 1.完成課本每乙個程式設計題。要求先畫出流程演算法圖或n s圖,然後程式設計實現,有可能的話使用兩種以上方法 1.1求自然對數e的近似值 include using namespace std int main cout 1.2求圓周率 的近似值 include using name...

第四周作業

實驗作業1.完成課本每乙個程式設計題。要求先畫出流程演算法圖或n s圖,然後程式設計實現,有可能的話使用兩種以上方法 2.程式設計求 百錢百雞 問題。雞翁一值錢五,雞母 一值錢三,雞雛三值錢一。百錢買百雞,問雞翁 雞母 雞雛各幾何?3.程式設計輸入乙個整數,計算它是幾位數字,分別輸出每一位數字,並輸...