【机器学习实战】逻辑回归

Python入门之机器学习(非常详细)篇幅拉满,一般人看不完! 什么是机器学习?监督学习 supervised learning;非监督学习 unsupervised learning;半监督学习 semi-supervised learning;强化学习 reinforcement learning;监督学习是不断向计算机提供数据(特征),并告诉计算机对应的值(标签),最后通过大量的数据,让计算机自己学会判断和识别。例如Google Photo,你在APP中输入狗,这时就会弹出与狗相关的图片,这背后使用的算法就是监督学习。 阅读详情
from torch.utils.data import DataLoader
from torchvision import datasets
import torchvision
import torchvision.transforms as transforms
import matplotlib.pyplot as plt
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import classification_report
import numpy as np

载入数据,设置训练集和测试集

transform = transforms.Compose([transforms.ToTensor(),transforms.Normalize((0.1307,),(0.3081,))])
train_dataset = datasets.MNIST(root='../dataset/mnist/',train=True,download=True,transform=transform)
test_dataset = datasets.MNIST(root='../dataset/mnist',train=False,download=True,transform=transform)
batch_size = len(train_dataset)
train_loader = DataLoader(dataset=train_dataset, batch_size=100, shuffle=True)
test_loader = DataLoader(dataset=test_dataset, batch_size=100, shuffle=True)
X_train,y_train = next(iter(train_loader))
X_test,y_test = next(iter(train_loader))
#? 打印前100张图片
images, labels= X_train[:100], y_train[:100] 
#? 使用images生成宽度为10张图的网格大小
img = torchvision.utils.make_grid(images, nrow=10)
#? cv2.imshow()的格式是(size1,size1,channels),而img的格式是(channels,size1,size1),
#? 所以需要使用.transpose()转换,将颜色通道数放至第三维
img = img.numpy().transpose(1,2,0)
print(images.shape)
print(labels.reshape(10,10))
print(img.shape)
plt.imshow(img)
plt.show()

转换tensor格式为array

X_train,y_train = X_train.cpu().numpy(),y_train.cpu().numpy() #? tensor转为array形式)
X_test,y_test = X_test.cpu().numpy(),y_test.cpu().numpy() #? tensor转为array形式)

修改训练集和测试集的形状

X_train = X_train.reshape(X_train.shape[0],784)
X_test = X_test.reshape(X_test.shape[0],784)

训练模型

model = LogisticRegression(solver='sag', max_iter=400) #? lbfgs:拟牛顿法
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
print(classification_report(y_test, y_pred))
ones_col=[[1] for i in range(len(X_train))] #? 生成全为1的二维嵌套列表,即[[1],[1],...,[1]]
X_train = np.append(X_train,ones_col,axis=1)
x_train = np.mat(X_train)
X_test = np.append(X_test,ones_col,axis=1)
x_test = np.mat(X_test)
#? Mnsit有0-9十个标记,由于是二分类任务,所以可以将标记0的作为1,其余为0用于识别是否为0的任务
y_train=np.array([1 if y_train[i]==1 else 0 for i in range(len(y_train))])
y_test=np.array([1 if y_test[i]==1 else 0 for i in range(len(y_test))])
model = LogisticRegression(solver='sag', max_iter=100)
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
print(classification_report(y_test, y_pred))
机器学习实战之逻辑回归logestic regression 机器学习实战这本书最大的缺点就是对代码注释的不够详细,尤其是很多运算过程直接省略。最起码应该在开始代码前先将主要的数学结论说清楚。逻辑回归logestic regression,回归:指研究一组随机变量(Y1 ,Y2 ,…,Yi)和另一组(X1,X2,…,Xk)变量之间关系的统计分析方法关系符合线性的叫线性回归,符合逻辑函数关系的叫逻辑回归。这里用逻辑回归处理一些非线性的分类问题。用到的函数sig... 阅读详情

相关推荐

Spark 2.0 机器学习 ML 库:常见的机器学习模型(Scala 版)

一、前言 机器学习中,人为地设计算法,需要一定的知识积淀。 而使用别人设计好的机器学习库如 Spark 2.0 ML,那是基本不需要什么基础的,开箱即用。 首先,看一个简单、完整、规范的案例,无疑是最好的方式。 之前的文章(内含短小精悍的案例): Spark 2.0 机器学习 ML 库:特征提取、转化、选取(Scala 版) Spark 2.0 机器学习 ML 库:机器学...

IT小村 1万+

机器学习概述

机器学习是概率论、线性代数、信息论、最优化理论和计算机科学等多个领域交叉的学科传统编程模式:规则+数据——>传统编程——>答案机器学习模式:数据+答案——>机器学习——>规则机器学习特点:以计算机为工具平台,以数据为研究对象,以学习方法为中心研究包括:(1)机器学习方法:旨在开发新的学习方法(2)机器学习理论:旨在探求机器学习的有效性和效率(3)机器学习应用:主要考虑机器学习模型应用到实际中去,解决实际业务问题。

T940842933的博客 6050

机器学习实战之逻辑回归(C++复现)

#ifndef LOGISTIC_H_ #define LOGISTIC_H_ #include<string> #include<opencv2/opencv.hpp> using cv::Mat; using std::string; void loadDataSet(string filePath, Mat& data, Mat& label);//...

qq_42805483的博客 549

机器学习(Machine Learning)

Machine Learning, ML 机器学习

YYYMarshal的博客 1万+

Python机器学习实战:逻辑回归在分类问题中的应用

《Python机器学习实战:逻辑回归在分类问题中的应用》 核心关键词: 机器学习 逻辑回归 Python 分类问题 数据预处理 模型优化 项目实战

AI天才研究院 1148

西门子V90 PN伺服控制核心:FB284功能块详解与实战

在工业自动化中,伺服定位控制是运动控制的基础环节,其本质是PLC通过PROFINET协议与伺服驱动器实现高速、确定性数据交互。FB284作为西门子为V90 PN定制的标准化功能块,封装了GSD映射、状态机管理与周期性PDO同步机制,将底层寄存器操作抽象为高可靠调用接口。相比MOVE指令或MC_MoveAbsolute等通用方案,FB284显著降低时序错乱风险,提升多轴同步精度与故障响应能力。它广泛应用于包装、灌装、装配等中端产线,尤其适配S7-1200/1500平台下的快速部署与现场维护。本文聚焦V90 P

weixin_42696271的博客 299

机器学习(吴恩达)

2.降维算法:在保证数据所具有的代表性特性或者分布的情况下,将高维数据转化为低维数据的过程,主要用于数据压缩和数据的可视化。尽管学习率是固定的,成本函数也可以到达最小值,因为进行梯度下降时,导数变小,会使更新的每一步大小变小。越接近成本函数的最小值,下降的步伐会越小。监督学习:1.回归算法:预测一个正确的数字从可能出现的无限个输出结果中ps:输出结果在无限的输出集。当w的值恰好对应成本函数的某个局部最小值,学习率为0时,导数也是0,所以w不会变。w的选取对f(x)函数的影响以及对应的成本函数的影响。

qq_56979809的博客 4342

R语言分段回归

1.利用虚拟变量进行线性回归 (MEdata.csv的数据来源:https://github.com/ChenQihome9/优快云-Data-Library/blob/master/MEdata.csv) 问题13:针对TAX~GDP,使用分段回归方法,找到其回归方程。编程,并根据程序结果叙述如下几方面问题:(1)分几段最佳?(不超过5段内)(2)分段位置定在哪儿最佳?(3)写出最佳方...

ChenQihome9的博客 1万+

十大机器学习算法的一个小总结

在公众号看到来一篇不错的文章,讲解机器学习算法的,感觉挺好的,所以这里对常用的机器学习算法做一个小的总结, 然后根据学习李航老师的《统计学习方法》做得笔记,对这些算法进行补充。 简介   关于机器学习算法的研究已经获得了巨大的成功,哈佛商业评论甚至将数据科学家称为二十一世纪最具诱惑力的工作。 机器学习算法是在没有人为干涉的情况下,从大量的数据和历史经验中学习数据的结构并提升对某一目标的估计的算法。...

Miracle8070 1万+

图像配准(Image Registration)——深度学习方法

参考:https://www.cnblogs.com/carsonzhu/p/11188574.html

m0_46483236的博客 4万+

6层高速PCB设计实战:BGA布局与阻抗匹配关键解析

本文深入解析6层高速PCB设计中BGA布局与阻抗匹配的关键技术。通过实战经验分享,详细介绍了六层PCB层叠结构的选择与优化、BGA器件布局技巧、阻抗匹配的实战经验以及高速布线技巧,帮助工程师提升PCB设计水平,确保信号完整性和电源完整性。

weixin_28481133的博客 368

spark 逻辑回归算法案例_黄美灵的Spark ML机器学习实战

原标题:黄美灵的Spark ML机器学习实战本课程主要讲解基于Spark 2.x的ML,ML是相比MLlib更高级的机器学习库,相比MLlib更加高效、快捷;ML实现了常用的机器学习,如:聚类、分类、回归等算法。本课拒绝枯燥的讲述,将循序渐进从Spark2.x的基础知识开始,然后再透彻讲解各个算法的理论、详细展示Spark实现,最后均会通过实例进行解析实战,帮助大家真正从理论到实践全面掌握Spar...

weixin_29174385的博客 477

Vue3 - 详细实现安装西瓜视频 xgplayer 插件详细配置及使用教程,利用西瓜视频播放器播放 mp4、flv、hls 格式视频文件及视频推流(直播或监控摄像头画面),支持移动端H5及PC网站!

vue3,nuxt3,西瓜视频,xgplayer,插件组件,xgplayer-hls,xgplayer-flv,xgplayer-mp4,播放视频点播和直播视频流,监控实时播放推流,倍速播放,在线flv在线推流地址,HLS播放,vue3西瓜播放器,vue如何使用西瓜视频插件做直播推流回流,视频点播,flv在线视频流播放,截图功能,自定义播放器样式,截屏,监控视频,vue3使用西瓜播放器播放flv、hls、mp4视频,截屏按钮,直播流,报错,黑屏,加载失败,苹果ios不兼容,重连,怎么改样式,很卡,详细教程,

🏆 前端领域优质创作者 1万+

机器学习-逻辑回归原理+实战

逻辑回归(Logistic regression=LR):实质上是一个传统的线性分类模型(有别于现在大火的深度学习(deep learning)),其主要特点是: 逻辑回归模型简单(易于理解和实现;计算成本不高,速度快,存储资源低…) 分类模型的可解释性强(它拟合出来的参数就代表了每一个特征(feature)对结果的影响),便于理解数据。 但存在的问题是:容易欠拟合,分类精度不高。 注:欠拟合(underfitting)是指模型拟合程度不高,数据距离拟合曲线较远,或指模型没有很好地捕捉到数据特征,不能够很

qq_40420929的博客 1125

廉价却有效?ESD防护中的电容

摘要:在成本敏感型电子产品设计中,多层陶瓷电容(MLCC)可作为TVS二极管的替代方案用于静电放电(ESD)防护。其工作原理是通过电容充放电特性吸收静电能量,而非电压钳位。计算表明100nF/50V MLCC可有效缓冲8kV静电冲击,但存在吸收能量有限、无自恢复等局限。建议将MLCC作为一级缓冲措施,配合TVS等器件形成多级防护,并优先选择X7R材质、100nF容值、50V耐压的0402/0603封装MLCC。该方案在低速信号和电源引脚防护中具有显著成本优势,但不能完全替代专业ESD抑制器。

硬核科技 430

基于情感分析+聚类分析+LDA主题分析对服装产品类的消费者评论分析

本研究旨在通过对服装产品类的消费者评论进行综合分析,为企业提供更全面、更深入的市场洞察和决策支持。同时,本研究的方法和结果也可以为其他领域的消费者评论分析提供借鉴和参考。

m0_64336780的博客 2万+

Machine-Learning-Interviews实战:线性回归与逻辑回归代码解析

在机器学习面试中,**线性回归**和**逻辑回归**是两个最基础也是最重要的算法。通过Machine-Learning-Interviews项目的实战代码解析,我们可以深入理解这两个经典算法的实现原理和应用场景。 ## 线性回归算法详解 **线性回归**是一种统计方法,用于建模因变量与一个或多个自变量之间的关系。简单线性回归的公式为:$y = mx + b$,其中y是因变量,x是自变量,m是斜

gitblog_00348的博客 461

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

【机器学习】实战逻辑回归模型

今天大概看了一下还没做的ps1,里面第一个道题的数据集正好可以拿来做一次逻辑回归的实战,正好学到现在还没正儿八经写过代码,所以打算拿这个练练手,具体数据集我新建了一个GitHub账号给大家分享,里面也有详细的代码和一些思路: https://github.com/cyr429/Machine-Learning-master/tree/master/ML-others/LogisticRegres...

Kuroneko 283

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

手把手教你掌握逻辑回归分类:机器学习实战终极指南

想要从零开始学习机器学习分类算法吗?Hands-on Machine Learning with Scikit-Learn, Keras & TensorFlow(handson-ml3)项目为你提供了最实用的逻辑回归分类实战指南。这个开源项目通过一系列Jupyter notebooks,使用Scikit-Learn、Keras和TensorFlow 2等流行库,系统讲解机器学习与深度学习的基础知

gitblog_00095的博客 1011

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

《机器学习实战》源码解析(四):逻辑回归

本文以书中源码为主,稍作修改并添加注释,均实际运行可行。为免后来者踩坑,特此公开!欢迎打赏! 转载请注明出处!

qq_45393426的博客 264

机器学习实战 逻辑回归

机器学习实战 逻辑回归 Logistic回归的一般过程 (1) 收集数据:采用任意方法收集数据。 (2) 准备数据:由于需要进行距离计算,因此要求数据类型为数值型。另外,结构化数据 格式则最佳。 (3) 分析数据:采用任意方法对数据进行分析。 (4) 训练算法:大部分时间将用于训练,训练的目的是为了找到最佳的分类回归系数。 (5) 测试算法:一旦训练步骤完成,分类将会很快。 (6) 使用算法:首先...

weixin_41898948的博客 239

【亲测免费】 机器学习之逻辑回归实战:考试通过预测问题

机器学习之逻辑回归实战:考试通过预测问题 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在机器学习领域,逻辑回归是一种广泛应用于二分类问题的强大算法。本项目提供了一个实战案例,专注于预测学生是否能够通过期末考试。通过分析学生的复习时长和效率,我们使用逻辑回归模型来预测考试结果。这个项目不仅展示了逻辑回归的基本原理,还详细介绍了如何使用Python及相关库进行模型训练、...

gitblog_06592的博客 552

机器学习实战(python3.7)-逻辑回归

本篇文章为我对机器学习实战-逻辑回归的理解与我在学习时所做笔记,一是为了日后查找方便并加深对代码的理解,二是希望能帮助到使用这本书遇到困难的人。

博客 290

【机器学习】线性回归与逻辑回归的理论与实战

点击上方,选择星标或置顶,每天给你送干货!阅读大概需要10分钟跟随小博主,每天进步一丢丢作者:奋斗喵编辑:王萌1、基本概念要进行机器学习,首先要有数据。从数据中学得模型的过程称为“学习”...

zenRRan的博客 347

【机器学习】逻辑回归(实战)

决策边界的绘制步骤如下: ① 构建坐标数据,合理的范围当中,根据实际训练时输入数据来决定(可参考 iris.DESCR) ② 整合坐标点,得到所有测试输入数据坐标点 ③ 预测,得到所有点的概率值 ④ 绘制等高线,完成决策边界

酱懵静的博客 2826
上一篇: 2.4 感兴趣区域(ROI)
下一篇: 一、MySQL的介绍与安装
暮棂
博客等级 码龄8年 340粉丝 103原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暮棂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值