初识机器学习——概念介绍(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不适用我们的项目,但是我会继续研究下去,技多不压身. < ...
随机推荐
- python数据分析与应用
python数据分析与应用笔记 使用sklearn构建模型 1.使用sklearn转换器处理数据 import numpy as np from sklearn.datasets import loa ...
- TypeError: Data location must be "memory" for return parameter in function, but none was given.
在用truffle编译智能合约时,报错 TypeError: Data location must be "memory" for return parameter in fu ...
- 检测系统中进程占满单个cpu的情况
#!/bin/bash function thread_used_cpu(){ # $1 为单个cpu负载的百分比 if [[ $1 == "" ]];then full_load ...
- java递归复制文件夹
package com.haiyisoft.hyoaService; import java.io.BufferedInputStream;import java.io.BufferedOutputS ...
- Python: 根据利润计算奖金
简述:企业发放的奖金根据利润提成.利润(I)低于或等于10万元时,奖金可提10%: 利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%: 20万到40 ...
- RotateDrawable
用来对Drawable进行旋转,也是通过setLevel来控制旋转的,最大值也是:10000 相关属性如下: fromDegrees:起始的角度,,对应最低的level值,默认为0 toDegrees ...
- C++ STL copy copy_backward
#include <iostream>#include <algorithm>#include <vector>#include <functional> ...
- UC浏览器打开百度显示 丰臣吉秀.网址
- 查看oracle数据库的链接数和用户
http://www.cnblogs.com/is1988/archive/2012/11/21/2780067.html 1.查询oracle的连接数select count(*) from v$s ...
- Node.js使用superagent模拟GET/POST请求样例
示例代码: var superagent = require('superagent'); superagent.get("http://localhost:8091/user/all?re ...