机器学习基础入门(二)(线性回归与成本函数)

简介: 已知一系列房子的大小以及其对应的价格的数据,要求是已知房子大小预测其房子的价格

线性回归模型

问题

已知一系列房子的大小以及其对应的价格的数据,要求是已知房子大小预测其房子的价格

过程

一、根据已知的房子大小以及其对应的价格数据,画出上图所示的二维散点图

二、根据数据拟合一条直线,让其最接近数据样本,如下图

三、根据拟合出来的直线,将房子大小代入式子,便可预测房子的价格

机器学习模型流程图

注意:

1、y-hat:利用模型求出的预测值

2、y:训练集中的真实值

3、x:待预测的变量

4、f:训练出来的模型

模型f的选择

在线性回归中,我们选择线性函数来作为训练模型如:

简写为:

该模型也称为:单变量线性回归最基础的回归模型)

 

回归和分类比较

1、回归模型可以有无穷多个输出,分类模型的输出值个数是少量且固定的

2、分类模型和回归模型都是监督模型

3、分类模型是特殊的回归模型

机器学习术语

训练集:用来训练模型的数据

模型训练

在得到已知数据并构造散点图后,我们下一步要做的就是在数据中拟合直线。如何知道拟合的直线效果好不好呢?这个时候就要引入成本函数

通过比较不同直线在已知训练数据中成本函数值的大小就可以判断该直线拟合的效果如何

成本函数

介绍

成本函数(损失函数)是衡量模型预测结果与真实标签之间差异的函数

以下是两者的详细介绍:

  • 损失函数(Loss Function):它计算的是单个样本的真实值与预测值之间的误差。在机器学习中,损失函数用于评估模型对于单个数据点的预测性能,常见的损失函数包括平均平方误差、交叉熵损失等。
  • 成本函数(Cost Function):它是在所有训练样本上定义的,通常是指所有样本上的损失函数之和或平均值。成本函数衡量的是整个模型在全部数据集上的表现,通过最小化成本函数来寻找模型参数的最优解。

设计成本函数

1、损失函数就是衡量直线拟合的如何——》拟合好不好就是看预测值和真实值差距大不大

2、得到损失函数: ——》考虑差值有正有负,将损失函数修改为:

3、衡量模型在整合训练集中的误差——》损失函数修改为: (m为训练集数量)

4、考虑到评估训练模型的好坏(客观的量,不受训练集大小影响)——》损失函数修改为: ——》方便后续计算再次修改损失函数为:

5、将损失函数 正式命名为

上面构造出来的成本函数称为:均方误差(MSE)

直观化理解成本函数

成本函数: 是一个关于w,b两个参数的变量

模型f: 是一个关于x的变量

当选定一个w,b就能构造一个模型f,同时计算出模型f的成本函数的值,从而在成本函数图像中确定一个点。当选择更多的w,b时就能画出成本函数的函数图像

左图:由训练集得到的散点图,用于计算成本函数值

                          右图:由每一个参数对应的成本函数值,画出的成本函数的函数图

相关文章
|
7天前
|
机器学习/深度学习 传感器 运维
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
本文探讨了时间序列分析中数据缺失的问题,并通过实际案例展示了如何利用机器学习技术进行缺失值补充。文章构建了一个模拟的能源生产数据集,采用线性回归和决策树回归两种方法进行缺失值补充,并从统计特征、自相关性、趋势和季节性等多个维度进行了详细评估。结果显示,决策树方法在处理复杂非线性模式和保持数据局部特征方面表现更佳,而线性回归方法则适用于简单的线性趋势数据。文章最后总结了两种方法的优劣,并给出了实际应用建议。
32 7
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
|
28天前
|
机器学习/深度学习 PyTorch API
优化注意力层提升 Transformer 模型效率:通过改进注意力机制降低机器学习成本
Transformer架构自2017年被Vaswani等人提出以来,凭借其核心的注意力机制,已成为AI领域的重大突破。该机制允许模型根据任务需求灵活聚焦于输入的不同部分,极大地增强了对复杂语言和结构的理解能力。起初主要应用于自然语言处理,Transformer迅速扩展至语音识别、计算机视觉等多领域,展现出强大的跨学科应用潜力。然而,随着模型规模的增长,注意力层的高计算复杂度成为发展瓶颈。为此,本文探讨了在PyTorch生态系统中优化注意力层的各种技术,
53 6
优化注意力层提升 Transformer 模型效率:通过改进注意力机制降低机器学习成本
|
15天前
|
机器学习/深度学习 人工智能 算法
探索机器学习:从线性回归到深度学习
本文将带领读者从基础的线性回归模型开始,逐步深入到复杂的深度学习网络。我们将通过代码示例,展示如何实现这些算法,并解释其背后的数学原理。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和知识。让我们一起踏上这段激动人心的旅程吧!
|
25天前
|
机器学习/深度学习 数据采集
机器学习入门——使用Scikit-Learn构建分类器
机器学习入门——使用Scikit-Learn构建分类器
|
28天前
|
机器学习/深度学习 人工智能 算法
探索机器学习中的线性回归模型
本文深入探讨了机器学习中广泛使用的线性回归模型,从其基本概念和数学原理出发,逐步引导读者理解模型的构建、训练及评估过程。通过实例分析与代码演示,本文旨在为初学者提供一个清晰的学习路径,帮助他们在实践中更好地应用线性回归模型解决实际问题。
|
29天前
|
机器学习/深度学习 自然语言处理 算法
深入理解机器学习算法:从线性回归到神经网络
深入理解机器学习算法:从线性回归到神经网络
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI的奥秘:机器学习入门指南
【10月更文挑战第30天】本篇文章是一份初学者友好的机器学习入门指南,旨在帮助读者理解并开始实践机器学习。我们将介绍机器学习的基本概念,包括监督学习、无监督学习和强化学习等。我们还将提供一些实用的代码示例,以帮助读者更好地理解和应用这些概念。无论你是编程新手,还是有一定经验的开发者,这篇文章都将为你提供一个清晰的机器学习入门路径。
39 2
|
28天前
|
机器学习/深度学习 数据采集 人工智能
机器学习入门:Python与scikit-learn实战
机器学习入门:Python与scikit-learn实战
38 0
|
1月前
|
机器学习/深度学习 算法 Python
机器学习入门:理解并实现K-近邻算法
机器学习入门:理解并实现K-近邻算法
35 0
|
24天前
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
74 4
下一篇
DataWorks