# 机器学习练习8 异常检验算法
import numpy as np
import pandas as  pd
import matplotlib.pyplot as plt
import seaborn as sb
from scipy.io import loadmat
data = loadmat('E:\PyCharm\数据\ex8data1.mat')
X = data['X']
fig, ax = plt.subplots(figsize=(12,8))
ax.scatter(X[:,0],X[:,1])
plt.show()
# 创建一个返回每个要素的均值和方差的函数
def estimate_gaussian(X):mu = X.mean(axis=0)sigma =X.var(axis = 0)return mu,sigma
mu,sigma = estimate_gaussian(X)
Xval = data['Xval']
yval = data['yval']
# 使用scipy的内置方法计算数据点属于正态分布的概率的方法
from scipy import stats
dist = stats.norm(mu[0],sigma[0])
dist.pdf(15)
# 一个找到给定概率密度值和真实标签的最佳阈值的函数
def select_threshold(pval,yval):best_epsilon = 0best_fl = 0fl =0step = (pval.max()-pval.min())/100for epsilon in np.arange(pval.min(),pval.max(),step):preds = pval<epsilontp = np.sum(np.logical_and(preds == 1, yval == 1)).astype(float)fp = np.sum(np.logical_and(preds == 1, yval == 0)).astype(float)fn = np.sum(np.logical_and(preds == 0, yval == 1)).astype(float)precision = tp / (tp + fp)recall = tp / (tp + fn)f1 = (2 * precision * recall) / (precision + recall)if f1 > best_f1:best_f1 = f1best_epsilon = epsilonreturn best_epsilon, best_f1
# 将阈值应用于数据集,并可视化结果
outliers = np.where(p < epsilon)
fig, ax = plt.subplots(figsize=(12,8))
ax.scatter(X[:,0], X[:,1])
ax.scatter(X[outliers[0],0], X[outliers[0],1], s=50, color='r', marker='o')
plt.show()

Machine Learning ——Homework 8相关推荐

  1. Build a Machine Learning Portfolio(构建机器学习投资组合)

    Complete Small Focused Projects and Demonstrate Your Skills (完成小型针对性机器学习项目,证明你的能力) A portfolio is ty ...

  2. 机器学习(Machine Learning)深度学习(Deep Learning)资料(Chapter 2)

    机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2) - tony的专栏 - 博客频道 - CSDN.NET 注:机器学习资料篇目一共 ...

  3. Machine Learning Exercise 1.1

    Machine Learning Exercise 1.1 目录 Machine Learning Exercise 1.1 1. 实验题目:编写程序模拟仿真多项式回归 2. 实验要求 3. 实验过程 ...

  4. Machine Learning Summary

    Machine Learning Summary General Idea No Free Lunch Theorem (no "best") CV for complex par ...

  5. Understanding Machine Learning By Shai Shalev-Shwartz and Shai Ben-David

    课程主页: http://www.cs.huji.ac.il/~shais/UnderstandingMachineLearning/courses.html 电子书pdf链接: http://www ...

  6. bff v2ex_语音备忘录的BFF-如何通过Machine Learning简化Speech2Text

    bff v2ex by Rafael Belchior 通过拉斐尔·贝尔基奥尔(Rafael Belchior) 语音备忘录的BFF-如何通过Machine Learning简化Speech2Text ...

  7. 吴恩达新书《Machine Learning Yearning》完整中文版 PDF 下载!

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale资源 推荐人:GithubDaily,Datawhale伙伴 <Mach ...

  8. 吴恩达《Machine Learning》Jupyter Notebook 版笔记发布!图解、公式、习题都有了

    在我很早之前写过的文章<机器学习如何入门>中,就首推过吴恩达在 Coursera 上开设的<Machine Learning>课程.这门课最大的特点就是基本没有复杂的数学理论和 ...

  9. 吴恩达新书《Machine Learning Yearning》完整中文版开源!

    选自Github 来源:机器学习算法与自然语言处理 吴恩达新书<Machine Learning Yearning>完整中文版开源,整理给大家. <Machine Learning ...

  10. Auto Machine Learning 自动化机器学习笔记

    ⭐适读人群:有机器学习算法基础 1. auto-sklearn 能 auto 到什么地步? 在机器学习中的分类模型中: 常规 ML framework 如下图灰色部分:导入数据-数据清洗-特征工程-分 ...

最新文章

  1. 如何删除Cookie?
  2. python利器手机版-将安卓手机打造成你的python全栈开发利器
  3. Python 图像处理篇-利用opencv库展示本地图片实例演示
  4. 企鹅java游戏下载安装_企鹅企鹅生活安卓版游戏下载|企鹅企鹅生活手游下载v1.6.1-乐游网安卓下载...
  5. 2016陕西省ACM 热身体B 种类并查集
  6. 卷积神经网络爬虫实现新闻在线分类系统
  7. Java Vector setElementAt()方法与示例
  8. Eclipse插件开发中对于外部Jar包和类文件引用的处理(彻底解决插件开发中的NoClassDefFoundError问题)...
  9. IntelliJ IDEA 2020.1 首个稳定版重磅发布!
  10. 让Windows 2003 Server支持ASP程序
  11. 11.C 语言连接 MySQL
  12. .net5 和 .net6 部署到 IIS 完整步骤
  13. win10照片查看器_win10最好的看图软件?win10照片查看软件推荐
  14. 驱动精灵万能网卡版单文件版 v9.61
  15. 大数据行业最顶尖明星人才TOP20
  16. 以太网未识别的网络win10_win10系统遇到以太网无法识别网络如何解决
  17. day 32 子进程的开启 及其用法
  18. 14.嵌入式控制器EC实战 SMBus读取电池信息并控制充放电
  19. 详细解读:大数据分析的学习
  20. 智能可视化门铃方案调研报告

热门文章

  1. c事件和委托的区别_web前端教程分享JavaScript学习笔记之Event事件二
  2. mysql考试会自动给我们放好路径吗_Jsp struts mysql实现的在线考试系统项目源码附带视频运行教程...
  3. 读取访问权限冲突怎么解决_CPU怎么保证内存访问冲突?一致性?
  4. verilog设计一个补码加减法运算器_一文搞懂:计算机中为什么用补码来存储数据?...
  5. TypeScript:数组
  6. mysql 多个命令行,5.8.2.1在Windows命令行中启动多个MySQL实例
  7. adams matlab 柔性体,【ADAMS柔性体】柔性体生成流程与注意事项
  8. commons-beanutils实现java深度克隆
  9. hdf5写文件的一个官方实例
  10. 重磅!2020 年算法工程师技术路线图