机器学习 基本算法 (2(Linear Regression ,Logistic Regression

名字都是回归 但逻辑回归不是回归 是分类

Linear Regression(线性回归)

就是用简单的线性方程 来拟合数据集

y=ni=0wixi+b

其中的 w 就是各个回归系数
w 可用平方误差来求得

ni=0(yiwixi)2=ni=0(yixTiw)2

用矩阵可以表示成

(yXTw)T(yXTw)

对w求导

XT(YXw)=0 得到 w=XTX1XTy

线性回归主要有两种:一元线性回归和多元线性回归。一元线性回归只有一个自变量,而多元线性回归有多个自变量。拟合多元线性回归的时候,可以利用多项式回归(Polynomial Regression)或曲线回归 (Curvilinear Regression)。

线性可能会欠拟合 有许多方法可以 在估计中引入偏差 ,从而降低均方误差,比如LWLR(locally weighted linear regression 局部加权线性回归)
w=XTWX1XTWy
W是个矩阵,为每个点赋权重
lwlr 使用“核”来赋权。核类型可自由选择 常用高斯核
w=|x(i)x|2k2
x与x(i)越近 权重越大 k是需要用户调整的参数
代码

#Import other necessary libraries like pandas, numpy...
from sklearn import linear_model

#Identify feature and response variable(s) and values must be numeric and numpy arrays
#X,y training dataset ,x_test test dataset

# 创建线性模型
linear = linear_model.LinearRegression()

# 训练模型
linear.fit(x_train, y_train)
linear.score(x_train, y_train)

print('Coefficient: \n', linear.coef_) #看coefficient 系数w
print('Intercept: \n', linear.intercept_) #看 Intercept 截距b

predicted= linear.predict(x_test)

Logistic Regression(逻辑回归)

既然 逻辑回归 不是回归 为什么叫这个呢 因为它对 一些点做了“拟合”
而 拟合的过程 就是回归
逻辑回归与普通分类 差别在于 普通分类给了你一个离散的数 0 或 1
而逻辑回归 给了你一个具体的树
就相当于 你做事情 原来是成功为1 失败为0 现在变成了 成功概率是0.5 你在努力努力 可以变成0.7
就是用了这个函数 (Sigmoid函数)

f(z)=11+ez

就相对于 你做了个线性回归 把这个结果套进 Sigmoid函数中

这里写图片描述


from sklearn.linear_model import LogisticRegression


#X,y training dataset ,x_test test dataset

#创建模型
model = LogisticRegression()

model.fit(X, y)
model.score(X, y)

print('Coefficient: \n', model.coef_)
print('Intercept: \n', model.intercept_)

predicted= model.predict(x_test)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值