ข้อจำกัดความรับผิดชอบ: ณ จุดต่อไปนี้ GROSSLY จะถือว่าข้อมูลของคุณได้รับการกระจายตามปกติ หากคุณเป็นวิศวกรรมอะไรจริง ๆ แล้วพูดคุยกับมืออาชีพสถิติที่แข็งแกร่งและปล่อยให้บุคคลนั้นลงนามในบรรทัดว่าสิ่งที่ระดับจะ คุยกับห้าคนหรือ 25 คน คำตอบนี้มีไว้สำหรับนักเรียนวิศวกรรมโยธาถามว่า "ทำไม" ไม่ใช่สำหรับมืออาชีพด้านวิศวกรรมถามว่า "อย่างไร"
ฉันคิดว่าคำถามที่อยู่เบื้องหลังคำถามคือ "การกระจายมูลค่ามากคืออะไร" ใช่มันคือพีชคณิต - สัญลักษณ์ แล้วอะไรล่ะ ขวา?
ลองนึกถึงเหตุการณ์น้ำท่วม 1,000 ปี พวกเขาใหญ่
เมื่อพวกเขาเกิดขึ้นพวกเขาจะฆ่าผู้คนจำนวนมาก สะพานจำนวนมากกำลังลง
คุณรู้ไหมว่าสะพานอะไรไม่ลง? ฉันทำ. คุณยังไม่ ...
คำถาม:สะพานใดไม่ลงไปในน้ำท่วม 1,000 ปี?
คำตอบ:สะพานที่ออกแบบมาเพื่อทนต่อมัน
ข้อมูลที่คุณต้องการในแบบของคุณ:
สมมติว่าคุณมีข้อมูลน้ำ 200 ปีต่อวัน มีน้ำท่วม 1,000 ปีในนั้นไหม? ไม่ไกล คุณมีตัวอย่างหางหนึ่งส่วนของการแจกแจง คุณไม่มีประชากร ถ้าคุณรู้ประวัติน้ำท่วมทั้งหมดคุณก็จะมีจำนวนประชากรทั้งหมด ให้คิดเกี่ยวกับสิ่งนี้ คุณต้องใช้ข้อมูลเป็นเวลากี่ปีเท่าไหร่เพื่อที่จะมีค่าอย่างน้อยหนึ่งค่าที่มีโอกาสเป็น 1 ใน 1,000 ในโลกที่สมบูรณ์แบบคุณต้องมีอย่างน้อย 1,000 ตัวอย่าง โลกแห่งความจริงยุ่งเหยิงดังนั้นคุณต้องการมากกว่านี้ คุณเริ่มได้รับ 50/50 อัตราต่อรองที่ประมาณ 4000 ตัวอย่าง คุณเริ่มรับประกันว่าจะมีมากกว่า 1 ตัวอย่างประมาณ 20,000 ตัวอย่าง ตัวอย่างไม่ได้หมายถึง "น้ำหนึ่งวินาทีกับถัดไป" แต่เป็นการวัดสำหรับแหล่งที่มาของการเปลี่ยนแปลงที่ไม่ซ้ำกัน - เช่นการเปลี่ยนแปลงปีต่อปี หนึ่งวัดในหนึ่งปี พร้อมกับอีกวัดหนึ่งในอีกหนึ่งปีประกอบด้วยสองตัวอย่าง หากคุณไม่มีข้อมูลที่ดี 4,000 ปีคุณอาจไม่มีตัวอย่าง 1,000 ปีที่ท่วมข้อมูล สิ่งที่ดีคือ - คุณไม่ต้องการข้อมูลจำนวนมากเพื่อให้ได้ผลลัพธ์ที่ดี
นี่คือวิธีการรับผลลัพธ์ที่ดีขึ้นด้วยข้อมูลน้อยลง:
ถ้าคุณดูที่ maxima ประจำปีคุณสามารถใส่ "การกระจายค่าที่มากที่สุด" กับ 200 ค่าของระดับสูงสุดปีและคุณจะมีการกระจายที่มีน้ำท่วม 1,000 ปี ระดับพื้นดิน มันจะเป็นพีชคณิตไม่ใช่ของจริง "มันใหญ่แค่ไหน" คุณสามารถใช้สมการเพื่อกำหนดว่าน้ำท่วม 1,000 ปีจะมีขนาดใหญ่เพียงใด จากนั้นเมื่อปริมาณน้ำนั้น - คุณสามารถสร้างสะพานเพื่อต้านทานมันได้ อย่ายิงตามมูลค่าที่แน่นอนยิงให้ใหญ่ขึ้นมิฉะนั้นคุณจะออกแบบให้ล้มเหลวในช่วงน้ำท่วม 1,000 ปี หากคุณกล้าได้กล้าเสียคุณสามารถใช้การทดสอบซ้ำเพื่อหาว่าเกินกว่ามูลค่า 1,000 ปีที่แน่นอนที่คุณต้องการสร้างไว้เพื่อที่จะต้านทานมัน
นี่คือเหตุผลที่ EV / GEV เป็นรูปแบบการวิเคราะห์ที่เกี่ยวข้อง:
การแจกแจงค่าสุดขีดทั่วไปโดยทั่วไปเกี่ยวกับจำนวนสูงสุดที่แตกต่างกันไป ความแปรปรวนของค่าสูงสุดนั้นแตกต่างจากการเปลี่ยนแปลงในค่าเฉลี่ยมากที่สุด การแจกแจงแบบปกติผ่านทฤษฎีบทขีด จำกัด กลางอธิบาย "แนวโน้มกลาง" มากมาย
ขั้นตอน:
- ทำ 1,000 ครั้งต่อไปนี้:
i. เลือก 1,000 หมายเลขจากการแจกแจงแบบปกติมาตรฐาน
ii คำนวณจำนวนสูงสุดของกลุ่มตัวอย่างนั้นและเก็บไว้
ตอนนี้วางแผนการกระจายของผลลัพธ์
#libraries
library(ggplot2)
#parameters and pre-declarations
nrolls <- 1000
ntimes <- 10000
store <- vector(length=ntimes)
#main loop
for (i in 1:ntimes){
#get samples
y <- rnorm(nrolls,mean=0,sd=1)
#store max
store[i] <- max(y)
}
#plot
ggplot(data=data.frame(store), aes(store)) +
geom_histogram(aes(y = ..density..),
col="red",
fill="green",
alpha = .2) +
geom_density(col=2) +
labs(title="Histogram for Max") +
labs(x="Max", y="Count")
นี่ไม่ใช่ "การแจกแจงแบบปกติมาตรฐาน":
จุดสูงสุดอยู่ที่ 3.2 แต่ค่าสูงสุดจะเพิ่มขึ้นเป็น 5.0 มันมีความเบ้ ไม่ต่ำกว่าประมาณ 2.5 หากคุณมีข้อมูลจริง (มาตรฐานปกติ) และคุณเลือกหางคุณจะสุ่มเลือกบางอย่างตามโค้งนี้ หากคุณโชคดีคุณจะไปที่ตรงกลางไม่ใช่หางล่าง วิศวกรรมเป็นสิ่งที่ตรงกันข้ามกับโชค - มันเกี่ยวกับการบรรลุผลลัพธ์ที่ต้องการอย่างสม่ำเสมอทุกครั้ง " ตัวเลขสุ่มมีความสำคัญเกินกว่าที่จะปล่อยให้เป็นไปได้ " (ดูเชิงอรรถ) โดยเฉพาะอย่างยิ่งสำหรับวิศวกร ตระกูลฟังก์ชั่นการวิเคราะห์ที่เหมาะกับข้อมูลนี้มากที่สุดคือตระกูลการกระจายที่มีคุณค่า
ตัวอย่างพอดี:
สมมติว่าเรามีค่าสุ่มสูงสุดถึง 200 ค่าจากการแจกแจงแบบปกติมาตรฐานและเราจะแกล้งทำเป็นว่าพวกเขาเป็นประวัติศาสตร์ 200 ปีของระดับน้ำสูงสุดของเรา ในการรับการแจกจ่ายเราจะทำสิ่งต่อไปนี้:
- ตัวอย่างตัวแปร "store" (เพื่อทำรหัสสั้น / ง่าย)
- เหมาะสมกับการกระจายค่าสุดขีดทั่วไป
- หาค่าเฉลี่ยของการแจกแจง
- ใช้ bootstrapping เพื่อหาขีด จำกัด สูงสุด 95% CI ในรูปแบบของค่าเฉลี่ยดังนั้นเราจึงสามารถกำหนดเป้าหมายวิศวกรรมของเราสำหรับสิ่งนั้น
(รหัสถือว่าข้างต้นถูกเรียกใช้ก่อน)
library(SpatialExtremes) #if it isn't here install it, it is the ev library
y2 <- sample(store,size=200,replace=FALSE) #this is our data
myfit <- gevmle(y2)
สิ่งนี้ให้ผลลัพธ์:
> gevmle(y2)
loc scale shape
3.0965530 0.2957722 -0.1139021
สิ่งเหล่านี้สามารถเสียบเข้ากับฟังก์ชันสร้างเพื่อสร้างตัวอย่าง 20,000 ตัวอย่าง
y3 <- rgev(20000,loc=myfit[1],scale=myfit[2],shape=myfit[3])
การสร้างสิ่งต่อไปนี้จะทำให้โอกาสล้มเหลว 50/50 ในทุกปี:
ค่าเฉลี่ย (y3)
3.23681
นี่คือรหัสเพื่อกำหนดระดับ "ท่วม" 1,000 ปี:
p1000 <- qgev(1-(1/1000),loc=myfit[1],scale=myfit[2],shape=myfit[3])
p1000
การสร้างสิ่งต่อไปนี้จะทำให้คุณมีโอกาส 50/50 ที่จะล้มเหลวจากเหตุการณ์น้ำท่วม 1,000 ปี
P1000
4.510931
เพื่อกำหนด CI บน 95% ฉันใช้รหัสต่อไปนี้:
myloc <- 3.0965530
myscale <- 0.2957722
myshape <- -0.1139021
N <- 1000
m <- 200
p_1000 <- vector(length=N)
yd <- vector(length=m)
for (i in 1:N){
#generate samples
yd <- rgev(m,loc=myloc,scale=myscale,shape=myshape)
#compute fit
fit_d <- gevmle(yd)
#compute quantile
p_1000[i] <- qgev(1-(1/1000),loc=fit_d[1],scale=fit_d[2],shape=fit_d[3])
}
mytarget <- quantile(p_1000,probs=0.95)
ผลลัพธ์คือ:
> mytarget
95%
4.812148
ซึ่งหมายความว่าในการที่จะต่อต้านน้ำท่วมใหญ่ 1,000 ปีส่วนใหญ่เนื่องจากข้อมูลของคุณเป็นปกติอย่างไม่มีมลทิน (ไม่น่าจะเป็นไปได้) คุณจะต้องสร้าง ...
> out <- pgev(4.812148,loc=fit_d[1],scale=fit_d[2],shape=fit_d[3])
> 1/(1-out)
หรือ
> 1/(1-out)
shape
1077.829
... 1,078 ปีน้ำท่วม
เส้นด้านล่าง:
- คุณมีตัวอย่างของข้อมูลไม่ใช่จำนวนประชากรทั้งหมดที่แท้จริง นั่นหมายความว่าปริมาณของคุณเป็นค่าประมาณและอาจถูกปิด
- การแจกแจงเช่นการแจกแจงค่าสุดขีดทั่วไปถูกสร้างขึ้นเพื่อใช้ตัวอย่างเพื่อพิจารณาก้อยที่แท้จริง พวกมันประเมินได้แย่กว่าการใช้ค่าตัวอย่างน้อยมากแม้ว่าคุณจะมีตัวอย่างไม่เพียงพอสำหรับวิธีแบบดั้งเดิม
- หากคุณแข็งแกร่งเพดานสูง แต่ผลที่ได้คือ - คุณจะไม่ล้มเหลว
ขอให้โชคดี
PS:
PS: สนุกมากขึ้น - วิดีโอ youtube (ไม่ใช่ของฉัน)
https://www.youtube.com/watch?v=EACkiMRT0pc
เชิงอรรถ: Coveyou, Robert R. "การสร้างตัวเลขสุ่มมีความสำคัญเกินกว่าที่จะปล่อยให้เป็นไปได้" ความน่าจะเป็นประยุกต์และวิธีการมอนติคาร์โลและแง่มุมที่ทันสมัยของการเปลี่ยนแปลง การศึกษาคณิตศาสตร์ประยุกต์ 3 (1969): 70-111
extreme value distribution
แทนที่จะthe overall distribution
พอดีกับข้อมูลและรับค่า 98.5%