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

机器学习预备知识


一、机器学习应用领域

1.1 推荐系统

  • 典型案例:移动 APP 推荐功能
  • 核心方法:基于用户行为数据的协同过滤与深度学习

1.2 计算机视觉

  • 应用场景:图像分类、目标检测
  • 关键技术:卷积神经网络(CNN)

1.3 博弈决策

  • 里程碑案例:AlphaGo 围棋系统
  • 核心技术:深度强化学习与蒙特卡洛树搜索

二、核心概念体系

2.1 概念关系图谱

人工智能
机器学习
深度学习
强化学习
神经网络

2.2 关键术语解析

  • 数据集结构
食材新鲜度火候烹饪技术菜肴评价
新鲜偏大熟练中等
不够新鲜适中一般
  • 任务类型
    • 监督学习:分类(离散值)、回归(连续值)
    • 无监督学习:聚类、降维

三、机器学习三要素

3.1 模型架构

F = { f ∣ Y = f ( X ) } 或 F = { P ∣ P ( Y ∣ X ) } \mathcal{F}=\{f\mid Y=f(X)\} \quad \text{或} \quad \mathcal{F}=\{P\mid P(Y\mid X)\} F={fY=f(X)}F={PP(YX)}

3.2 优化策略

损失函数公式:
L = 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) L = \frac{1}{N}\sum_{i=1}^N L(y_i, f(x_i)) + \lambda J(f) L=N1i=1NL(yi,f(xi))+λJ(f)

3.3 求解算法

  • 梯度下降法
  • 牛顿法
  • 拟牛顿法

四、性能评估体系

4.1 分类指标

混淆矩阵示例

预测正预测负
实际正TP=70FN=25
实际负FP=15TN=50

核心指标

  • 准确率:
  • 精确率:
  • 召回率:

4.2 回归指标

指标公式
MAE 1 n ∑ y i − y ^ i \frac{1}{n}\sum y_i-\hat{y}_i n1yiy^i
MSE 1 n ∑ ( y i − y ^ i ) 2 \frac{1}{n}\sum(y_i-\hat{y}_i)^2 n1(yiy^i)2
1 − S S r e s S S t o t 1-\frac{SS_{res}}{SS_{tot}} 1SStotSSres

五、编程实践

5.1 NumPy 基础

import numpy as np
arr = np.array([1,2,3])
print(arr.dtype)  # 输出:int32

5.2 sklearn 建模

from sklearn.datasets import load_iris
from sklearn.linear_model import LogisticRegression

X, y = load_iris(return_X_y=True)
model = LogisticRegression().fit(X, y)
print(model.predict(X[:2]))  # 样本预测

六、实战练习

6.1 手动计算题

给定测试集与预测结果:

y_test = [1,1,0,1,0,0,1,0,1,0,1,0,1,0,1,0,1,1,0,0,1,0,1,1,1,0,0,0,1,0]
y_pred = [1,0,1,1,0,1,1,0,1,0,0,0,1,0,1,0,1,1,0,1,1,1,1,1,1,0,1,0,1,1]

计算步骤

  1. 构建混淆矩阵
  2. 计算 Accuracy/Precision/Recall
  3. 推导 F 1 Score
  4. 估算 AUC 值

6.2 代码验证

from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, roc_auc_score

print(f"Accuracy: {accuracy_score(y_test, y_pred):.2f}")
print(f"AUC: {roc_auc_score(y_test, y_pred):.2f}")

七、延伸思考

  • 如何解决过拟合问题?
  • 特征工程对模型性能的影响
  • 不同优化算法的适用场景

附录:机器学习发展历程时间轴
1950 s:图灵测试提出 → 1980 s:反向传播算法 → 2012:AlexNet 突破 → 2016:AlphaGo 里程碑


相关文章:

  • 门户网站建设检察网站的seo是什么意思
  • wordpress3.8.1下载南宁seo推广公司
  • 网站建设jiqb站推广网站入口
  • 温州网站建设方案维护南宁seo优化公司排名
  • 网站规划的一般步骤百度竞价怎么做效果好
  • 如何搭建网站的结构找合作项目app平台
  • Leetcode1 两数之和 python两种方法实现
  • 基于SpringBoot的绿城郑州爱心公益网站设计与实现现(源码+SQL脚本+LW+部署讲解等)
  • ASP.NET MVC项目部署到IIS后,w3wp.exe程序报错重启
  • 【服务治理中间件】consul介绍和基本原理
  • 《玩转AI大模型:从入门到创新实践》(12)LLM初步(2)
  • C++ final和override
  • Linux上用C++和GCC开发程序实现两个不同PostgreSQL实例下单个数据库中多个Schema稳定高效的数据迁移到其它PostgreSQL实例
  • yarn application命令中各参数的详细解释
  • 物以类聚的Kmeans:数据分群的暴力美学
  • 知识库适配DeepSeek,企业微信支持自动登录,授权支持过期时间设置,zyplayer-doc 2.4.9 发布啦!
  • C语言:整数、浮点数在内存中的存储
  • AWS Glue用Python Shell从Workday系统将人力资源原始数据以Parquet格式存入S3
  • LVS+Keepalived高可用高性能负载实战
  • 【Sql Server】随机查询一条表记录,并重重温回顾下存储过程的封装和使用
  • 计算机毕业设计SpringBoot+Vue.js企业OA管理系统(源码+文档+PPT+讲解)
  • Linux《基础开发工具(上)》
  • Java中的异常处理:选择try-catch还是try-with-resources?
  • 分布式性能压测
  • FREERTOS的三种调度方式
  • 微服务架构实践:SpringCloud与Docker容器化部署