【漫漫转码路】Day 41 机器学习 day01

机器学习

机器学习是从数据中研究算法的科学学科
基于已有的数据,进行算法选择,并基于算法和数据构建模型,最终对未来进行预测
输入特征属性值,特征向量,特征向量处理成数值形式的,
x:特征向量,默认列向量
X:特征矩阵,由x组成,一行表示一条数据一行表示一个x,行索引表示一条一条的数据,列索引表示每一个特征值
x的上标表示第几行,也就是第几个样本,这个样本时列向量
x下标表示向量第几个维度的值
有时候x下标也表示第几个向量
y上面有倒箭头,表示预测值
无法找到完美的函数,只能找到关于特征x到y的预测关系,找到接近完美函数的关系,从结果中选择最优的
算法(T)数学公式
模型(E)基于数据和算法构建出来的模型
评估/测试(P)对模型进行评估的策略
scikit-learn(python),(工具)
mahout()
拟合:构建的算法模型符合给定数据的特征
欠拟合:算法不太符合样本的数据特征
过拟合:算法过于符合样本数据的特征,对于实际生产中的数据特征无法拟合
归根到底,还是要解决新的问题

应用

数据分析:基于统计分析方法对收集的大量数据进行分析,并提取有用的结论,形成结论,主要分为统计分析,探索性数据分析和验证性数据分析
数据挖掘:从大量的数据中通过算法搜索隐藏于其中的信息的过程,通常通过统计,检索,机器学习,模式匹配等方法实现
机器学习:数据分析和数据挖掘的一种比较常用、比较好的手段。
过程:
数据清洗—特征构造和特征选择—建立基础模型,调参—模型集成—评估模型

机器学习分类:

有监督学习:用已知某些特性的样本作为训练集,从标签化训练数据集中推断出模型的机器学习任务
也就是有y倒箭头
无监督学习:没有人为标注的结果,数据不被特别标注,学习模型就是为了推断出数据的一些内在结构
半监督学习:利用少量样本和大量未标注样本进行训练和分类
分类2:
分类:将数据集中样本映射到某个类别中(离散数据),有y值,有监督学习
回归:反应样本数据集中样本的属性值的特性,通过函数表达样本映射的关系来发现属性值之间的依赖关系(连续数据)
离散和连续不唯一
连续数据离散化
是离散还是连续,跟业务场景有关
聚类:将样本数据划分为几类,同一类别的样本相似性较大,没有y值,无监督学习
关联规则:获取隐藏数据项之间的关联或互相关系,可以根据一个数据项的出现推导出其他数据项的出现频率

有监督学习

判别式模型:直接对**条件概率p(y|x)进行建模,常见判别模型有:Logistic回归、决策树、支持向量机SVM、k近邻、神经网络等;
给定x条件下,出现的概率
生成式模型:对
联合分布概率p(x,y)**进行建模,常见生成式模型有:隐马尔可夫模型HMM、朴素贝叶斯模型、高斯混合模型GMM、LDA等;
条件概率p(y|x):x发生的条件下,y发生的概率
联合分布概率p(x,y):x和y同时出现的概率,合概率是指在多元的概率分布中多个随机变量分别满足各自条件的概率。假设X和Y都服从正态分布,那么P{X<4,Y<0}就是一个联合概率,表示X<4,Y<0两个条件同时成立的概率。表示两个事件共同发生的概率。A与B的联合概率表示为 P(AB) 或者P(A,B),或者P(A∩B)。
区别:
• 生成式模型更普适;判别式模型更直接,目标性更强
• 生成式模型关注数据是如何产生的,寻找的是数据分布模型;判别式模型关注
的数据的差异性,寻找的是分类面
由生成式模型可以产生判别式模型,但是由判别式模式没法形成生成式模型

无监督学习

无监督学习试图学习或者提取数据背后的数据特征,或者从数据中抽取出重要的特征信息,常见的算法有聚类、降维、文本处理(特征抽取)等。
无监督学习一般是作为有监督学习的前期数据处理,功能是从原始数据中抽取出必要的标签信息。

半监督学习

主要考虑如何利用少量的标注样本和大量的未标注样本进行训练和分类的问题。半监督学习对于减少标注代价,提高学习机器性能具有非常重大的实际意义。
SSL的成立依赖于模型假设,主要分为三大类:平滑假设、聚类假设、流行假设;其中流行假设更具有普片性。
SSL类型的算法主要分为四大类:半监督分类、半监督回归、半监督聚类、半监督降维。
**缺点:**抗干扰能力弱,仅适合于实验室环境,其现实意义还没有体现出来;未
来的发展主要是聚焦于新模型假设的产生

机器学习、人工智能和深度学习的关系

深度学习是机器学习的子类,
机器学习是人工智能的一个子类
多层感知机

机器学习开发流程

数据收集:

数据来源:用户访问行为数据,业务数据,外部第三方数据
数据存储:需要存储的数据:原始数据,预处理后数据,模型结果;存储设备:磁盘,mysql、HDFS、HBase、Solr、Elasticsearch、Kafka、Redis等
数据收集方式:flume & kafka
UCI数据集、阿里云数据集、kaggle

数据预处理

比如
数据过滤
处理数据缺失(删除或填充,,视情况来选择),离散数据,填充众数,连续数据,填充均值或中位数
(填充标准差和原来的数据x不是一个东西,)
处理可能的异常,错误或异常值(离群的数据称为异常,)
合并多个数据源数据
数据汇总

数据清洗与转换

转换成适合机器学习模型的表示形式,包含数值数据的向量或矩阵
1、对于非数值型数据,将类别数据编码成为对应的数值表示(一般使用1-of-k*哑编码方法*
早(1, 0,0)
中(0, 1,0)
晚(0, 0,1)
2、从文本数据中提取有用的数据(一般使用词袋法或者TF-IDF)也就是文本向量化
词袋法:统计每一个词条在文本中出现的次数或频率
TF-IDF:词条的重要性随着他在文件中出现的次数成正比增加,而他在语料库中出现的频率成反比下降
也就是说词条在当前文本中出现的次数越多,表示该词条对当前文本的重要性越高,词条在所有文本(语料库/训练数据集)中出现的次数越少,说明这个词条对文本的重要性越高。
TF:词频
IDF:一般计算方式为语料库中总文件数目除以包含该词语的文件数目,再将得到的商取对数得到(取对数让差异没有那么大)。
TF-IDF实际上是:TF *IDF
3、处理图像或者音频数据(像素、声波、音频、振幅等<傅里叶变换>)
4、对特征进行正则化、标准化,以保证同一模型的不同输入变量的取值范围相同
5、数值数据转换为类别数据以减少变量的值,比如年龄分段(连续数据离散化)
6、对数值数据进行转换,比如对数转换
对数转换,单调性不变,越到后面影响越小
指数转换,越到后面影响越大
7、对现有变量进行组合或转换以生成新特征(基于对数据以及对业务的理解),比如平均数 (做
虚拟变量),需要不断尝试才可以确定具体使用什么虚拟变量。

比较耗时

模型训练
模型测试
模型部署与整合(模型反馈数据)

你可能感兴趣的:(转码,人工智能,python,改行学it,算法)