机器学习模型
数据 + 算法
算法
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类