当前位置: 首页 > news >正文

小土堆pytorch--tensorboard的使用

小土堆pytorch--tensorboard的使用

  • 小土堆pytorch--tensorboard的使用
    • 0.介绍
    • 1.使用tensorboard绘制 y = x 等简单函数
      • 1.1 相应的代码
      • 1.2 对上述代码的解释
      • 1.3 可能遇到的问题
        • 1.3.1 问题
        • 1.3.2 解决方法
    • 2.使用tensorboard加载数据集中的图片
      • 2.1 相应代码
      • 2.2 对上述代码的解释
        • 2.2.1 代码功能概述
        • 2.2.2代码逐行解释
      • 2.3 后续操作

小土堆pytorch–tensorboard的使用

0.介绍

TensorBoard 是 TensorFlow 提供的一组可视化工具 ,能将机器学习实验数据图形化展示,助力理解、调试、优化模型,也可用于 PyTorch 等框架结合使用来可视化相关数据。

主要功能

  • 可视化模型结构:呈现模型计算图,展示张量、变量和操作流程,助于理解模型架构和参数。
  • 跟踪训练指标:实时呈现损失函数、准确率、梯度等训练指标变化,以折线图等形式展示,方便评估模型性能和优化训练过程。
  • 可视化数据分布:通过直方图展示张量分布,了解权重、激活值等分布及变化;用平面展示数据分布情况,分析数据特征。
  • 展示图像音频:展示训练过程中的图像(如输入图像、输出图像、中间层特征图 )和音频数据,辅助理解模型对多媒体数据的处理。
  • 高维数据降维可视化:利用技术将高维嵌入向量投影到低维空间展示,分析向量关系和分布。

1.使用tensorboard绘制 y = x 等简单函数

1.1 相应的代码

from torch.utils.tensorboard import SummaryWriterwriter = SummaryWriter("logs")# writer.add_image()
# y = x
for i in range(0, 100):writer.add_scalar("y=x", i, i)writer.close()

运行这段代码后,会在当前目录下生成一个名为 logs 的文件夹,其中包含了记录 y = x 数据的日志文件。接下来,可以在命令行中使用以下命令启动 TensorBoard 服务:

tensorboard --logdir=logs

然后在浏览器中打开 http://localhost:6006,就可以看到 y = x 函数关系的可视化图表。
在这里插入图片描述
然后就可以看到图表
在这里插入图片描述

1.2 对上述代码的解释

  1. 导入模块

    from torch.utils.tensorboard import SummaryWriter
    

    这行代码从 torch.utils.tensorboard 模块中导入 SummaryWriter 类。SummaryWriter 是一个重要的类,它可以将各种数据(如标量、图像、直方图等)写入日志文件,以便后续使用 TensorBoard 进行可视化分析。

  2. 创建 SummaryWriter 实例

    writer = SummaryWriter("logs")
    

    这行代码创建了一个 SummaryWriter 类的实例 writer,并指定日志文件的保存目录为 “logs”。也就是说,后续通过 writer 记录的数据都会被保存到这个名为 logs 的文件夹中。如果该文件夹不存在,程序会自动创建它。
    在这里插入图片描述
    运行这段代码后,IDE会自动生成logs文件夹

  3. 循环记录标量数据

    # y = x
    for i in range(0, 100):writer.add_scalar("y=x", i, i)
    

    for i in range(0, 100)::这是一个 for 循环,循环变量 i 从 0 到 99 依次取值。
    writer.add_scalar(“y=x”, i, i):调用 writer 的 add_scalar 方法,该方法有三个主要参数:
    A 第一个参数 “y=x” 是一个字符串,作为数据的标签,用于在 TensorBoard 中标识这组数据。
    B 第二个参数 i 是要记录的标量值,也就是 y 的值,因为这里 y = x,所以 y 的值就等于 i。
    C 第三个参数 i 是全局步数(global_step),用于表示数据点的顺序,在 TensorBoard 中,global_step 通常对应 x 轴,用于展示数据随时间或迭代次数的变化。

    TIPS:
    在这里插入图片描述
    我们用CTRL+鼠标左键点击add_scalar会跳出该函数的定义,以及对参数的讲解
    在这里插入图片描述

  4. 关闭 SummaryWriter

    writer.close()
    

    这行代码调用 writer 的 close 方法,关闭 SummaryWriter 实例。关闭操作会确保所有的数据都被正确写入到日志文件中,释放相关资源。

综上所述,这段代码的主要目的是使用 SummaryWriter 记录 y = x 函数关系的数据,并将其保存到日志文件中,以便后续使用 TensorBoard 进行可视化分析。

1.3 可能遇到的问题

1.3.1 问题

在这里插入图片描述
这是这段代码的运行结果
在这里插入图片描述
也会对应在logs目录下生成相应的文件
在这里插入图片描述
在这里插入图片描述
假如我们修改代码,其实就这一点变化,我们在tensorboard上查看结果的时候会发现问题
在这里插入图片描述
在这里插入图片描述

**导致错误的原因:**多次记录了相同标签(都标为 y = 5x )的数据,且每次记录的数据范围、采样方式等有差异,导致多组数据在同一图表中叠加显示,出现多条看似混乱的线。

1.3.2 解决方法

在这里插入图片描述
首先我们在pycharm中按ctrl+c杀掉当前进程
在这里插入图片描述
然后我们手动删除这两个文件
然后再次运行上述代码,问题就可以解决了
在这里插入图片描述

2.使用tensorboard加载数据集中的图片

2.1 相应代码

from torch.utils.tensorboard import SummaryWriter
import numpy as np
from PIL import Imagewriter = SummaryWriter("logs")
image_path = "dataset/train/ants/5650366_e22b7e1065.jpg"
img_PIL = Image.open(image_path)
img_array = np.array(img_PIL)
print(img_array.shape)writer.add_image("test", img_array, 1, dataformats = 'HWC')writer.close()

2.2 对上述代码的解释

2.2.1 代码功能概述

这段代码的主要功能是使用PyTorch 中的 torch.utils.tensorboard 模块,将一张本地的图像文件添加到 TensorBoard 的日志中,以便后续使用 TensorBoard 工具对该图像进行可视化展示。

2.2.2代码逐行解释
  1. 导入必要的模块
from torch.utils.tensorboard import SummaryWriter
import numpy as np
from PIL import Image
  • from torch.utils.tensorboard import SummaryWriter:从 torch.utils.tensorboard 模块中导入 SummaryWriter 类。SummaryWriter 用于将各种数据(如标量、图像、直方图等)写入日志文件,方便后续使用 TensorBoard 进行可视化分析。
  • import numpy as np:导入 numpy 库,并将其重命名为 npnumpy 是一个用于科学计算的强大库,在处理数组和矩阵时非常有用。
  • from PIL import Image:从 PIL(Python Imaging Library)库中导入 Image 类。PIL 是 Python 中常用的图像处理库,Image 类可以用于打开、操作和保存多种图像文件格式。
  1. 创建 SummaryWriter 实例
writer = SummaryWriter("logs")

创建一个 SummaryWriter 类的实例 writer,并指定日志文件的保存目录为 "logs"。如果该目录不存在,程序会自动创建它。后续通过 writer 记录的数据都会被保存到这个目录下的日志文件中。

3 打开图像文件

image_path = "dataset/train/ants/5650366_e22b7e1065.jpg"
img_PIL = Image.open(image_path)
  • image_path = "dataset/train/ants/5650366_e22b7e1065.jpg":定义一个字符串变量 image_path,用于指定要打开的图像文件的路径。
  • img_PIL = Image.open(image_path):使用 Image.open() 方法打开指定路径的图像文件,并将其存储为 PIL 图像对象 img_PIL

4 将 PIL 图像对象转换为 numpy 数组

img_array = np.array(img_PIL)

使用 np.array() 函数将 PIL 图像对象 img_PIL 转换为 numpy 数组 img_arraynumpy 数组更适合进行数值计算和处理,方便后续传递给 SummaryWriter 进行记录。

5 打印图像数组的形状

print(img_array.shape)

打印 img_array 的形状,即图像的高度、宽度和通道数。例如,对于 RGB 图像,形状通常为 (height, width, 3)

6 向 TensorBoard 日志中添加图像

writer.add_image("test", img_array, 1, dataformats = 'HWC')

调用 writeradd_image 方法,将图像添加到 TensorBoard 日志中。该方法有几个参数:

  • 第一个参数 "test" 是一个字符串,作为图像的标签,用于在 TensorBoard 中标识这张图像。
  • 第二个参数 img_array 是要添加的图像数据,即前面转换得到的 numpy 数组。
  • 第三个参数 1 是全局步数(global_step),用于表示图像的顺序或迭代次数,在 TensorBoard 中,global_step 通常对应 x 轴,用于展示数据随时间或迭代次数的变化。
  • dataformats = 'HWC':指定图像数据的格式。'HWC' 表示图像数据的维度顺序为高度(Height)、宽度(Width)和通道数(Channels)。
    在这里插入图片描述
    在这里插入图片描述

注意:在add_image的定义中如果tensor的形状是(H,W,3)则需要使用 dataformats = ‘HWC’
7. 关闭 SummaryWriter

writer.close()

调用 writerclose 方法,关闭 SummaryWriter 实例。关闭操作会确保所有的数据都被正确写入到日志文件中,并释放相关资源。

2.3 后续操作

运行这段代码后,会在当前目录下生成一个名为 logs 的文件夹,其中包含了记录图像数据的日志文件。接下来,可以在命令行中使用以下命令启动 TensorBoard 服务:

tensorboard --logdir=logs

然后在浏览器中打开 http://localhost:6006,就可以在 TensorBoard 的界面中看到名为 "test" 的图像。

综上所述,这段代码的主要目的是使用 SummaryWriter 将本地的一张图像添加到 TensorBoard 日志中,以便后续进行可视化分析。

这样我们就可以在tensorboard中看到相应的图像
在这里插入图片描述
然后我们可以变换图像(使用图片的相对路径),然后把参数step=2
在这里插入图片描述

相关文章:

小土堆pytorch--tensorboard的使用

小土堆pytorch--tensorboard的使用 小土堆pytorch--tensorboard的使用0.介绍1.使用tensorboard绘制 y x 等简单函数1.1 相应的代码1.2 对上述代码的解释1.3 可能遇到的问题1.3.1 问题1.3.2 解决方法 2.使用tensorboard加载数据集中的图片2.1 相应代码2.2 对上述代码的解释2.2.…...

从 0 到 1:使用 Jetpack Compose 和智能自动化实现高效 Android UI 开发

现代 Android UI 开发正逐步从命令式 XML 向声明式 Compose 转变。Compose 凭借其简洁、高效、易测试的特点,能够让开发者更专注于界面和业务逻辑,而不必陷入大量模板化的代码。手把手带你构建一个完整的 Todo List 应用,并演示如何借助自动化…...

学习黑客 week1周测 复盘

Day 7 – 周测 & 复盘 今天任务: 完成 10 道快测题,涵盖 Week 1 的核心知识点:《CIA 三要素》、OWASP Top 10、MITRE ATT&CK、NIST RMF、Linux 权限、TCP/IP、网络安全法、“黑客五阶段” 与风险管理。撰写 300 字周总结&#xf…...

【五一培训】Day 3

Topic 1:元学习 一、概念:learn to learn 区分少样本学习与元学习 少样本学习(Few-shot learning)是元学习的一个重要应用,它指的是机器能够在仅有少量样本的情况下,成功地学习和泛化到新任务上。在许多现…...

C++继承详讲

1.继承的概念 继承是实现代码复用的手段,它允许程序员在保持基类特性的基础上进行扩展,增加功能,这样产生新的类,称派生类。 2.继承和组合 1.继承体系下,子类对象包含父类的成员。组合体系下,子类对象包含…...

第四节:OpenCV 基础入门-第一个 OpenCV 程序:图像读取与显示

一、引言:为什么选择 OpenCV? 在计算机视觉领域,OpenCV(Open Source Computer Vision Library)是一个开源的、跨平台的计算机视觉库,广泛应用于图像处理、模式识别、机器学习等领域。它支持多种编程语言&a…...

基于PHP实现的easy管理系统

easy管理系统 2.0.1 easy管理系统 是一个多功能的 Web 管理平台,旨在简化项目管理、文件共享和协作流程。它集成了大创项目管理、在线文档生成、代码托管等多种功能,并提供了用户管理、系统设置、日志查看等后台管理能力。 ✨ 功能特性 统一管理平台:…...

ios systeam introduction

Here is an in-depth look at Apple’s iOS, from its inception to its latest major release, covering architecture, core components, security, app lifecycle, development tools, and the headline features of iOS 18. iOS began life as “iPhone OS,” unveiled alo…...

【论文阅读】LLMOPT:一种提升优化泛化能力的统一学习框架

文章目录 第一遍一、摘要二、关键词三、预知识1. 什么是优化泛化问题2. 什么是消融研究3. model alignment(模型对齐) 第二遍:了解论文论点一、研究背景与目的二、相关工作三、LLMOPT框架四、METHODOLOGY(方法论)1. 数据处理2. 学习过程3. 自…...

Prompt多版本测试指南:如何科学评估不同提示词的效果

对于现代AI开发来说,同一个需求,不同的提示表达方式往往会产生截然不同的结果。因此,如何设计、测试和优化提示词成为了一项关键技能。 本文将深入探讨Prompt多版本测试的技术方法,帮助你系统性地评估不同提示词的效果&#xff0…...

每日c/c++题 备战蓝桥杯(洛谷P1015 [NOIP 1999 普及组] 回文数)

洛谷P1015 [NOIP 1999 普及组] 回文数 题解 题目描述 P1015 回文数 是NOIP 1999普及组的经典模拟题。题目要求如下: 给定一个数N(十进制)和进制K(2≤K≤16),将N转换为K进制表示后,通过以下操…...

最小单调子序列的长度+联通最小乘积

因为题目ICPC是英文版,基于大家都不怎么看的懂的情况下直接给大家进行题目讲解 题目1: 题目分析: 构造一个长度为n的排列 p(里面的数是1-n),不能重复得 max⁡(lis(p),lds(p)) 最小。 其中,lis(p)是 p 的最长递增子序…...

OpenHarmony平台驱动开发(一),ADC

OpenHarmony平台驱动开发(一) ADC 概述 功能简介 ADC(Analog to Digital Converter),即模拟-数字转换器,可将模拟信号转换成对应的数字信号,便于存储与计算等操作。除电源线和地线之外&#…...

数据结构与算法:回溯

回溯 先给出一些leetcode算法题,以后遇见了相关题目再往上增加 主要参考代码随想录 2.1、组合问题 关于去重:两种写法的性能分析 需要注意的是:使用set去重的版本相对于used数组的版本效率都要低很多,大家在leetcode上提交&#x…...

KaiwuDB X 遨博智能 | 构建智能产线监测管理新系统

​01 项目背景 遨博智能作为国内协作机器人行业领军企业,深度布局制造、农业、医疗、教育、民生等场景,出货量连续四年蝉联国内第一、世界第二。随着工业自动化的蓬勃发展,遨博智能生产规模不断扩大,先后在常州、淄博等地建设完成…...

高等数学第三章---微分中值定理与导数的应用(§3.6 函数图像的描绘§3.7 曲率)

3.6 函数图像的描绘 一、曲线的渐近线 对于某些函数,其图形向无穷远处延伸时,会越来越趋近于某一条直线,这条直线被称为曲线的渐近线 (Asymptote)。 1. 定义 若曲线 y f ( x ) yf(x) yf(x) 上一点 P ( x , y ) P(x, y) P(x,y) 沿曲线趋…...

【PostgreSQL数据分析实战:从数据清洗到可视化全流程】4.2 数据类型转换(CAST函数/自定义函数)

👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 PostgreSQL数据分析实战:数据清洗之数据类型转换(CAST函数/自定义函数)4.2 数据类型转换:让数据「格式正确,类型对…...

docker:制作镜像+上传镜像+拉取镜像

1.dockerfile制作镜像 示例内容: 1.创建一个index.js的文件 console.log("hello world")2.在相同目录下创建名为dockerfile的文件 FROM node:alpine COPY index.js /index.js CMD node /index.js3.构建镜像 docker build -t minterra/hello-docker . …...

信息系统监理师第二版教材模拟题第三组(含解析)

信息系统监理师模拟题第三组(30题) 监理基础理论 信息系统工程监理的性质是( ) A. 服务性、独立性、公正性、科学性 B. 强制性、营利性、行政性、技术性 C. 临时性、从属性、随意性、主观性 D. 单一性、封闭性、被动性、保守性答案:A 解析:监理具有服务性、独立性、公正…...

潮乎盲盒商城系统全开源多级分销推广海报奖品兑换试玩概率OSS云存储多端源码

一、源码描述 这是一套潮乎盲盒商城源码,仿小叮当盲盒商城,后端Laravel框架前端uniappvue,前后端数据库分离,支持四端同步数据(H5小程序等),测试环境: php7.4,mysql5.6,…...

文章记单词 | 第64篇(六级)

一,单词释义 residence [ˈrezɪdəns] n. 住宅;居住;住所;居住期fling [flɪŋ] v. (用力地)扔,掷,抛;猛动(身体或身体部位);急冲&a…...

数据同步实战篇

文章目录 数据同步实战篇1. mysql数据同步1.1 mysql集群部署1.2 数据同步1.2.1 同步复制1.2.2 异步复制1.2.3 半同步复制 2. redis数据同步2.1 redis集群部署2.2 数据同步 3. mq数据同步3.1 mq集群部署3.2 数据同步 4. es数据同步4.1 es集群部署4.2 数据同步 数据同步实战篇 数…...

具身系列——Double DQN算法实现CartPole游戏(强化学习)

完整代码参考: rl/ddqn_cartpole.py 陈先生/ailib - Gitee.com 部分训练得分: Model saved to ./output/best_model.pth New best model saved with average reward: 9.6 Episode: 0 | Train Reward: 25.0 | Epsilon: 0.995 | Best Eval Avg: 9.6…...

以下是在 Ubuntu 上的几款PDF 阅读器,涵盖轻量级、功能丰富和特色工具:

默认工具:Evince(GNOME 文档查看器) 特点:Ubuntu 预装,轻量快速,支持基本标注和书签。 安装:已预装,或手动安装: sudo apt install evince功能全面:Okular&…...

有关水下图像增强的论文

4.21 TEBCF:Real-World Underwater Image Texture Enhancement Model Based on Blurriness and Color Fusion 基于模糊和颜色融合的现实水下图像纹理增强模型 2022年的一篇文章,基于传统方法,基于不同的色彩方法构建了两个新的融合输入。一…...

Raycaster光线投射

Raycaster光线投射 3D虚拟工厂在线体验 描述 光线投射Raycaster,用于进行raycasting(光线投射)。 光线投射用于进行鼠标拾取(在三维空间中计算出鼠标移过了什么物体)。 构造器 Raycaster( origin : Vector3, dire…...

javaEE——单例模式

目录 前言1.概念2. 实现3. 比较和改进总结 前言 本篇文章来介绍单例模式,并讲述在保证线程安全的前提下,单例模式的写法。 1.概念 单例模式是一种设计模式,可以说是写代码的一种模板,如果在一些固定的场景下按照设计模式进行写…...

WSL在D盘安装Ubuntu

目录 前提条件步骤一:查看可用的Linux发行版步骤二:安装Ubuntu 22.04步骤三:导出已安装的Ubuntu到D盘步骤四:注销当前Ubuntu安装步骤五:在D盘导入Ubuntu启动Ubuntu 前提条件 Windows 10或Windows 11系统已启用WSL功能…...

Java并发编程-多线程基础(三)

文章目录 线程间通信线程间通信的核心问题volatile 关键字1. 核心特性2. 使用限制3. 示例 synchronized 关键字1. 核心特性2. 示例 volatile 与 synchronized 的对比Volatile 和 Synchronized 最佳实践 线程间通信 线程间通信的核心问题 多个线程通过共享内存实现信息交换&am…...

React--》掌握react构建拖拽交互的技巧

在这篇文章中将深入探讨如何使用react-dnd,从基础的拖拽操作到更复杂的自定义功能带你一步步走向实现流畅、可控且用户友好的拖拽体验,无论你是刚接触拖拽功能的初学者还是想要精细化拖拽交互的经验开发者,都能从中找到适合自己的灵感和解决方案。 目录 …...

【Qt】常用的类与数据类型

目录 一、Qt常见基本数据类型 二、Qt 字符串类应用 2.1 操作字符串 2.2 查询字符串 三、QMap 类&QHash 类&QVector 类 3.1 QMap 类 3.2 QHash 类 3.3 QVector 类 四、QList 类&QLinkedList 类 4.1 QList 类 4.2 QLinkedList 类 4.3 STL 风格迭代器遍历…...

React实现B站评论Demo

该Demo涉及的技术点 useState函数(数据驱动视图)子组件的封装条件判断回调函数的封装 1、评论数据 {"list": [{"rpid": 3,"user": {"uid": "13258165","avatar": "http://toutiao.…...

从实列中学习linux shell12 通过Shell脚本来优化MySQL数据库性能,特别是慢SQL跟踪和索引优化

在Shell脚本中优化MySQL数据库性能,特别是慢SQL跟踪和索引优化 可以通过以下步骤实现。以下是一个结构化的解决方案,包含示例代码和详细说明: 1. 启用慢查询日志 目标:动态启用慢查询日志并配置参数,收集慢SQL数据。…...

ES6入门---第三单元 模块一:类、继承

补充&#xff1a; prototype 属性使您有能力向对象添加属性和方法。 object.prototype.namevalue <script>function Person(name, age){this.name name;this.age age;}/* Person.prototype.showName function(){return 名字为: ${this.name};};Person.prototype.showA…...

CSS 变量与原生动态主题实现

CSS 变量与原生动态主题实现 CSS 变量基础 CSS 变量&#xff08;自定义属性&#xff09;是 CSS 语言的一项强大功能&#xff0c;允许我们在样式表中定义和重用值。与 SCSS 或 LESS 等预处理器中的变量不同&#xff0c;CSS 变量在运行时计算&#xff0c;这意味着它们可以动态更…...

Ubuntu 安装 Docker

安装 Docker 1. 卸载旧版本&#xff08;如果有&#xff09; sudo apt-get remove docker docker-engine docker.io containerd runc 2. 更新 APT 包的索引 sudo apt-get update 3. 安装依赖包 sudo apt-get install -y \ca-certificates \curl \gnupg \lsb-release4. 添加…...

SpringMVC——第三章:获取请求数据

假设有这样一个请求&#xff1a;http://localhost:8080/springmvc/register?namezhangsan&password123&emailzhangsanpowernode.com 在SpringMVC中应该如何获取请求提交的数据呢&#xff1f; 在SpringMVC中又应该如何获取请求头信息呢&#xff1f; 在SpringMVC中又应…...

动静态库【Linux操作系统】

文章目录 动静态库制作静态库如何把第三方库安装在Linux系统中&#xff0c;如何使用第3方库方案一&#xff1a;为什么我们之前使用gcc/g编译C/C标准库的时候不用加选项-l xxx呢&#xff1f;方案二&#xff1a;方案三&#xff1a; 为什么不同平台的库不一样呢&#xff1f;动态库…...

Day 4:牛客周赛Round 91

好久没写了&#xff0c;问题还蛮多的。听说这次是苯环哥哥出题 F题 小苯的因子查询 思路 考虑求因子个数&#xff0c;用质因数分解&#xff1b;奇数因子只需要去掉质数为2的情况&#xff0c;用除法。 这里有个比较妙的细节是&#xff0c;提前处理出数字x的最小质因数&#xff0…...

drawDB:打造高效数据库设计流程

drawDB&#xff1a;打造高效数据库设计流程 drawDB 简介资源链接 核心功能详解1. 直观的实体关系图设计2. SQL 脚本生成3. SQL 导入功能4. 本地化存储与分享功能5. 自定义主题与外观 安装和使用教程本地开发环境搭建构建生产版本Docker 部署基本使用方法 应用场景和实际价值适用…...

【心海资源】子比主题新增注册与会员用户展示功能模块及实现方法

内容改写&#xff1a; 本次分享的是子比主题顶部展示注册用户与会员信息的功能模块及其实现方式。 你可以通过两种方式启用该功能&#xff1a; 直接在后台进入“外观 → 小工具”启用该展示模块&#xff0c;操作简便&#xff1b;也可将提供的代码覆盖至子比主题目录中&#…...

gitblit安装教程,搭建一个属于自己的Git版本仓库

本章教程,主要记录如何在Windows服务器上利用gitblit搭建GIT私有化仓库。 一、gitblit简介 官网地址:https://www.gitblit.com/ Gitblit 是一个开源的纯 Java 技术栈,用于管理、查看和服务Git仓库。 它主要设计为一款面向希望托管集中式仓库的小型工作组的工具。 二、基础环…...

2023年第十四届蓝桥杯省赛B组Java题解【简洁易懂】

2023年第十四届蓝桥杯省赛B组Java题解 题型概览与整体分析 题目编号题目名称题型难度核心知识点通过率&#xff08;预估&#xff09;A阶乘求和结果填空★☆☆模运算、数学规律95%B幸运数字结果填空★★☆进制转换、数位和计算80%C数组分割编程题★★☆组合数学、奇偶性分析65…...

Javase 基础加强 —— 01 异常

本系列为笔者学习Javase的课堂笔记&#xff0c;视频资源为B站黑马程序员出品的《黑马程序员JavaAI智能辅助编程全套视频教程&#xff0c;java零基础入门到大牛一套通关》&#xff0c;章节分布参考视频教程&#xff0c;为同样学习Javase系列课程的同学们提供参考。 01 课程安排…...

iview 表单验证问题 Select 已经选择 还是弹验证提示

问题&#xff1a;iview 的 Select 下拉框的时候&#xff0c;数据验证必填&#xff0c;明明选择了数据&#xff0c;却一直提示验证不能通过 html代码&#xff1a; <Form ref"FormData" :model"FormData" :rules"ruleValidate" :label-width&qu…...

OrCAD中离图连接器、端口及网络标签的作用范围与选择指南

一、OrCAD主要连接元素概述 在OrCAD Capture原理图设计环境中&#xff0c;有三种主要的网络连接元素&#xff1a;离图连接器(Off-Page Connector)、端口(Port)和网络标签(Net Alias)。理解它们的作用范围和使用场景对设计清晰、可维护的原理图至关重要。 PS&#xff1a; 电源和…...

dpm_sysfs_add

这段代码是 Linux 内核中**设备电源管理&#xff08;PM&#xff09;子系统**与 **sysfs 文件系统**交互的核心实现&#xff0c;主要功能是为设备创建电源管理相关的 sysfs 属性文件。以下从五个关键维度进行深度解析&#xff1a; --- ### 一、功能架构全景 mermaid graph TD …...

【AI论文】Phi-4-reasoning技术报告

摘要&#xff1a;我们引入了Phi-4-reasoning&#xff0c;这是一种拥有140亿参数的推理模型&#xff0c;在复杂的推理任务中表现出了强大的性能。 通过监督式微调Phi-4&#xff0c;在精心策划的“可教”提示集上进行训练&#xff0c;这些提示集是根据复杂性和多样性的适当水平选…...

Android ART运行时无缝替换Dalvik虚拟机的过程分析

目录 一,概述 二,dex文件优化 一,概述 Android 4.4发布了一个ART运行时&#xff0c;准备用来替换掉之前一直使用的Dalvik虚拟机&#xff0c;希望籍此解决饱受诟病的性能问题。老罗不打算分析ART的实现原理&#xff0c;只是很有兴趣知道ART是如何无缝替换掉原来的Dalvik虚拟机…...

node.js为什么产生?

从官网得知介绍如下 https://nodejs.org/zh-cn/learn/getting-started/introduction-to-nodejs Node.js是一个开源和跨平台的JavaScript运行时环境。 Node.js在浏览器之外运行V8 JavaScript引擎&#xff0c;这是Google Chrome的核心。这使得Node.js具有很高的性能。 Node.js应…...