Python之逻辑回归
代码:
import numpy as np
from sklearn import datasets
from sklearn.linear_model import LogisticRegression
import matplotlib.pyplot as plt __author__ = 'zhen' iris = datasets.load_iris() for i in range(0, 4):
x = iris['data'][:, i:i+1] # 获取训练数据
y = iris['target'] param_grid = {"tol": [1e-4, 1e-3, 1e-2], "C": [0.4, 0.6, 0.8]} log_reg = LogisticRegression(multi_class='ovr', solver='sag', max_iter=1000) # ovr:二分类
log_reg.fit(x, y) # 改变数据的样式,reshape(rows, columns),当rows=-1时,表示任意行
x_new = np.linspace(0, 3, 1000).reshape(-1, 1) y_proba = log_reg.predict_proba(x_new)
y_hat = log_reg.predict(x_new) print("y_prob:\n{}\ny_hat\n{}".format(y_proba, y_hat[:: 10]))
print("="*60) # 画图
plt.subplot(2, 2, i+1)
plt.plot(x_new, y_proba[:, 2], 'g-', label='Iris-Virginica')
plt.plot(x_new, y_proba[:, 1], 'r-', label='Iris-Versicolour')
plt.plot(x_new, y_proba[:, 0], 'b-', label='Iris-Setosa') if i == 3:
plt.show()
结果:
训练1:

训练2:

训练3:

训练4:

分析:
有训练结果可知,训练4最具有合理性(分类清晰):

Python之逻辑回归的更多相关文章
- 机器学习_线性回归和逻辑回归_案例实战:Python实现逻辑回归与梯度下降策略_项目实战:使用逻辑回归判断信用卡欺诈检测
线性回归: 注:为偏置项,这一项的x的值假设为[1,1,1,1,1....] 注:为使似然函数越大,则需要最小二乘法函数越小越好 线性回归中为什么选用平方和作为误差函数?假设模型结果与测量值 误差满足 ...
- 机器学习之使用Python完成逻辑回归
一.任务基础 我们将建立一个逻辑回归模型来预测一个学生是否被大学录取.假设你是一个大学系的管理员,你想根据两次考试的结果来决定每个申请人的录取机会.你有以前的申请人的历史数据,你可以用它作为逻辑回归的 ...
- 吴裕雄 python 机器学习——逻辑回归
import numpy as np import matplotlib.pyplot as plt from matplotlib import cm from mpl_toolkits.mplot ...
- Python之逻辑回归模型来预测
建立一个逻辑回归模型来预测一个学生是否被录取. import numpy as np import pandas as pd import matplotlib.pyplot as plt impor ...
- python机器学习-逻辑回归
1.逻辑函数 假设数据集有n个独立的特征,x1到xn为样本的n个特征.常规的回归算法的目标是拟合出一个多项式函数,使得预测值与真实值的误差最小: 而我们希望这样的f(x)能够具有很好的逻辑判断性质,最 ...
- python机器学习——逻辑回归
我们知道感知器算法对于不能完全线性分割的数据是无能为力的,在这一篇将会介绍另一种非常有效的二分类模型--逻辑回归.在分类任务中,它被广泛使用 逻辑回归是一个分类模型,在实现之前我们先介绍几个概念: 几 ...
- python实现逻辑回归
首先得明确逻辑回归与线性回归不同,它是一种分类模型.而且是一种二分类模型. 首先我们需要知道sigmoid函数,其公式表达如下: 其函数曲线如下: sigmoid函数有什么性质呢? 1.关于(0,0. ...
- Python使用逻辑回归估算OR值
第一种是统计学方法,需要用到 statsmodels包 statsmodels是统计和计量经济学的package,包含了用于参数评估和统计测试的实用工具 第二种是机器学习,需要使用sklearn中的L ...
- 用python实现逻辑回归
机器学习课程的一个实验,整理出来共享. 原理很简单,优化方法是用的梯度下降.后面有测试结果. # coding=utf-8 from math import exp import matplotlib ...
随机推荐
- Zabbix系列之六——添加web监测
zabbix提供了web监测功能,监控到站点的响应时间,还可以根据站点返回的状态码,或者响应时间做报警,列入服务保证官网确打不开等现象. 官网地址:https://www.zabbix.com/doc ...
- jQuery校验文件格式及大小
一.html页面 <input type="file" name="file" id="uploadFileId" style=&qu ...
- ACM 要学
初期: 一.基本算法: (1)枚举. (poj1753,poj2965) (2)贪心(poj1328,poj2109,poj2586) (3)递归和分治法. (4)递推. (5)构造法.(po ...
- 从零开始学 Web 之 BOM(二)定时器
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- Zabbix4.2.0基本配置和邮件报警
目录 1. 修改中文 2. 添加监控本机 3. 监控本机mysql 4. 配置邮件报警 4.1 添加FTP模板 4.2 报警媒介类型 4.3 配置报警到用户 4.4 配置动作 4.5 模拟FTP故障 ...
- 改BUG方法
---恢复内容开始--- 今天改了半天参数,后来发现原来是表设置错了,于是决定总结出遇到BUG时的方法,等下次再遇到BUG时,过一遍每个方法就会减少解决BUG的时间,话不多说,写 ①检查表.数据库是否 ...
- API 接口返回值
API 接口返回值 https://blog.csdn.net/baple/article/details/52925772
- 前端MVC Vue2学习总结(八)——Vue Router路由、Vuex状态管理、Element-UI
一.Vue Router路由 二.Vuex状态管理 三.Element-UI Element-UI是饿了么前端团队推出的一款基于Vue.js 2.0 的桌面端UI框架,手机端有对应框架是 Mint U ...
- 发布webservice之后调用不通
在websrvice发布文件的webconfig中加入 <httpRuntime maxRequestLength="102400" /> <webServic ...
- LINQ 【增、删、改、查】数据绑定
LINQ,语言集成查询(Language Integrated Query) 是一组用于c#和Visual Basic语言的扩展.它允许编写C#或者Visual Basic代码以查询数据库相同的方式操 ...