机器学习笔记(一)机器学习概述
机器学习内容可观看 吴恩达视频
一、什么是机器学习
1、机器学习定义
⚫ 机器学习是一门人工智能的科学,该领域的主要研究对象是人工智能,特别是如何在 经验学习中改善具体算法的性能。
⚫机器学习是对能通过经验自动改进的计算机算法的研究。
⚫ 机器学习是用数据或以往的经验,以此优化计算机程序的性能标准。
2、机器学习(ML)与人工智能(AL)深度学习(DL)的关系
- 机器学习是人工智能领域的一个分支技术
- 深度学习是机器学习的重要技术之一
- 机器学习是人工智能的一个分支。人工智能的研究历史有着一条从以“推理”为重点,到以“知识”为重点,再到以“学习”为重点的自然、清晰的脉络。显然,机器学习是实现人工智能的一个途径,即以机器学习为手段解决人工智能中的问题。
2、机器学习与传统方法的区别
①:传统学习方法:
是由人类自己定义规则
②:机器学习:
规则不再由人类制定,由机器从大量数据中寻找规则
二、机器学习的工作流程
1、机器学习工作流程
- 获取数据
- 数据预处理(内容还未发布)
- 特征选择(内容还未发布)
- 建立模型(内容还未发布)
- 模型评估
举一个栗子
1.房价预测模型
假定数据集如下
房子面积 | 房价 |
---|---|
30 | $100 |
40 | $120 |
40 | $115 |
50 | $130 |
50 | $132 |
60 | $147 |
## 机器学习的关键内涵之一在于利用计算机的运算能力从大量的数据中发现一个“函数”或“模
## 型”,并通过它来模拟现实世界事物间的关系,从而实现预测或判断的功能。
import numpy as np
import pandas as pd
from sklearn.linear_model import LinearRegression
# 假设训练集如下
x = pd.DataFrame(np.array([30,40,40,50,50,60]))# 房子面积
y = pd.DataFrame(np.array([100,120,115,130,132,147]))# 房价
# 使用线性回归预测一元线性模型
lineR = LinearRegression()
lineR.fit(x, y)
w = lineR.coef_ # x前的系数
b = lineR.intercept_ # 截距
print(w)
print(b)
from matplotlib import pyplot as plt
plt.figure(figsize=(10, 6))
plt.scatter(x, y)
plt.plot(x, w * x + b, 'r')
plt.show()
# 假设测试集
x_test = pd.DataFrame(np.array([55,45,55,53,50,65]))
# 输出预测结果
print(lineR.predict(x_test))
### 模型评估在内容(三)中有说讲
2、机器学习的分类
机器学习的一般分类为:监督学习、无监督学习、强化学习、半监督学习、主动学习。
- 监督学习:监督学习模式下,输入的数据有明确的标识或者结果,例如是图片中的貓还是狗,输入的数据已经明确的标记,机器在标记的数据中学习。
- 无监督学习:无监督模式下,数据并不被特别标识,学习模型直接通过数据推断出数据的内在结构。
- 半监督学习:只有少量数据被标记。
- 强化学习:研究智能体如何基于环境而做出行动反应,已取得最大化的积累奖励。
3、机器学习应用场景
①分类
分类:类别标签,结果是离散的
- 经常用于
– ⚫经常用于:
– ⚫ 垃圾邮件过滤
– ⚫ 语言检测
– ⚫ 相似文本搜索
– ⚫ 情感分析
– ⚫ 图像识别
– ⚫ 欺诈检测 - ⚫常见算法:
– ⚫ 朴素贝叶斯、决策树、逻辑回归、K近邻、支撑向量机
②回归
回归:通常用于预测,标签是连续的。
- 经常用于
– ⚫ 股票价格预测
– ⚫ 医学诊断
– ⚫ 需求和销量分析
– ⚫ 任何數字時間相關 - ⚫常见算法:
– ⚫ 线性回归、多项式回归
③聚类
聚类:根据未知特征进行对象划分,机器选择最优解。
- 经常用于
– ⚫ 市场细分(客户类型,忠诚度)
– ⚫ 合并地图
– ⚫ 图像压缩
– ⚫ 分析和标记数据
– ⚫ 异常行为检测 - ⚫常见算法:
– ⚫ K-means,Mean-Shift,DBSCAN
④降维
降维:特征的组合,组成更高级特征。
- 经常用于
– ⚫ 推荐系统
– ⚫ 数据可视化
– ⚫ 相似文档搜索
– ⚫ 风险管理 - ⚫常见算法:
– ⚫ 主成分分析(PCA),奇异值分解(SVD)
⑤关联规则
关联规则:在关系中寻找模式。
- 经常用于
– ⚫ 预测销售和折扣
– ⚫ 分析一起购买的商品
– ⚫ 分析网络浏览模式 - ⚫常见算法:
– ⚫ Apriori,Euclat,FP增长
⑥强化学习
强化学习:研究智能体如何基于环境而做出行动反应,已取得最大化的积累奖励。
- 经常用于
– ⚫ 自动驾驶
– ⚫ 机器人
– ⚫ 游戏
– ⚫ 企业资源管理 - ⚫常见算法:
– ⚫ Q-Learning,SARSA,DQN,A3C,遗传算法
⑦集成学习
集成学习:在集成方法中,我们通常会训练多个「弱模型」,以期待能组合成为一个强大的方
法。
- 经常用于
– ⚫ 代替经典算法方法的所有內容(但效果更好)
– ⚫ 搜索
– ⚫ 计算机视觉
– ⚫ 物体检测 - ⚫常见算法:
– ⚫ 随机森林
⑧深度学习
深度学习:基于神经网络,层数较多,结构比较复杂的神经网络的机器学习技
术。
- 经常用于
– ⚫ 替换以上所有算法
– ⚫ 照片和视频上的物体识别
– ⚫ 语音识别与合成
– ⚫ 图像处理,样式转换
– ⚫ 机器翻译 - ⚫常见算法:
– ⚫ 神经网络,卷积神经网络,循环神经网络等
4、机器学习基本术语
①特征
特征:特征是被观察到的现象的一个可测量的特性或特征。特征是机器学习的输入,可以是一个(一维)或者多个(多维),特征维度越高,数据集约复杂。
在这个例子中,卧室、房屋大小、使用的社区等自然因素都是特征,其关联的目标是房子的售价。有一些房屋的已知价格(训练数据和测试数据),可以建立一个模型来预测未知房屋的售价。
②标签
标签:是机器学习要输出的结果,也是我们试图预测的目标。
在上图的示例中,标签就是房屋的价格,通常来说,机器学习要解决什么问题,标签就是什么,如:股票价格、图像中的内容、文本翻译的结果、音频的输出等。
③模型
模型:样本映射到预测标签的方法,通常可以理解为一个函数。
函数可以由模型内部的参数定义。机器学习中,通常先确定模型的类型,再确定模型的参数。
文章内容参考:
http://blog.itpub.net/29829936/viewspace-2644052/