机器学习---概述(二)
文章目录
1.模型评估
模型评估是机器学习中一个重要的步骤,它用于 确定训练好的机器学习模型的性能和准确性。 当我们训练一个机器学习模型时,我们希望它能在未见过的新数据上表现良好。
模型评估帮助我们估计模型在未知数据上的泛化能力,即它对新样本的预测能力。
1.1 分类模型评估
评估指标:准确率,即预测正确的数占样本总数的比例。
其他评估指标:精确率、召回率、F1-score、AUC指标等
1.2 回归模型评估
评估指标:均方根误差(Root Mean Squared Error,RMSE),RMSE是一个衡量回归模型误差率的常用公式。 不过,它仅能比较误差是相同单位的模型。
例如:
假设上面的房价预测,只有五个样本,对应的
真实值为:100,120,125,230,400
预测值为:105,119,120,230,410
那么使用均方根误差求解得:
其他评价指标:相对平方误差(Relative Squared Error,RSE)、平均绝对误差(Mean Absolute Error,MAE)、相对绝对误差(Relative Absolute Error,RAE)
2. 拟合
在机器学习中,拟合(Fitting)是指通过构建一个模型,使其在训练数据上尽可能地拟合已知的输入与输出之间的关系。当我们说一个模型"拟合"数据时,意味着该模型能够通过学习训练数据中的模式和规律,对未见过的数据做出准确的预测。
拟合的目标是找到一个能够最好地概括数据集特征的模型,以便在新数据上表现良好。这通常涉及选择合适的模型和调整模型的参数,以使模型能够捕捉数据中的结构和趋势。拟合的程度可以通过多种指标来衡量,如均方误差(Mean Squared Error)、交叉熵(Cross Entropy)等。
模型评估用于评价训练好的的模型的表现效果,其表现效果大致可以分为两类:过拟合、欠拟合。
2.1 欠拟合
**欠拟合指模型在训练数据上表现较差,不能很好地捕捉数据中的模式和结构。**通常,欠拟合发生在模型过于简单或不够复杂,无法很好地拟合数据。这样的模型在训练数据和测试数据上都表现不佳,可能由于模型没有充分学习数据中的关键特征。
因为机器学习到的天鹅特征太少了,导致区分标准太粗糙,不能准确识别出天鹅。
欠拟合(under-fitting):模型学习的太过粗糙,连训练集中的样本数据特征关系都没有学出来。
2.2 过拟合
过拟合指模型在训练数据上表现非常好,但在测试数据上表现较差。这意味着模型在训练数据中学到了数据中的噪声和细微差异,导致其对未知数据的预测性能下降。过拟合通常发生在模型过于复杂或训练数据不足的情况下。
机器已经基本能区别天鹅和其他动物了。然后,很不巧机器已学到的天鹅图片全是白天鹅的,会认为天鹅的羽毛都是白的,以后看到羽毛是黑的天鹅就会认为那不是天鹅。
所以过拟合(over-fitting)为所建的机器学习模型或者是深度学习模型在训练样本中表现得过于优越,导致在测试数据集中表现不佳。
2.3 适当拟合
**适当拟合指模型在训练数据上表现良好,并且在测试数据上也能够表现较好。**这样的模型能够捕捉到数据中的关键模式和趋势,能够很好地泛化到未见过的数据。
总结:
欠拟合
学习到的东西太少 模型学习的太过粗糙
过拟合
学习到的东西太多 学习到的特征多,不好泛化
3.深度学习
问题:什么是深度学习
深度学习是机器学习的一种分支,它是建立在人工神经网络(Artificial NeuralNetworks)的基础上,通过多层次的非线性变换来对数据进行建模和学习的一种算法技术。
深度学习的核心思想是模仿人脑的神经网络结构和工作原理。它由多个称为"层"的神经网络组成,每一层都包含许多神经元,这些神经元相互连接并传递信息。信息从输入层经过隐藏层,最终到达输出层,形成了一个端到端的数据处理流程。
在训练阶段,深度学习模型通过输入训练数据,并通过反向传播算法来不断调整网络的参数,以最小化预测结果与真实标签之间的误差(损失函数)。这个过程被称为"训练"模型,其目的是使得模型能够对未见过的数据进行准确预测。
深度学习在机器学习领域取得了很大的成功,尤其是在视觉、语音和自然语言处理等领域。深度学习的强大之处在于它能够自动从原始数据中学习特征表示,不需要手动提取特征。这种自动化的特征学习使得深度学习模型能够处理非常复杂的任务,如图像识别、语音识别、机器翻译等。
深度学习的发展受益于计算能力的提升和大规模数据集的可用性,特别是图形处理单元(GPU)的广泛应用和云计算技术的普及。这些技术为深度学习的训练提供了高效的计算平台,并促进了深度学习在各个领域的应用和研究。
深度学习演示 链接:http://playground.tensorflow.org
在深度学习中,网络结构由多个层次组成,每个层次包含许多神经元。这些层次是深度学习模型的核心组件,负责对输入数据进行处理和转换,最终得到输出结果。
3.1层次(Layers):
在深度学习中,层次是神经网络的基本组成单位。每个层次由若干神经元组成,并负责执行特定的数据转换操作。常见的层次类型包括:
输入层(Input Layer):接收原始输入数据,通常是特征向量或图像数据。
隐藏层(Hidden Layer):位于输入层和输出层之间的层次,用于进行非线性变换和特征提取。深度学习中的"深度"即指隐藏层的层数。
输出层(Output Layer):输出模型的预测结果,通常对于分类任务是类别的概率分布,对于回归任务是实数值。
3.2 神经元(Neurons):
神经元是构成神经网络的基本单元,也被称为"节点"或"单元"。每个神经元接收一组输入,并通过权重和偏置进行计算,然后将结果传递给下一层的神经元。神经元之间的连接权重和偏置是模型的学习参数,通过训练数据进行优化。
3.3 总结
通过层次之间的连接和神经元之间的计算,深度学习模型能够自动从数据中学习特征表示,并用于各种任务,如分类、回归、语义分割、图像生成等。