Python 全栈体系【四阶】(四)

news2024/12/24 2:18:54

第四章 机器学习

一、人工智能概述

1. 什么是人工智能

人工智能(Artificial Intelligence)是计算机科学的一个分支学科,主要研究用计算机模拟人的思考方式和行为方式,从而在某些领域代替人进行工作。

2. 人工智能的学科体系

以下是人工智能学科体系图:

在这里插入图片描述

  • 机器学习(Machine Learning):人工智能的一个子学科,研究人工智能领域的基本算法、原理、思想方法,机器学习研究的内容在其它子学科都会用到
  • 计算机视觉(Computer Vision):研究计算机处理、识别、理解图像、视频的相关技术
  • 自然语言处理(Natural Language Processing):研究计算机理解人类自然语言的相关技术
  • 语言处理:研究计算机理解识别、理解、合成语音的相关技术

3. 人工智能与传统软件的区别

传统软件:执行人的指令和想法,在执行之前人已经有了解决方案,无法超越人的思想和认识范围

人工智能:尝试突破人的思想和认识范围,让计算机学习到新的能力,尝试解决传统软件的难题

在这里插入图片描述

二、机器学习基本概念

1. 什么是机器学习

1975 年图灵奖获得者、1978 年诺贝尔经济学奖获得者、著名学者赫伯特.西蒙(Herbert Simon)曾下过一个定义:如果一个系统,能够通过执行某个过程,就此改进了它的性能,那么这个过程就是学习。由此可看出,学习的目的就是改善性能。

卡耐基梅隆大学机器学习和人工智能教授汤姆.米切尔(Tom Mitchell)在他的经典教材《机器学习》中,给出了更为具体的定义:对于某类任务(Task,简称 T)和某项性能评价准则(Performance,简称 P),如果一个计算机在程序 T 上,以 P 作为性能度量,随着经验(Experience,简称 E)的积累,不断自我完善,那么我们称计算机程序从经验 E 中进行了学习。

在这里插入图片描述

例如,篮球运动员投篮训练过程:球员投篮(任务 T),以准确率为性能度量(P),随着不断练习(经验 E),准确率不断提高,这个过程称为学习。

2. 为什么需要机器学习

程序自我升级

解决那些算法过于复杂,甚至没有已知算法的问题

在机器学习的过程中,协助人类获得事物的洞见

3. 机器学习的形式

3.1 建模问题

所谓机器学习,在形式上可近似等同于在数据对象中通过统计、推理的方法,来寻找一个接受特定输入 X,并给出预期输出 Y 功能函数 f,即 Y = f ( x ) Y = f(x) Y=f(x)。这个函数以及确定函数的参数被称为模型。

3.2 评估问题

针对已知的输入,函数给出的输出(预测值)与实际输出(目标值)之间存在一定误差,因此需要构建一个评估体系,根据误差大小判定函数的优劣。

3.3 优化问题

学习的核心在与改善性能,通过数据对算法的反复锤炼,不断提升函数预测的准确性,直至获得能够满足实际需求的最优解,这个过程就是机器学习。

4. 机器学习的分类(重点)

4.1 有监督、无监督、半监督学习
4.1.1 有监督学习

在已知数据输出(经过标注的)的情况下对模型进行训练,根据输出进行调整、优化的学习方式称为有监督学习。

在这里插入图片描述

  • 在训练数据中,有输出数据(类别标签)的为有监督学习。
4.1.2 无监督学习

没有已知输出的情况下,仅仅根据输入信息的相关性,进行类别的划分。

在这里插入图片描述

  • 在训练数据中,没有输出数据(类别标签)的为无监督学习。
4.1.3 半监督

先通过无监督学习划分类别,再人工标记通过有监督学习方式来预测输出.例如先对相似的水果进行聚类,再识别是哪个类别。

在这里插入图片描述

4.1.4 强化学习

通过对不同决策结果的奖励、惩罚,使机器学习系统在经过足够长时间的训练以后,越来越倾向于接近期望结果的输出。

4.2 批量学习、增量学习
4.2.1 批量学习

将学习过程和应用过程分开,用全部训练数据训练模型,然后再在应用场景中进行预测,当预测结果不够理想时,重新回到学习过程,如此循环。

4.2.2 增量学习

将学习过程和应用过程统一起来,在应用的同时,以增量的方式不断学习新的内容,边训练、边预测。

4.3 基于模型学习、基于实例学习
4.3.1 基于模型的学习

根据样本数据,建立用于联系输出和输出的某种数学模型,将待预测输入带入该模型,预测其结果。例如有如下输入输出关系:

输入(x)输出(y)
12
24
36
48

根据数据,得到模型 y = 2 x y = 2x y=2x

预测:输入 9 时,输出是多少?

4.3.2 基于实例的学习

根据以往经验,寻找与待预测输入最接近的样本,以其输出作为预测结果(从数据中心找答案)。例如有如下一组数据:

学历(x1)工作经验(x2)性别(x3)月薪(y)
本科38000
硕士210000
博士215000

预测:本科,3,男 ==> 薪资?

5. 机器学习的一般过程(重点)

5.1 数据收集

手段如手工采集、设备自动化采集、爬虫等

5.2 数据清洗

数据规范、具有较大误差的、没有意义的数据进行清理

  • 注:以上称之为数据处理,包括数据检索、数据挖掘、爬虫…
5.3 选择模型(算法)
5.4 训练模型
5.5 模型评估
5.6 测试模型
  • 注:3~6 步主要是机器学习过程,包括算法、框架、工具等…
5.7 应用模型
5.8 模型维护

6. 机器学习的典型应用

股价预测

推荐算法

自然语言处理

语音处理:语音识别、语音合成

图像识别、人脸识别

……

7. 机器学习的基本问题(重点)

7.1 回归问题

根据已知的输入和输出,寻找某种性能最佳的模型,将未知输出的输入代入模型,得到连续的输出。例如:

  • 根据房屋面积、地段、修建年代以及其它条件预测房屋价格
  • 根据各种外部条件预测某支股票的价格
  • 根据农业、气象等数据预测粮食收成
  • 计算两个人脸的相似度

(预测值为连续值)

7.2 分类问题

根据已知的输入和输出,寻找性能最佳的模型,将未知输出的输入带入模型,得到离散的输出。例如:

  • 手写体识别(10 个类别分类问题)
  • 水果、鲜花、动物识别
  • 工业产品瑕疵检测(良品、次品二分类问题)
  • 识别一个句子表达的情绪(正面、负面、中性)

(预测值为离散值)

7.3 聚类问题

根据已知输入的相似程度,将其划分为不同的群落,例如:

  • 根据一批麦粒的数据,判断哪些属于同一个品种
  • 根据客户在电商网站的浏览和购买历史,判断哪些客户对某件商品感兴趣
  • 判断哪些客户具有更高的相似度
7.4 降维问题

在性能损失尽可能小的情况下,降低数据的复杂度,数据规模缩小都称为降维问题.

8. 机器学习大纲

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Unity-小工具-LookAt

Unity-小工具-LookAt 🥙介绍 🥙介绍 💡通过扩展方法调用 gameObject.LookAtTarget,让物体转向目标位置 💡gameObject.StopLookat 停止更新 💡可以在调用时传入自动停止标记,等转向目标位置后自…

conda环境下ImportError: libmkl_intel_lp64.so.1: cannot open shared object file问题解决

1 问题描述 conda环境下运行模型推理,出现如下错误: (retalking) [rootlocalhost video-retalking]# python inference.py --face examples/face/01.mp4 --audio examples/audio/01.wav --outfile results/01.mp4 Traceback (most recent call last):F…

Fiddler中AutoResponder的简单使用

AutoResponder,自动回复器,用于将 HTTP 请求重定向为指定的返回类型。 这个功能有点像是一个代理转发器,可以将某一请求的响应结果替换成指定的资源,可以是某个页面也可以是某个本地文件 1.使用 打开“Fiddler”,点击…

LeedCode刷题---滑动窗口问题

顾得泉:个人主页 个人专栏:《Linux操作系统》 《C/C》 《LeedCode刷题》 键盘敲烂,年薪百万! 一、长度最小的子数组 题目链接:长度最小的子数组 题目描述 给定一个含有 n 个正整数的数组和一个正整数 target 。…

MySQL执行流程_执行一条select语句,期间发生了什么

文章目录 执行一条select语句,期间发生了什么MySQL执行流程第一步:连接器第二步:查询缓存第三步:解析SQL第四步:执行SQL 执行一条select语句,期间发生了什么 MySQL执行流程 server层负责建立连接、分析和执…

GraphSAGE 到底在训练什么? 图上的Mini-Batch 是怎么训练的 ?

1. 一个端到端的 同构图(Cora数据集)节点分类代码: import argparseimport dgl import dgl.nn as dglnnimport torch import torch.nn as nn import torch.nn.functional as F from dgl import AddSelfLoop from dgl.data import CiteseerGr…

YOLOv8训练好的pt文件如何用来预测

1. 使用原版预测 代码如下: from ultralytics import YOLO# Load a model model YOLO(yolov8n.pt) # load an official model# Predict with the model results model(https://ultralytics.com/images/bus.jpg) # predict on an image命令如下: y…

linux 17day 堡垒机 堡垒机下载 堡垒机安装 堡垒机使用 堡垒机管理服务器 堡垒机管理数据库

目录 堡垒机官网堡垒机下载堡垒机安装堡垒机使用Linux系统上使用web 使用配置站点url配置邮箱创建要管理的服务器创建 特权用户用于管理创建普通用户添加命令过滤命令过滤创建好 之后就需要 给用户名 和管理添加web用户登录 添加数据库mysql 服务区创建用户创建系统用户创建mys…

CRM对小微公司的实际作用:从客户管理到业务拓展

公司作为一个组织,管理方面是重中之重。传统式的人力会是一个较为费时费力的大工程。随着科技的发展,CRM系统完全可以胜任企业管理的工作。那么,CRM有什么特点?对小微公司有哪些作用? 1、提高管理效率 传统的客户管理…

DataFunSummit:2023年数据治理在线峰会-核心PPT资料下载

一、峰会简介 数据治理(Data Governance)是组织中涉及数据使用的一整套管理行为。由企业数据治理部门发起并推行,关于如何制定和实施针对整个企业内部数据的商业应用和技术管理的一系列政策和流程。 数据治理是一个通过一系列信息相关的过程…

MySQL笔记-第09章_子查询

视频链接:【MySQL数据库入门到大牛,mysql安装到优化,百科全书级,全网天花板】 文章目录 第09章_子查询1. 需求分析与问题解决1.1 实际问题1.2 子查询的基本使用1.3 子查询的分类 2. 单行子查询2.1 单行比较操作符2.2 代码示例2.3 …

生化危机5无法启动丢失xlive.dll怎么修复?快速修复教程分享

xlive.dll丢失的5个解决方法与xlive.dll文件丢失原因以及xlive.dll丢失对电脑有什么影响介绍 一、xlive.dll文件丢失原因: 1. 病毒或恶意软件感染:某些病毒或恶意软件会删除或损坏系统文件中的xlive.dll文件,导致其丢失。 2. 误操作&#…

作业12.12

1.闹钟 主函数 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);t new QTimer(this);idstartTimer(1000);speecher new QTextToSpeech(this); }Widget::~Wid…

QML WebEngineView 全屏和退出

作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 在使用浏览器时,我们经常会用到全屏模式,最常见的场景有:观看视频、阅读文章、在线演示等。全屏模式的优点在于,它可以让用户充分地利用有限的屏幕空间,更好地专注于内容本身,从而提供丰富的沉浸式视觉…

视频剪辑入门:视频批量嵌套合并,成为视频编辑达人

随着数字媒体的快速发展,视频剪辑已经成为一项非常流行的技能。如果对视频剪辑感兴趣,想学习如何将多个视频批量嵌套合并,下面是云炫AI智剪批量嵌套合并视频的一些简单步骤,高效剪辑,成为视频编辑达人不再难。 准备要视…

金融银行软件测试超大型攻略,最受欢迎的金融银行大揭秘附面试题

零、为什么做金融类软件测试 举个栗子,银行里的软件测试工程师。横向跟互联网公司里的测试来说,薪资相对稳定,加班少甚至基本没有,业务稳定。实在是测试类岗位中的香饽饽! 一、什么是金融行业 金融业是指经营金融商…

简单自定义vuex的设计思路

vuex集中式存储管理应用所有组件的状态,并以响应的规则保证状态以可预测的方式 发生变化。 步骤: 1.Store类,保存选项,_mutations,_actions,getters 2.响应式状态:new Vue方式设置响应式。 …

Java网络编程,使用UDP实现TCP(三), 基本实现四次挥手

简介 四次挥手示意图 在四次挥手过程中,第一次挥手中的Seq为本次挥手的ISN, ACK为 上一次挥手的 Seq1,即最后一次数据传输的Seq1。挥手信息由客户端首先发起。 实现步骤: 下面是TCP四次挥手的步骤: 第一次挥手&…

环境变量提权

环境变量提权 借鉴文章LINUX提权之环境变量提权篇 - 知乎 (zhihu.com) 利用条件 存在一个文件,利用su权限执行,普通用户可以执行此文件,但只限制在一个目录下可以执行 利用方式 将此文件的目录添加到环境变量中 export PATH/tmp:$PATHe…

分层自动化测试的实战思考!

自动化测试的分层模型 自动化测试的分层模型,我们应该已经很熟悉了,按照分层测试理念,自动化测试的投入产出应该是一个金字塔模型。越是向下,投入/产出比就越高,但开展的难易程度/成本和技术要求就越高,但…