Bir avokado ne kadar?

Python ile Bayesçi Veri Analizi

Michal Oleszak

Machine Learning Engineer

The Avocado, Inc.

Avokado meyveleri.

Python ile Bayesçi Veri Analizi

Vaka çalışması: fiyat esnekliğini tahmin etme

Amaç: avokadonun fiyat esnekliğini tahmin etmek ve fiyatı optimize etmek

(fiyat esnekliği = fiyattaki değişimin satış hacmine etkisi)

  1. Bayesçi bir regresyon modeli kurun.
  2. Doğruluğunu görmek için modeli inceleyin.
  3. Farklı fiyatlar için satış hacmini tahmin edin.
  4. Kârı maksimize eden fiyatı ve belirsizliğini önerin.
Python ile Bayesçi Veri Analizi

Avokado verileri

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 Veri kaynağı: https://www.kaggle.com/neuromusic/avocado-prices
Python ile Bayesçi Veri Analizi

pymc3'te önceller

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)
Python ile Bayesçi Veri Analizi

pymc3'te önceller

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)
Python ile Bayesçi Veri Analizi

İzden örnekleri çıkarma

temp_draws = trace.get_values("temp")

print(temp_draws)
array([6.8705346, 6.7421152, 6.7393061, ..., 5.966574 , 6.1274128, 6.7149277])
Python ile Bayesçi Veri Analizi

Gerekenler

Model kurma:

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

Görselleştirme:

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

 

Tahmin yapma:

  • pm.fast_sample_posterior_predictive()

 

Çıkarım:

  • az.hdi()
Python ile Bayesçi Veri Analizi

Öğrendiklerinizi pratiğe dökelim!

Python ile Bayesçi Veri Analizi

Preparing Video For Download...