scikit-learn机器学习常用算法原理及编程实战(一)

机器学习介绍

  • 机器学习的概念
  • 机器学习要解决的问题分类
  • 使用机器学习解决问题的一般性步骤

什么是机器学习

  • 机器学习是一个计算机程序,针对某个特定的任务 ,从经验中学习,并且越做越好。
  • 谁掌握的数据量大 、质量高,谁就占据了机器学习和人工智能领域最有利的资本。

    机器学习有什么用

  • 语音识别、自然语言处理、人脸识别系统等等

    机器学习的分类

  • 有监督学习(Supervised learning)---通过大量已知的输入和输出相配对的数据,让计算机从中学习出规律,从而能针对一个新的输入做出合理的输出预测。
    回归学习(Regression learning):即输出结果是一个具体的数值,它的预测模型是一个连续的函数。
    分类学习(Classfication learning):即输出结果是离散的,即要么输出1表示是垃圾邮件,要么输出0表示不是垃圾邮件。
  • 无监督学习(Unsupervised learning)---通过学习大量的无标记的数据,去分析出数据本身的内在特点和结构。
    聚类(Clustering):是我们在分析数据之前其实是不知道有哪些类别的。聚类问题的答案是未知的,需要利用算法从数据里挖掘出数据的特点和结构。
    两种机器学习类别的最大区别是,有监督学习的训练数据里有己知的结果来“监督”;而无监督学习的训练数据里没有结果“监督”,不知道到底能分析出什么样的结果。

    机器学习应用开发的典型步骤

    1. 数据采集和标记
  • 在数据采集阶段,需要收集尽量多的特征。特征越全,数据越多,训练出来的模型才会越准确。
  • 数据标记到有监督的学习方法是必须的。
    2. 数据清洗
  • 数据清洗包括单位统一、去掉重复的数据及噪声数据、让数据具备结构化特征,以方便作为机器学习算法的输入。
    3. 特征选择
  • 特征选择的方法之一是人工选择方法,即对逐个特征进行人员分析,然后选择合适的特征集合。
  • 另外一个方法是通过模型来自动完成,如PCA算法 。
    4. 模型选择
  • 选择哪个模型,和问题领域、数据量大小、训练时长、模型的准确度等多方面有关。
    5. 模型训练和测试
  • 数据集分成训练数据集和测试数据集。以确保测试的准确性,即模型的准确性是要用它“没见过”的数据来测试,而不能用那些用来训练这个模型的数据来测试。
  • 更合理的数据集划分方案是分成3个,此外还要再加一个交叉验证数据集。
    6. 模型性能评估和优化
  • 训练时长
  • 数据集是否足够多
  • 模型的准确性
  • 模型是否能满足应用场景的性能要求
    7. 模型使用
  • 训练出来的模型可以把参数保存起来,下次使用时直接加载即可。一般来讲,模型训练需要的计算量是很大的,也需要较长的时间来训练,这是因为一个好的模型参数,需要对大型数据集进行训练后才能得到。而真正使用模型时,其计算量是比较少的,一般是直接把新样本作为输入,然后调用模型即可得出预测结果。

原文地址:https://www.cnblogs.com/DyerLee/p/10656744.html

时间: 2024-10-13 02:58:30

scikit-learn机器学习常用算法原理及编程实战(一)的相关文章

郑捷《机器学习算法原理与编程实践》学习笔记(第六章 神经网络初步)6.3 自组织特征映射神经网路(SMO)

具体原理网址:http://wenku.baidu.com/link?url=zSDn1fRKXlfafc_tbofxw1mTaY0LgtH4GWHqs5rl8w2l5I4GF35PmiO43Cnz3YeFrrkGsXgnFmqoKGGaCrylnBgx4cZC3vymiRYvC4d3DF3 自组织特征映射神经网络(Self-Organizing Feature Map.也称Kohonen映射),简称为SMO网络,主要用于解决模式识别类的问题.SMO网络属于无监督学习算法,与之前的Kmeans算

《机器学习算法原理与编程实践》学习笔记(二)

(上接第一章) 1.2 对象.矩阵与矢量化编程 1.2.1对象与维度(略) 1.2.2初识矩阵(略) 1.2.3矢量化编程与GPU运算(略) 1.2.4理解数学公式与NumPy矩阵运算 1.矩阵的初始化 #coding:utf-8 import numpy as np #导入NumPy包 #创建3*5的全0矩阵和全1的矩阵 myZero = np.zeros([3,5])#3*5的全0矩阵 print myZero myZero = np.ones([3,5])##3*5的全1矩阵 print

《机器学习算法原理与编程实践》学习笔记(三)

(上接第一章) 1.2.5 Linalg线性代数库 在矩阵的基本运算基础之上,NumPy的Linalg库可以满足大多数的线性代数运算. .矩阵的行列式 .矩阵的逆 .矩阵的对称 .矩阵的秩 .可逆矩阵求解线性方程 1.矩阵的行列式 In [4]: from numpy import * In [5]: #n阶矩阵的行列式运算 In [6]: A = mat([[1,2,3],[4,5,6],[7,8,9]]) In [7]: print "det(A):",linalg.det(A)

《机器学习算法原理与编程实践》学习笔记(一)

第一章 机器学习的基础 1.1编程语言与开发环境 1.1.1 Python 安装(略) 1.2.2 Python安装包的安装:可以选选择安装集成包anaconda(略) 1.1.3 IDE配置及安装测试 IDE选择UltraEdit高级文本编辑器,配置步骤如下: (1)选择"高级"-->"用户工具"命令,如图1.4所示. 图1.5 配置UltraEdit步骤1 (2)在如图1.5所示输入各项参数,然后单击"应用按钮" 图1.5 配置Ultr

深度学习之目标检测常用算法原理+实践精讲 YOLO / Faster RCNN / SSD / 文本检测 / 多任务网络

深度学习之目标检测常用算法原理+实践精讲 YOLO / Faster RCNN / SSD / 文本检测 / 多任务网络 资源获取链接:点击这里 第1章 课程介绍 本章节主要介绍课程的主要内容.核心知识点.课程涉及到的应用案例.深度学习算法设计通用流程.适应人群.学习本门课程的前置条件.学习后达到的效果等,帮助大家从整体上了解本门课程的整体脉络. 1-1 课程导学 第2章 目标检测算法基础介绍 本章节主要介绍目标检测算法的基本概念.传统的目标检测算法.目前深度学习目标检测主流方法(one-sta

【机器学习】算法原理详细推导与实现(六):k-means算法

[机器学习]算法原理详细推导与实现(六):k-means算法 之前几个章节都是介绍有监督学习,这个章节介绍无监督学习,这是一个被称为k-means的聚类算法,也叫做k均值聚类算法. 聚类算法 在讲监督学习的时候,通常会画这样一张图: 这时候需要用logistic回归或者SVM将这些数据分成正负两类,这个过程称之为监督学习,是因为对于每一个训练样本都给出了正确的类标签. 在无监督学习中,经常会研究一些不同的问题.假如给定若干个点组成的数据集合: 所有的点都没有像监督学习那样给出类标签和所谓的学习样

深度学习之目标检测常用算法原理+实践精讲

第1章 课程介绍本章节主要介绍课程的主要内容.核心知识点.课程涉及到的应用案例.深度学习算法设计通用流程.适应人群.学习本门课程的前置条件.学习后达到的效果等,帮助大家从整体上了解本门课程的整体脉络. 第2章 目标检测算法基础介绍本章节主要介绍目标检测算法的基本概念.传统的目标检测算法.目前深度学习目标检测主流方法(one-stage.two-stage.多任务网络).相关算法的基本流程.算法性能的评价指标.不同算法的优缺点和性能比较等,并结合实际的应用场景和案例来介绍目标检测算法的重要性和实用

【机器学习】算法原理详细推导与实现(五):支持向量机(下)

[机器学习]算法原理详细推导与实现(五):支持向量机(下) 上一章节介绍了支持向量机的生成和求解方式,能够根据训练集依次得出\(\omega\).\(b\)的计算方式,但是如何求解需要用到核函数,将在这一章详细推导实现. 核函数 在讲核函数之前,要对上一章节得到的结果列举出来.之前需要优化的凸函数为: \[ min_{\gamma,\omega,b}->\frac{1}{2}||\omega||^2 \] \[ y^{(i)}(\omega^Tx^{(i)}+b) \geq 1 ,i=1,2,.

机器学习--感知机算法原理、方法及代码实现

1.感知器算法原理 两类线性可分的模式类:,设判别函数为:. 对样本进行规范化处理,即类样本全部乘以(-1),则有: 感知器算法通过对已知类别的训练样本集的学习,寻找一个满足上式的权向量. 2.算法步骤 (1)选择N个分属于和类的模式样本构成训练样本集{ X1,  …, XN }构成增广向量形式,并进行规范化处理.任取权向量初始值W(1),开始迭代.迭代次数k=1. (2)用全部训练样本进行一轮迭代,计算WT(k)Xi 的值,并修正权向量.分两种情况,更新权向量的值: ?若   ,分类器对第 i