热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

吴恩达机器学习入门笔记14/15异常检测问题/推荐系统

14异常检测问题针对给出的样本构建一个模型,在模型范围内的样本点被认为是正常的,超出阈值的样本点被认为是异常的。14.1算法实现一堆样本的每个特征量都对应一个均值和方差计算样本每个




14 异常检测问题

针对给出的样本构建一个模型,在模型范围内的样本点被认为是正常的,超出阈值的样本点被认为是异常的。


14.1 算法实现



  • 一堆样本的每个特征量都对应一个均值和方差



  1. 计算样本每个特征的均值和标准差

  2. 利用高斯分布构建概率函数:p(x)=p(x1;μ1,σ12)p(x2;μ2,σ22)...p(xn;μn,σn2)p(x)=p(x_1;\mu_1,\sigma^2_1)p(x_2;\mu_2,\sigma^2_2)...p(x_n;\mu_n,\sigma^2_n)p(x)=p(x1​;μ1​,σ12​)p(x2​;μ2​,σ22​)...p(xn​;μn​,σn2​)

  3. 设定一个阈值ε\varepsilonε作为概率参考值,若新样本的特征计算出的P大于该值,则认为非异常,小于则认为是异常的


14.2 评估算法



  • 选取大量正常样本训练P

  • 少量正常样本和极少异常样本作为交叉验证集,尝试使用不同的ε\varepsilonε值使F1F_1F1​值最大

  • 另一部分的少量正常样本和极少异常样本作为测试集

  • 可以通过变化特征如取对数,降幂把样本的特征分布改变为高斯型,也可以组合特征使异常得以凸显


14.3 异常检测算法与监督学习的不同使用范围



  • 异常检测

    针对少量正样本(y=1),用大量负样本(正常)学习p(x)值



  • 监督学习

    大量正样本(异常样本)可以用来更新参数

    有大量的正样本和负样本也用监督学习




14.4 多元高斯分布

(14.1)p(X;μ,Σ)=1(2π)n/2Σ1/2exp(12(Xμ)TΣ1(Xμ))
p(X;\mu,\Sigma)=\frac{1}{(2\pi)^{n/2}|\Sigma|^{1/2}}exp(-\frac{1}{2}(X-\mu)^T\Sigma^{-1}(X-\mu))\tag{14.1}
p(X;μ,Σ)=(2π)n/2∣Σ∣1/21​exp(−21​(X−μ)TΣ−1(X−μ))(14.1)

[外链图片转存失败(img-f8FYhvH3-1568604363727)(E:\Artificial Intelligence Markdown\Machine Learning\pictures\14.4 多元高斯分布.png)]

改变协方差矩阵和均值可以捕捉不同的分布

样本数量m需要大于特征数量n,一般m10nm\ge10nm≥10n使用


15 推荐系统

通过已有的评价去推测未知的评价


15.1 建立推荐系统的方法


15.1.1 基于内容的推荐算法

因为假设已经有电影评价特征量xxx,学习得到用户特征量θ\thetaθ

[外链图片转存失败(img-BCCR8RHr-1568604363728)(E:\Artificial Intelligence Markdown\Machine Learning\pictures\15.1.1 推荐系统算法.png)]

相当于多个参数向量的线性回归,去掉了样本总量m

估计用户的特征值θ\thetaθ


15.1.2 协同过滤

假设有部分用户特征量θ\thetaθ,学习得到未知的电影评价特征量xxx,再反推用户特征量θ\thetaθ ,不断往复

估计电影的特征值xxx



  • 快速协同过滤:同时计算得到θ\thetaθ与xxx的算法:结合两种代价函数

[外链图片转存失败(img-KtrziNeJ-1568604363730)(E:\Artificial Intelligence Markdown\Machine Learning\pictures\15.1.2 协同过滤代价函数.png)][外链图片转存失败(img-xPngr4Vn-1568604363731)(E:\Artificial Intelligence Markdown\Machine Learning\pictures\15.1.2 协同过滤算法.png)]

可计算用户j对电影i的评分预测



  • 向量化实现协同过滤:XθTX\theta^TXθT

  • 推荐类似的电影:smallx(i)x(j)||x^{(i)}-x^{(j)}||∣∣x(i)−x(j)∣∣

  • 均值归一化:解决有一用户未给所有电影评分的问题(一列无取值)

  • [外链图片转存失败(img-MVx8gFZZ-1568604363740)(E:\Artificial Intelligence Markdown\Machine Learning\pictures\15.1.2 协同过滤均值归一化.png)]



推荐阅读
  • 深入理解C++中的KMP算法:高效字符串匹配的利器
    本文详细介绍C++中实现KMP算法的方法,探讨其在字符串匹配问题上的优势。通过对比暴力匹配(BF)算法,展示KMP算法如何利用前缀表优化匹配过程,显著提升效率。 ... [详细]
  • 深入解析:手把手教你构建决策树算法
    本文详细介绍了机器学习中广泛应用的决策树算法,通过天气数据集的实例演示了ID3和CART算法的手动推导过程。文章长度约2000字,建议阅读时间5分钟。 ... [详细]
  • 机器学习中的相似度度量与模型优化
    本文探讨了机器学习中常见的相似度度量方法,包括余弦相似度、欧氏距离和马氏距离,并详细介绍了如何通过选择合适的模型复杂度和正则化来提高模型的泛化能力。此外,文章还涵盖了模型评估的各种方法和指标,以及不同分类器的工作原理和应用场景。 ... [详细]
  • 毕业设计:基于机器学习与深度学习的垃圾邮件(短信)分类算法实现
    本文详细介绍了如何使用机器学习和深度学习技术对垃圾邮件和短信进行分类。内容涵盖从数据集介绍、预处理、特征提取到模型训练与评估的完整流程,并提供了具体的代码示例和实验结果。 ... [详细]
  •   上一篇博客中我们说到线性回归和逻辑回归之间隐隐约约好像有什么关系,到底是什么关系呢?我们就来探讨一下吧。(这一篇数学推导占了大多数,可能看起来会略有枯燥,但这本身就是一个把之前算法 ... [详细]
  • 深入理解K近邻分类算法:机器学习100天系列(26)
    本文详细介绍了K近邻分类算法的理论基础,探讨其工作原理、应用场景以及潜在的局限性。作为机器学习100天系列的一部分,旨在为读者提供全面且深入的理解。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 机器学习核心概念与技术
    本文系统梳理了机器学习的关键知识点,涵盖模型评估、正则化、线性模型、支持向量机、决策树及集成学习等内容,并深入探讨了各算法的原理和应用场景。 ... [详细]
  • 随着生活节奏的加快和压力的增加,越来越多的人感到不快乐。本文探讨了现代社会中导致人们幸福感下降的各种因素,并提供了一些改善建议。 ... [详细]
  • 本文详细探讨了Java中的24种设计模式及其应用,并介绍了七大面向对象设计原则。通过创建型、结构型和行为型模式的分类,帮助开发者更好地理解和应用这些模式,提升代码质量和可维护性。 ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 题目描述:给定n个半开区间[a, b),要求使用两个互不重叠的记录器,求最多可以记录多少个区间。解决方案采用贪心算法,通过排序和遍历实现最优解。 ... [详细]
  • 探讨一个显示数字的故障计算器,它支持两种操作:将当前数字乘以2或减去1。本文将详细介绍如何用最少的操作次数将初始值X转换为目标值Y。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 本文探讨如何设计一个安全的加密和验证算法,确保生成的密码具有高随机性和低重复率,并提供相应的验证机制。 ... [详细]
author-avatar
楠楠妈妈05乄23
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有