วิธีการพยากรณ์แบบไร้เดียงสาใน r: พร้อมตัวอย่าง


การคาดการณ์ที่ไร้เดียงสา คือการคาดการณ์ในช่วงเวลาหนึ่งๆ ซึ่งเท่ากับค่าที่สังเกตได้ในช่วงเวลาก่อนหน้า

ตัวอย่างเช่น สมมติว่าเรามียอดขายของผลิตภัณฑ์ที่กำหนดในช่วงสามเดือนแรกของปีดังต่อไปนี้:

การคาดการณ์ยอดขายในเดือนเมษายนจะเท่ากับยอดขายจริงในเดือนมีนาคมที่ผ่านมา:

ตัวอย่างการพยากรณ์แบบไร้เดียงสา

แม้ว่าวิธีนี้จะง่าย แต่ก็มีแนวโน้มว่าจะใช้ได้ผลดีในทางปฏิบัติอย่างน่าประหลาดใจ

บทช่วยสอนนี้ให้ตัวอย่างทีละขั้นตอนของวิธีการพยากรณ์แบบไร้เดียงสาใน R

ขั้นตอนที่ 1: ป้อนข้อมูล

ขั้นแรก เราจะป้อนข้อมูลการขายในช่วง 12 เดือนที่บริษัทในจินตนาการ:

 #create vector to hold actual sales data
actual <- c(34, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24)

ขั้นตอนที่ 2: สร้างการคาดการณ์ที่ไร้เดียงสา

ต่อไป เราจะใช้สูตรต่อไปนี้เพื่อสร้างการคาดการณ์ที่ไร้เดียงสาในแต่ละเดือน:

 #generate naive forecasts
forecast <- c(NA, actual[- length (actual)])

#view naive forecasts
forecast

[1] NA 34 37 44 47 48 48 46 43 32 27 26

โปรดทราบว่าเราใช้ NA เป็นค่าที่ทำนายค่าแรกเท่านั้น

ขั้นตอนที่ 3: วัดความแม่นยำของการคาดการณ์

สุดท้ายเราต้องวัดความแม่นยำของการพยากรณ์ เมตริกทั่วไปสองรายการที่ใช้ในการวัดความแม่นยำ ได้แก่:

  • ข้อผิดพลาดร้อยละสัมบูรณ์เฉลี่ย (MAPE)
  • ค่าเฉลี่ยข้อผิดพลาดสัมบูรณ์ (MAE)

เราสามารถใช้โค้ดต่อไปนี้เพื่อคำนวณเมตริกทั้งสอง:

 #calculate MAPE
mean(abs((actual-forecast)/actual), na. rm = T ) * 100

[1] 9.898281

#calculate MAE
mean(abs(actual-forecast), na. rm = T )

[1] 3.454545

เปอร์เซ็นต์ข้อผิดพลาดสัมบูรณ์โดยเฉลี่ยคือ 9.898% และข้อผิดพลาดสัมบูรณ์โดยเฉลี่ยคือ 3.45

หากต้องการทราบว่าการคาดการณ์นี้มีประโยชน์หรือไม่ เราสามารถเปรียบเทียบกับแบบจำลองการคาดการณ์อื่นๆ และดูว่าความแม่นยำในการวัดดีขึ้นหรือแย่ลง

ขั้นตอนที่ 4: แสดงภาพการคาดการณ์

สุดท้ายนี้ เราสามารถสร้างแผนภาพเส้นแบบง่ายๆ เพื่อให้เห็นภาพความแตกต่างระหว่างยอดขายจริงและการคาดการณ์ยอดขายที่ไร้เดียงสาในแต่ละช่วงเวลา:

 #plot actual sales
plot(actual, type=' l ', col = ' red ', main=' Actual vs. Forecasted Sales ',
     xlab=' Sales Period ', ylab=' Sales ')

#add line for forecasted sales
lines(forecast, type=' l ', col = ' blue ')

#add legend
legend(' topright ', legend=c(' Actual ', ' Forecasted '),
       col=c(' red ', ' blue '), lty=1)

การพยากรณ์ที่ไร้เดียงสาใน R

โปรดทราบว่าเส้นการขายที่คาดการณ์ไว้นั้นเป็นเวอร์ชันที่เลื่อนของเส้นการขายจริง

นี่คือสิ่งที่เราคาดหวังอย่างแน่นอน เนื่องจากการคาดการณ์ที่ไร้เดียงสาเพียงแค่คาดการณ์ว่ายอดขายในช่วงเวลาปัจจุบันจะเท่ากับยอดขายในช่วงเวลาก่อนหน้า

แหล่งข้อมูลเพิ่มเติม

วิธีการคำนวณ MAE ใน R
วิธีการคำนวณ MAPE ใน R
สิ่งที่ถือว่าคุ้มค่าสำหรับ MAPE?

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *