Python利用逻辑回归分类实现模板
作者:米米奇 发布时间:2023-11-14 07:02:05
标签:python,逻辑回归,模板
Logistic Regression Classifier逻辑回归主要思想就是用最大似然概率方法构建出方程,为最大化方程,利用牛顿梯度上升求解方程参数。
优点:计算代价不高,易于理解和实现。
缺点:容易欠拟合,分类精度可能不高。
使用数据类型:数值型和标称型数据。
好了,下面开始正文。
算法的思路我就不说了,我就提供一个万能模板,适用于任何纬度数据集。
虽然代码类似于梯度下降,但他是个分类算法
定义sigmoid函数
def sigmoid(x):
return 1/(1+np.exp(-x))
进行逻辑回归的参数设置以及迭代
def weights(x,y,alpha,thershold):
#初始化参数
m,n = x_train.shape
theta = np.random.rand(n) #参数
cnt = 0 # 迭代次数
max_iter = 50000
#开始迭代
while cnt < max_iter:
cnt += 1
diff = np.full(n,0)
for i in range(m):
diff = (y[i]-sigmoid(theta.T @ x[i]))*x[i]
theta = theta + alpha * diff
if(abs(diff)<thershold).all():
break
return theta
预测函数
def predict(x_test,theta):
if sigmoid(theta.T @ x_test)>0.5:
return 1
else:return 0
调用函数
x_train = np.array([[1,2.697,6.254],
[1,1.872,2.014],
[1,2.312,0.812],
[1,1.983,4.990],
[1,0.932,3.920],
[1,1.321,5.583],
[1,2.215,1.560],
[1,1.659,2.932],
[1,0.865,7.362],
[1,1.685,4.763],
[1,1.786,2.523]])
y_train = np.array([1,0,0,1,0,1,0,0,1,0,1])
alpha = 0.001 # 学习率
thershold = 0.01 # 指定一个阈值,用于检查两次误差
print(weights(x_train,y_train,alpha,thershold))
总结
以上所述是小编给大家介绍的Python利用逻辑回归分类实现模板,希望对大家有所帮助!
来源:https://blog.csdn.net/weixin_43981664/article/details/104307624
0
投稿
猜你喜欢
- Apple4.us的张亮问我:“很多人说用户体验是苹果的核心竞争力。在用户体验方面,我究竟该从苹果的设计中学习什么” ?关于这个问题的答案我
- 网上的SQL优化的文章实在是很多,说实在的,我也曾经到处找这样的文章,什么不要使用IN了,什么OR了,什么AND了,很多很多,还有很多人拿出
- asp中fso怎样判断一个盘上是否有文件,实例代码,需要的朋友可以试试:<% dim objfolder dim
- 在过去的两年里,你能想象的一些很烂的应用设计也入驻了优雅的iPhone。通过它周边的宣传,使得世界各地的设计者们都利用这个新的移动工具来一展
- 常用的 random 模块方法import random# random.random()用于生成一个 0 到 1 的随机浮点数: 0 &l
- Cookie简介首先,我们对Cookie做一个简单的介绍,说明如何利用ASP来维护cookie。Cookie是存储在客户端计算机中的一个小文
- 前后端分离前后端分离的好处最大的好处就是前端JS可以做很大部分的数据处理工作,对服务器的压力减小到最小。后台错误不会直接反映到前台,错误接秒
- 在Soundbreak我们每天24小时不间断地播放实况音频和视频,所以对于MySQL的新增的复制特性,我们不能做出很令人信服的测试。通过测试
- 1. LEFT OUTER JOIN:左外关联 SELECT e.last_name, e.department_id, d.departm
- 一、偏好资源的积累利用DreamWeaver 4制作网页会应用到许多各种类型的要素,比如色彩、图片、模板、脚本等。利用站点资源面板将这些东东
- 认知心理学家Donald A. Norman将人类的行动分解成七个阶段:1. 确定目标2. 确定意图3. 明确行动内容4. 执行5. 感知外
- 技巧问题 Mysql的远程连接出现"Lost connection to MySQL server during query&qu
- 1、问题现象:有个网站是通过session验证的,前端时间访问正常,但近期后台session老是失效很快,根本没法操作,我设置timeout
- 如何显示存储在BLOB字段中的图像?showimges.asp' 在浏览器上单独显示图像 <%@ 
- 用过jQuery的朋友一定对jQuery中方法的链式调用印象深刻,最近发布的YUI3也支持了方法的链式调用。这是一个非常不错的语法特性,能让
- 简介ORA-10458: standby database requires recoveryORA-01196: 文件 1 由于介质恢复会
- 随机生成四位数验证码,包括汉字,数字,英文大小写。1.Servlet类package servlet;import java.awt.Bas
- <script>alert(escape("人"));alert(encodeURI("人&quo
- 本文实例讲述了Symfony2之session与cookie用法。分享给大家供大家参考,具体如下:session操作:1. Set Sess
- 有一台windows服务器上跑着mysql的一些应用,现在需要将mysql的数据每天备份,并通过ftp上传到指定的存储服务器上要是在linu