机器学习的一般流程
扫描二维码
随时随地手机看文章
本文中,小编将对机器学习予以介绍,如果你想对它的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。
一、机器学习一般流程
预备:把实际问题转化为机器学习问题,即能够从现有的数据中学的某种规律,从而解决实际问题(预测或分类)
机器学习是数据和模型的结合。
(一)获取数据:人工合成、爬虫、数据库、公开数据集、收集数据...
(二)数据预处理:
1.数据清洗:缺失数据、重复数据、一致性检验
2.数据转成数字:经验、一般映射
3.特征转换:定性特征和定量特征的处理
4. 训练数据采样:随机采样、系统采样、分层采样、上采样、下采样
5.特征归一化:均值化、标准化...
(三)特征工程
1.特征构建:特征转换、特征组合、特征分割
2.特征提取:特征转换、降维(PCA等)、模型方法提取
3.特征选择:过滤式(相似性度量、相关性比较,方差...)、包装法(向前选择和向后选择、完全搜索、启发式搜索、随机搜索)、集成方法(正则化(L_1, L_2 范数)、决策树、深度学习、回归模型,SVM,随机森林)
(四)建模准备
1.划分数据集:训练集+开发集+测试集+训练/开发集
2.数据可视化:表格、条形图、线图、散点图...
(五)建模并改进
1.明确问题:分类、回归、监督、无监督、半监督
2.假设单实数评估指标:AUC/ROC、均方误差、多指标变为单指标...
3.快速选择一些假设模型并进行迭代:svm、线性模型、神经网络、决策树...
4.设定代价函数:是否加正则项、均方误差....
5.选择优化算法解决最优化代价函数的问题:adam、sgd、动量、
6.模型训练:一些参数的设置
7.模型评估和选择:去除偏差较大的模型后选择其中方差最小的模型
8.模型改进:绘制学习曲线进行偏差/方差分析,改进欠拟合或过拟合问题(降低模型复杂度或提高模型复杂度)
9.误差分析作进一步改进:用正交化方法处理各种问题(数据集分布错误、方差、可避免误差、开发集拟合度、假设检验)
(六)投入实际运行
1.若表现差,可能要改变评估标准或改变开发集或测试集,重头再来
2.若表现好,进行模型监测和更新:每隔一段时间更新模型和数据
二、机器学习和深度学习的区别
深度学习和机器学习已经变得无处不在,那它们之间到底有什么区别呢?
1、数据相关性
深度学习与传统机器学习最重要的区别是,随着数据量的增加,其性能也随之提高。当数据很小的时候,深度学习算法并不能很好地执行,这是因为深度学习算法需要大量的数据才能完全理解它。
2、硬件依赖性
深度学习算法在很大程度上依赖于高端机器,而传统的机器学习算法可以在低端机器上工作。这是因为深度学习算法对GPU有较高的要求,GPU是其工作的一个组成部分。因为深度学习算法要固有地执行大量的矩阵乘法运,而使用GPU可以有效地优化这些操作,这就免不了对GPU的依赖。而相比之下,机器学习算法对硬件配置没有很高的要求。
3、特征工程
特征工程是将领域知识应用到特征抽取的创建过程,以降低数据的复杂性为目的。但这一过程在训练时间和如何提取特征方面十分地困难。
在机器学习中,大多数应用的特征需要由专家识别,然后根据域和数据类型手工编码。
例如,特征可以是像素值、形状、纹理、位置和方向,大多数机器学习算法的性能取决于特征识别和提取的准确程度。
而深度学习算法则试图从数据中学习更高级的特性。这是深度学习一个非常独特的部分,也是有别于传统机器学习的一部分。因此,深度学习减少了为每个问题开发新的特征抽取的任务,而是像卷积神经网络(CNN)这样尝试学习低层次的特征,如:早期层次的边缘和线条,然后是人脸的一部分,最后才是人脸的高层次表示。这样的方式相较于机器学习,在训练时间和成本上有较高的提升。
以上便是小编此次带来的有关机器学习的全部内容,十分感谢大家的耐心阅读,想要了解更多相关内容,或者更多精彩内容,请一定关注我们网站哦。