机器学习的领域|学习笔记

简介: 快速学习机器学习的领域。

开发者学堂课程【机器学习入门-概念原理及常用算法机器学习的领域】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/355/detail/4181


机器学习的领域


内容介绍

一、机器学习的领域

二、机器学习的目标

定义跟术语

Standard Scenarios

Fun Time

 

一、机器学习的领域

1、Classification: assign a category to each item(e.g, document classification).

分类是分到一个具体的目录里面把文档分为娱乐科技体育等等

分类是分到一个具体的目录里面

2、Regression: predict a real value for each item(prediction of stock values, economic variables).

违规是预测出一个实数的值比如股票预测股价经济预测经济的增长速度具体的值

3、Ranking: order items according to some criterion(relevant web pages returned by a search engine).

排序是通过某一种标准去排序比如搜索引擎里面给它一个搜索目标返回一系列排好序的结果

排序是通过某一种标准去排序

4、Clustering: partition data into 'homogeneous'regions(analysis of very large data sets).

聚类物以类聚通过对一个数据的分析把它分成几个大的区域

聚类

5、Dimensionality reduction:find lower-dimensional manifold preserving some properties of the data.

维度的降维去找一个比较好的低维的东西去展示原来的数据但这个低维的东西可能保留一个原始的数据绝大部分有用的一个属性

这些东西如何去用它呢

image.png

比如样本数大于50才可能会用到这样一个东西如果样本数小于50,应该去收集更多的数据收集数据之后是不是需要做 category 的东西如果是 category 的东西如果有label一般是属于分类的任务如果没有label一般是属于聚类的任务如果不是 category是一个数量的值实数的值一般情况下如果去预测这样一个实数的值用回归的东西比较合适如果不去预测数量本身的值就是想去看或者做一些图表去洞察一下这个数据做一些降维比较合适


二、机器学习的目标

1、Theoretical questions:

(1)what can belearned, under what conditions?

它是在什么样的条件下什么东西能进行学习

(2)are there learning guarantees?

这些学习有理论上的保障吗

(3)analysis of learning algorithms.

给定一个学习算法之后它会进行一些分析算法学习的数据怎么样它能收敛到一个什么样的情况是不是可以收敛了等这个是有一系列理论上的问题也牵扯出一系列的学科概率统计图优化等这里有非常多的学科在后面做一些理论的支持和支撑

给定一个学习算法之后


2、Algorithms:

具体的算法等解决了一些理论上的问题之后来看具体的算法去做的更加高效更加准确有没有去处理大数据大规模的问题有没有办法去提供一个种类丰富的算法集或者一个学习问题有多种解等每个目标里面都牵扯着机器学习里面的子学科

(1)more efficient and more accurate algorithms

(2)deal with large-scale problems

(3)handle a variety of different learning problems.

 

三、定义跟术语

1、Example:

item, instance of the data used.

样本例子

样本


2、Features:

attibutes associated to an item, often represented as a vector(e.g, word counts).

特征就是 example 中一些跟它关联的属性经常会被表达成一个向量的方式

特征就是


3、Labels:

category (clasification) or real value(regression)aassociated to an item.

一个技术方式 labellabel 是分类打比方淘宝里面一个裙子属于连衣裙这样一个类目这样是它的 label如果是回归赔付率本身这样也是它的一个 label

一个技术方式


4、Data:

training data(typically labeled); test data (labeled but labels not seen); validation data (labeled, for tuning parameters).

数据本身可能会分为训练数据测试数据跟验证数据等这种分法是通过这种方式来衡量机器学习算法 performance它的性能是什么样子validation 这样一个数据一般是有助于去调删上的事情

image.png

如图所示

这里不同颜色的小圆圈可以认为是一个样本一个 label在二维空间里面x1 、 x2 都可以认为是它的一个特征不同颜色代表它是不同的 label

比如三个颜色把它分别认为是某一种车的类型等写上分类的两根线可以认为是一个具体的机器学习算法得到了一个模型进行有效的区分这里面可以看到有一些颜色是分错的是一个 error这个错误是有效的去衡量这样一个算法的效率和效果 performers 一种方式这里还提到 one stepstwo stepsthree steps 这种方式大部分求解的方式都是通过迭代的方式所以是有多轮或多步迭代所以能看到这样一个迭代的在这里面

 

四、Standard Scenarios

具体来看一下机器学习算法的分类比如有 label 可以认为它是一个监督学习没有 label 认为它是一个无监督学习基于它们两者之间叫半监督除此之外还有一种其实跟人下棋的状态很像叫做强化学习它是有一定的观察然后你维护了一个状态的东西通过这样一个动作获得一种奖罚机制用这种方式来学习的叫做强化学习

具体来看一下机器学习算法的分类


1、Unsupervised learning:

no labeled data.

监督跟非监督都非常像只是中间没有 label

image.png

 

2、Supervised learning:

uses labeled data for prediction on unseen points.

比如给一些芒果里面有熟的有生的那如果告诉芒果是熟的还是生的通过图片通过一个机器学习算法得到一个模型这种认为是监督学习如果把熟了或者没熟的这个东西给它去掉这样就成为无监督学习通过剧烈的方式从流程图上看这样一些东西拿来之后设计特征送到一个集群的算法里面得到一个模型再进行预测

image.png


3、Semi-supervised learning:

uses labeled and unlabeled data for prediction on unseen points.

 

4、Reinforcement learning:

observation+ action+ reward+ state

强化学习这里用了一个老鼠走迷宫的方式老鼠的头脑里面有状态图通过 action 里面环境本身会有一个奖惩的机制比如再某一个地方给它奖励或者惩罚通过这样的方式更正或学习到一些东西同过来观察它能够去跟踪和学习到一些东西去更正它内部的状态通过这样的方式进行学习

image.png


5、Formalize the Learning Problem

数学上形式化一下x 为输入通常它是一个输入的形式或者矩阵的形式输出 y  label通常它也是一个向量或矩阵方式 x  y去探索一个未知的模式数据就是一大堆的训练样本训练样本就是用数据的方式就是 xy有些没有 y希望从大量的 example 里面学到一个去探索这种未知的 f最后学到一个积这就是最终要学到的一个结果。

Basic Notations

input:  (customer application)

output: y Y (good/bad after approving credit card)

unknown pattern to be learned target function:

f: Xy (ideal credit approval formula)

data # training examples: D= {(X1.y1),(X2, y2),···,(XN-yN)]}

(historical records in bank)

hypothesis skill with hopefully good performance:

g: XY('learned' formula to be used)

{(Хn. Уn)}frоmf МL - g

image.png


再展开一点讲从一个很大的假设集里面从数据里面去学到一个最终的积希望这个积跟未知的 f 非常的接近怎么去判定它是不是接近设置一个loss function如果在这样一个有不同的输出 label有些是有有些是没有把它分为监督跟非监督通过输出的 space 不一样把它分为回归分类其实还有一类分为 batch  online 这种方式

通过这样一个方式来对机器学习算法其实都是从不同的视角去看这样的一些机器学习的一个算法

image.png

 

五、Fun Time

How to use the four sets below to form a learning problem for item recommendations?

S1=[0; 100]; S2=all possible (userid, itemid) pairs; S3= all formula that 'multiplies' user factors& item factors; indexed by all possible combinations of such factors; S4= 1,000,000 pairs of((userid, itemid), rating)

A.S1=X;S2 = Y;S3= H;S4 = D

B.Sl=Y;S2=X;S3=H;S4=D

C.S1=D;S2 = H;S3 = Y;S4= X

D.S1=X;S2=D;S3=Y;S4=H

看一个具体的例子比如这里给到一些数据几个s1到s4的集合形式化去定义一下什么是一个推荐s3是假设集s4是数据集s1 labels2 x向输入通过这种方式很明显去感知到形式化的定义

相关文章
|
算法
雪花算法id生成器
雪花算法id生成器
761 0
|
人工智能 Cloud Native 算法
|
消息中间件 druid Kafka
从Apache Flink到Kafka再到Druid的实时数据传输,用于分析/决策
从Apache Flink到Kafka再到Druid的实时数据传输,用于分析/决策
310 0
|
JavaScript 程序员 网络架构
vue路由从入门到进阶 --- 声明式导航详细教程
vue路由从入门到进阶 --- 声明式导航详细教程
vue路由从入门到进阶 --- 声明式导航详细教程
|
C++
【洛谷 P1044】[NOIP2003 普及组] 栈 题解(递归+记忆化搜索)
**NOIP2003普及组栈问题**:给定操作数序列1到n,仅允许push(进栈)和pop(出栈)操作。目标是计算所有可能的输出序列总数。输入包含一个整数n(1≤n≤18)。示例输入3,输出5。当队列空时返回1,栈空则只能入栈,栈非空时可入栈或出栈。AC C++代码利用记忆化搜索求解。
257 1
|
存储 缓存 监控
python任务调度利器-APScheduler
APScheduler是Python的任务调度库,提供基于时间、固定时间点和CRONTAB的任务调度,适用于离线作业和缓存更新等场景。它包含触发器、调度器、任务存储器、执行器和任务事件组件。安装使用`pip install apscheduler`,简单示例展示了如何配置调度器、添加任务并监听任务异常。支持的触发器有间隔、日期和CRON类型,执行器包括线程池和进程池等。任务存储器可选择内存或各种数据库存储。调度器模式有BlockingScheduler和BackgroundScheduler等,可进行任务的添加、删除、暂停和修改,并监听任务事件。5月更文挑战第20天
532 0
|
Kubernetes 应用服务中间件 nginx
提升CKA认证成功率:Kubernetes Ingress七层代理全攻略!
提升CKA认证成功率:Kubernetes Ingress七层代理全攻略!
305 0
|
JavaScript 前端开发 开发者
深入了解rollup(一)快速开始
Rollup 是一个用于 JavaScript 的模块打包工具,它将小的代码片段编译成更大、更复杂的代码,例如库或应用程序。它使用 JavaScript 的 ES6 版本中包含的新标准化代码模块格式,而不是以前的 CommonJS 和 AMD 等特殊解决方案。ES 模块允许你自由无缝地组合你最喜欢的库中最有用的个别函数。这在未来将在所有场景原生支持,但 Rollup 让你今天就可以开始这样做。
210 0
|
XML Dubbo 网络协议
【网络】一文带你了解什么是RPC
http接口是在接口不多、系统与系统交互较少的情况下,初期常使用的一种通信手段。优点就是简单、直接、开发方便。利用现成的http协议进行传输。
512 1
【网络】一文带你了解什么是RPC
|
前端开发 Java