1.机器学习概述

1.1人工智能概述

1.人工智能起源

  图灵测试达特茅斯会议

2 .人工智能、机器学习和深度学习

  垃圾邮件分类属于机器学习,识别物体属于深度学习;
  机器学习是人工智能的一种实现途径;
  深度学习是机器学习的一种方法发展而来

3.主要分支介绍

  1.计算机视觉人脸识别
  2.自然语言处理语音识别语义识别
  3.机器人

4.人工智能发展必备三要素

  1.数据
  2.算发
  3.计算力

5.CPU,GPU

  GPU  --  计算密集型
  CPU  --  IO密集型

1.2机器学习工作流程

1.定义

  数据、自动分析、预测 从数据中自动分析获得模型,并利用模型对位置数据进行预测

2.工作流程

 1.获取数据
 2.数据基本处理
 3.特征工程
 4.机器学习(模型训练)
 5.模型评估    

3.获取数据集介绍

 1.专有名词
     样本 :一行数据称为样本
     特征 :一列数据称为特征       
     目标值(标签值) 、特征值
 2.数据类型构成            
     类型一:特征值+目标值(目标值分为离散和连续)            
     类型二:只有特征值,没有目标值        
 3.数据分割            
     训练数据(训练集)   --  构建模型    --  0.7 - 0.8            
     测试数据(测试集)   --  模型评估    --  0.2 - 0.3
4.数据基本处理            
 对数进行缺失值、去除异常值等处理
5. 特征工程
  1.定义        
     把数据转换为机器更容易识别的数据      
  2.为什么需要特征工程              
     数据和特征决定了机器学习的上限,而模型和算发只是逼近这个上限而已
  3.包含内容            
     特征提取、特征预处理、特征降维
6.机器学习        
   选择合适的算法对模型进行训练
7.模型评估              
   对训练好的模型进行评估  

1.3机器学习算法分类

1. 监督学习 – 有特征值,有目标值

   目标值连续 -- 回归
   目标值离散 -- 分类

2.无监督学习 – 仅有目标值

3.半监督学习

   有特征值,但是一部分数据有目标值,一部分没有

4. 强化学习

   动态过程,上一步数据的输出是下一步数据的输入   
   四要素 : agent , action , environment , reward

1.4模型评估

1. 分类模型评估

   准确率    
   精确率    
   召回率   
   F1 - score    
   AUC指标

2. 回归模型评估

 1. 均方根误差  --  比较误差是相同单位的模型   
 2. 相对平方误差  --  比较误差是不同单位的模型     
 3. 相对绝对误差  --  比较误差是不同单位的模型            
 4. 平均绝对误差  --  比较误差是相同单位的模型    
 5. 决定系数                
      描述了回归模型所揭示的因变量方差在总方差中的比例。很大,即自变量和因变量之间存在线性关系,如果回归模型是“完美的”,SSE为零,则为1。小,则自变量和因变量之间存在线性关系的证据不令人信服。如果回归模型失败,SSE等于SST,没有方差可被回归解释,则为零。        

3. 拟合

    欠拟合        过拟合                 

2.机器学习基础环境安装与使用

2.1Jupyter notebook使用

1. jupyter 定义

  开源的科学计算平台     
  类比ipython      
  可以运行代码,可以做笔记      
  文件后缀: .ipynb

2. jupyter和pycharm 对比

  jupyter   --  探索性数据,一边分析,一边运行      
  pycharm  --  适合逻辑性强的操作(web)

3. Cell

   一对in out 会话被视为一个代码单元,称为cell

4. jupyter两种模式

  编辑模式: 直接点击进去,可以进行编写代码。做笔记      
  命令模式: 通过快捷键,操作

5. 快捷键

  通用:           
    Shift + Enter , 执行本单元代码,并跳转到下一单元           
    ctrl + Enter , 执行本单元代码,留在本单元      
  命令模式:点击ESC+          
    Y , cell切换到code模型          
    M,cell切换到Markdown模式           
    A ,在当前cell的上面添加cell           
    B ,在当前cell的上面添加cell

3.Matplotlib

3.1 Matplotlib之helloword

1.定义

主要用于开发2D图标(3D)     
数据分析,基于分析,进行展示 

2.绘图流程

1.创建画布
2.图像绘制
3.显示图像

3.matplotlib三层结构

容器层   canvas   fiqure   axes
辅助显示层   添加x轴,y轴描述,标题
图像层   绘制什么图像的声明

3.2 折线图(plot)与基础绘图功能

1.图像保存

 plt.savefig()      
 注意:图像保存一定要放到show前面

2.添加x轴,y轴刻度

 plt.xticks      
 plt.yticks    
 注意:第一个参数必须是数字,如果不是数字,需要进行值替换    

3.添加网格

  plt.grid()        
  参数:          linestyle  --  绘制网格的方式         '-'虚线,  ‘--’实线
  Alpha    --  透明度

4.添加描述信息

  plt.xlabel( ' 时间 ' )
  plt.ylabel( ' 温度 ' )
  plt.title( ' 一小时温度变化图 ' ,fontsize = 20 )      
  其中,fontsize 用来改变字体大小

在这里插入图片描述

5.多次plot

   直接进行绘制,在图形绘制中进行添加

在这里插入图片描述

6.显示图例

   plt.legend()
   注意:需要在显示之前,即在图形绘制中的 plot 里面的声明具体值

7.设置图形风格

    颜色字符
        r   --   红色                    c  --   青色
        g  --   绿色                    m --   洋红
        b  --   蓝色                     y --   黄色
        w  --   白色                    k  --  黑色
     风格字符
        -     实现
        - -   虚线
        - .   点划线
         :  点虚线
         ‘ ’   留空、空格

8.多个坐标系图像显示

  fig , axes  =  plt.subplots()
      nrows  --   几行
      nclos   --   几列
      注意:有些方法需要添加 set_

9.折线图应用场景

  1、表示数据变化
  2、绘制一些数学图像

在这里插入图片描述

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐