高级统计方法 第5次作业

作业评阅:

概念

1.问题

2.问题(略)

4.问题(略)

(a)问题(略)

10%,忽略 X < 0.05和 X > 0.95的情况。

(b)问题(略)

1%

(c)问题(略)

 0.10^(100)100=10^(−98)%

(d)

随着p的现象增大,几何上观测值接近指数减少。

(e)

5.问题(略)

(a)问题(略)

如果贝叶斯决策边界是线性的,我们期望 QDA 在训练集上表现得更好,因为它更高的灵活性将产生更接近的匹配。在测试集上,我们预期 LDA 的表现会优于 QDA,因为 QDA 可能会超出贝叶斯决策边界的线性度。

(b)问题(略)

如果贝叶斯决策边界是非线性的,我们期望 QDA 在训练集和测试集上都能表现得更好。

(c)问题(略)

我们期望 QDA 相对于 LDA 的测试预测精度能够随着样本容量n的增加而提高,因为更灵活的方法将产生更好的拟合,更多的样本可以拟合和方差抵消了更大的样本量。

(d)

错误。因为QDA可能会产生过拟合,从而使得测试误差增大。

6.问题(略)

8.问题(略)

逻辑斯蒂回归训练误差为20%,测试误差为30%,平均误差为25%。

1最近邻算法平均错误率18%,但是由于其训练误差为0%,所以其测试误差为36%,大于逻辑斯蒂回归,因此最终选择逻辑斯蒂回归进行新的预测。

9.问题(略)

(a)问题(略)

(b)问题(略)

、、、、、、

应用

10.问题(略)

(a)问题(略)

library(ISLR)

summary(Weekly)

Pairs(Weekly)

Cor(Weekly[,-9])

Year和Volume有一定关联,没有发现模式。

(b)问题(略)

attach(Weekly)

glm.fit = glm(Direction ~ Lag1 + Lag2 + Lag3 + Lag4 + Lag5 + Volume, data = Weekly,

    family = binomial)

summary(glm.fit)

Lag2的p值较小有一定的统计学意义。

(c)问题(略)

glm.probs = predict(glm.fit, type = "response")

glm.pred = rep("Down", length(glm.probs))

glm.pred[glm.probs > 0.5] = "Up"

table(glm.pred, Direction)

总体预测正确率56.1%。但是依然可以看到错误率较高。

(d)

train = (Year < 2009)

Weekly.0910 = Weekly[!train, ]

glm.fit = glm(Direction ~ Lag2, data = Weekly, family = binomial, subset = train)

glm.probs = predict(glm.fit, Weekly.0910, type = "response")

glm.pred = rep("Down", length(glm.probs))

glm.pred[glm.probs > 0.5] = "Up"

Direction.0910 = Direction[!train]

table(glm.pred, Direction.0910)

mean(glm.pred == Direction.0910)

(e)

library(MASS)

lda.fit = lda(Direction ~ Lag2, data = Weekly, subset = train)

lda.pred = predict(lda.fit, Weekly.0910)

table(lda.pred$class, Direction.0910)

mean(lda.pred$class == Direction.0910)

(f)

qda.fit = qda(Direction ~ Lag2, data = Weekly, subset = train)

qda.class = predict(qda.fit, Weekly.0910)$class

table(qda.class, Direction.0910)

mean(qda.class == Direction.0910)

(g)

library(class)

train.X = as.matrix(Lag2[train])

test.X = as.matrix(Lag2[!train])

train.Direction = Direction[train]

set.seed(1)

knn.pred = knn(train.X, test.X, train.Direction, k = 1)

table(knn.pred, Direction.0910)

mean(knn.pred == Direction.0910)

(h)

比较而言,逻辑斯蒂回归和LDA方法结果最好。

(i)

逻辑斯蒂回归Lag2:Lag1

glm.fit = glm(Direction ~ Lag2:Lag1, data = Weekly, family = binomial, subset = train)

glm.probs = predict(glm.fit, Weekly.0910, type = "response")

glm.pred = rep("Down", length(glm.probs))

glm.pred[glm.probs > 0.5] = "Up"

Direction.0910 = Direction[!train]

table(glm.pred, Direction.0910)

mean(glm.pred == Direction.0910)

Lag1和Lag2相互作用的LDA

lda.fit = lda(Direction ~ Lag2:Lag1, data = Weekly, subset = train)

lda.pred = predict(lda.fit, Weekly.0910)

mean(lda.pred$class == Direction.0910)

对Lag2绝对值进行平方根后QDA

qda.fit = qda(Direction ~ Lag2 + sqrt(abs(Lag2)), data = Weekly, subset = train)

qda.class = predict(qda.fit, Weekly.0910)$class

table(qda.class, Direction.0910)

mean(qda.class == Direction.0910)

KNN K=10

knn.pred = knn(train.X, test.X, train.Direction, k = 10)

table(knn.pred, Direction.0910)

mean(knn.pred == Direction.0910)

KNN K=100

knn.pred = knn(train.X, test.X, train.Direction, k = 100)

table(knn.pred, Direction.0910)

mean(knn.pred == Direction.0910)

11.问题(略)

(a)问题(略)

library(ISLR)

summary(Auto)

attach(Auto)

mpg01 = rep(0, length(mpg))

mpg01[mpg > median(mpg)] = 1

Auto = data.frame(Auto, mpg01)

(b)问题(略)

cor(Auto[, -9])

pairs(Auto)

与cylinders, weight, displacement, horsepower有关。

(c)问题(略)

根据年份是否是偶数划分

train = (year%%2 == 0)  # 如果年份是偶数

test = !train

Auto.train = Auto[train, ]

Auto.test = Auto[test, ]

mpg01.test = mpg01[test]

(d)

library(MASS)

lda.fit = lda(mpg01 ~ cylinders + weight + displacement + horsepower, data = Auto,

    subset = train)

lda.pred = predict(lda.fit, Auto.test)

mean(lda.pred$class != mpg01.test)

12.6%的错误率

(e)

qda.fit = qda(mpg01 ~ cylinders + weight + displacement + horsepower, data = Auto,

    subset = train)

qda.pred = predict(qda.fit, Auto.test)

mean(qda.pred$class != mpg01.test)

13.2%的错误率。

(f)

glm.fit = glm(mpg01 ~ cylinders + weight + displacement + horsepower, data = Auto,

    family = binomial, subset = train)

glm.probs = predict(glm.fit, Auto.test, type = "response")

glm.pred = rep(0, length(glm.probs))

glm.pred[glm.probs > 0.5] = 1

mean(glm.pred != mpg01.test)

12.1%的错误率。

(g)

library(class)

train.X = cbind(cylinders, weight, displacement, horsepower)[train, ]

test.X = cbind(cylinders, weight, displacement, horsepower)[test, ]

train.mpg01 = mpg01[train]

set.seed(1)

# KNN(k=1)

knn.pred = knn(train.X, test.X, train.mpg01, k = 1)

mean(knn.pred != mpg01.test)

KNN(k=10)

knn.pred = knn(train.X, test.X, train.mpg01, k = 10)

mean(knn.pred != mpg01.test)

KNN(k=100)

knn.pred = knn(train.X, test.X, train.mpg01, k = 100)

mean(knn.pred != mpg01.test)

K=100,14.3%

K=10,16.5%

K=1,15.4%

可以看到K的值为100时,错误率最小。

12.问题(略)

(a)问题(略)

Power = function() {

    2^3

}

print(Power())

(b)问题(略)

Power2 = function(x, a) {

    x^a

}

Power2(3, 8)

(c)问题(略)

Power2(10, 3)

Power2(8, 17)

Power2(131, 3)

(d)

Power3 = function(x, a) {

    result = x^a

    return(result)

}

(e)

x = 1:10

plot(x, Power3(x, 2), log = "xy", ylab = "Log of y = x^2", xlab = "Log of x",

    main = "Log of x^2 versus Log of x")

(f)

PlotPower = function(x, a) {

    plot(x, Power3(x, a))

}

PlotPower(1:10, 3)

后面有需要请私聊吧,不想再粘贴

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/430256.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

金田金業: 避险情绪骤升 黄金暴力拉升

现货黄金周一(3月4日)亚市早间开盘于2082美元/盎司&#xff0c;最高2119.86美元/盎司&#xff0c;最低2079.44美元/盎司&#xff0c;收盘2114.28美元/盎司&#xff0c;全天波幅约40美金&#xff0c;当日涨幅1.51%。 【基本面】 周一(3月4日)无重要数据公布&#xff0c;投资者关…

TPM引领智能制造新篇章:赋能企业转型升级

在智能制造日益成为工业发展主流趋势的今天&#xff0c;全面生产维护&#xff08;Total Productive Maintenance&#xff0c;简称TPM&#xff09;作为一种先进的管理理念和方法&#xff0c;正逐渐展现出其为企业实现智能制造赋能助力的巨大潜力。TPM不仅关注设备的维护和保养&a…

【机器学习】包裹式特征选择之递归特征添加法

&#x1f388;个人主页&#xff1a;豌豆射手^ &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;机器学习 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进…

Leetcode刷题笔记题解(C++):232. 用栈实现队列

思路&#xff1a;双栈实现入队列和出队列的操作 //AB栈来实现队列 //A栈用来push 可以利用A栈获取到队列的back即A.top //B栈用来pop 如果要获取队列的top&#xff0c;可以先把A栈元素依次弹出依次压入B栈中&#xff0c;然后B.top就是队列的top&#xff0c;pop也类似 cla…

云原生学习

1. 高可用架构 1.1 架构图 Kubernetes是属于主从设备模型&#xff08;Master-Slave架构&#xff09;&#xff0c;即有Master节点负责核心的调度、管理和运维&#xff0c;Slave节点则执行用户的程序。在Kubernetes中&#xff0c;主节点一般被称为Master Node 或者 Head Node&am…

【C语言】Leetcode 206.反转链表

博主主页&#xff1a;17_Kevin-CSDN博客 收录专栏&#xff1a;《Leetcode》 题目 解决思路 思路一&#xff1a;翻转链表 struct ListNode* reverseList(struct ListNode* head) {if(head NULL){return NULL;}struct ListNode* n1 NULL,*n2 head,*n3 n2 -> next;while(…

手写分布式配置中心(三)增加实时刷新功能(短轮询)

要实现配置自动实时刷新&#xff0c;需要改造之前的代码。 服务端改造 服务端增加一个版本号version&#xff0c;新增配置的时候为1&#xff0c;每次更新配置就加1。 Overridepublic long insertConfigDO(ConfigDO configDO) {insertLock.lock();try {long id 1;List<Con…

【EI会议征稿通知】第六届人工智能技术与应用国际学术会议(ICAITA 2024)

第六届人工智能技术与应用国际学术会议(ICAITA 2024) 2024 6th International Conference on Artificial Intelligence Technologies and Applications 第六届人工智能技术与应用国际学术会议(ICAITA 2024)&#xff0c;由长春理工大学主办&#xff0c;长春理工大学电子信息工…

【Linux】Shell命令运行原理和权限详解

【Linux】Shell命令运行原理和权限详解 一、剩余指令的补充1.tar指令2.bc指令3.uname4.热键 二、Shell命令运行原理1.Shell2.为什么Linux不让用户直接使用kernel 三、Linux权限概念四、Linux权限管理1.文件访问的用户分类2.文件类型和访问权限&#xff08;1&#xff09;文件类型…

H3C PBR 实验

H3C PBR 实验 实验拓扑 ​​ 实验需求 按照图示配置 IP 地址&#xff0c;公司分别通过电信和联通线路接入互联网公司内网配置 RIP 互通&#xff0c;公网配置 OSPF 互通&#xff0c;R6上配置默认路由指向 R1&#xff0c;内网使用路由器模拟 PCR1 分别在电信和联通出口上配置…

【Python】进阶学习:pandas--info()用法详解

【Python】进阶学习&#xff1a;pandas–info()用法详解 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程&#x1f448; 希望得到您的订…

力扣hot10---子串

题目&#xff1a; 思路&#xff1a; 一看到子数组的和&#xff0c;就很容易想到前缀和&#xff0c;求出来前缀和数组后&#xff0c;对前缀和数组进行两重for循环遍历&#xff0c;就大功告成啦&#xff01;&#xff08;感觉想一会儿就可以想到&#xff09; 代码&#xff1a; …

《操作系统原理》算法总结

一、进程调度算法 先来先服务调度算法&#xff08;FCFS&#xff09; 每次调度是从就绪队列中&#xff0c;选择一个最先进入就绪队列的进程&#xff0c;把处理器分配给该进程&#xff0c;使之得到执行。该进程一旦占有了处理器&#xff0c;它就一直运行下去&#xff0c;直到该…

使用IGEV和双目相机生成深度图实现测距

介绍 以下是源代码的demo&#xff0c;我根据自己的需求&#xff0c;做了部分改动&#xff0c;比如双目相机输入的格式是RGBA&#xff0c;但IGEV处理的输入通道数是3&#xff0c;我就在其他py文件将图片转成RGB格式 设备 1080ti和jetson orin nx两个都可以 代码 import sys…

VS2019 - error C2653: 不是类或命名空间名称

文章目录 VS2019 - error C2653: 不是类或命名空间名称概述笔记类的头文件类的实现文件备注END VS2019 - error C2653: 不是类或命名空间名称 概述 工程开了预编译头包含. 编码中, 随手写一个类, 将功能函数加入, 还没开始用这个类, 先习惯性的编译一下. 编译报错如下: St…

C# 高级特性(十一):多线程之async,await

之前使用Thread和Task启动多线程时都会遇到一个麻烦&#xff0c;就是如何反馈结果。在代码里就是如何设计回调函数。如果带界面还得考虑UI线程的问题。 而使用async&#xff0c;await可以达到两个效果。 1 不用设计回调函数&#xff0c;直接按单线程的格式写。 2 不用考虑UI…

音视频学习笔记——设计模式

✊✊✊&#x1f308;大家好&#xff01;本篇文章主要记录自己在进行音视频学习中&#xff0c;整理的包括单例模式、工厂模式、策略模式、观察者模式等6种相关的设计模式和4种准则的内容重点&#x1f607;。 音视频学习笔记——设计模式 本专栏知识点是通过<零声教育>的音…

12-Java享元模式 ( Flyweight Pattern )

Java享元模式 摘要实现范例 享元模式&#xff08;Flyweight Pattern&#xff09;主要用于减少创建对象的数量&#xff0c;以减少内存占用和提高性能 享元模式尝试重用现有的同类对象&#xff0c;如果未找到匹配的对象&#xff0c;则创建新对象 享元模式属于结构型模式&…

5分钟速成渐变色css

色彩的分支——渐变色定义&#xff1a;按照一定规律做阶段性变化的色彩&#xff08;抽象&#xff01;&#xff01;&#xff01;&#xff09; 我们可以将图片分为两块 以中心线为参考&#xff0c;再来看渐变色的定义&#xff1a;按照一定规律做阶段性变化的色彩 既然是按一定的…

【格与代数系统】偏序关系、偏序集与全序集

关系&#xff1a;X,Y是两个非空集合, 记若则称R是X到Y的一个二元关系&#xff0c;简称关系。 若,记。 当时&#xff0c;称是上的一个关系。 目录 偏序关系 偏序集 可比性 全序集 最值与上下界 上下确界 偏序关系 设是上的一个关系&#xff0c;若满足&#xff1a; (1)自…