http://www.woshipm.com/ai/2002216.html

机器学习是一种能够实现人工智能的技术,可以通过大量的数据,训练出来一个处理数据的模型。本文笔者将与大家分享:机器学习的相关实践应用。

我所理解的机器学习是一种能够实现人工智能的技术,建立能从经验(数据)中进行学习的模型,从而使这个模型可以达到自行处理此类数据的能力。

也可以理解为:通过大量的数据,训练出一个能处理此类数据的模型。使得这个模型可以根据已知的数据,准确率很高的判断出未知的数据,从而使得人类能够采取正确的方法去处理某些事情。

想要了解机器学习你需要知道以下几点:

一、机器学习的流程

从实际的应用场景出发,要训练出来一个能够适应某场景的模型需要经过以下几步:

图1

1. 场景解析

场景解析就是将业务逻辑,抽象成为通过算法能够解决的问题。

比如:做一个心脏病预测系统,那么就可以抽象为二分类问题——要么有心脏病,要么没有。然后,根据已有的数据看看有没有目标值,可以判断出:是监督学习还是无监督学习,还是半监督学习。从而,选择出能够处理好此类数据的算法。

(不同场景采用的算法是不同的)高频的有以下几种类型的场景:

  1. 分类场景:广告投放预测,网站用户点击预测。
  2. 聚类场景:人群划分,产品种类划分。
  3. 回归场景:商品购买量预测和股票成交额预测。
  4. 文本分析类场景:新闻的标签提取,文本自动分类和文本关键信息抽取。

关系图算法:社交网络关系,网络关系挖掘和金融风险控制。

模式识别:语音识别,图像识别和手写文字识别。

2. 数据预处理

场景解析完,选择适合处理此类数据的算法后,需要对数据进行预处理——就是对数据进行清洗工作,对空值,乱码进行处理。

数据预处理的主要目的就是:减少噪音数据对训练数据的影响。

3. 特征工程

特征工程是机器学习中最重要的一部分,因为根据已有的训练数据,可选用的算法是有限的,那么在同样的算法下特征的选取是不同的,100个人对一件事情会有100种看法,也就有100种特征,最后特征的质量决定模型的好坏。特征工程需要做的包括:特征抽象,特征重要性的评估,特征衍生,特征降维。

4. 模拟训练

在经过以上过成后,进入训练模块,生成模型。

5. 模型评估

对生成模型的成熟度进行评估。

6. 离线/在线服务

在实际运用过程中,需要配合调度系统来使用。

案例场景:每天将用户当日新增的数据量流入数据库表里,通过调度系统启用离线训练服务,生成最新的离线模型,然后通过在线预测服务进行实时预测。

二、数据源结构

结构化数据:机构化数据是指以矩阵结构储存的数据。

数据库里的数据就是以这种结构存在,可以通过二维结构来显示,如下图:图2

结构化数据中,有两个重要的概念需要介绍一下:特征列和目标列。

上图里age,sex,cp列都是特征列,ifhealth是目标列。

  1. 非结构化数据:典型的非结构化数据是图像,文本,语音等文件。这些数据不能以矩阵的结构储存,目前的做法也是通过把非结构化的数据转化为二进制储存格式。
  2. 半结构化数据:半结构化数据是指按照一定的结构储存,但不一定是二维的数据库行存储形态的数据。还有一种是以二维数据形态储存的,但某些字段是文本类型,某些字段是数值类型的。如下图:

图3

三、算法分类

监督学习:是指每个进入算法的训练样本数据都有对应的目标值。

如上图2所示,Ifhealth为目标值。

常见的监督学习算法:

图4

无监督学习:就是训练样本的数据里没有目标列,不依赖于打标好的机器学习算法。

那么,这样的数据可能对一些分类和回归的场景就不太适合了。

无监督学习主要是来解决一些聚类场景的问题。

图5

半监督学习:

通过上面的监督学习和无监督学习的概念,再来看半监督学习就比较好理解了。

也就是说,训练数据里只有部分数据是打标的。目前,半监督学习的算法,都是监督学习算法的变形。

强化学习:

强化学习是一种比较复杂的机器学习种类。强调的是:系统与外界不断的交换,获得外界的反馈,然后决定自身的行为。

如:无人驾驶,阿尔法狗下围棋就是强化学习的应用。

四、过拟合问题(欠拟合这里不做详细的介绍)

过拟合是数据挖掘(通过大量数据,训练模型的过程也称为数据挖掘)领域中最常见的问题,是指:通过训练集训练了一个模型,这个模型对于训练集的预测准确率很高,可以达到95%以上,但是换一份儿数据集进行预测,准确率大幅度下降。

出现这种情况的原因可能是:训练的过拟合现象。

导致过拟合问题的原因有以下三种:

  1. 训练数据集样本单一。
  2. 训练样本噪音数据干扰过大。
  3. 模型过于复杂。

五、结果评估

机器学习最终的目的是生成模型。

模型生成后需要一些指标来评估这个模型的好坏。

常用到的概念有:精确率,召回率,F1值,ROC和AUC几种。

首先介绍一下精确率,召回率和F1值。这3个指标是由:TP,TN,FP,FN这4个值计算而来的(这里不做解释了)。

  • 精确率=TP/(TP+FP)
  • 召回率=TP/(TP+FN)
  • F1=(2*精确率*召回率)/(精确率*召回率)

图6

ROC曲线是常用的二分类场景的模型评估算法曲线,下图齿状弧形曲线就是ROC曲线。

如图所示:

图7

通过ROC曲线可以清晰的展示出来,只要模型曲线越来越接近左上角就说明模型的效果越好。

AUC的值是ROC与横轴所围起来的面积(图中带阴影的部分),这个AUC的值越大说明模型的效果越好。

AUC的值取0~1之间,通常大于0.5,当AUC的值大于0.9以上时,证明这个模型的效果比较好。

以上对机器学习的流程,和一些概念做了解释。但距离真正可以上手操作还有很远的距离。如非结构化数据和半结构化数据,如何转化为结构化数据?特征抽象,特征衍生,特征降维如何操作?等等,实际的操作问题,还需要一定的篇幅来介绍。

本文由 @梦想在起飞 原创发布于人人都是产品经理,未经许可,禁止转载

机器学习的流程是怎样的呢?如何应用到实践中去呢?相关推荐

  1. 【机器学习】机器学习项目流程

    本文是中国大学慕课<机器学习>的"机器学习项目流程"章节的课后代码. 课程地址: https://www.icourse163.org/course/WZU-14640 ...

  2. 如何用一套引擎搞定机器学习全流程?

    作者:陈戊超(仲卓) 深度学习技术在当代社会发挥的作用越来越大.目前深度学习被广泛应用于个性化推荐.商品搜索.人脸识别.机器翻译.自动驾驶等多个领域,此外还在向社会各个领域迅速渗透. 背景 当前,深度 ...

  3. Python机器学习全流程项目实战精讲(2018版)

    Python机器学习全流程项目实战精讲(2018版) 网盘地址:https://pan.baidu.com/s/16SSVq74YC07M0dW1iDekPg 提取码: vu7r 备用地址(腾讯微云) ...

  4. python训练过程是什么_学了这么久,你知道Python机器学习全流程是怎样的么?

    今天呢,小编就带大家了解一下Python机器学习全流程 首先介绍一下机器学习的概念和地位,和其他的区别是? 机器学习的核心任务是? 机器学习的全流程是? 我们将上述流程拆解出来看: 1.需求来源是?需 ...

  5. 使用Tand自动化您的机器学习工作流程

    This is a post on TanD, a no-code framework to automate the machine learning workflow. Its purpose i ...

  6. 一个小项目了解机器学习基本流程(附源码)

    研一机器学习小白开始写博客记录学习了!请各位CSDN大佬多多指教[抱拳] 读书笔记1 <Python Machine Learning Blueprints> Alexander T.Co ...

  7. 人工智能概述、人工智能发展历程、人工智能主要分支、机器学习工作流程、完整机器学习项目的流程、机器学习算法分类、独立同分布、模型评估、深度学习简介

    日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) 1.1 人工智能概述 1 人工智能应用场景 2 人工智能小案例 ...

  8. 关于机器学习全流程溯源管理的思考

    点击「京东数科技术说」可快速关注 「摘要」人工智能和机器学习是挖掘.利用海量数据价值的关键技术.近年来,越来越多的企业.机构借助人工智能和机器学习技术,从大数据中提炼商业见解,辅助商业决策,创造了巨大 ...

  9. 【集成学习-组队学习】2.使用sklearn构建完整的机器学习项目流程

    使用sklearn构建完整的机器学习项目流程 组队学习来源: Datewhle23期__集成学习(上) : https://github.com/datawhalechina/team-learnin ...

最新文章

  1. java for嵌套for循环语句_java中的for循环嵌套语句怎么执行?
  2. ServiceMesh架构的演变过程概述
  3. Bitmap Font 报错“characters from the file are not available in the font”解决办法
  4. 1-6-Xmanager远程工具的使用
  5. 微型计算机原理实验报告总结,微机原理实验报告-两个多位十进制数相加的实验等.doc...
  6. 给source insight添加.cc的C++文件后缀识别(转载)
  7. mac电脑访问另一台mac共享文件
  8. 网络通信协议-TCP/IP模型实战
  9. python赋值01_python学习笔记1-赋值与字符串 | 学步园
  10. Spring Boot静态资源映射规则
  11. div隐藏select显示的解决办法(就死select挡住了div) 不是网上找到的那五种
  12. kafka日志格式和分区
  13. electron 渲染进程调用主进程_万物皆可快速上手之Electron(第一弹)
  14. element提交图片限制一张_element-ui上传图片限制图片比例
  15. 碳中和数据全集-最全碳排放、碳封存、碳排放权配额、碳交易、能源消费与二氧化碳排放
  16. 使用Excel进行线性规划
  17. 整理大数据相关的内容,包括博客、笔试真题、项目、面经。希望能帮到想往大数据方向发展的从业人员
  18. 年薪80万不一定当黑客,转型大数据开发是更好的选择!
  19. 分页第一页用0还是1_洗脸用冷水还是热水好?这些错误只要犯1个,你的脸就白洗了!...
  20. pythonn 安装包 清华镜像_Python 清华镜像设置

热门文章

  1. 被黑客们使用的代码混淆技术
  2. 汉语(普通话)的音素对齐
  3. 【南洋理工-CVPR2022】视觉语言模型的条件提示学习
  4. 知识驱动的推荐系统:现状与展望
  5. 独家 | 将人们困于贫穷之中的隐藏算法战争即将到来
  6. ​新型支架状电极允许人类思想操作计算机
  7. 独家 | 用Python Featuretools库实现自动化特征工程(附链接)
  8. 20亿参数,大型视觉Transformer来了,刷新ImageNet Top1
  9. 如何啃下C++这块复杂又难学的硬骨头?
  10. 哈佛CS50撕书教授在家录了一套4K网课,你准备好电话簿了吗?