Prophet สำหรับการพยากรณ์อัตโนมัติ
Facebook Prophet จุดเปลี่ยนแนวโน้ม ผลกระทบจากวันหยุด ช่วงความไม่แน่นอน และการตรวจสอบไขว้
Prophet สำหรับการพยากรณ์อัตโนมัติ เป็นบทเรียน Learn AI with Python ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Learn AI with Python และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Learn AI with Python มีบทเรียนทั้งหมด 4 บทเรียน
Prophet คืออะไร
โพรเฟต คือไลบรารีการพยากรณ์แบบโอเพนซอร์สจากเมตา โดยปรับแนวโน้ม ฤดูกาล และผลกระทบจากวันหยุดโดยอัตโนมัติ จัดการข้อมูลที่หายไปและค่าผิดปกติได้ดี และต้องปรับแต่งน้อยกว่า ARIMA มาก จึงเหมาะอย่างยิ่งสำหรับการพยากรณ์ทางธุรกิจ
การติดตั้งและการนำเข้า
หลังติดตั้งแล้ว Prophet สามารถนำเข้าได้ด้วยคำสั่งเดียว
# pip install prophet
from prophet import Prophet
import pandas as pdรูปแบบ DataFrame ที่จำเป็น
Prophet ต้องการคอลัมน์สองคอลัมน์เท่านั้น: ds (วันที่และเวลา) และ y (ค่าที่ต้องการพยากรณ์) การเปลี่ยนชื่อคอลัมน์ของคุณเป็นชื่อเหล่านี้เป็นสิ่งจำเป็น
df = df.rename(columns={"date": "ds", "sales": "y"})
df["ds"] = pd.to_datetime(df["ds"])
print(df.head())การสร้างแบบจำลอง
สร้างอินสแตนซ์ของ Prophet โดยเลือกได้ว่าฤดูกาลจะรวมกับแนวโน้มอย่างไร แบบคูณ เหมาะกับอนุกรมที่ความผันผวนตามฤดูกาลเพิ่มขึ้นตามระดับของอนุกรม
m = Prophet(seasonality_mode="multiplicative")ฤดูกาลแบบบวกกับแบบคูณ
ค่าเริ่มต้นคือ แบบบวก (แอมพลิจูดตามฤดูกาลคงที่) ใช้ แบบคูณ เมื่อจุดสูงสุดมีขนาดใหญ่ขึ้นตามแนวโน้มที่เพิ่มขึ้น เช่น ยอดขายที่ผันผวนมากขึ้นในปีที่มีปริมาณการขายสูง
การปรับแบบจำลองให้เข้ากับข้อมูล
เรียกใช้ fit กับ DataFrame ที่เตรียมไว้ Prophet จะประมาณจุดเปลี่ยนของแนวโน้มและองค์ประกอบตามฤดูกาลโดยอัตโนมัติ
m.fit(df)การสร้าง DataFrame สำหรับอนาคต
make_future_dataframe จะขยายดัชนีวันที่ไปข้างหน้า เพื่อให้ Prophet ทราบว่าต้องพยากรณ์วันที่ใดบ้าง
future = m.make_future_dataframe(periods=90, freq="D")
print(future.tail())การสร้างค่าพยากรณ์
predict จะส่งคืน DataFrame ที่มี yhat (ค่าพยากรณ์) พร้อมขอบเขตความไม่แน่นอน yhat_lower และ yhat_upper
forecast = m.predict(future)
forecast[["ds", "yhat", "yhat_lower", "yhat_upper"]].tail()การวาดกราฟค่าพยากรณ์
Prophet มีกราฟในตัว ได้แก่ กราฟค่าพยากรณ์พร้อมความไม่แน่นอน และกราฟองค์ประกอบที่แยกแนวโน้มกับฤดูกาลแต่ละส่วนออกมา
fig1 = m.plot(forecast)
fig2 = m.plot_components(forecast)การเพิ่มวันหยุดและตัวแปรอธิบาย
คุณสามารถลงทะเบียนวันหยุดประจำประเทศหรือเหตุการณ์ที่กำหนดเอง และเพิ่มตัวแปรอธิบายเพิ่มเติมด้วย add_regressor ซึ่งมักช่วยเพิ่มความแม่นยำสำหรับข้อมูลทางธุรกิจ
m.add_country_holidays(country_name="US")
m.add_regressor("promo_flag")การตรวจสอบข้ามส่วน
Prophet ตรวจสอบด้วย cross_validation แบบเลื่อนจุดเริ่มต้น จากนั้น performance_metrics จะรายงาน RMSE, MAE และ MAPE ในช่วงการพยากรณ์ต่าง ๆ
from prophet.diagnostics import cross_validation, performance_metrics
cv = cross_validation(m, initial="365 days",
period="90 days", horizon="90 days")
performance_metrics(cv).head()ตรวจสอบอย่างรวดเร็ว
ทดสอบความรู้เกี่ยวกับ Prophet ของคุณ
ทบทวน
คุณได้ใช้ Prophet: เปลี่ยนชื่อคอลัมน์เป็น ds และ y สร้าง Prophet(seasonality_mode="multiplicative") เรียกใช้ fit สร้างกรอบข้อมูลอนาคตด้วย make_future_dataframe เรียกใช้ predict วาดกราฟ และตรวจสอบด้วย cross_validation บทถัดไป: การพยากรณ์ด้วย LSTM
คำถามที่พบบ่อย
บทเรียน “Prophet สำหรับการพยากรณ์อัตโนมัติ” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “Prophet สำหรับการพยากรณ์อัตโนมัติ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Learn AI with Python ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Learn AI with Python มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “Prophet สำหรับการพยากรณ์อัตโนมัติ”
Facebook Prophet จุดเปลี่ยนแนวโน้ม ผลกระทบจากวันหยุด ช่วงความไม่แน่นอน และการตรวจสอบไขว้ คุณปฏิบัติ Learn AI with Python ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Learn AI with Python หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Learn AI with Python บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “Prophet สำหรับการพยากรณ์อัตโนมัติ” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Learn AI with Python นี้ได้ไหม
ได้ บทเรียน Learn AI with Python ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- องค์ประกอบของอนุกรมเวลาและภาวะสถิต
- แบบจำลอง ARIMA และ SARIMA
- Prophet สำหรับการพยากรณ์อัตโนมัติ
- LSTM สำหรับการพยากรณ์อนุกรมเวลา