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

【机器学习】制造业转型:机器学习如何推动工业 4.0 的深度发展

在这里插入图片描述

我的个人主页
我的领域人工智能篇,希望能帮助到大家!!!👍点赞 收藏❤
在这里插入图片描述
在这里插入图片描述

引言

在当今科技飞速发展的时代,制造业正经历着前所未有的变革,工业4.0的浪潮席卷而来。工业4.0旨在通过将物联网、大数据、人工智能等新兴技术与传统制造业深度融合,实现生产过程的智能化、自动化和数字化。其中,机器学习作为人工智能的核心领域,正发挥着举足轻重的作用,推动着制造业向更高水平的智能化转型。本文将深入探讨机器学习在工业4.0中的应用场景、关键技术、实施步骤以及面临的挑战与未来发展趋势,并通过具体代码示例和相关公式,全面展示机器学习如何助力制造业实现深度变革。

一、工业4.0与机器学习概述

1.1 工业4.0的内涵与目标

工业4.0概念最早由德国政府提出,它描绘了制造业的未来愿景,核心是通过整合信息物理系统(CPS),实现生产过程的智能化、网络化和自动化。工业4.0的目标包括提高生产效率、提升产品质量、增强生产灵活性、实现个性化定制生产以及优化供应链管理等。通过这些目标的实现,制造业能够更好地应对全球市场的快速变化和激烈竞争。

1.2 机器学习在工业4.0中的角色

机器学习作为人工智能的重要分支,能够让计算机系统从数据中自动学习模式和规律,并利用这些知识进行预测和决策。在工业4.0的背景下,机器学习可以处理和分析海量的生产数据,挖掘数据背后的价值,为生产过程优化、质量控制、设备维护等提供智能支持。例如,通过对生产设备运行数据的机器学习分析,可以提前预测设备故障,实现预防性维护,减少停机时间和维修成本。

二、机器学习在工业4.0中的关键技术与公式

2.1 回归分析

回归分析是一种用于建立变量之间关系的统计方法,在工业4.0中常用于预测任务,如预测产品质量、生产产量等。线性回归是最基本的回归模型,其数学公式为:

y ^ = β 0 + β 1 x 1 + β 2 x 2 + ⋯ + β n x n + ϵ \hat{y} = \beta_0 + \beta_1x_1 + \beta_2x_2 + \cdots + \beta_nx_n + \epsilon y^=β0+β1x1+β2x2++βnxn+ϵ

其中,(\hat{y})是预测值,(x_i)是自变量,(\beta_i)是回归系数,(\epsilon)是误差项。在实际应用中,我们通常使用最小二乘法来估计回归系数(\beta_i),目标是最小化预测值(\hat{y})与真实值(y)之间的误差平方和:

S S E = ∑ i = 1 n ( y i − y ^ i ) 2 SSE = \sum_{i = 1}^{n}(y_i - \hat{y}_i)^2 SSE=i=1n(yiy^i)2

通过求解 ∂ S S E ∂ β j = 0 \frac{\partial SSE}{\partial \beta_j} = 0 βjSSE=0 ( j = 0 , 1 , ⋯ , n (j = 0, 1, \cdots, n (j=0,1,,n ,可以得到回归系数的估计值。

在Python中,可以使用scikit - learn库进行线性回归分析,示例代码如下:

from sklearn.linear_model import LinearRegression
import numpy as np# 生成一些示例数据
X = np.array([[1], [2], [3], [4], [5]])
y = np.array([2, 4, 6, 8, 10])# 创建线性回归模型并拟合数据
model = LinearRegression()
model.fit(X, y)# 进行预测
new_X = np.array([[6]])
prediction = model.predict(new_X)
print("预测值:", prediction)

2.2 决策树与随机森林

决策树是一种基于树结构的分类和回归算法,它通过对数据特征进行递归划分,构建决策规则。决策树的构建过程基于信息增益或基尼指数等指标来选择最优的划分特征。以信息增益为例,信息增益的计算公式为:

I G ( S , A ) = H ( S ) − ∑ v ∈ V a l u e s ( A ) ∣ S v ∣ ∣ S ∣ H ( S v ) IG(S, A) = H(S) - \sum_{v \in Values(A)}\frac{|S_v|}{|S|}H(S_v) IG(S,A)=H(S)vValues(A)SSvH(Sv)

其中,(S)是数据集,(A)是特征,(Values(A))是特征(A)的取值集合,(S_v)是(S)中特征(A)取值为(v)的子集,(H(S))是数据集(S)的信息熵,计算公式为:

H ( S ) = − ∑ i = 1 c ∣ C i ∣ ∣ S ∣ log ⁡ 2 ∣ C i ∣ ∣ S ∣ H(S) = - \sum_{i = 1}^{c}\frac{|C_i|}{|S|}\log_2\frac{|C_i|}{|S|} H(S)=i=1cSCilog2SCi

其中,(c)是类别数,(C_i)是(S)中属于第(i)类的样本子集。

随机森林是一种集成学习算法,它通过构建多个决策树并将它们的预测结果进行组合(如投票或平均)来提高模型的稳定性和泛化能力。在Python中,使用scikit - learn库实现随机森林回归的代码示例如下:

from sklearn.ensemble import RandomForestRegressor
import numpy as np# 生成示例数据
X = np.array([[1], [2], [3], [4], [5]])
y = np.array([2, 4, 6, 8, 10])# 创建随机森林回归模型并拟合数据
model = RandomForestRegressor(n_estimators = 100)
model.fit(X, y)# 进行预测
new_X = np.array([[6]])
prediction = model.predict(new_X)
print("预测值:", prediction)

2.3 神经网络与深度学习

神经网络是一种模仿生物神经网络结构和功能的计算模型,深度学习则是基于神经网络的一系列复杂模型和算法。在工业4.0中,深度学习常用于图像识别、语音识别、故障诊断等复杂任务。以多层感知机(MLP)为例,它是一种简单的前馈神经网络,包含输入层、隐藏层和输出层。假设输入层有(n)个神经元,隐藏层有(m)个神经元,输出层有(k)个神经元,第(i)个隐藏层神经元的输入为:

z i = ∑ j = 1 n w i j x j + b i z_i = \sum_{j = 1}^{n}w_{ij}x_j + b_i zi=j=1nwijxj+bi

其中,(w_{ij})是输入层第(j)个神经元到隐藏层第(i)个神经元的权重,(x_j)是输入层第(j)个神经元的输入值,(b_i)是隐藏层第(i)个神经元的偏置。隐藏层第(i)个神经元的输出为:

h i = σ ( z i ) h_i = \sigma(z_i) hi=σ(zi)

其中,(\sigma)是激活函数,如Sigmoid函数、ReLU函数等。输出层的计算类似。

在训练神经网络时,通常使用反向传播算法来更新权重和偏置,以最小化损失函数。损失函数常用的有均方误差(MSE)、交叉熵损失等。以均方误差为例,其计算公式为:

M S E = 1 N ∑ i = 1 N ( y i − y ^ i ) 2 MSE = \frac{1}{N}\sum_{i = 1}^{N}(y_i - \hat{y}_i)^2 MSE=N1i=1N(yiy^i)2

其中,(N)是样本数量,(y_i)是真实值, y ^ i \hat{y}_i y^i 是预测值。

在Python中,使用Keras库可以方便地构建和训练神经网络,以下是一个简单的MLP用于回归任务的示例代码:

from keras.models import Sequential
from keras.layers import Dense
import numpy as np# 生成示例数据
X = np.array([[1], [2], [3], [4], [5]])
y = np.array([2, 4, 6, 8, 10])# 创建模型
model = Sequential()
model.add(Dense(10, input_dim = 1, activation='relu'))
model.add(Dense(1))# 编译模型
model.compile(loss='mean_squared_error', optimizer='adam')# 训练模型
model.fit(X, y, epochs = 1000, verbose = 0)# 进行预测
new_X = np.array([[6]])
prediction = model.predict(new_X)
print("预测值:", prediction)

三、机器学习在工业4.0中的应用场景

3.1 生产过程优化

  1. 产量预测:通过对历史生产数据、设备参数、原材料质量等多源数据进行分析,利用回归分析、时间序列分析等机器学习算法,预测未来的生产产量,帮助企业合理安排生产计划,避免库存积压或缺货现象。
  2. 生产参数优化:在生产过程中,存在众多影响产品质量和生产效率的参数。通过机器学习算法对生产数据进行挖掘,找到最优的生产参数组合,实现生产过程的优化。例如,在注塑成型过程中,通过对注塑温度、压力、时间等参数与产品质量数据的分析,确定最佳的工艺参数,提高产品合格率。

3.2 质量控制

  1. 缺陷检测:利用深度学习中的图像识别技术,对生产线上的产品进行实时检测,识别产品表面的缺陷,如划痕、裂纹等。与传统的人工检测相比,机器学习驱动的缺陷检测具有更高的准确性和效率,能够及时发现质量问题,减少次品流入市场。
  2. 质量预测:在产品生产过程中,采集各个环节的质量数据和相关工艺参数,构建质量预测模型。通过对实时数据的分析,预测产品最终的质量状况,对于可能出现质量问题的产品提前进行干预,降低废品率。

3.3 设备维护

  1. 故障预测:借助传感器采集设备运行过程中的振动、温度、压力等数据,利用机器学习算法对这些数据进行分析,学习设备正常运行和故障状态下的特征模式。通过实时监测设备数据,与学习到的模式进行对比,提前预测设备可能出现的故障,实现预防性维护。例如,通过对电机振动数据的分析,预测电机轴承的磨损情况,提前安排维修,避免因设备突发故障导致的生产中断。
  2. 维护计划优化:根据设备的运行历史、故障预测结果以及维护成本等因素,利用机器学习算法制定最优的设备维护计划。考虑不同维护策略对设备性能和寿命的影响,平衡维护成本和生产损失,实现设备维护资源的合理配置。

3.4 供应链管理

  1. 需求预测:综合考虑市场趋势、历史销售数据、季节因素、促销活动等信息,运用机器学习算法预测产品的市场需求。准确的需求预测有助于企业优化库存管理、合理安排生产计划和采购原材料,提高供应链的响应速度和灵活性。
  2. 供应商评估与选择:收集供应商的质量数据、交货期、价格等多维度信息,通过机器学习算法构建供应商评估模型,对供应商进行客观、全面的评估和排序,帮助企业选择最合适的供应商,建立稳定可靠的供应链合作伙伴关系。

四、机器学习在工业4.0中的实施步骤

4.1 数据采集与预处理

  1. 数据采集:在工业生产环境中,通过各种传感器、设备日志、生产管理系统等收集与生产过程、设备状态、产品质量等相关的数据。确保数据的完整性和准确性,涵盖不同时间尺度和生产环节的数据。
  2. 数据清洗:对采集到的数据进行清洗,去除噪声、异常值和重复数据。例如,通过统计方法或机器学习算法识别和修正传感器测量中的异常值,保证数据的质量。
  3. 数据标准化与归一化:将不同特征的数据进行标准化或归一化处理,使数据具有相同的尺度和分布,便于机器学习算法的训练和比较。常见的方法有Z - score标准化、Min - Max归一化等。
  4. 特征工程:从原始数据中提取有价值的特征,这些特征应能够有效反映数据的内在规律和与目标变量的关系。可以通过领域知识、数据分析和机器学习算法进行特征选择和构建,如对时间序列数据进行差分、平滑处理,提取统计特征等。

4.2 模型选择与训练

  1. 模型选择:根据具体的应用场景和数据特点,选择合适的机器学习模型。例如,对于简单的线性关系预测任务,可以选择线性回归模型;对于复杂的非线性分类问题,深度学习模型可能更合适。同时,考虑模型的可解释性、计算复杂度和泛化能力等因素。
  2. 模型训练:将预处理后的数据划分为训练集、验证集和测试集。使用训练集对选定的模型进行训练,通过调整模型的参数(如神经网络的权重、决策树的划分规则等),使模型在训练集上达到较好的性能。在训练过程中,使用验证集来监控模型的性能,防止过拟合现象的发生。

4.3 模型评估与优化

  1. 模型评估:使用测试集对训练好的模型进行评估,采用合适的评估指标来衡量模型的性能。对于回归任务,常用的评估指标有均方误差(MSE)、平均绝对误差(MAE)等;对于分类任务,常用的指标有准确率、召回率、F1值等。通过评估结果了解模型的预测能力和泛化性能。
  2. 模型优化:如果模型的评估结果不理想,可以对模型进行优化。优化方法包括调整模型参数、选择不同的模型架构、增加数据量、改进特征工程等。例如,对于神经网络模型,可以尝试调整隐藏层的数量和神经元个数,改变激活函数或优化算法,以提高模型的性能。

4.4 模型部署与监控

  1. 模型部署:将优化后的模型部署到实际的生产环境中,与工业系统进行集成。可以通过开发API接口,使生产系统能够调用模型进行实时预测和决策。确保模型部署的稳定性和可靠性,能够适应工业生产环境的复杂性和高并发要求。
  2. 模型监控:在模型运行过程中,持续监控模型的性能和数据的变化。随着生产过程的演进,数据分布可能发生变化,导致模型性能下降。通过监控模型的预测结果与实际情况的偏差,及时发现模型的异常情况,并进行重新训练或调整,保证模型始终能够准确地为生产决策提供支持。

五、机器学习在工业4.0中面临的挑战

5.1 数据质量与安全

  1. 数据质量问题:工业数据往往存在噪声大、不完整、不一致等问题,影响机器学习模型的准确性和可靠性。例如,传感器故障可能导致采集的数据出现错误,不同系统之间的数据格式和标准不一致,给数据融合和分析带来困难。
  2. 数据安全与隐私:工业数据包含企业的核心机密和敏感信息,如生产工艺、客户订单等。在数据采集、传输、存储和使用过程中,需要确保数据的安全性,防止数据泄露和被恶意篡改。同时,随着数据保护法规的日益严格,企业需要在数据利用和隐私保护之间找到平衡。

5.2 模型可解释性

在工业领域,许多决策需要基于可解释的依据。然而,一些复杂的机器学习模型,如深度学习模型,通常被视为“黑箱”,难以理解其决策过程和依据。在关键的生产决策场景中,如质量控制、设备故障诊断等,模型的可解释性尤为重要,企业需要能够理解模型为什么做出这样的预测或决策,以便采取相应的措施。

5.3 计算资源与成本

机器学习算法,尤其是深度学习算法,通常需要大量的计算资源来进行训练和推理。在工业环境中,部署高性能的计算设备和软件平台需要投入较高的成本,包括硬件采购、维护、软件授权等费用。此外,随着数据量的不断增长,对计算资源的需求也会持续增加,企业需要在成本和性能之间进行权衡。

5.4 人才短缺

机器学习是一个跨学科领域,需要掌握数学、统计学、计算机科学等多方面知识的专业人才。目前,工业领域中既懂机器学习又熟悉工业业务的复合型人才相对短缺,这限制了机器学习技术在工业4.0中的快速推广和应用。企业需要加强人才培养和引进,提升团队的技术能力和业务水平。

六、机器学习推动工业4.0深度发展的未来趋势

6.1 边缘智能与雾计算

随着物联网设备的广泛部署,数据产生的位置越来越靠近设备端。边缘智能和雾计算技术将机器学习模型部署到边缘设备或靠近数据源的雾节点上,实现数据的本地处理和实时决策,减少数据传输延迟和网络带宽压力。例如,在工厂车间的设备上直接部署小型化的机器学习模型,实时监测设备状态并进行故障预警,提高生产的实时性和自主性。

6.2 联邦学习

联邦学习是一种在保护数据隐私的前提下,实现多方数据联合建模的技术。在工业领域,不同企业或部门之间可能拥有大量有价值的数据,但由于数据隐私和安全问题,无法直接共享数据。联邦学习允许各方在不共享原始数据的情况下,协同训练机器学习模型,充分利用各方数据的优势,提高模型的性能和泛化能力。例如,多个供应商可以通过联邦学习共同训练一个质量预测模型,而无需暴露各自的生产数据。

6.3 多模态数据融合

工业生产过程中产生的数据具有多种模态,如图像、音频、文本、传感器数据等。未来,机器学习将更加注重多模态数据的融合,通过综合分析不同模态的数据,挖掘更全面、准确的信息。例如,在设备故障诊断中,结合设备的振动数据、声音信号和图像信息,能够更准确地判断故障类型和原因,提高故障诊断的精度。

6.4 自主学习与自适应系统

随着工业生产环境的动态变化,机器学习模型需要具备自主学习和自适应能力。未来的机器学习系统将能够自动感知环境变化,实时调整模型参数和策略,以适应新的生产条件和任务需求。例如,在生产产品切换时,模型能够自动学习新的生产参数和质量标准,实现生产过程的无缝切换和持续优化。

相关文章:

【机器学习】制造业转型:机器学习如何推动工业 4.0 的深度发展

我的个人主页 我的领域:人工智能篇,希望能帮助到大家!!!👍点赞 收藏❤ 引言 在当今科技飞速发展的时代,制造业正经历着前所未有的变革,工业4.0的浪潮席卷而来。工业4.0旨在通过将…...

深度学习篇---数据集分类

文章目录 前言第一部分:VOC数据集标签、COCO数据集格式1.VOC数据集标签的特点及优缺点特点优点缺点 2.COCO数据集标签的特点及优缺点特点优点缺点 3.YOLO数据集标签的特点及优缺点特点优点缺点 第二部分:VOC格式和YOLO格式1.VOC格式3.YOLO格式3.区别(1)文…...

力扣hot100之螺旋矩阵

class Solution:def spiralOrder(self, matrix: List[List[int]]) -> List[int]:# 用四个数对应4个遍历的方向[0, 1, 2, 3] - [右,下,左,上]go_state 0 # 起始必须向右# record_matrix [[0] * n for _ in range(m)]n_0, n_1, n_2, n_3 …...

嵌入式知识点总结 C/C++ 专题提升(一)-关键字

针对于嵌入式软件杂乱的知识点总结起来,提供给读者学习复习对下述内容的强化。 目录 1.C语言宏中"#“和"##"的用法 1.1.(#)字符串化操作符 1.2.(##)符号连接操作符 2.关键字volatile有什么含意?并举出三个不同的例子? 2.1.并行设备的硬件寄存…...

Android 高版本如何获取App安装列表?

有个需求需要获取App内的安装列表,但是现在在高版本Android中,只能获取到一部分App效果,我获取的代码如下: val calendar Calendar.getInstance()val packageManager context.packageManagerval usageStatsManager context.getSystemService(Context.USAGE_STATS_SERVICE) …...

StarGAN:原理、用途及最新发展

一、引言 StarGAN是一种具有广泛应用的生成模型,具有同时生成多种类别数据的能力。它由Yunjey Choi等人在2017年提出,旨在实现图像多域间迁移,尤其适用于人脸属性转换。StarGAN的提出,标志着生成对抗网络(Generative A…...

TCP报文格式与核心机制

TCP与UDP都是传输层的重要协议,TCP的特性包括有连接、可靠传输、面向字节流、全双工。 TCP的报文格式如下: 一、报文格式 1.源端口号、目的端口号 源端口和目的端口是五元组中重要的两个性质,源端口即数据是从哪里来的,目的端…...

【2024年华为OD机试】 (B卷,100分)- 金字塔,BOSS的收入(Java JS PythonC/C++)

一、问题描述 微商模式收入计算 题目描述 微商模式中,下级每赚 100 元就要上交 15 元。给定每个级别的收入,求出金字塔尖上的人的收入。 输入描述 第一行输入 N,表示有 N 个代理商上下级关系。接下来输入 N 行,每行三个数&am…...

缓存、数据库双写一致性解决方案

双写一致性问题的核心是确保数据库和缓存之间的数据同步,以避免缓存与数据库数据不同步的问题,尤其是在高并发和异步环境下。本文将探讨双写一致性面临的主要问题和解决方案,重点关注最终一致性。 本文讨论的是最终一致性问题 双写一致性面…...

开放银行数据保护与合规实践案例

总体原则 开放银行的数据处理基本原则指的是数据处理者在数据生命周期的各阶段进行各种数 据处理时均应遵循的根本准则,是指导监管机构制定规范、进行管理以及开放银行进 行具体数据处理行为的纲领。根据《民法典》《个人信息保护法》《数据安全法》 《网络安全法…...

51c自动驾驶~合集47

我自己的原文哦~ https://blog.51cto.com/whaosoft/13083194 #DreamDrive 性能爆拉30%!英伟达:时空一致下的生成重建大一统新方案~ 从自车的驾驶轨迹中生成真实的视觉图像是实现自动驾驶模型可扩展训练的关键一步。基于重建的方法从log中生成3D场景…...

2024年AI与大数据技术趋势洞察:跨领域创新与社会变革

目录 引言 技术洞察 1. 大模型技术的创新与开源推动 2. AI Agent 智能体平台技术 3. 多模态技术的兴起:跨领域应用的新风口 4. 强化学习与推荐系统:智能化决策的底层驱动 5. 开源工具与平台的快速发展:赋能技术创新 6. 技术安全与伦理:AI技术的双刃剑 7. 跨领域技…...

【protobuf】二、proto3语法详解①

文章目录 前言Ⅰ. 字段规则Ⅱ. 消息类型的定义和使用1、定义2、使用1️⃣消息类型可作为字段类型使⽤2️⃣可导入其他 .proto 文件的消息并使用 -- import 3、创建通讯录 2.0 版本的 .proto 文件4、通讯录 2.0 版本的读写实现 -- 第一种验证方式5、decode选项 -- 第二种验证方式…...

React 中hooks之useLayoutEffect 用法总结以及与useEffect的区别

React useLayoutEffect 1. useLayoutEffect 基本概念 useLayoutEffect 是 React 的一个 Hook,它的函数签名与 useEffect 完全相同,但它会在所有的 DOM 变更之后同步调用 effect。它可以用来读取 DOM 布局并同步触发重渲染。 2. useLayoutEffect vs us…...

实战经验:使用 Python 的 PyPDF 进行 PDF 操作

文章目录 1. 为什么选择 PyPDF?2. 安装 PyPDF3. PDF 文件的合并与拆分3.1 合并 PDF 文件3.2 拆分 PDF 文件 4. 提取 PDF 文本5. 修改 PDF 元信息6. PDF 加密与解密6.1 加密 PDF6.2 解密 PDF 7. 页面旋转与裁剪7.1 旋转页面7.2 裁剪页面 8. 实战经验总结 PDF 是一种非…...

数据结构与算法之排序: LeetCode 15. 三数之和 (Ts版)

三数之和 https://leetcode.cn/problems/3sum/description/ 描述 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0请你返回所有和为 0 且不重复的三元…...

51c嵌入式~单片机~合集6

我自己的原文哦~ https://blog.51cto.com/whaosoft/13127816 一、STM32单片机的知识点总结 本文将以STM32F10x为例,对标准库开发进行概览。主要分为三块内容: STM32系统结构寄存器通过点灯案例,详解如何基于标准库构建STM32工程 STM3…...

SQL Server Management Studio 表内数据查询与删除指令

查询指令 //select * from 表名称 where 列名称 数据名称 select * from Card_Info where num CC3D4D删除指令,删除数据库有风险,操作不可逆,建议删除前备份,以免删错。 //Delete * from 表名称 where 列名称 数据名称 Delete f…...

Timesheet.js - 轻松打造炫酷时间表

Timesheet.js - 轻松打造炫酷时间表 前言 在现代网页设计中,时间表是一个常见的元素,用于展示项目进度、历史事件、个人经历等信息。 然而,创建一个既美观又功能强大的时间表并非易事。 幸运的是,Timesheet.js 这款神奇的 Java…...

产品经理面试题总结2025【其一】

一、产品理解与定位 1、你如何理解产品经理这个角色? 作为一名互联网产品经理,我理解这个角色的核心在于成为产品愿景的制定者和执行的推动者。具体来说,产品经理是连接市场、用户和技术团队之间的桥梁,负责理解市场需求、用户痛…...

第16章:Python TDD实现多币种货币运算

写在前面 这本书是我们老板推荐过的,我在《价值心法》的推荐书单里也看到了它。用了一段时间 Cursor 软件后,我突然思考,对于测试开发工程师来说,什么才更有价值呢?如何让 AI 工具更好地辅助自己写代码,或许…...

【Web】2025-SUCTF个人wp

目录 SU_blog SU_photogallery SU_POP SU_blog 先是注册功能覆盖admin账号 以admin身份登录,拿到读文件的权限 ./article?filearticles/..././..././..././..././..././..././etc/passwd ./article?filearticles/..././..././..././..././..././..././proc/1…...

C++实现矩阵Matrix类 实现基本运算

本系列文章致力于实现“手搓有限元,干翻Ansys的目标”,基本框架为前端显示使用QT实现交互,后端计算采用Visual Studio C。 目录 Matrix类 1、public function 1.1、构造函数与析构函数 1.2、获取矩阵数值 1.3、设置矩阵 1.4、矩阵转置…...

【GORM】初探gorm模型,字段标签与go案例

GORM是什么? GORM 是一个Go 语言 ORM(对象关系映射)库,它让我们可以使用结构体来操作数据库,而无需编写SQL 语句 GORM 模型与字段标签详解 在 GORM 中,模型是数据库表的抽象表示,字段标签&am…...

html全局遮罩,通过websocket来实现实时发布公告

1.index.html代码示例 <div id"websocket" style"display:none;position: absolute;color:red;background-color: black;width: 100%;height: 100%;z-index: 100; opacity: 0.9; padding-top: 30%;padding-left: 30%; padding-border:1px; "onclick&q…...

基于VSCode+CMake+debootstrap搭建Ubuntu交叉编译开发环境

基于VSCodeCMakedebootstrap搭建Ubuntu交叉编译开发环境 1 基于debootstrap搭建目标系统环境1.1 安装必要软件包1.2 创建sysroot目录1.3 运行debootstrap1.4 挂载必要的虚拟文件系统1.5 复制 QEMU 静态二进制文件1.6 进入目标系统1.7 使用目标系统&#xff08;以安装zlog为例&a…...

C#中System.Text.Json:从入门到精通的实用指南

一、引言 在当今数字化时代&#xff0c;数据的高效交换与处理成为软件开发的核心环节。JSON&#xff08;JavaScript Object Notation&#xff09;凭借其简洁、轻量且易于读写的特性&#xff0c;已然成为数据交换领域的中流砥柱。无论是前后端数据交互&#xff0c;还是配置文件…...

【深度学习】Huber Loss详解

文章目录 1. Huber Loss 原理详解2. Pytorch 代码详解3.与 MSELoss、MAELoss 区别及各自优缺点3.1 MSELoss 均方误差损失3.2 MAELoss 平均绝对误差损失3.3 Huber Loss 4. 总结4.1 优化平滑4.2 梯度较好4.3 为什么说 MSE 是平滑的 1. Huber Loss 原理详解 Huber Loss 是一种结合…...

Maven下载配置

目录 Win下载配置maven的环境变量 Mac下载安装配置环境变量 MavenSetting.xml文件配置 Win 下载 https://maven.apache.org/ 在主页面点击Download 点击archives 最好不要下载使用新版本&#xff0c;我使用的是maven-3.6.3&#xff0c;我们点击页面下方的archives&#xff0…...

JS基础(5):运算符和语句

一.运算符 1.赋值运算符 加减乘除都是一样的&#xff0c;&#xff0c;-&#xff0c;*&#xff0c;/ 2.一元运算符&#xff1a;经常用来计数 自增&#xff1a; 每次只能加一 自减&#xff1a;-- 前置自增 后置自增 结…...

游戏引擎学习第81天

仓库:https://gitee.com/mrxiao_com/2d_game_2 或许我们应该尝试在地面上添加一些绘图 在这段时间的工作中&#xff0c;讨论了如何改进地面渲染的问题。虽然之前并没有专注于渲染部分&#xff0c;因为当时主要的工作重心不在这里&#xff0c;但在实现过程中&#xff0c;发现地…...

网络安全 | 什么是正向代理和反向代理?

关注&#xff1a;CodingTechWork 引言 在现代网络架构中&#xff0c;代理服务器扮演着重要的角色。它们在客户端和服务器之间充当中介&#xff0c;帮助管理、保护和优化数据流。根据代理的工作方向和用途&#xff0c;代理服务器可分为正向代理和反向代理。本文将深入探讨这两种…...

前缀和——模板 二维前缀和

一.题目描述 【模板】二维前缀和_牛客题霸_牛客网 二.题目解析 这道题和上一道题有点异曲同工之妙。输入一个m行n列的矩阵&#xff0c;然后进行q次操作&#xff0c;每次操作输入4个数&#xff0c;作为两个点的坐标&#xff0c;计算这两个点为对角线的矩阵的和。 三.算法原理 …...

oracle使用case when报错ORA-12704字符集不匹配原因分析及解决方法

问题概述 使用oracle的case when函数时&#xff0c;报错提示ORA-12704字符集不匹配&#xff0c;如下图&#xff0c;接下来分析报错原因并提出解决方法。 样例演示 现在有一个TESTTABLE表&#xff0c;本表包含的字段如下图所示&#xff0c;COL01字段是NVARCHAR2类型&#xff0…...

高等数学学习笔记 ☞ 定积分与积分公式

1. 定积分的基本概念 1.1 定积分的定义 1. 定义&#xff1a;设函数在闭区间上有界。在闭区间上任意插入若干个分点&#xff0c;即&#xff0c; 此时每个小区间的长度记作(不一定是等分的)。然后在每个小区间上任意取&#xff0c;对应的函数值为。 为保证每段的值(即矩形面积)无…...

MLMs之Agent:Phidata的简介、安装和使用方法、案例应用之详细攻略

MLMs之Agent&#xff1a;Phidata的简介、安装和使用方法、案例应用之详细攻略 目录 Phidata简介 Phidata安装和使用方法 1、安装 2、使用方法 (1)、认证 (2)、创建 Agent (3)、运行 Agent (4)、Agent Playground Phidata 案例应用 1、多工具 Agent 2、多模态 Agent …...

如何在不暴露MinIO地址的情况下,用Spring Boot与KKFileView实现文件预览

在现代Web应用中&#xff0c;文件预览是一项常见且重要的功能。它允许用户在不上传或下载文件的情况下&#xff0c;直接在浏览器中查看文件内容。然而&#xff0c;直接将文件存储服务&#xff08;如MinIO&#xff09;暴露给前端可能会带来安全风险。本文将介绍如何在不暴露MinI…...

ESP8266固件烧录

一、烧录原理 1、引脚布局 2、引脚定义 3、尺寸封装 4、环境要求 5、接线方式 ESP8266系列模块集成了高速GPI0和外围接口&#xff0c;这可能会导致严重的开关噪声。如果某些应用需要高功率和EMI特性&#xff0c;建议在数字I/0线上串联10到100欧姆。这可以在切换电源时抑制过冲…...

Python 模拟真人鼠标轨迹算法 - 防止游戏检测

一.简介 鼠标轨迹算法是一种模拟人类鼠标操作的程序&#xff0c;它能够模拟出自然而真实的鼠标移动路径。 鼠标轨迹算法的底层实现采用C/C语言&#xff0c;原因在于C/C提供了高性能的执行能力和直接访问操作系统底层资源的能力。 鼠标轨迹算法具有以下优势&#xff1a; 模拟…...

三天急速通关Java基础知识:Day1 基本语法

三天急速通关JAVA基础知识&#xff1a;Day1 基本语法 0 文章说明1 关键字 Keywords2 注释 Comments2.1 单行注释2.2 多行注释2.3 文档注释 3 数据类型 Data Types3.1 基本数据类型3.2 引用数据类型 4 变量与常量 Variables and Constant5 运算符 Operators6 字符串 String7 输入…...

免费使用 Adobe 和 JetBrains 软件的秘密

今天想和大家聊聊如何利用 Edu 教育邮箱免费使用 Photoshop、Illustrator 等 Adobe 系列软件&#xff0c;以及 JetBrains 开发工具。 首先&#xff0c;Adobe 的软件是设计师的必备工具。无论是处理图像的 Photoshop&#xff0c;还是进行矢量设计的 Illustrator&#xff0c;它们…...

Pytorch 自学笔记(三):利用自定义文本数据集构建Dataset和DataLoader

Pytorch 自学笔记&#xff08;三&#xff09; 1. Dataset与DataLoader1.1 torch.utils.data.Dataset1.2 torch.utils.data.DataLoader Pytorch 自学笔记系列的第三篇。针对Pytorch的Dataset和DataLoader进行简单的介绍&#xff0c;同时&#xff0c;介绍如何使用自定义文本数据集…...

gradle项目的创建和基本结构简介

文章目录 创建gradle项目&#xff08;命令行&#xff09;创建gradle项目&#xff08;IDEA&#xff09;项目基本结构和功能Gradle 构建流程测试类体验 创建gradle项目&#xff08;命令行&#xff09; yangMacdeMac-mini gradleStudy % gradle init Starting a Gradle Daemon (s…...

wow-agent---Day3 Zigent 智能代理开发框架

这个框架是课程讲解的&#xff0c;但资料比较少&#xff0c;觉得框架比较小众&#xff0c;所以这里只分析代码&#xff0c;打算把更多的精力放在metagpt的学习上&#xff0c;毕竟还是要学教为主流的框架&#xff0c;这对后续维护升级都有帮助&#xff0c;当然感兴趣作为研究&am…...

python 入门

1. Python 概述 1.1 简介 python 是一种面向对象的解释型编程语言&#xff0c;由吉多范罗苏姆开发&#xff1b; 1991 年&#xff0c;公开发行版发布&#xff1b; 因其可以将其他语言制作的模块轻松联接在一起&#xff0c;又被称作胶水语言&#xff1b; 1.2 优点 简单易学&…...

sentinel微服务保护

学习链接 SpringCloudRabbitMQDockerRedis搜索分布式 文章目录 学习链接1.初识Sentinel1.1.雪崩问题及解决方案1.1.1.雪崩问题1.1.2.超时处理1.1.3.仓壁模式1.1.4.断路器1.1.5.限流1.1.6.总结 1.2.服务保护技术对比1.3.Sentinel介绍和安装1.3.1.初识Sentinel官网地址github地址…...

接口测试Day10-封装IHRM登录

-登录接口 普通方式实现 登录接口对象层 思路&#xff1a; 动态变化的&#xff0c;写入参数固定不变&#xff0c;直接写到方法实现内响应结果&#xff0c;通过返回值 return 分析&#xff1a; 封装实现&#xff1a; 登录接口测试用例层 封装断言方法 1、创建 文件 assert_uti…...

什么是IP地址、子网掩码、网关、DNS

简单解释 IP地址在网络中用于标识一个节点(或者网络设备的接口) IP地址用于IP报文在网络中的寻址 一个IPv4地址有32 bit。 IPv4地址通常采用“点分十进制”表示。 IPv4地址范围:0.0.0.0~255.255.255.255 网络部分:用来标识一个网络&#xff0c;代表IP地址所属网络。 主机部分:…...

python编程-OpenCV(图像读写-图像处理-图像滤波-角点检测-边缘检测)角点检测

角点检测&#xff08;Corner Detection&#xff09;是计算机视觉和图像处理中重要的步骤&#xff0c;主要用于提取图像中的关键特征&#xff0c;以便进行后续的任务&#xff0c;比如图像匹配、物体识别、运动跟踪等。下面介绍几种常用的角点检测方法及其应用。 1. Harris角点检…...

软路由系统iStoreOS 一键安装 docker compose

一键安装命令 大家好&#xff01;今天我来分享一个快速安装 docker-compose 的方法。以下是我常用的命令&#xff0c;当前版本是 V2.32.4。如果你需要最新版本&#xff0c;可以查看获取docker compose最新版本号 部分&#xff0c;获取最新版本号后替换命令中的版本号即可。 w…...