我的AI成长之路-初识机器学习

199 阅读10分钟

文章目录

  • 前言
  • 一、我们平时接触到的机器学习
  • 二、什么是机器学习
  • 三、监督学习
    • 3.1 什么是监督学习
    • 3.2 监督学习的两个任务
      • 3.2.1 回归任务
      • 3.2.2 离散任务
  • 四、无监督学习
    • 4.1 无监督学习定义
    • 4.2 无监督学习VS有监督学习

前言

过去一两年大模型快速爆发,匆chatgpt3到如今的deepseek,我相信不仅是我,所有人都被大模型的能力震撼到了,同时也在深深焦虑-我们是不是要被大模型取代了?我在一开始的时候也有这种想法,后来随着学习的深入,这种紧张和不安变成了希冀和狂热,热切的期盼AI时代到来。面对强大的未知的对手,克服恐惧的最好办法就是了解它,学习它,超越它!
我的AI学习也已经一年有余了,这期间走了很多弯路,知识也是不断的强化,遗忘再强化(在这里只能感叹,未来生产力的瓶颈是人自己)。我开这系列文章,一是想蹭大模型的热度(赚钱嘛,不磕掺),二来就是希望通过这一些列文章让刚开接触的机器学习的新手技术人,能更快的上道。本文章系列主要引用吴恩达老师的讲课视频以及相关书籍,中间很多语句也都出自吴老师。
在这里插入图片描述

一、我们平时接触到的机器学习

直接讲机器学习的确太枯燥了,为了大家有个更感性的认知,介绍几个平时接触到的机器学习的案例或者新闻,让大家快速入门。
大家在平时的工作生活中不知不觉的用到了机器学习的算法,比如上网使用百度谷歌搜索问题,背后就有学习算法在进行网页排序;手机中的相册的人脸分类,也是借助机器学习的算法进行识别;字节跳动公司每天都有大量的视频上传,我记得当时我在的时候是每天2亿视频上传,这靠人工审核那成本就是天文数字,这其中大约有百分之九十六的视频是通过机器学习算法进行识别,无法识别或者有风险的才会交由人工审核。
在这里插入图片描述在这里插入图片描述在这里插入图片描述

机器学习离大家并不遥远,真正遥远的是我们使用它,爱好它,却对它一无所知!

二、什么是机器学习

目前业内无明确定义,解释什么是机器学习,我在这里借用亚马逊官网对于机器学习的定义

定义:机器学习是一门开发算法和统计模型的科学,计算机系统使用这些算法和模型,在没有明确指令的情况下,依靠既有模式和推理来执行任务。计算机系统使用机器学习算法来处理大量历史数据,并识别数据模式。这可让计算机系统根据给出的输入数据集更准确地预测结果。例如,数据科学家可以通过存储数百万的扫描图片和相应诊断来训练医学应用程序,使该程序能够根据X 光图片诊断癌症。

很长很复杂很难懂,其实第一个机器学习的定义来自于Arthur Samuel。他定义机器学习为,在进行特定编程的情况下,给予计算机学习能力的领域。
我就抓住一点:计算机学习能力!!!
目前存在几种不同类型的学习算法。主要的两种类型被我们称之为监督学习无监督学习

三、监督学习

3.1 什么是监督学习

监督学习并不是找个人在旁边看着它学习,这不是你小时候被老师家长眼盯着逼迫学习,而是说我给你一组正确数据,你自己想办法找点规律,总结方法论,然后我再给你一个新数据,你能用之前的方法论的到新结果。

在吴老师的ppt中有这样一个案例
一个学生从波特兰俄勒冈州的研究所收集了一些房价的数据。你把这些数据画出来,看起来是这个样子:横轴表示房子的面积,单位是平方英尺,纵轴表示房价,单位是千美元。那基于这组数据,假如你有一个朋友,他有一套750平方英尺房子,现在他希望把房子卖掉,他想知道这房子能卖多少钱。
在这里插入图片描述
我们应用学习算法,可以在这组数据中画一条直线,或者换句话说,拟合一条直线,根据这条线我们可以推测出,这套房子可能卖15000美刀,当然这不是唯一的算法。可能还有更好的,比如我们不用直线拟合这些数据,用二次方程去拟合可能效果会更好。根据二次方程的曲线,我们可以从这个点推测出,这套房子能卖接近20000美刀。

监督学习需要有明确的目标,很清楚自己想要什么结果
简单总结:

  1. 选择一个适合目标任务的数学模型
  2. 先把一部分已知的“问题和答案”(训练集)给机器去学习(这里体现出来什么是监督)
  3. 机器总结出了自己的“方法论”
  4. 人类把”新的问题”(测试集)给机器,让他去解答

3.2 监督学习的两个任务

在讲回归和分类之前我们先学习一个基本知识点1-离散变量和连续变量

变量按其数值表现是否连续,分为连续变量和离散变量。连续变量的数值是连接不断的,相邻两值之间可作无限分割,例如,身高、体重、年龄等都是连续变量。年龄一般虽按整数计算,但如严格按出生时间起算,是可以细算到许多位小数的。连续变量的数值要用测量或计算的方法取得。离散变量的各变量值之间都是以整数断开的,如人数、工厂数、机器台数等,都只能按整数计算。离散变量的数值只能用计数的方法取得

基本知识点2-样本

也称为"示例",是关于一个事件或对象的描述。因为要想让计算机能对现实生活中的事物进行机器学习,必须先将其抽象为计算机能理解的形式,计算机最擅长做的就是进行数学运算,因此考虑如何将其抽象为某种数学形式。
显然,线性代数中的向量就很适合,因为任何事物都可以由若干"特征"(或称为"属性")唯一刻画出来,而向量的各个维度即可用来描述各个特征。例如,如果用色泽、根蒂和敲声这3个特征来刻画西瓜,那么一个"色泽青绿,根蒂蜷缩,敲声清脆"的西瓜用向量来表示即为x=(青绿;蜷缩;清脆)x=(青绿;蜷缩;清脆)
(向量中的元素用分号";“分隔时表示此向量为列向量,用逗号”,“分隔时表示为行向量),其中青绿、蜷缩和清脆分别对应为相应特征的取值,也称为"属性值”。显然,用中文书写向量的方式不够"数学",因此需要将属性值进一步数值化,此外仅靠以上3个特征来刻画西瓜显然不够全面细致,因此还需要扩展更多维度的特征,一般称此类与特征处理相关的工作为"特征工程"。

基本知识点3-标记

机器学习的本质就是在学习样本在某个方面的表现是否存在潜在的规律,我们称该方面的信息为"标记"。例如在学习西瓜的好坏时,“好瓜"和"坏瓜"便是样本的标记。一般第ii个样本的标记的数学表示为yiyi​,标记所在的空间称为"标记空间"或"输出空间”,数学表示为花式大写的YY。标记通常也看作为样本的一部分,因此,一个完整的样本通常表示为(x,y)(x,y)。
根据是否有用到标记信息,可将机器学习任务分为以下两类:
在模型训练阶段有用到标记信息时,称此类任务为"监督学习"
在模型训练阶段没用到标记信息时,称此类任务为"无监督学习"

3.2.1 回归任务

当标记取值为连续型时,称此类任务为"回归",例如学习预测西瓜的成熟度、学习预测未来的房价等。由于是连续型,因此标记的所有可能取值无法直接罗列,通常只有取值范围。

3.2.2 离散任务

当标记取值为离散型时,称此类任务为"分类",例如学习西瓜是好瓜还是坏瓜、学习猫的图片是白猫还是黑猫等。当分类的类别只有两个时,称此类任务为"二分类",通常称其中一个为"正类",另一个为"反类"或"负类";当分类的类别超过两个时,称此类任务为"多分类"。由于标记也属于样本的一部分,通常也需要参与运算,因此也需要将其数值化,

四、无监督学习

上文学习的监督学习,我们清楚的知道每个数据对应的标记信息(正确答案),是带有明确目标的训练。无监督学习却恰恰相反

4.1 无监督学习定义

无监督学习也称为无监督机器学习,它使用机器学习算法来分析未标记的数据集并进行聚类
在这里插入图片描述
举一个DNA微观数据的例子。基本思想是输入一组不同个体,对其中的每个个体,你要分析出它们是否有一个特定的基因。技术上,你要分析多少特定基因已经表达。所以这些颜色,红,绿,灰等等颜色,这些颜色展示了相应的程度,即不同的个体是否有着一个特定的基因。你能做的就是运行一个聚类算法,把个体聚类到不同的类或不同类型的组(人)
所以这个就是无监督学习,因为我们没有提前告知算法一些信息,比如,这是第一类的人,那些是第二类的人,还有第三类,等等。我们只是说,是的,这是有一堆数据。我不知道数据里面有什么。我不知道谁是什么类型。我甚至不知道人们有哪些不同的类型,这些类型又是什么。但你能自动地找到数据中的结构吗?就是说你要自动地聚类那些个体到各个类,我没法提前知道哪些是哪些。因为我们没有给算法正确答案来回应数据集中的数据,所以这就是无监督学习。

4.2 无监督学习VS有监督学习

无监督学习监督学习
训练数据集无标记训练数据集有标记
没有明确目的有明确目的
效果不好评估效果好评估