【机器学习】嘿马机器学习(算法篇)第1篇:Introduction,定位【附代码文档】
本教程的知识点为:机器学习算法定位、 K-近邻算法 1.4 k值的选择 1 K值选择说明 1.6 案例:鸢尾花种类预测--数据集介绍 1 案例:鸢尾花种类预测 1.8 案例:鸢尾花种类预测—流程实现 1 再识K-近邻算法API 1.11 案例2:预测facebook签到位置 1 项目描述 线性回归 2.3 数学:求导 1 常见函数的导数 线性回归 2.5 梯度下降方法介绍 1 详解梯度下降算法 线性回归 2.6 线性回归api再介绍 小结 线性回归 2.9 正则化线性模型 1 Ridge Regression (岭回归,又名 Tikhonov regularization) 逻辑回归 3.3 案例:癌症分类预测-良/恶性乳腺癌肿瘤预测 1 背景介绍 决策树算法 4.2 决策树分类原理 1 熵 决策树算法 4.3 cart剪枝 1 为什么要剪枝 决策树算法 4.4 特征工程-特征提取 1 特征提取 决策树算法 4.5 决策树算法api 4.6 案例:泰坦尼克号乘客生存预测 集成学习基础 5.1 集成学习算法简介 1 什么是集成学习 2 复习:机器学习的两个核心任务 集成学习基础 5.3 otto案例介绍 -- Otto Group Product Classification Challenge 1.背景介绍 2.数据集介绍 3.评分标准 集成学习基础 5.5 GBDT介绍 1 Decision Tree:CART回归树 1.1 回归树生成算法(复习) 聚类算法 6.1 聚类算法简介 1 认识聚类算法 聚类算法 6.5 算法优化 1 Canopy算法配合初始聚类 聚类算法 6.7 案例:探究用户对物品类别的喜好细分 1 需求 第一章知识补充:再议数据分割 1 留出法 2 交叉验证法 KFold和StratifiedKFold 3 自助法 正规方程的另一种推导方式 1.损失表示方式 2.另一种推导方式 梯度下降法算法比较和进一步优化 1 算法比较 2 梯度下降优化算法 第二章知识补充: 多项式回归 1 多项式回归的一般形式 维灾难 1 什么是维灾难 2 维数灾难与过拟合 第三章补充内容:分类中解决类别不平衡问题 1 类别不平衡数据集基本介绍 向量与矩阵的范数 1.向量的范数 2.矩阵的范数 如何理解无偏估计?无偏估计有什么用? 1.如何理解无偏估计
全套笔记资料代码移步: 前往gitee仓库查看
感兴趣的小伙伴可以自取哦,欢迎大家点赞转发~
全套教程部分目录:
部分文件图片:
Introduction
机器学习算法课程定位、目标
定位
- 课程以算法、案例为驱动的学习,伴随浅显易懂的数学知识
- 作为人工智能领域的提升课程,掌握更深更有效的解决问题技能
目标
- 掌握机器学习常见算法原理
- 应用Scikit-learn实现机器学习算法的应用,
- 结合场景解决实际问题
K-近邻算法
学习目标
- 掌握K-近邻算法实现过程
- 知道K-近邻算法的距离公式
- 知道K-近邻算法的超参数K值以及取值问题
- 知道kd树实现搜索的过程
- 应用KNeighborsClassifier实现分类
- 知道K-近邻算法的优缺点
- 知道交叉验证实现过程
- 知道超参数搜索过程
- 应用GridSearchCV实现算法参数的调优
1.1 K-近邻算法简介
学习目标
-
目标
-
了解什么是KNN算法
- 知道KNN算法求解过程
1 什么是K-近邻算法
图片无法加载
- 根据你的“邻居”来推断出你的类别
1.1 K-近邻算法(KNN)概念
K Nearest Neighbor算法又叫KNN算法,这个算法是机器学习里面一个比较经典的算法, 总体来说KNN算法是相对比较容易理解的算法
- 定义
如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。
来源:KNN算法最早是由Cover和Hart提出的一种分类算法
- 距离公式
两个样本的距离可以通过如下公式计算,又叫欧式距离 ,关于距离公式会在后面进行讨论
图片无法加载
图片无法加载
1.2 电影类型分析
假设我们现在有几部电影
图片无法加载
其中? 9号电影不知道类别,如何去预测?我们可以利用K近邻算法的思想
图片无法加载
分别计算每个电影和被预测电影的距离,然后求解
图片无法加载
1.3 KNN算法流程总结
1)计算已知类别数据集中的点与当前点之间的距离
2)按距离递增次序排序
3)选取与当前点距离最小的k个点
4)统计前k个点所在的类别出现的频率
5)返回前k个点出现频率最高的类别作为当前点的预测分类
2 小结
-
K-近邻算法简介【了解】
-
定义:就是通过你的"邻居"来判断你属于哪个类别
- 如何计算你到你的"邻居"的距离:一般时候,都是使用欧氏距离
1.2 k近邻算法api初步使用
学习目标
-
目标
-
了解sklearn工具的优点和包含内容
- 应用sklearn中的api实现KNN算法的简单使用
- 机器学习流程复习:
图片无法加载
- 1.获取数据集
- 2.数据基本处理
- 3.特征工程
- 4.机器学习
- 5.模型评估
1 Scikit-learn工具介绍
图片无法加载
- Python语言的机器学习工具
- Scikit-learn包括许多知名的机器学习算法的实现
- Scikit-learn文档完善,容易上手,丰富的API
- 目前稳定版本0.19.1
1.1 安装
pip3 install scikit-learn==0.19.1
安装好之后可以通过以下命令查看是否安装成功
import sklearn
- 注:安装scikit-learn需要Numpy, Scipy等库
1.2 Scikit-learn包含的内容
图片无法加载
- 分类、聚类、回归
- 特征工程
- 模型选择、调优
2 K-近邻算法API
-
sklearn.neighbors.KNeighborsClassifier(n_neighbors=5)
-
n_neighbors:int,可选(默认= 5),k_neighbors查询默认使用的邻居数
3 案例
3.1 步骤分析
- 1.获取数据集
- 2.数据基本处理(该案例中省略)
- 3.特征工程(该案例中省略)
- 4.机器学习
- 5.模型评估(该案例中省略)
3.2 代码过程
- 导入模块
from sklearn.neighbors import KNeighborsClassifier
- 构造数据集
x = [[0], [1], [2], [3]]
y = [0, 0, 1, 1]
- 机器学习 -- 模型训练
# 实例化API
estimator = KNeighborsClassifier(n_neighbors=1)
# 使用fit方法进行训练
estimator.fit(x, y)
estimator.predict([[1]])
4 小结
-
sklearn的优势:
-
文档多,且规范
- 包含的算法多
-
实现起来容易
-
knn中的api
-
sklearn.neighbors.KNeighborsClassifier(n_neighbors=5)
问题
1.距离公式,除了欧式距离,还有哪些距离公式可以使用?
2.选取K值的大小?
3.api中其他参数的具体含义?
K-近邻算法
学习目标
- 掌握K-近邻算法实现过程
- 知道K-近邻算法的距离公式
- 知道K-近邻算法的超参数K值以及取值问题
- 知道kd树实现搜索的过程
- 应用KNeighborsClassifier实现分类
- 知道K-近邻算法的优缺点
- 知道交叉验证实现过程
- 知道超参数搜索过程
- 应用GridSearchCV实现算法参数的调优
1.3 距离度量
学习目标
-
目标
-
了解距离公式的基本性质
- 知道机器学习中常见的距离计算公式
1 距离公式的基本性质
在机器学习过程中,对于函数,若它是一"距离度量" (distance measure),则需满足一些基本性质:
- 非负性:;
- 同一性:。当且仅当
- 点赞
- 收藏
- 关注作者
评论(0)