• 人工智能,大数据,云计算大杂烩


    百度ABC

    ABC = AI+Big data + Cloud Computing

    百度 基础云, 天像(智能多媒体平台),天算(智能大数据平台),天工(智能物联网平台),天智(人工智能平台)

    监督学习和无监督学习

    监督学习,就是人们常说的分类,通过已有的训练样本(即已知数据以及其对应的正确输出)去训练得到一个最优模型(这个模型属于某个函数的集合,最优则表示在某个评价准则下是最佳的),再利用这个模型将所有的输入映射为相应的输出,对输出进行简单的判断从而实现分类的目的,也就具有了对未知数据进行分类的能力。监督学习里典型的例子就是KNN、SVM

    无监督学习(也有人叫非监督学习,反正都差不多)则是另一种研究的比较多的学习方法,它与监督学习的不同之处,在于我们事先没有任何正确的训练样本,而需要直接对一堆数据进行建模,找到其中可能的特征。无监督学习里典型的例子就是聚类了。聚类的目的在于把相似的东西聚在一起,而我们并不关心这一类是什么。因此,一个聚类算法通常只需要知道如何计算相似度就可以开始工作了。比如,人类基因组合,输入一堆人类的基因数据,经过无监督的学习,可能会输出通过某些基因因子来划分的人类类别(cluster),而这在学习之前我们是无法知道的,甚至不知道应该由哪些基因因子来划分人类

    http://blog.csdn.net/bangemantou/article/details/12966533

    特征,建模,模型,机器学习,训练数据集 

    计算机用来学习的、反复看的图片叫“训练数据集”;“训练数据
    集”中,一类数据区别于另一类数据的不同方面的属性或特质,叫作“特征”;计算机在“大
    脑”中总结规律的过程,叫“建模”;计算机在“大脑”中总结出的规律,就是我们常说的“模
    型”;而计算机通过反复看图,总结出规律,然后学会认字的过程,就叫“机器学 习”

     classification problem vs regression problem

    分类问题输出多个类别;regression problem输出连续的预测值。

    machine learning的一般性原理

    给定的training data set首先抽象出最重要的特征参数,应用到一个机器学习model(比如regression model,神经网络),得出prediction。

    将prediction和实际的y值按照一定规则做出预测误差函数(w的函数),将该误差函数(loss function)应用到机器学习算法(比如梯度下降法)来优化模型model中的w参数,不断优化使得quality(loss function)最小

    sk-learn学习模型算法决策过程

    http://scikit-learn.org/stable/tutorial/machine_learning_map/

    linear regression(线性回归)

    给定一组数据x=[1,2,3,4,5]和y=[0.2,0,3,5,7]得出最能拟合x,y之间关系的一个线性曲线y=kx+b(这就是一元线性回归分析,因为只有一个自变量,一个因变量.如果回归分析中包括两个或两个以上的自变量,且自变量之间存在线性相关,则称为多重线性回归分析),随后我们据此曲线再给定任何一个数据,我们来预测其应有的输出是多少(这就是regression问题的本质概念:预测一个连续的value)

    hypothesis(假设函数)(model)

    在线性回归中,我们拟合出来的函数英文被成为hypothesis,也可以称此函数为学习后建立的model,比如y=kx+b,其中k和b被称为model的parameter,我们通过学习算法针对training set来进行训练学习,最终来确定这些parameter,从而就确定了最终的模型函数,通过这个函数,我们就可以做到对应的预测了

    线性回归问题的目标(target)(objective):  找到最优的Θ0和Θ1两个参数使得经过对于给定的training set中的x值,经过我们y=Θ01X的hypothesis模型得到的预测值和真实值y之间的方差均值最小化,J(Θ0,Θ1)就被成为cost function(或者说目标函数),也就是说使得目标函数最小化是我们机器学习算法的最终目标

    hypothesis和loss函数对比解读(假设Θ= 0以便简化问题), h函数为x的函数,而J函数则为Θ1的函数,我们选定不同的Θ1得到不同的h(x)函数,对应绘制图形,可以看出在Θ1=1时,J(Θ1)达到最小值,也就在这时,h函数和输入的训练集完全拟合

    gradient descent(梯度下降法)

    注意在梯度下降法更新参数时,必须是一次性同时更新Θ0和Θ1参数,而不运行交错更新!

    梯度下降是优化loss function使得其最小化的算法

    convex fuction(凸函数)

    线性回归的Loss函数是一个凸函数(相一个碗一样),只有一个全局最底点

    Matrix inverse

    如果A是一个mXm的矩阵,如果它有逆矩阵,则:

    A*A-1 = A-1 *A = I

    I = [

    1    0

    0     1

    ]的单位矩阵

    singular matrix:不可逆的矩阵

    矩阵相乘

    通过矩阵相乘,来实现一次批量计算多个假设函数(hypothesis)的预测值,而一般的library对于矩阵相乘都做了重要的优化,甚至可以完全发挥处理器多核,或者协处理器,高效地完成算法执行工作。

    矩阵相乘的几个特性:

    A*B一般不等于B*A 不具有交换律

    A*I = I* A(注意这里的I的型是不同的纬度不同)

    A*B*C=A*(B*C) 适用结合律

    多元线性回归

    如果输入的feature有多个的话,这时线性回归问题就被称为多元回归了,其hypothesis函数就可以简化为矩阵表达方式: hθ(x)=θTX, 具体如下:

    多元线性回归参数θ的更新(注意使用了新的下标表示不同feature(x)):

    feature scaling的重要性:

    我们在做线性回归梯度下降算法时,如果多个参数的输入参数(feature)值范围相差巨大,则会导致收敛速度过慢,因此我们在训练数据时,首先需要做的是输入训练数据的正规化,常用的方法是mean normalization减去均值除以范围

    学习率α的重要性

    如果过大,可能导致回归发散,如果过小则会导致收敛过慢。可以在实验中画出J(θ) 对于iteration number的函数图像

    多元回归的部分notation图例

    hypothes = 参数向量*feature向量(x)

    linear regression梯度下降法的替代方案(矩阵转置直接求解法)

    梯度下降法对于求解θ参数使得cost function最小化是一个通用方法,但是如果x feature个数很少的话,我们有一个替代方案,无需梯度下降无数步的迭代,一次性计算即可得出θ参数

    矩阵不可逆的几种原因及其解决方案

    为何一般矩阵向量都会默认写成列向量?

    原因在于一般矩阵都对应着线性映射,考虑矩阵A,如果x是列向量,那么不妨把A对应的线性映射还是记作A,那么就有A(x)=Ax,右边就是矩阵的乘法.A(x)=Ax

    矩阵内积的矩阵向量化求解

    我们知道对于线性回归的h函数表示为h=θ01x12x2,如果要求解特定参数下的h值,我们编码有两种方案,要么for loop来求解,要么通过矩阵运算来求解。要使用矩阵运算,首先第一步我们就要将x和θ做向量化,这样矩阵运算的好处是会运用到科学计算中已经优化的库代码,甚至很好地运用到并行处理

    Logistic Regression Classification

    对训练集训练后,输出(0,1),表征结果的分类。这时如果使用线性回归算法并不适合,这时我们就要使用新的算法:逻辑回归。

    在逻辑回归分类算法中,由于输出必须在0到1之间,因此我们要引入一个叫做sigmoid函数(或者称为logistic function)来对θTx做转换

    hθ(x)=P(y=1|x;θ) 给定features x,在参数为θ的情形下,输出y=1的概率值,在逻辑回归算法中,所有的概率加起来必须为1,比如:

    P(y=1|x;θ)+P(y=0|x;θ) = 1

    decision boundary

    决策边界只取决于给定的θ参数,和训练数据集无关,使用高阶多项式外加sigmoid函数组成hypothesis函数,则可以形成非常复杂的决策边界

    获取训练数据的几个方法

    1. 人工合成,比如使用已有的字体库,就可以获得大量字符不同形态的image,或者对已有的数据做变形处理,比如可以对图片做倾斜,拉伸等操作形成新的labled data set

    2.自己来做搜集标注整理

    3. 雇佣人工标注, https://www.mturk.com/mturk/welcome

    基于tensorflow机器学习应用开发和部署流程

    http://blog.csdn.net/qq_36510261/article/details/72533550

    推荐系统

    http://blog.csdn.net/initphp/article/details/52368867

    terms used in machine learning

    model accuracy vs model complexity

    从下面的图中可以看到随着model复杂度增加,针对training set,模型可以完美地拟合(fit),但是对于test set却并不是持续增加的!我们必须寻找到一个平衡点,

    使得我们的model既能比较好的拟合训练集,又能很好的generalize(泛化),也就是真正学到了global pattern,而不是仅仅为了拟合一些noise data(local pattern)而过拟合

    generization泛化/过拟合/欠拟合(overfitting/underfitting)概念

    理解,检测,并且避免overfitting或许是机器学习中需要解决的最重要的问题

     simple models is much more effective at ignoring minor variations in training data and capturing the more important global trend with better generization performance

    处理overfit的几种思路:

    1. 减少不必要的特征feature参与运算

    2.大量增加有效的数据

    3.通过正规惩罚项来均匀化各个特征对y的贡献

    机器学习的一般过程:

    数据组织和数据清洗中用到的参数

    variance: (真值-均数)的平方取和除以count

    standard variance:取variance的根号

    数值量:

    - 中点度量(mean,median)

    -数据分散性度量 (range,percentile, variance, standard deviation)

    类别量:

    - top count

    - unique count

    -category counts and proportions

    per category statistics

    机器学习model的生命周期

    机器学习研究方法过程

    机器学习问题分类

    神经网络相关:

    人工智能可以涉足的领域:复杂度和重复系数

    如何知道哪些features是predictive的,我们如何选择一个学习的算法?

    数据科学家的重要工作就是做特征选择

  • 相关阅读:
    VOL.1 利用vmware ThinApp 制作非XP下可以运行的IE6 【无插件版】(windows vista/7/8 x86/x64 )
    js中each的用法
    Math函数floor、round、ceil的区别
    JS中的prototype解析
    Ubuntu虚拟机搭建
    我的第一篇blog
    实验四+124+高小娟
    实验三+124+高小娟
    第5次作业+105032014124+高小娟
    第4次作业类测试代码+105032014124+高小娟
  • 原文地址:https://www.cnblogs.com/kidsitcn/p/7418262.html
Copyright © 2020-2023  润新知