logestic逻辑回归matlab代码
时间: 2024-01-26 07:04:32 浏览: 79
下面是一个使用Matlab实现逻辑回归的示例代码:
```matlab
% 加载数据
data = load('data.txt');
X = data(:, 1:2);
y = data(:, 3);
% 绘制数据点
plotData(X, y);
% 添加偏置项
X = [ones(size(X, 1), 1) X];
% 初始化参数
initial_theta = zeros(size(X, 2), 1);
% 设置参数选项
options = optimset('GradObj', 'on', 'MaxIter', 400);
% 使用fminunc函数来优化参数
[theta, cost] = fminunc(@(t)(costFunction(t, X, y)), initial_theta, options);
% 绘制决策边界
plotDecisionBoundary(theta, X, y);
% 预测新样本的分类
prob = sigmoid([1, 45, 85] * theta);
fprintf('For a student with scores 45 and 85, we predict an admission probability of %f\n', prob);
% 计算训练集的准确率
p = predict(theta, X);
fprintf('Train Accuracy: %f\n', mean(double(p == y)) * 100);
```
其中,`plotData`函数用于绘制数据点,`costFunction`函数用于计算代价函数和梯度,`plotDecisionBoundary`函数用于绘制决策边界,`sigmoid`函数用于计算sigmoid函数的值,`predict`函数用于预测分类结果。
阅读全文