机器学习模型
数据 + 算法
-
算法
Clustering (聚类),旨在将数据根据相似性进行分组,不需要事先知道每个组的具体定义或标签。简单地说就是把相似的东西分到一组(簇),聚类的时候,我们并不关心某一类是什么,我们需要实现的目标只是把相似的东西聚到一起。
因此,一个聚类算法通常只需要知道如何计算相似度就可以开始工作了,因此 clustering 通常并不需要使用训练数据进行学习,这在Machine Learning中被称作unsupervised learning (无监督学习)。
常用算法有 K-means、层次聚类、DBSCAN等。
Classification (分类),是基于已知的标签将数据划分到预定义的类别中,对于一个classifier,通常需要你告诉它“这个东西被分为某某类”这样一些例子,理想情况下,一个 classifier 会从它得到的训练集中进行“学习”,从而具备对未知数据进行分类的能力,这种提供训练数据的过程通常叫做supervised learning (监督学习)。
常用算法有 决策树、神经网络、支持向量机等。
数据标记 猫的图片 狗的图片
-
分类算法 已经知道数据有哪些类 性别 男 ,女 认为将数据按照男女分类
-
聚类算分 不知道数据有哪些,根据数据的相似度,将数据拆分成不同的类
数据挖掘的流程
-
加载数据
-
把需要的模型数据先计算出来
-
-
特征工程 提取数据特征,对特征数据进行清洗转化
-
数据的筛选和清洗
-
数据转化 类型转为 性别 男,女 ----> 1,0
-
特征交叉 性别/职业/收入 ---> 新特这 优质男性程序员 将多个特征值组合在一起
-
特征筛选 筛选和计算需求强关联的特征
-
特征清洗 空值处理,重复值处理
-
数据经过特征处理后会转为向量数据
-
-
模型训练
-
将特征工程的数据传递算法训练
-
模型评估
-
数据划分 100万 80万 训练 20万 评估
-
样本数据 训练模型
-
测试数据 评估模型
-
-
-
-
模型的上线部署
-
模型评估没有问题就可以上线部署
-
Spark实现机器学习
from pyspark.ml
ml模块包含
-
各类算法
-
分类算法,聚类,协调过滤....
-
-
特征处理方法
-
特征抽取,转化,选择...
-
-
管道
-
传递数据方法
-
-
持久化
-
保存数据
-
人工智能开发方向
-
数据挖掘 用户画像,推荐系统
-
自然语言处理 NLP 智能客服,智能助手
-
计算机视觉 CV 无人超市,智慧交通,视频广告
-
无人驾驶
人工智能,机器学习,深度学习关系
-
人工智能
-
机器学习 使用机器学习的算法实现人工智能的开发 ,需要人工提供数据,对数据进特征提取,让算法分析特征数据,寻找规律,预测未来变化
-
深度学习 利用神经网络自我学习,不需人为提取数据特征,自己分析数据的特征属性,然后找到规律
-
-
人工智能模型有哪些?
特征工程
需要安装numpy模块
pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple
I StringIndexer方法
将字符串数据转为数值,在算法模型训练需要用到的是数值
II VectorAssembler方法
特征交叉,将多个字段数据合并在一起,在算法计算时,是对组合特征进行分析
在进行算法模型训练时,必须将训练的特征数据组合在一起
III MinMaxScaler
特征缩放 将特征数据的比例调整在同一范围
根据需求选择
KMeans聚类算法
KMeans聚类:KMeans单词----K(K个聚类中心)+Means(根据均值迭代聚类中心)
K-Means算法的思想: 对给定的样本集,用欧氏距离(向量)作为衡量数据对象间相似度的指标,相似度与数据对象间的距离成反比,相似度越大,距离越小。
(标量 大小)
使用聚类的方式,将数据划分多份 人以类聚,物以群分
将数据转为向量,计算向量数据距离(欧式距离),向量距离越短,数据相似度越高,可以划分同一类
算法步骤:
1-首先随机选择K个聚类中心 有多少和聚类中心最后就会有多少个分类
2-计算每个样本点到达K个聚类中心的距离,如果距离比较紧直接划分为该类
3-迭代聚类中心,根据均值迭代聚类中心
4-直到聚类中心不在改变为止
得到K个聚类中心所代表的的K类