机器学习/深度学习的相关概念

目录

数字孪生

机器学习

(一)流程

​编辑有监督学习

无监督学习

强化学习

K折交叉验证

(二)模型训练

一、线性回归(linear regression)

二、支持向量机(Support Vector Machine,SVM)

1. 核方法(kernel method)

2. Soft Margin方法:

三、决策树(decision tree)

信息熵

四、集成学习(ensemble learning)

1. Bagging

2. Boosting

3. Bagging和Boosting的区别

(三)评价指标:

深度学习

维数灾难和流形学习的概念

维数灾难(curse of dimension)

流形学习(mainfold learning)    

流程

模型训练的方式

1. 前馈神经网络(Feedforward Neural Network)

2. 卷积神经网络(Convolutional Neural Network,CNN)

3. 循环神经网络(Recurrent Neural Network,RNN)


数字孪生

数字孪生是指通过数字化技术创建的物理实体的数字副本,它可以模拟、预测和优化实际物理实体的行为和性能。

数字孪生系统主要包括物理实体、信息虚体及二者的交互对接。

土木工程CAE是指计算机辅助工程(Computer-Aided Engineering)在土木工程领域的应用。它利用计算机软件和技术来辅助土木工程师进行工程设计、分析和优化。

机器学习

(一)流程

监督学习

是指通过使用带有标签的数据来训练模型,然后利用这些标签来预测未知数据的标签。在有监督学习中,模型会学习输入数据和输出标签之间的关系,从而能够对未知数据进行预测。

-回归算法,通过拟合函数,将输入转化为输出,该输出的结果又无限种输出。

-分类算法,拟合一条分界线,将输入划分为几个固定的类别。

无监督学习

是指使用不带有标签的数据来训练模型,从中发现数据的内在结构和模式。在无监督学习中,模型会尝试找到数据中的规律和关联,而无需事先知道数据的标签。

-聚类算法:将数据自动分组到集群中,应用:浏览器的搜索。

平方误差成本函数:(括号内为计算值与真实值之间的误差)

在进行线性回归时,改变w和b以期得到更小的J。

下图显示f(x)与J(w)之间的关系。根据对f(x)中拟合直线w的不同取值,计算对应的J值。

当有两个参数w和b时,J为3d图,在平面中用等高线来表示J的大小,用xy轴表示wb值。

强化学习

是一种通过与环境交互学习的方法,即代理程序会根据环境的反馈来调整其行为。强化学习的目标是使代理程序学会在特定环境中采取行动以获得最大的累积奖励。

这三种学习方法在不同的问题领域和场景中有着各自的应用。有监督学习通常用于分类和回归问题,无监督学习常用于聚类和降维问题,而强化学习通常用于决策和控制问题。

K折交叉验证

步骤:

  • 将数据集分成K个大小相等的子集。
  • 选择其中一个子集作为验证集,其余K-1个子集作为训练集。
  • 在这K-1个训练集上训练模型,并在验证集上进行验证,得到一个性能度量值(如准确率、精确率、召回率等)。
  • 重复步骤2和步骤3,每次选择不同的子集作为验证集,直到每个子集都被用作验证集。
  • 对K次验证的结果取平均值作为最终的性能度量值。

K折交叉验证的作用包括:

  1. 提供了对模型性能的更准确估计:通过对整个数据集的多次分割和验证,K折交叉验证可以减少因单次数据划分而引入的偶然性,提供更准确的模型性能评估。
  2. 减少过拟合:K折交叉验证可以帮助识别模型是否出现了过拟合或欠拟合的情况。如果模型在每一次验证中表现都很好,那么模型可能过拟合了。
  3. 优化超参数选择:K折交叉验证可以帮助选择最优的超参数,因为可以在不同的验证集上对模型进行评估,从而找到最佳的超参数组合。
  4. 适应于数据不多的情况。

(二)模型训练

一、线性回归(linear regression)

二、支持向量机(Support Vector Machine,SVM)

是一种监督学习算法,用于分类和回归分析。它的主要思想是找到一个最优的超平面,将不同类别的数据点分开。

在支持向量机(SVM)中,核方法和soft margin方法是两个重要的概念。

1. 核方法(kernel method)

核方法是支持向量机中用于处理非线性问题的重要技术。在实际应用中,很多数据集并不是线性可分的,这时可以使用核方法将数据映射到高维空间,使得数据在高维空间中线性可分。常用的核函数包括线性核、多项式核、高斯核等。通过选择合适的核函数,支持向量机可以处理更加复杂的非线性分类问题。

2. Soft Margin方法:

在支持向量机中,通常希望找到一个最优的超平面来分隔不同类别的数据点。然而,在现实世界的数据中,很多时候数据是不完全线性可分的,即使找到一个超平面能够将大部分数据正确分类,仍然会有一些数据点落在错误的一侧。Soft Margin方法允许一些数据点出现在超平面的错误一侧,通过引入惩罚项来平衡分类边界的最大化和错误分类点的数量。这样可以使得模型更加鲁棒,对噪声和异常点的影响较小。(鲁棒性是指模型对于输入数据的变化和噪声的稳健性。)

三、决策树(decision tree)

决策树是一种用于分类和预测的机器学习模型,它通过树状结构来表示不同的决策路径和结果。在决策树中,每个节点代表一个属性或特征,而每个分支代表该属性或特征的取值,最终的叶子节点则代表分类或预测的结果。

信息熵

信息熵是一种用于衡量数据不确定性的指标,它在决策树中被用来选择最佳的属性或特征进行分裂。信息熵的计算基于数据的分布和分类结果的不确定性,通过最小化信息熵来选择最佳的分裂属性,从而构建出更加准确的决策树模型。信息熵越低,表示数据的不确定性越小,决策树模型的预测准确性也会更高。

四、集成学习(ensemble learning)

集成学习是一种通过组合多个模型来提高预测准确性的机器学习方法。Bagging和Boosting是两种常见的集成学习方法。

1. Bagging

 Bagging可以降低模型的方差,提高模型的稳定性和泛化能力,适用于高方差的模型(如决策树)。

Bagging的步骤如下:
1. 从原始数据集中随机抽取多个子集(有放回抽样)。
2. 对每个子集进行训练,得到多个基本模型。
3. 将多个基本模型的预测结果进行平均或投票,得到最终预测结果。

2. Boosting

Boosting可以降低模型的偏差,提高模型的准确性,适用于低偏差的模型(如线性模型)

Boosting的步骤如下:
1. 使用原始数据集训练一个基本模型。
2. 根据基本模型的表现对数据集进行加权,使得之前预测错误的样本在下一轮训练中得到更多关注。
3. 重复上述步骤,得到多个基本模型。
4. 将多个基本模型进行加权组合,得到最终预测结果。

3. Bagging和Boosting的区别

两者的区别主要在于样本的处理方式和基本模型的训练方式:
1. Bagging使用有放回抽样得到多个子集,每个子集上训练独立的基本模型,最终结果通过平均或投票得到;Boosting则是通过加权训练得到多个基本模型,最终结果通过加权组合得到。
2. Bagging的基本模型之间是独立的,Boosting的基本模型是依赖于之前的模型进行训练的。

(三)评价指标:

1. R2、准确率、精准率、召回率、F1值

深度学习

        机器学习是一种通过对数据进行训练来使计算机系统具有学习能力的技术。它依赖于一系列算法和模型来识别模式并做出预测。而深度学习是机器学习的一种特殊形式,它使用人工神经网络来模拟人脑的工作方式,通过多层次的神经元结构来处理和分析数据。

        深度学习通常需要更多的数据和计算资源来训练模型,因为它的模型更加复杂,需要更多的参数和计算量。

维数灾难和流形学习的概念

维数灾难(curse of dimension)

        维数灾难是指在高维空间中进行数据分析和模式识别时所面临的一系列问题。随着数据维度的增加,数据点之间的距离变得越来越远,这会导致数据稀疏性增加,使得传统的机器学习算法在高维空间中变得不够有效。这也会导致需要更多的数据来填充高维空间,而且会增加计算的复杂度和资源消耗。

        对于维数灾难的问题,流形学习是一种用来解决它的方法。

流形学习(mainfold learning)    

        流形学习是一种用来解决维数灾难问题的方法。它假设数据分布在一个低维流形上,即使数据原本是在高维空间中的,流形学习可以通过学习数据的内在结构来降低数据的维度。通过将数据映射到一个更低维的流形空间上,可以减少维数灾难带来的问题,使得数据分析和模式识别更加有效。

        除了流形学习之外,深度学习在一定程度上也可以缓解维数灾难的问题。由于深度学习模型有能力自动地从数据中学习特征和模式,它可以在高维空间中发现数据的内在结构,并将其映射到更低维的表示空间中。

        总的来说,维数灾难是在高维空间中进行数据分析时所面临的问题,而流形学习和深度学习都是可以用来应对维数灾难的方法。流形学习通过降低数据的维度来解决维数灾难问题,而深度学习则能够通过学习数据的内在结构来更好地处理高维数据。

流程

机器学习和深度学习较大的区别在于模型的训练过程 。

模型训练的方式

1. 前馈神经网络(Feedforward Neural Network)

        前馈神经网络是最简单的神经网络类型,也称为多层感知机(Multilayer Perceptron,MLP)。它由输入层、若干个隐藏层和输出层组成,每一层的神经元与下一层的神经元全连接。数据在网络中从输入层开始,逐层传递直到输出层,没有反馈连接。前馈神经网络适用于处理静态数据,如图像分类、文本分类等任务

2. 卷积神经网络(Convolutional Neural Network,CNN)

        CNN是一种专门用于处理二维数据(如图像)的神经网络结构。它引入了卷积层和池化层,通过卷积操作提取图像的局部特征,并通过池化操作减少特征图的维度。CNN在图像识别、目标检测等任务中表现出色。它是计算机图像CV领域的主流网络。

3. 循环神经网络(Recurrent Neural Network,RNN)

        RNN是一种具有循环连接的神经网络结构,可以处理序列数据。RNN的隐藏层的输出会被反馈到自身或下一个时间步,使得网络可以对序列数据进行建模。RNN适用于处理时间序列数据、自然语言处理等任务。

4. 实现

        实现方式上,这三种神经网络都可以通过深度学习框架(如TensorFlow、PyTorch等)来实现。在深度学习框架中,可以使用相应的模块或层来构建前馈神经网络、卷积神经网络和循环神经网络,然后通过反向传播算法进行训练。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值