Berapa harga satu alpukat?

Analisis Data Bayesian dengan Python

Michal Oleszak

Machine Learning Engineer

The Avocado, Inc.

Buah alpukat.

Analisis Data Bayesian dengan Python

Studi kasus: mengestimasi elastisitas harga

Tujuan: estimasi elastisitas harga alpukat dan optimalkan harga

(elastisitas harga = dampak perubahan harga pada volume penjualan)

  1. Pasang model regresi Bayesian.
  2. Periksa model untuk memastikan kebenarannya.
  3. Prediksi volume penjualan untuk berbagai harga.
  4. Usulkan harga yang memaksimalkan laba dan ketidakpastiannya.
Analisis Data Bayesian dengan Python

Data alpukat

print(avocado)
           date  price      volume  type_organic
0    2015-01-04   0.95  313.242777             0
1    2015-01-11   1.01  290.635427             0
2    2015-01-18   1.03  290.434588             0
3    2015-01-25   1.04  284.703108             0
..          ...    ...         ...           ...
334  2018-03-04   1.52   16.344308             1
335  2018-03-11   1.52   16.642349             1
336  2018-03-18   1.54   16.758042             1
337  2018-03-25   1.55   15.599672             1
1 Sumber data: https://www.kaggle.com/neuromusic/avocado-prices
Analisis Data Bayesian dengan Python

Prior di pymc3

formula = "num_bikes ~ temp + work_day + wind_speed"

with pm.Model() as model:

    pm.GLM.from_formula(formula, data=bikes)
    trace = pm.sample(draws=1000, tune=500)
Analisis Data Bayesian dengan Python

Prior di pymc3

formula = "num_bikes ~ temp + work_day + wind_speed"

with pm.Model() as model:
    priors = {"wind_speed": pm.Normal.dist(mu=-5)}
    pm.GLM.from_formula(formula, data=bikes, priors=priors)
    trace = pm.sample(draws=1000, tune=500)
Analisis Data Bayesian dengan Python

Mengekstrak draw dari trace

temp_draws = trace.get_values("temp")

print(temp_draws)
array([6.8705346, 6.7421152, 6.7393061, ..., 5.966574 , 6.1274128, 6.7149277])
Analisis Data Bayesian dengan Python

Yang akan Anda butuhkan

Pemasangan model:

  • pm.Model()
  • pm.GLM.from_formula()
  • pm.sample()
  • pm.Normal()

Visualisasi:

  • pm.forestplot()
  • pm.traceplot()

 

Membuat prediksi:

  • pm.fast_sample_posterior_predictive()

 

Inferensi:

  • az.hdi()
Analisis Data Bayesian dengan Python

Ayo berlatih!

Analisis Data Bayesian dengan Python

Preparing Video For Download...