Python利用逻辑回归分类实现模板


Posted in Python onFebruary 15, 2020

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利用逻辑回归分类实现模板,希望对大家有所帮助!

Python 相关文章推荐
python发送邮件的实例代码(支持html、图片、附件)
Mar 04 Python
python通过exifread模块获得图片exif信息的方法
Mar 16 Python
使用Python的Zato发送AMQP消息的教程
Apr 16 Python
Python中datetime模块参考手册
Jan 13 Python
解决Python2.7读写文件中的中文乱码问题
Apr 12 Python
Python实现钉钉发送报警消息的方法
Feb 20 Python
基于Python 中函数的 收集参数 机制
Dec 21 Python
详解Pycharm出现out of memory的终极解决方法
Mar 03 Python
Python读写操作csv和excle文件代码实例
Mar 16 Python
django实现模板中的字符串文字和自动转义
Mar 31 Python
Python Pivot table透视表使用方法解析
Sep 11 Python
python中watchdog文件监控与检测上传功能
Oct 30 Python
python发qq消息轰炸虐狗好友思路详解(完整代码)
Feb 15 #Python
利用Tensorboard绘制网络识别准确率和loss曲线实例
Feb 15 #Python
tensorboard显示空白的解决
Feb 15 #Python
解决Tensorboard可视化错误:不显示数据 No scalar data was found
Feb 15 #Python
tensorboard 可以显示graph,却不能显示scalar的解决方式
Feb 15 #Python
解决Tensorboard 不显示计算图graph的问题
Feb 15 #Python
基于TensorBoard中graph模块图结构分析
Feb 15 #Python
You might like
在windows服务器开启php的gd库phpinfo中未发现
2013/01/13 PHP
破解.net程序(dll文件)编译和反编译方法
2013/01/31 PHP
PHP实现显示照片exif信息的方法
2014/07/11 PHP
PHP实现的自定义数组排序函数与排序类示例
2016/11/18 PHP
让你的博文自动带上缩址的实现代码,方便发到微博客上
2010/12/28 Javascript
让浏览器非阻塞加载javascript的几种方法小结
2011/04/25 Javascript
jquery创建并行对象或者合并对象的实现代码
2012/10/10 Javascript
详解js中Number()、parseInt()和parseFloat()的区别
2016/12/20 Javascript
vue.js移动端app之上拉加载以及下拉刷新实战
2017/09/11 Javascript
vue 组件 全局注册和局部注册的实现
2018/02/28 Javascript
nodejs require js文件入口,在package.json中指定默认入口main方法
2018/10/10 NodeJs
[03:14]2014DOTA2西雅图国际邀请赛 EG战队巡礼
2014/07/07 DOTA
Python random模块(获取随机数)常用方法和使用例子
2014/05/13 Python
python迭代器实例简析
2014/09/25 Python
用Python3创建httpServer的简单方法
2018/06/04 Python
python调用tcpdump抓包过滤的方法
2018/07/18 Python
vscode 配置 python3开发环境的方法
2019/09/19 Python
用python求一重积分和二重积分的例子
2019/12/06 Python
Python面向对象之多态原理与用法案例分析
2019/12/30 Python
Python开发之基于模板匹配的信用卡数字识别功能
2020/01/13 Python
使用matplotlib的pyplot模块绘图的实现示例
2020/07/12 Python
python爬虫scrapy框架之增量式爬虫的示例代码
2021/02/26 Python
CSS3实现内凹圆角的实例代码
2017/05/04 HTML / CSS
手对手的教你用canvas画一个简单的海报的方法示例
2018/12/10 HTML / CSS
英国高街电视:High Street TV
2018/05/22 全球购物
美国礼品卡交易网站:Cardpool
2018/08/27 全球购物
Yankee Candle官网:美国最畅销蜡烛品牌之一
2020/01/05 全球购物
国贸专业的职业规划范文
2014/01/23 职场文书
简历中的自我评价怎么写
2014/01/29 职场文书
复兴之路观后感3000字
2015/06/02 职场文书
胡桃夹子观后感
2015/06/11 职场文书
二婚主持词
2015/06/30 职场文书
大学生读书笔记大全
2015/07/01 职场文书
教学副校长工作总结
2015/08/13 职场文书
2016年“七一建党节”广播稿
2015/12/18 职场文书
简单介绍 http请求响应参数、无连接无状态、MIME、状态码、端口、telnet、curl
2021/03/31 HTML / CSS