初识机器学习——概念介绍(imooc笔记)
前言
imooc的机器学习一个最基本的介绍类课程,http://www.imooc.com/learn/717 ,不怎么涉及具体的算法或实现,只是讲了讲一些理论概念。
概述
机器学习:
利用计算机从历史数据中找到规律,并把这些规律用到对未来不确定场景的决策。
主体的不同:
计算机--机器学习。
人--数据分析。
数据分析是依靠人从历史数据中找到规,学习效果很大程度以来于人的经验与知识水平;
机器学习就是想要抛弃对人的依赖,靠机器来挖掘规律。
机器学习与统计学
- 《概率论》《数据统计》是机器学习的基石
- 传统的统计学,抽取一定量的样本然后 进行概率统计,然后得到结论 之后进行假设检验
- 传统的统计学受运算能力的限制,所以是用抽样的方式;
- 现在计算能力足够强,就不需要采用抽样的方式了。
典型应用
- 关联规则:比如“啤酒和纸尿裤”——购物篮分析(其实是数据挖掘)
- 聚类:比如用户群体细分
- 朴素贝叶斯:垃圾邮件
- 决策树:银行信贷风险识别
- ctr预估:搜索引擎互联网广告
- 协同过滤:推荐系统
- 自然语言处理:情感分析、实体识别
- 深度学习:图像识别
数据分析 vs 机器学习 的不同
数据的特点
①交易数据vs行为数据
- 数据分析处理的是交易数据,机器学习处理的是行为数据。
- 交易数据:存取款账单、用户订单、话费账单...与钱有关的数据。对数据一致性要求很高,应该放在关系型数据库中。
- 行为数据:搜索历史、点击历史、浏览历史、评论...对数据一致性要求不是很高,放在NoSQL数据库中。
②少量数据vs海量数据
③采样分析vs全量分析
NoSQL:只能处理行为数据,不能处理交易数据。强调分布式、CAP,保证数据吞吐量的前提下,在数据的一致性上打折扣。
解决业务问题不同
- 数据分析,报告历史上发生的事情。
- 机器学习:通过历史上发生的事情,来预测未来的事情。
技术手段不同
- 数据分析:分析方式是用户(数据分析师)驱动的,交互式分析。分析能力受限于数据分析师的能力,数据属性和维度很有限。
- 机器学习:分析方式是数据驱动的,自动进行知识发现。数据属性和维度数量级很大。
参与者不同
- 数据分析,分析师能力决定结果,目标用户是公司高层。
- 机器学习,数据质量决定结果,目标用户是个体。
对常用算法的分类方式
- 算法分类1:有监督学习 和 无监督学习
- 算法分类2:分类与回归、聚类、标注
- 算法分类3(重要,直指本质)
生成模型:用来说明分类问题。返回的是属于各个类的概率。
判别模型:用来说明分类问题。直接给一个函数,数据输入到函数中,直接返回类别。
机器学习解决问题的步骤
- 确定目标:
由业务需求,确定要解决的问题,收集数据,对数据进行特征工程(对数据清洗、整合,特征工程很重要!),根据要解决的问题提取出一些特征。 - 训练模型(重点)
定义模型;确定算法。
定义损失函数;找出算法的偏差。
优化算法;对算法进行优化。 - 模型评估
交叉验证;将不同的算法带入同一类数据中,验证效果。
效果评估;可以看出几个算法之间具体的差别、效果。
以一个图片根据颜色聚类问题为例,
首先明确要解决的问题——根据颜色聚类
收集到一些照片数据
进行特征工程:将图片转化成向量,这是非常重要的一步
然后用k-means聚类算法,完成模型训练
最后验证和评估。
初识机器学习——概念介绍(imooc笔记)的更多相关文章
- USB驱动程序之概念介绍学习笔记
现象:把USB设备接到PC 1. 右下角弹出"发现android phone" 2. 跳出一个对话框,提示你安装驱动程序 问1. 既然还没有"驱动程序",为何能 ...
- 《AngularJS深度剖析与最佳实践》笔记: 第二章 概念介绍
第二章 概念介绍 2.1 什么是UI? 用户界面包括内容(静态信息+动态信息), 外观, 交互. 在前端技术栈中分别由HTML, CSS和JS负责. 进一步抽象, 分别对应于MVC三个主要部分: Mo ...
- 【miscellaneous】 GStreamer应用开发手册学习笔记之基础概念介绍
第3章. 基础概念介绍 本章将介绍GStreamer的基本概念. 理解这些概念对于你后续的学习非常重要,因为后续深入的讲解我们都假定你已经完全理解了这些概念. 3.1. 元件(Elements) 元件 ...
- 《机器学习实战》学习笔记第九章 —— 决策树之CART算法
相关博文: <机器学习实战>学习笔记第三章 —— 决策树 主要内容: 一.CART算法简介 二.分类树 三.回归树 四.构建回归树 五.回归树的剪枝 六.模型树 七.树回归与标准回归的比较 ...
- (转载)林轩田机器学习基石课程学习笔记1 — The Learning Problem
(转载)林轩田机器学习基石课程学习笔记1 - The Learning Problem When Can Machine Learn? Why Can Machine Learn? How Can M ...
- Java机器学习软件介绍
Java机器学习软件介绍 编写程序是最好的学习机器学习的方法.你可以从头开始编写算法,但是如果你要取得更多的进展,建议你采用现有的开源库.在这篇文章中你会发现有关Java中机器学习的主要平台和开放源码 ...
- 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之集群概念介绍(一)
集群概念介绍(一)) 白宁超 2015年7月16日 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习 ...
- Linux LVM硬盘管理之一:概念介绍
一.LVM概念介绍: LVM是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现.LVM将一个或多个硬盘的分区在逻 ...
- 初识Hadoop入门介绍
初识hadoop入门介绍 Hadoop一直是我想学习的技术,正巧最近项目组要做电子商城,我就开始研究Hadoop,虽然最后鉴定Hadoop不适用我们的项目,但是我会继续研究下去,技多不压身. < ...
随机推荐
- Servlet中接收和返回数据
public class HelloServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest re ...
- VUE -- Identifier 'n_type' is not in camel case
Identifier 'n_type' is not in camel case 参数名的 `_` 去掉就好了
- 【java】[sql]使用Java程序向MySql数据库插入一千万条记录,各种方式的比较,最后发现insert批量插入方式对效率提升最明显
我的数据库环境是mysql Ver 14.14 Distrib 5.6.45, for Linux (x86_64) using EditLine wrapper 这个数据库是安装在T440p的虚拟机 ...
- MongoDB(mongodb-win32-x86_64-enterprise-windows-64-4.2.1-signed.msi)下载,启动和插入数据,查询
下载链接:https://pan.baidu.com/s/19lM5Q-_BaDbjaO1Pj0SbYg&shfl=sharepset 安装一路Next就行,安装完毕后,进入目录C:\Prog ...
- c++ new bad_alloc
try { for (int i = 0; i<1000; i++) { test1 = new Test(); cout << i << " new dog ...
- c++ throw异常(学习)
#include <iostream>#include <stdio.h> using namespace std; void my_copy(const char* src_ ...
- 阶段5 3.微服务项目【学成在线】_day03 CMS页面管理开发_15-异常处理-异常处理流程
右侧是框架报的异常 不可预知的,例如数据库连不上这一类的.可以在map中制定某些类的异常,如果找不到就最右边的 99999的, 系统对异常的处理使用统一的异常处理流程: 1.自定义异常类型. 2.自定 ...
- Qt编写自定义控件29-颜色选取面板
一.前言 这个控件主要是模仿QColorDialog对话框中的颜色选取面板,提供一个十字形状的标识器,鼠标按下开始选取颜色,移动到哪就选择该处的颜色值,对应右侧颜色条放大显示,本控件的难点就是如何绘制 ...
- rabbitmq-BasicReject
拒收,是接收端在收到消息的时候响应给RabbitMQ服务的一种命令,告诉服务器不应该由我处理,或者拒绝处理,扔掉.接收端在发送reject命令的时候可以选择是否要重新放回queue中.如果没有其他接收 ...
- Jetson TX2 不同的工作模式
Jetson TX2 有五种工作模式,下面介绍这几种工作模式下电压.频率以及如何启动. 原理图 几种不同的工作模式 mode mode name Denver Frequency ARM Freque ...