Coursera机器学习 week4 assignment

本文详细介绍了机器学习中几种核心的分类算法实现过程,包括逻辑回归成本函数的计算方法、one-vs-all策略的多分类应用及预测算法。通过具体代码示例展示了如何使用这些算法进行数据分类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

lrCostFunction.m:

b = sigmoid(X*theta);

J = -(1/m)*( (log(b'))*y + log(1-b')*(1-y) ) + (lambda/(2*m))*(sum(theta.^2)-theta(1)^2);


k = X'*(b-y);
grad(1) = (1/m)*k(1);

long = length(k);
k2 = (1/m) * (k(2:long,:)) + (lambda/m)*(theta(2:long,:));
grad(2:long,:) = k2;


oneVsAll.m:

initial_theta = zeros(n + 1, 1);

options = optimset('GradObj', 'on', 'MaxIter', 50);

for i = 1:num_labels<pre name="code" class="plain">z = X*all_theta';   %5000*10


[a, b] = max(z,[],2);
p = b;

[theta] = ... fmincg (@(t)(lrCostFunction(t, X, (y==i), lambda)), ... initial_theta, options); all_theta(i,:) = theta';end



predictOneVsAll.m:

z = X*all_theta';   %5000*10


[a, b] = max(z,[],2);
p = b;



predict.m:

X = [ones(m, 1) X];   %(5000*401)

X2 = sigmoid(X*Theta1');   %(5000*401) (25*401)  ——>5000*25
X2 = [ones(m, 1) X2];

X3 = sigmoid(X2*Theta2');   %(5000*10)


[a, b] = max(X3,[],2);
p = b;




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值