神经网络基础-神经网络补充概念-03-逻辑回归损失函数

概念

逻辑回归使用的损失函数通常是"对数损失"(也称为"交叉熵损失")或"逻辑损失"。这些损失函数在训练过程中用于衡量模型预测与实际标签之间的差异,从而帮助模型逐步调整权重参数,以更好地拟合数据

公式说明

在二分类的逻辑回归中,假设标签为0或1,对于给定的样本 ( x , y ) (x, y) (x,y),其中 x x x 是特征向量, y y y 是标签(0或1)。逻辑回归模型预测的概率为 p ( y = 1 ∣ x ) p(y=1|x) p(y=1∣x)

逻辑回归的损失函数为对数损失(交叉熵损失),其表达式如下:
在这里插入图片描述
其中, y y y 是真实标签, p p p 是模型预测的概率。这个损失函数的意义在于,当真实标签为1时,模型预测的概率越接近1,损失越小;当真实标签为0时,模型预测的概率越接近0,损失越小。反之,如果模型的预测与真实标签相差较大,则损失会增大。

优化的目标是最小化所有训练样本的损失,以找到最优的权重参数,使模型的预测与真实标签尽可能吻合。

需要注意的是,很多优化算法(例如梯度下降法)都可以用于最小化这个损失函数,从而找到最优的模型参数。在实际应用中,通常使用机器学习库提供的优化函数来自动完成这个过程。

代码实现

import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score# 生成示例数据
np.random.seed(42)
X = np.random.rand(100, 2)  # 特征矩阵,每行表示一个数据点,每列表示一个特征
y = (X[:, 0] + X[:, 1] > 1).astype(int)  # 标签,根据特征之和是否大于1进行分类# 数据集划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# 特征标准化
scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)# 创建并训练逻辑回归模型
model = LogisticRegression()
model.fit(X_train_scaled, y_train)# 在测试集上进行预测
y_pred = model.predict(X_test_scaled)# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy:.2f}")

我们首先生成了示例数据,然后将数据集划分为训练集和测试集。接着,我们使用StandardScaler对特征进行标准化,以便逻辑回归模型能够更好地拟合。然后,我们创建了一个LogisticRegression模型,并使用训练数据进行训练。最后,我们在测试集上进行了预测,并计算了模型的准确率。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/40910.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

指静脉开集测试(OpenSet-test)代码(包含7个数据集)

七个数据集:sdu、mmc、hkpu、scut、utfvp、vera、nupt 一、SDU 80%用于训练,20%用于作为开集测试 1.数据集分割代码 ①先把636个类别提取出来 func: 创建temp_sdu,将636个类划分出来。下一个代码块将进行openset_sdu的分割import os from shutil import copy, rmtre…

c++--SLT六大组件之间的关系

1.SLT六大组件: 容器,迭代器,算法,仿函数,适配器,空间配置器 2.六大组件之间的关系 容器:容器是STL最基础的组件,没有容器,就没有数据,容器的作用就是用来存…

IO流 详细介绍

一、IO流概述 1.IO:输入(Input读取数据)/输出(Output写数据) 2.流:是一种抽象概念,是对数据传输的总称,也就是说数据在设备间的传输称为流,流的本质是数据传输IO流就是用来处理设备间数据传输问题的。 3.常见的应用&#xff1a…

【Sklearn】基于随机森林算法的数据分类预测(Excel可直接替换数据)

【Sklearn】基于随机森林算法的数据分类预测(Excel可直接替换数据) 1.模型原理1.1 模型原理1.2 数学模型2.模型参数3.文件结构4.Excel数据5.下载地址6.完整代码7.运行结果1.模型原理 随机森林(Random Forest)是一种集成学习方法,通过组合多个决策树来构建强大的分类或回归…

JVM - 垃圾回收机制

JVM的垃圾回收机制(简称GC) JVM的垃圾回收机制非常强大,是JVM的一个很重要的功能,而且这也是跟对象实例息息相关的,如果对象实例不用了要怎么清除呢? 如何判断对象已经没用了 当JVM认为一个对像已经没用了,就会把这个…

初识Sentinel

目录 1.解决雪崩的方式有4种: 1.1.2超时处理: 1.1.3仓壁模式 1.1.4.断路器 1.1.5.限流 1.1.6.总结 1.2.服务保护技术对比 1.3.Sentinel介绍和安装 1.3.1.初识Sentinel 1.3.2.安装Sentinel 1.4.微服务整合Sentinel 2.流量控制 2.1.簇点链路 …

Ubuntu中怎么清空mysql数据

要清空 MySQL 数据,可以使用以下步骤来执行。请注意,这将会永久删除数据库中的所有数据,请谨慎操作,并在操作前备份重要数据。 登录 MySQL: 打开终端,使用以下命令登录到 MySQL 数据库。根据情况&#xf…

黑马项目一阶段面试58题 Web14题(一)

一、什么是AJAX 异步的JavaScript和XML。用来做前端和后端的异步请求的技术。 异步请求:只更新部分前端界面的请求,做到局部更新。 比如注册,提示用户名已存在而整个页面没有动 比如百度图片搜索美女,进度条越变越短&#xff…

== 和 equals 的对比 [面试题]

和 equals 的对比[面试题] 文章目录 和 equals 的对比[面试题]1. 和 equals 简介2. Object 类中 equals() 源码3. String 类中 equals() 源码4. Integer 类中 equals() 源码5. 如何重写 equals 方法 1. 和 equals 简介 是一个比较运算符 :既可以判断基本数据类型…

【数据结构OJ题】链表的回文结构

原题链接:https://www.nowcoder.com/practice/d281619e4b3e4a60a2cc66ea32855bfa?tpId49&&tqId29370&rp1&ru/activity/oj&qru/ta/2016test/question-ranking 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 在做这道…

re中的match和search有什么区别?

问题:请说明以下re模块中的match和search有什么区别? re.match()与re.search()的区别 re.match()只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,结果返回None,而re.search()匹配整个字符串,直到找到一个匹配 re.search() re.search()扫描整个字符串并…

老师如何制作二维码分班查询系统?技术老师分享的创建框架值得借鉴

作为一名班主任,开学前需要搞定分班问题,可以通过制作一个分班二维码查询系统,让学生和家长可以通过扫描二维码快速查到自己的分班信息,分享一下我制作的过程,希望对老师们有帮助(结尾有惊喜)&a…

内网穿透——使用Windows自带的网站程序建立网站

文章目录 1.前言2.Windows网页设置2.1 Windows IIS功能设置2.2 IIS网页访问测试 3. Cpolar内网穿透3.1 下载安装Cpolar3.2 Cpolar云端设置3.3 Cpolar本地设置 4.公网访问测试5.结语 1.前言 在网上各种教程和介绍中,搭建网页都会借助各种软件的帮助,比如…

RP2040开发板自制树莓派逻辑分析仪

目录 前言 1 准备工作和前提条件 1.1 Raspberry Pi Pico RP2040板子一个 1.2 Firmware-LogicAnalyzer-5.0.0.0-PICO.uf2固件 1.3 LogicAnalyzer-5.0.0.0-win-x64软件 2 操作指南 2.1 按住Raspberry Pi Pico开发板的BOOTSEL按键,再接上USB接口到电脑 2.2 刷入…

End-to-End Object Detection with Transformers

DERT 目标检测 基于卷积神经网络的目标检测回顾DETR对比Swin Transformer摘要检测网络流程DERT网络架构编码器概述解码器概述整体结构object queries的初始化Decoder中的Muiti-Head Self-AttentionDecoder中的Muiti-Head Attention 损失函数解决的问题 基于卷积神经网络的目标检…

内网穿透实战应用——【通过cpolar分享本地电脑上有趣的照片:发布piwigo网页】

通过cpolar分享本地电脑上有趣的照片:发布piwigo网页 文章目录 通过cpolar分享本地电脑上有趣的照片:发布piwigo网页前言1. 设定一条内网穿透数据隧道2. 与piwigo网站绑定3. 在创建隧道界面填写关键信息4. 隧道创建完成 总结 前言 首先在本地电脑上部署…

Unity - 从PackageManager中安装内置工具

1.MemoryProfiler 内存分析工具 add from git url :com.unity.memoryprofiler 使用地址记录:unity3d内存分析工具memory profiler_unity3d memory profile_Marco&GalaxyDragon的博客-CSDN博客 理解Unity Memory Profiler - 知乎

Gradle和Maven的详细讲解和两者之间的区别

Gradle 详细介绍 Gradle 是一种基于 Groovy 语言的构建自动化工具,用于构建、测试和部署项目。它使用声明式的脚本来定义构建过程,允许开发者灵活地配置项目构建。Gradle 使用一种被称为 Groovy DSL(领域特定语言)的语法&#xf…

mysql知识点+面试总结

目录 1 mysql介绍 2 数据库常见语法 3 数据库表的常见语法 4 其他常见语法(日期,查询表字段) 5 JDBC开发步骤 6 索引 6.1 索引常见语法 7 常见面试总结 8 java代码搭建监控页面 1 mysql介绍 数据库:存储在硬盘上的文件系统…

VR虚拟展厅如何将客户引流到线下?

VR虚拟展厅是一项很不错的创新技术,将传统的展览内容以数字化形式呈现,为参观者带来全新的展示体验,也为企业带来了全新的宣传机遇。 线上虚拟展厅目前有着两种形式,一种是通过三维建模技术、虚拟现实技术等搭建的虚拟展厅&#x…