吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)

为了更好的学习,充分复习自己学习的知识,总结课内重要知识点,每次完成作业后都会更博。

英文非官方笔记

总结

1.异常检测-问题动机

(1)问题检测是什么

    a.我们有一些包括正常值的数据

    b.我们如何确保他们是正常的取决于我们

    c.事实上,如果有一些实际上并不正常,那么也可以使用该数据集作为参考点,我们可以看到其他示例是否异常

(2)我们如何做到这一点

    a.首先,使用我们的训练数据集建立一个模型

    b.我们可以使用p(x)来访问这个模型

    c.如果p(xtest) < ε -->,标记这个为异常

    d.如果p(xtest) >= ε -->,这个就为正常

(3)应用

    a.欺诈识别(通过一些特征来建立活动模型,算出正常行为概率)

    b.制造业(检测飞机引擎)

    c.监控数据中心的计算机

2.高斯分布

(1)均值μ

(2)方差σ2

(3)高斯分布写为N(μ,σ2 ),意思是服从以均值μ方差σ2的高斯分布

(4)高斯分布表达式和曲线


吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第1张图片

(5)参数对曲线影响

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第2张图片

(6)参数估计问题

    a.均值μ=样本均值

    b.方差σ2 = 样本方差


3.误差检测算法

(1)m个样本的无标签训练集

    a.数据 = {x1x2, ..., x}

    b.从数据集中的模型P(X)=p(x1μ1 , σ12) * p(x2μ2 , σ22) * ... p(xμn , σn2)

    c.P(X)可表示为


(2)算法

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第3张图片

    a.选择(特征建立特征向量

    b.拟合参数

    c.计算p(x)

(3)例子

    a.x1x2

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第4张图片

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第5张图片

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第6张图片

    b.p(x1test) = 0.436 >= ε (~40% 误差是正常)(如果式子成立,那么该样本正常)        c.p(x2test) = 0.0021 < ε (~0.2% 误差是正常)(如果式子成立,那么该样本异常)

4.开发和评估异常检测系统(略)

5.异常检测和监督学习对比

(1)异常检测(下列情况下使用异常检测更好)

    a.非常小数量的正样本

    b.非常大数量的负样本

    c.很多类型的错误

(2)监督式学习(下列情况下使用监督式学习更好

    a.同时有大量正样本和负样本

    b.有足够的正样本

6.选择特征去使用

(1)非高斯特征

    a.非高斯数据如下图

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第7张图片

    b.对非高斯数据转化,如上图用log()函数

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第8张图片

(2)异常检测的误差分析

    a.想出构造特征的好办法

    b.像监督式学习错误分析程序

7.多变量高斯分布

(1)无标签数据

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第9张图片

(2)结合特征一起看

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第10张图片

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第11张图片

(3)多变量高斯分布模型

    a.表达式


    b.协方差矩Σ

 (4)不同参数对多变量高斯分布的影响

    a.

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第12张图片

    b.

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第13张图片

    c.

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第14张图片

8.在异常检测上运用多变量高斯分布

(1)高斯模型




(2)算法

    a.拟合参数

    b.可视化测试集

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第15张图片

    c.比较计算值和ε

    d.拟合之后图

吴恩达机器学习总结:第十二 异常检测(大纲摘要及课后作业)_第16张图片

(3)原始模型VS多变量高斯

    a.原始模型

        1)需要更多数据

        2)需要额外特征

        3)计算更便捷(对大特征量放缩更好)

    b.多变量高斯模型

        1)使用频率更小

        2)不需要额外特征量(计算效率低)

        3)需要m>n(样本数量大于特征量)

作业

1.载入,可视化数据集

load('ex8data1.mat');
plot(X(:, 1), X(:, 2), 'bx');
axis([0 30 0 30]);
xlabel('Latency (ms)');
ylabel('Throughput (mb/s)');

2.估算数据集的统计数据

[mu sigma2] = estimateGaussian(X);
p = multivariateGaussian(X, mu, sigma2);
visualizeFit(X,  mu, sigma2);
xlabel('Latency (ms)');
ylabel('Throughput (mb/s)');

%estimateGaussian函数
[m, n] = size(X);
mu = zeros(n, 1);
sigma2 = zeros(n, 1);
mu = mean(X);
sigma2 = 1 / m * sum ( bsxfun(@minus, X, mu) .^2 );
end

%multivariateGaussian函数
k = length(mu);
if (size(Sigma2, 2) == 1) || (size(Sigma2, 1) == 1)
    Sigma2 = diag(Sigma2);
end
X = bsxfun(@minus, X, mu(:)');
p = (2 * pi) ^ (- k / 2) * det(Sigma2) ^ (-0.5) * ...
    exp(-0.5 * sum(bsxfun(@times, X * pinv(Sigma2), X), 2));
end

%visualizeFit函数
[X1,X2] = meshgrid(0:.5:35); 
Z = multivariateGaussian([X1(:) X2(:)],mu,sigma2);
Z = reshape(Z,size(X1));
plot(X(:, 1), X(:, 2),'bx');
hold on;
% Do not plot if there are infinities
if (sum(isinf(Z)) == 0)
    contour(X1, X2, Z, 10.^(-20:3:0)');
end
hold off;
end

3.寻找异常值

val = multivariateGaussian(Xval, mu, sigma2);
[epsilon F1] = selectThreshold(yval, pval);
outliers = find(p < epsilon);
hold on
plot(X(outliers, 1), X(outliers, 2), 'ro', 'LineWidth', 2, 'MarkerSize', 10);
hold off

%selectThreshold函数
bestEpsilon = 0;
bestF1 = 0;
F1 = 0;
stepsize = (max(pval) - min(pval)) / 1000;
for epsilon = min(pval):stepsize:max(pval)
predictions = (pval < epsilon);
    fp = sum((predictions == 1) & (yval == 0));
    fn = sum((predictions == 0) & (yval == 1));
    tp = sum((predictions == 1) & (yval == 1));
    prec = tp / (tp + fp);
    rec = tp / (tp + fn);
    F1 = 2 * prec * rec / (prec + rec);
    if F1 > bestF1
       bestF1 = F1;
       bestEpsilon = epsilon;
    end
end
end

4.多维度异常值

load('ex8data2.mat');
[mu sigma2] = estimateGaussian(X);
p = multivariateGaussian(X, mu, sigma2);
pval = multivariateGaussian(Xval, mu, sigma2);
[epsilon F1] = selectThreshold(yval, pval);

你可能感兴趣的:(个人学习)