机器学习-学习笔记(三)第三章 习题3.3

本文记录了使用C语言解决逻辑回归问题的过程,重点在于逆矩阵的求解,文中提到参考了网络资源以简化实现。
摘要由CSDN通过智能技术生成

用C语言实现了一下3.3中的对率回归问题,C语言求逆矩阵是个很麻烦的事情,这里参考了一些网上的博客,偷了懒。

#include<stdio.h>
#include<string.h>
#include<math.h> 
typedef struct parameter{
	double w[10];
	int w_lenght;
	double b;
}parameter;
typedef struct input{
	double x[10];
	int x_lenght;
	double const_num;
}input;
double mix[3][3];
void matrix_a(double temp[3][3])
{
	int k, k2;
	for (k = 0; k < 3; k++){
		for(k2 = 0; k2 < 3; k2++){
			mix[k][k2]+=temp[k][k2]; 
		}
	}
}
int  matrix_inv(int ndimen)
{
	double tmp, tmp2, b_tmp[20], c_tmp[20];
	int k, k1, k2, k3, j, i, j2, i2, kme[20], kmf[20];
	i2 = j2 = 0;
	for (k = 0; k < ndimen; k++){
		tmp2 = 0.0;
		for (i = k; i < ndimen; i++){
			for (j = k; j < ndimen; j++){
				if (fabs(mix[i][j] ) <= fabs(tmp2)) 
					continue;
				tmp2 = mix[i][j];
				i2 = i;
				j2 = j;
			}  
		}
		if (i2 != k
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值