<机器学习初识>——《机器学习》

目录

一、人工智能概述

1 人工智能应用场景

2 人工智能发展必备三要素

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

二、人工智能发展历程

1 人工智能的起源

1.1 图灵测试

1.2 达特茅斯会议

2 发展历程

三、 人工智能主要分支

1 主要分支介绍

1.1 分支一:计算机视觉

1.2 分支二:语音识别

1.3 分支三:文本挖掘/分类

1.4 分支四:机器翻译

1.5 分支五:机器人

四、机器学习工作流程

1 什么是机器学习

2 机器学习工作流程

2.1 获取到的数据集介绍

2.2 数据基本处理

2.3 特征工程

2.3.1什么是特征工程

2.3.2 特征工程包含内容

五、机器学习算法分类

1 监督学习

2 无监督学习

3 半监督学习

4 强化学习

5 小结

 六、模型评估

1 分类模型评估

2 回归模型评估

3 拟合


一、人工智能概述

1 人工智能应用场景

人工智能发展必备三要素

  • 数据
  • 算法
  • 计算力 

        CPU,GPU,TPU

计算力之CPUGPU对比:
  • CPU主要适合I\O密集型的任务
  • GPU主要适合计算密集型任务
1)计算密集型的程序。
所谓计算密集型 (Compute-intensive) 的程序,就是其大部分运行时间花在了寄存器运算上,寄存器的速度和处理器的速度相当,从寄存器读写数据几乎没有延时。可以做一下对比,读内存的延迟大概是几百个时钟周期;读硬盘的速度就不说了,即便是SSD, 也实在是太慢了。
2)易于并行的程序。
GPU 其实是一种 SIMD(Single Instruction Multiple Data) 架构, 他有成百上千个核,每一个核在同一时间最好能做同样的事情。

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

人工智能和机器学习,深度学习的关系:
  • 机器学习是人工智能的一个实现途径
  • 深度学习是机器学习的一个方法发展而来

二、人工智能发展历程

1 人工智能的起源

1.1 图灵测试

测试者与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测试者随意提问。
多次测试(一般为 5min 之内),如果有超过 30% 的测试者不能确定被测试者是人还是机器,那么这台机器就通过了测试,并被认为具有人类智能。

1.2 达特茅斯会议

1956 8 月,在美国汉诺斯小镇宁静的达特茅斯学院中,
约翰 · 麦卡锡( John McCarthy
马文 · 闵斯基( Marvin Minsky ,人工智能与认知学专家)
克劳德 · 香农( Claude Shannon ,信息论的创始人)
艾伦 · 纽厄尔( Allen Newell ,计算机科学家)
赫伯特 · 西蒙( Herbert Simon ,诺贝尔经济学奖得主)等科学家正聚在一起,讨论着一个完全不食人间烟火的主题:
用机器来模仿人类学习以及其他方面的智能。
会议足足开了两个月的时间,虽然大家没有达成普遍的共识,但是却为会议讨论的内容起了一个名字: 人工智能
因此, 1956 年也就成为了人工智能元年。

2 发展历程

 

三、 人工智能主要分支

1 主要分支介绍

通讯、感知与行动是现代人工智能的三个关键能力,在这里我们将根据这些能力 / 应用对这三个技术领域进行介绍:
  • 计算机视觉(CV)
  • 自然语言处理(NLP)
       在 NLP 领域中,将覆盖文本挖掘 / 分类、机器翻译和语音识别。
  • 机器人

1.1 分支一:计算机视觉

计算机视觉 (CV) 是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。物体检测和人脸识别是其比较成功的研究领域。

1.2 分支二:语音识别

语音识别是指识别语音 ( 说出的语言 ) 并将其转换成对应文本的技术。相反的任务 ( 文本转语音 /TTS) 也是这一领域内一个类似的研究主题。

1.3 分支三:文本挖掘/分类

这里的文本挖掘主要是指文本分类,该技术可用于理解、组织和分类结构化或非结构化文本文档。其涵盖的主要任务有句法分析、情绪分析和垃圾信息检测。

1.4 分支四:机器翻译

机器翻译 (MT) 是利用机器的力量自动将一种自然语言 ( 源语言 ) 的文本翻译成另一种语言 ( 目标语言 )

1.5 分支五:机器人

机器人学 (Robotics) 研究的是机器人的设计、制造、运作和应用,以及控制它们的计算机系统、传感反馈和信息处理。
机器人可以分成两大类 : 固定机器人和移动机器人。固定机器人通常被用于工业生产 ( 比如用于装配线 ) 。常见的移动机器人应用有货运机器人、空中机器人和自动载具。机器人需要不同部件和系统的协作才能实现最优的作业。其中在硬件上包含传感器、反应器和控制器;另外还有能够实现感知能力的软件,比如定位、地图测绘和目标识别。

四、机器学习工作流程

1 什么是机器学习

机器学习是从数据中自动分析获得模型,并利用模型对未知数据进行预测。
 

2 机器学习工作流程

机器学习工作流程总结:
1. 获取数据
2. 数据基本处理
3. 特征工程
4. 机器学习 ( 模型训练 )
5. 模型评估
  • 结果达到要求,上线服务
  • 没有达到要求,重新上面步骤

2.1 获取到的数据集介绍

2.2 数据基本处理

即对数据进行缺失值、去除异常值等处理

2.3 特征工程

2.3.1什么是特征工程

特征工程是使用专业背景知识和技巧处理数据,使得特征能在机器学习算法上发挥更好的作用的过程。
意义:会直接影响机器学习的效果

2.3.2 特征工程包含内容

  • 特征提取:将任意数据(如文本或图像)转换为可用于机器学习的数字特征
  • 特征预处理:通过一些转换函数将特征数据转换成更加适合算法模型的特征数据过程
  • 特征降维:指在某些限定条件下,降低随机变量(特征)个数,得到一组不相关主变量的过程

五、机器学习算法分类

根据数据集组成不同,可以把机器学习算法分为:
  • 监督学习
  • 无监督学习
  • 半监督学习
  • 强化学习

1 监督学习

定义:
输入数据是由输入特征值和目标值所组成。
  • 函数的输出可以是一个连续的值(称为回归),
  • 或是输出是有限个离散值(称作分类)。

2 无监督学习

定义:
输入数据是由输入特征值组成,没有目标值
  • 输入数据没有被标记,也没有确定的结果。样本数据类别未知;
  • 需要根据样本间的相似性对样本集进行类别划分。
有监督,无监督算法对比:

3 半监督学习

定义:
训练集同时包含有标记样本数据和未标记样本数据。

4 强化学习

定义:
实质是 make decisions 问题,即自动进行决策,并且可以做连续决策。
监督学习和强化学习的对比:

5 小结

 六、模型评估

模型评估是模型开发过程不可或缺的一部分。它有助于发现表达数据的最佳模型和所选模型将来工作的性能如何。
按照数据集的目标值不同,可以把模型评估分为分类模型评估和回归模型评估。

1 分类模型评估

2 回归模型评估

均方根误差( Root Mean Squared Error RMSE
其他评价指标:相对平方误差( Relative Squared Error RSE )、平均绝对误差( Mean Absolute Error MAE) 、相对绝对误差(Relative Absolute Error RAE)

3 拟合

模型评估用于评价训练好的的模型的表现效果,其表现效果大致可以分为两类:过拟合、欠拟合

  • 欠拟合(under-fitting:模型学习的太过粗糙,连训练集中的样本数据特征关系都没有学出来。
  • 过拟合(over-fitting):所建的机器学习模型或者是深度学习模型在训练样本中表现得过于优越,导致在测试数据集中表现不佳。

 后记:
●本博客基于B站开源学习资源,是作者学习的笔记记录,仅用于学习交流,不做任何商业用途! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/452956.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

STM32点亮LED灯与蜂鸣器发声

STM32之GPIO GPIO在输出模式时可以控制端口输出高低电平,用以驱动Led蜂鸣器等外设,以及模拟通信协议输出时序等。 输入模式时可以读取端口的高低电平或电压,用于读取按键输入,外接模块电平信号输入,ADC电压采集灯 GP…

基于Springboot的驾校预约学习系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的驾校预约学习系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构…

ubuntu2004桌面系统英伟达显卡驱动安装方法

#如何查看显卡型号 lspci | grep -i vga#----output------ 01:00.0 VGA compatible controller: NVIDIA Corporation Device 1f06 (rev a1)根据 Device 后的 值 进入网站查询 pci-ids.ucw.cz/mods/PC/10de?actionhelp?helppci #根据显卡型号,下载对应系统的驱动…

C++ 作业 24/3/12

1、自己封装一个矩形类(Rect)&#xff0c;拥有私有属性:宽度(width)、高度(height),定义公有成员函数: 初始化函数:void init(int w, int h)更改宽度的函数:set_w(int w)更改高度的函数:set_h(int h) 输出该矩形的周长和面积函数:void show() #include <iostream>using …

一劳永逸的方法解决:LNK1168无法打开 xxx.exe 进行写入 报错问题

这种错误的产生原因&#xff1a; 运行程序退出不是按正常流退出&#xff0c;是按窗口右上角的 “X” 来关闭程序&#xff0c;但是后台的xxx.exe控制台程序还在运行&#xff1b;修改程序的代码后再运行&#xff0c;就会报LNK1168的错误&#xff1b; 报错示例&#xff1a; 解决方…

【嵌入式学习】C++day03.12

一、思维导图 二、练习 #include <iostream>using namespace std;class Rect {int width;int height; public:void init(int w,int h){widthw;heighth;}void set_w(int w){widthw;}void set_h(int h){heighth;}void show(){int per2*(widthheight);int areawidth*height;…

通过el-select选择器和el-tree树形结构二次封装(vue2+elementUI),开发element-plus的TreeSelect树形选择器

需求&#xff1a; 领导看我在另一个vue3项目的el-tree-select挺好的&#xff0c;叫我移入vue2的项目中。 但是vue2版本的elementUI&#xff0c;并没有这个组件&#xff0c;所以只能自己找&#xff0c;找半天找不到和它差不多的&#xff0c;通过网友写的组件改写的 参考链接&…

手势学习

1. 点击手势 Composable fun ClickableSample() {val number remember {mutableStateOf(0)}Text(text number.value.toString(),textAlign TextAlign.Center,modifier Modifier.wrapContentSize().clickable {number.value}.background(Color.LightGray).padding(horizonta…

软件I2C读写MPU6050

文章目录 前言本次线路图封装I2C时序封装MPU6050,配置寄存器最后在主函数进行显示 前言 本片文章开始进行I2C在STM32的直接操作&#xff0c;理解时序的代码实现&#xff0c;理解对寄存器的配置&#xff0c;使用I2C读写MPU6050&#xff0c;读取MPU6050的各轴数据。 MPU6050详解…

vue 自定义组件绑定model+弹出选择支持上下按键选择

参考地址v-modelhttps://v2.cn.vuejs.org/v2/guide/components-custom-events.html#%E8%87%AA%E5%AE%9A%E4%B9%89%E7%BB%84%E4%BB%B6%E7%9A%84-v-model 原文代码 Vue.component(base-checkbox, {model: {prop: checked,event: change},props: {checked: Boolean},template: `…

Java异常分类(二)

RuntimeException 运行时异常&#xff1a; 派生于 RuntimeException 的异常&#xff0c;如被 0 除、数组下标越界、空指针等&#xff0c;其产生比较频繁&#xff0c;处理麻烦&#xff0c;如果显式的声明或捕获将会对程序可读性和运行效率影响很大。因此由系统自动检测并将它们交…

Caffeine缓存

本地缓存基于本地环境的内存&#xff0c;访问速度非常快&#xff0c;对于一些变更频率低、实时性要求低的数据&#xff0c;可以放在本地缓存中&#xff0c;提升访问速度 使用本地缓存能够减少和Redis类的远程缓存间的数据交互&#xff0c;减少网络 I/O 开销&#xff0c;降低这…

使用EasyRec快速构建推荐模型

随着移动app的普及&#xff0c;个性化推荐和广告成为很多app不可或缺的一部分。他们在改善用户体验和提升app的收益方面带来了巨大的提升。深度学习在搜广推领域的应用也已经非常深入&#xff0c;并且给各种场景的效果带来了巨大的提升。针对推荐流程的各个阶段&#xff0c;业界…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的石头剪刀布手势识别系统详解(深度学习模型+UI界面代码+训练数据集)

摘要&#xff1a;本篇博客深入探讨了使用深度学习技术开发石头剪刀布手势识别系统的过程&#xff0c;并分享了完整代码。该系统利用先进的YOLOv8、YOLOv7、YOLOv6、YOLOv5算法&#xff0c;并对这几个版本进行性能对比&#xff0c;如mAP、F1 Score等关键指标。文章详细阐述了YOL…

【算法题解】Java算法题目解析

1. 数字三角形 import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scan new Scanner(System.in);int n scan.nextInt();int[][] dp new int[n 1][n 1];int max 0;for (int i 1; i < dp.length; i) {for (int j 1; j &l…

Android 生成SO - 基础工程创建

最近需要给小伙伴扫盲一下如何使用Android Studio 生成一个SO文件&#xff0c;网上找了很多都没有合适的样例&#xff0c;那只能自己来写一个了。 原先生成SO是一个很麻烦的事情&#xff0c;现在Android Studio帮忙做了很多的事情&#xff0c;基本只要管好自己的C代码即可。 …

第2篇【Docker项目实战】使用Docker部署Raneto知识库平台(转载)

【Docker项目实战】使用Docker部署Raneto知识库平台 一、Raneto介绍 1.1 Raneto简介 Raneto是一个免费、开放、简单的 Markdown 支持的 Node.js 知识库。 1.2 知识库介绍 知识库 知识库是指存储和组织知识的系统或库&#xff0c;它包括了各种类型的信息和知识&#xff0c;如…

【数学建模】熵权法 Python代码

熵权法是一种客观的赋权方法&#xff0c;它可以靠数据本身得出权重。 依据的原理&#xff1a;指标的变异程度越小&#xff0c;所反映的信息量也越少&#xff0c;其对应的权值也应该越低。 import numpy as np#自定义对数函数mylog&#xff0c;用于处理输入数组中的0元素 def m…

OpenCV和Mediapipe实现摸嘴或鼻检测

目录 引言 1.过程简介 2. 代码结构 2.1 导入库 2.2 初始化模型 2.3 读取视频流或摄像头 2.4 初始化FPS计算 2.5 主循环 2.6 转换BGR图像为RGB图像 2.7 运行姿势检测模型和手部检测模型 2.8 绘制姿势关键点及连接线 2.9 检测手部关键点 2.10 判断手部与鼻子、嘴的相对…

300分钟吃透分布式缓存-28讲:如何构建一个高性能、易扩展的Redis集群?

Redis 集群的分布式方案主要有 3 种。分别是 Client 端分区方案&#xff0c;Proxy 分区方案&#xff0c;以及原生的 Redis Cluster 分区方案。 Client 端分区 Client 端分区方案就是由 Client 决定数据被存储到哪个 Redis 分片&#xff0c;或者由哪个 Redis 分片来获取数据。…