初识机器学习——概念介绍(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不适用我们的项目,但是我会继续研究下去,技多不压身. < ...
随机推荐
- HDU 1087 Super Jumping! Jumping! Jumping! ——(LIS变形)
和之前那个长方体最大高度是换汤不换药的题目.每次找之前最大的一个能接的接上即可.代码如下: #include <stdio.h> #include <algorithm> #i ...
- Apache Flink - 命令
$flink命令位置 命令 选项 jar包位置 \ --input 输入文件位置 --out 输出文件位置 ./bin/flink run ./examples/batch/WordCount.jar ...
- 表单事件集锦-input
最近在写一个手机端提交表单的项目,里面用了不少input标签,因为项目不太忙,所以,想做的完美点,但是遇到了一些问题,比如:页面中的必填项如果有至少一项为空,提交按钮就是不能提交的状态,所以需要对所有 ...
- 【Linux】安装 PostgreSQL
参考: CSDN1:https://blog.csdn.net/ctwy291314/article/details/79900074 1.进入 PostgreSQL 官网的下载地址, 2.选择下面的 ...
- kotlin之操作符重载
一元操作符 表达式 对应的函数 +a a.unaryPlus() -a a.unaryMinus() !a a.not() a++ a.inc() a-- a.dec() fun main(arg: ...
- PCA人脸识别学习笔记---代码篇
查看并改变当前的工作路径 path="D:\\python-file\\faker" os.chdir(path) retval=os.getcwd() print(retval) ...
- Bootstarp学习
Bootstarp中文网 http://www.bootcss.com/ https://v2.bootcss.com/javascript.html
- JAVA 基础编程练习题28 【程序 28 排序算法】
28 [程序 28 排序算法] 题目:对 10 个数进行排序 程序分析:可以利用选择法,即从后 9 个比较过程中,选择一个最小的与第一个元素交换, 下次类推,即 用第二个元素与后 8 个进行比较,并进 ...
- [C++]多源最短路径(带权有向图):【Floyd算法(动态规划法)】 VS n*Dijkstra算法(贪心算法)
1 Floyd算法 1.1 解决问题/提出背景 多源最短路径(带权有向图中,求每一对顶点之间的最短路径) 方案一:弗洛伊德(Floyd算法)算法 算法思想:动态规划法 时间复杂度:O(n^3) 形式上 ...
- Swift加载Xib创建的Controller
Xib显示如下: <注意箭头处即可> 按住Control键,点击Files'owner拖动到View即可. 加载该控制器如下: func registerClick() { let reg ...