人工智能之机器学习

admin2024-10-03  11

机器学习概念篇

    • 一 概述
    • 二 分类
    • 三 建模流程
      • 3.1 获取数据
      • 3.2 数据处理
      • 3.3 特征工程
        • 3.3.1 特征提取(必做)
        • 3.3.2 特征预处理(必做)
        • 3.3.3 特征降维(选做)
        • 3.3.4 特征选择(选做)
        • 3.3.5 特征组合(选做)
      • 3.4 模型训练
      • 3.5 模型预测
      • 3.6 模型评估
    • 四 应用领域

大家好!书接上回,这个版块到了人工智能相关.首先和大家介绍的是人工智能中最重要的一个内容—机器学习.小编将从以下四个大的方向和看官老爷娓娓道来…

一 概述

机器学习(Machine Learning)简称ML,是实现人工智能的重要方法.

机器学习‌是一种多领域交叉学科,涉及‌概率论、‌统计学、‌逼近论、‌线性代数、‌高等数学等多门学科。它专门研究计算机如何模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构,从而不断改善自身的性能。它是人工智能的核心,使计算机具有智能的根本途径
机器学习通过使用算法从数据中自动创建模型。它不需要明确编程,而是通过训练数据来学习并做出预测或判断

二 分类

在讲分类前先和客官科普几个名词,它是分析机器学习类型的基础.

# 特征:即描述事务属性的一列数据.

# 样本:描述事务的相关信息的一行数据,通常也叫一条记录.多条样本组成数据集.

# 标签/目标:模型要预测的那一列数据.在训练集中是我们已知的结果,在新数据集中是预测后想要看到的结果.

# 数据集:我们通常把数据集分成两个部分,一部分是训练集,即在训练模型时使用的数据;另一部分是测试集,即在测试数据时使用的数据.通常训练集和测试集的比例为8:2 或者 7:3.

机器学习的具体分类如下:

  • 有监督学习:简单来说就是有特征有标签,它又分两种情况,标签连续我们称为回归任务;标签不连续我们称为分类任务.
  • 无监督学习:简单来说就是有特征无标签,这种学习方式我们根据样本间的相似性采用聚类分析.
  • 半监督学习:此类学习特点是有特征部分有标签,主要目的是降低标注标签成本.
  • 强化学习:简单理解就是根据环境状态进行行动,获得最多累计奖励的过程.这是机器学习下分领域深度学习中的内容(后面会单独介绍).

三 建模流程

3.1 获取数据

通过业务部分获数据,或者自己搜集数据.我们通过Pandas提供的API读取到内存中进行操作.

3.2 数据处理

原始数据中往往存在一些对训练结果不重要和严重影响结果的数据.比如:缺失值/异常值等等 .

  • 缺失值填充处理:

    .fillna(0) # 用固定值0填充缺失值.

    Series对象.fillna(Series对象.mean()) # 用某列的平均值填充.

  • 缺失值删除处理:

    通过.dropna()方法删除占比很小且对结果影响几乎为0 的缺失值.

  • 异常值筛选处理:

    通过filter()过滤出需要的数据.

3.3 特征工程

利用专业背景知识和技巧处理数据, 让机器学习算法效果最好.主要分以下几个部分.

3.3.1 特征提取(必做)

从原始数据中提取与任务相关的特征.此过程往往需要很丰富的经验或者专家参与.有效特征可以让模型训练事半功倍.

3.3.2 特征预处理(必做)

将不同的单位的特征数据转成同一个范围内.解决量纲问题 主要通过归一化和标准化.

  • 归一化:
    • 对原始数据进行变换到【mi,mx】(默认为[0,1])之间
    • 原理(x - min) / (max - min) * (mx -mi) + mi
    • 调用sklearn库的**sklearn.preprocessing.MinMaxScaler()**方法
    • 受最大最小值影响,一般不常用
  • 标准化:
    • 将原始数据转换为均值为0标准差为1的标准正态分布的数据
    • 原理(x - mean) / std
    • 调用sklearn库的**sklearn.preprocessing.StandardScaler()**方法
    • 不易受异常值影响,常用
3.3.3 特征降维(选做)

将原始数据的维度降低,例如x,y,z三维地图=>x,y二维平面图.
注意:会改变原始数据.

3.3.4 特征选择(选做)

从特征中选择出一些重要特征,类似与在集合中选择部分数据形成子集数据.

注意:不会改变原始数据.

3.3.5 特征组合(选做)

把多个特征合并成一个特征.

方式:加法或乘法.

3.4 模型训练

选择合适的算法对模型进行训练,根据不同的任务来选中不同的算法;有监督学习,无监督学习,半监督学习,强化学习等.

具体是通过KNN(K近邻算法)/线性回归算法/逻辑回归算法/决策树/朴素贝叶斯/聚类Kmeans算法等训练模型,内容比较多后面有机会分专题介绍.

3.5 模型预测

x_train # 训练集特征
y_train # 训练集标签
x_test  # 测试集特征
y_test  # 测试集标签

通过分析测试结果数据比例预测模型.
例如knn算法中:预测测试集标签 = knn_model.predict(x_test)

3.6 模型评估

评估效果好上线服务,评估效果不好则重复上述步骤.

分类算法训练的模型评估时参考 准确率.
回归类算法训练的模型评估时参考 MAE, MSE.
聚类算法训练的模型评估时参考 CH, SC.
例如:
方式1:estimator.score(x_test, y_test)    # 直接评估
方式2:accuracy_score(y_test, y_predict)  # 真实值与预测值对比
  

拟合:用来表示模型对样本点的拟合情况.
三种情况:  
    正好拟合:模型对样本点的拟合最好.
    过拟合:模型在训练集上表现很好, 在测试集表现很差.
    # 产生原因:模型太过于复杂, 数据不纯, 训练数据太少,K值过小比如是1.
    欠拟合:模型在训练集上表现很差, 在测试集表现也很差.
    # 模型过于简单或K值过大. 

四 应用领域

说了这么多到底那些地方应用到了机器学习呢?其广泛应用于多个领域,包括但不限于以下几个方面:

  • 医疗:疾病预测、个性化治疗、医学影像分析。
  • 金融:信用评分、风险管理、欺诈检测。
  • 营销:客户细分、推荐系统、情感分析。
  • 交通:自动驾驶汽车、交通流量预测、路线优化。
  • 自然语言处理:机器翻译、聊天机器人、语音识别。
  • 图像处理:人脸识别、物体检测、图像生成。

以上就是要和大家聊的有关机器学习的内容.后面会陆续分享些机器学习训练算法相关内容,感兴趣的小伙伴可以关注.

今天是国庆节,是新中国成立75周年.祝愿我们的祖国繁荣昌盛,人民幸福安康!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明原文出处。如若内容造成侵权/违法违规/事实不符,请联系SD编程学习网:675289112@qq.com进行投诉反馈,一经查实,立即删除!