type
status
date
slug
summary
tags
category
icon
password
Property
Apr 25, 2025 12:35 PM
机器学习注重的是基础,一定要夯实基础

1.1 机器学习的定义

我在没学习机器学习之前,我其实已经明白,机器学习的核心,从字面意思去理解,就是让机器学习人类。所以机器学习,学习人类什么东西呢,学习的是人类做决策的能力。按照学科定义,机器学习是一门从数据中研究算法的科学学科。(Machine Learning(ML) is a scientific discipline that deals with the construction and study of algorithms that can learn from data.)机器学习如何做预测呢?根据已有的数据,进行算法选择,并基于算法和数据构建模型,最终对未来进行预测。相当于人类对所遇到事物的一系列规律总结。

1.2 机器学习的理性认识

可以从一些以经验见长的行业窥见这些基础道理,就比如Java工程师,高级Java工程师与初级工程师,在估工时的时候,就能看出来差别,年轻的工程师,估时不够精准,尝尝导致自己加班,很累,而老油条工程师,一般都会多估一些工时,预留处理新增的需求,这就是一种经验基础上导致的决策不同的最常见例子。
所以,要想让机器的做决策的能力更丰富,从上面的例子也能看出来,老工程师经历的更多,所以懂得更多,因此,让机器经过尽可能多的数据建模过程,一点一点与实际目标接近,这个过程可以通过算法优化,最终达成做优良决策的能力。
但是机器学习是有缺陷的,机器学习中是无法找到一个完美的函数f(x)。
因为机器学习,本质上是在通过数据训练的过程,而其实是有局限的。两个显而易见的问题,
数据本身存在局限性:
  • 有限样本:现实中的数据通常是有限的,而完美的f(x) 可能需要无限数据才能准确捕捉所有可能的输入-输出关系。有限样本无法覆盖所有潜在情况,导致模型只能近似真实规律。
  • 噪声和异常值:数据中不可避免存在噪声、测量误差或标注错误,完美拟合这些噪声会导致模型泛化能力下降(过拟合)。
其次,数据存在权重,偏差-方差权衡(Bias-Variance Tradeoff):
  • 高偏差(欠拟合):简单模型可能无法捕捉数据的复杂模式,导致系统性误差。
  • 高方差(过拟合):复杂模型可能过度拟合训练数据中的噪声,在未见数据上表现差。
  • 完美拟合的不可行性:追求零训练误差(如插值所有数据点)通常意味着模型复杂度极高,反而降低泛化性能。

1.3 机器学习概念

首先要清晰的认识到,机器学习,一定是借助于现有的算法的。
 

1.3.1 参数概念

参数:模型内部变量,由训练数据自动学习(如权重、偏置)。

1.3.2 超参数概念

超参数:模型外部控制变量,需手动设置(如学习率、网络结构)。
 
特性
参数(Parameters)
超参数(Hyperparameters)
是否由模型学习
✅ 是(训练时自动调整)
❌ 否(手动设置)
是否影响模型结构
❌ 不影响(仅影响拟合)
✅ 影响(如网络深度、树的数量)
是否依赖数据
❌ 不依赖(仅依赖训练过程)
❌ 不依赖(训练前设定)
调整方式
通过优化算法(如梯度下降)
手动调整或自动化搜索(如网格搜索)
例子
线性回归的 wb,神经网络的权重
KNN中K的取值,学习率、树的深度、正则化系数
超参数与参数之间是有区别的
  • 参数是模型内部变量,用于拟合数据,通常由算法自动优化。
  • 超参数是外部控制变量,影响模型的训练方式和性能,需要人为调整以获得更好的结果。
 

1.4 机器学习之常见应用框架

 

1.5 机器学习之商业场景

模式识别
计算机视觉(人脸)
数据挖掘
统计学习
自然语言处理
语音识别(音色)
回归分析(房价预测)
 

1.6 机器学习应用

数据挖掘 • 计算机视觉 • 自然语言处理 • 生物特征识别 • 搜索引擎 • 医学诊断 • 检测信用卡欺诈
金融风控
量化交易 • 证券市场分析 • DN序列测序 • 语音和手写识别 • 战略游戏 • 机器人

1.7 机器学习和数据挖掘区别与联系

机器学习是数据挖掘的重要工具。
数据挖掘,依赖于机器学习。通过机器学习来分析数据,数据库管理数据。

1.8 机器学习类型

  • 有监督学习
    • 有标注
    • 找的是数据之间的映射关系
根据标注数据的类型进一步将有监督学习分类,标签数据是离散的则为分类任务;标签数据是连续的,则是回归任务。
  • 无监督学习
    • 无标注数据集
    • 推断数据的内在结构
  • 半监督学习
    • 部分有标注数据集
  • 强化学习
    • 激励手段
    • 贪吃蛇,下围棋(分数激励)

1.9 机器学习开发流程

首先是数据收集,数据收集需要自行完成,如果是学习阶段,可以通过第三方数据网站提供,比如阿里的天池大赛,里面有机器学习可参考的免费数据。其次之后,数据不符合要求,要处理,清洗,转换为数值,然后才能纳入计算,预处理之后,对数值数据提取数据特征,再开始进行数据建模,数据建模之后,需要进行评估,评估之后,再进行对应的优化升级。每一个环节都是紧密相关,机器学习开发流程中,数据处理是最占据时间的,大概占据了我们开发的百分之八十的时间。数据处理的重要性可想而知,这就好比那句话:新鲜的食材往往只需要最简单的烹饪方式…好的数据哪怕使用简单的算法也能有良好的反馈,但是如果是较差效果的数据,哪怕是最优的算法,也无法得出想要的效果。
 
所以机器学习的主要流程,核心在于处理用户的数据,基于数据抽取数据特征,构建预测模型,模型优化,最后投入实际生产实践。
 
训练集
测试集
哑编码
训练集构建模型,用测试集评估模型
交叉验证
 
 
准确率
召回率
精准率
F值
 
 
 
机器学习入门篇:数学的基础要求七日减肥循环餐食一览
Loading...
fntp
fntp
多一点兴趣,少一点功利
最新发布
数学基础知识与思考 (一)
2025-5-21
七日减肥循环餐食一览
2025-5-4
作为程序员,最爱的一款字体推荐
2025-5-4
机器学习基础篇(一):机器学习概论
2025-4-25
机器学习入门篇:数学的基础要求
2025-4-17
JUC核心篇(七):线程池底层原理
2025-2-26
公告
📝 博客只为了记录我的学习生涯
😎 我的学习目标是成为一名极客
🤖 我热爱开源当然我也拥抱开源
💌 我期待能收到你的Email留言
📧 我的邮箱:stickpoint@163.com
欢迎交流~