Strojno učenje za Farecastom

Napovedovanje črnega polja cen letov

Pred nekaj leti sem naletel na ta raziskovalni članek »Kupiti ali ne kupiti: rudarjenje podatkov o letalskih vozovnicah, da bi zmanjšal nakupno ceno vozovnic«, ko sem v UCL sodeloval pri projektu, ki je raziskoval, kako ljudem pomagati boljše krmarjenje po mestih podatkov. Pravkar sem prejel velik nabor podatkov o transakcijah s kartico Oyster s prevozom v Londonu. Ta članek, ki obravnava priporočilo, ali naj kupimo letalsko vozovnico, nas je navdihnil, da smo uporabili podoben koncept, s pomočjo katerega se bodo ljudje odločili, kakšno potovalno kartico kupiti, s sistemom priporočil, ki se bo učil iz njihovih vzorcev potovanja. Iz te raziskave je prišlo do tega prispevka "Rudarjenje podatkov o mobilnosti za zmanjšanje potniških porab za javni prevoz" in te novice BBC.

Ponovno sem objavila dokument s podatki o letalskih kartah za bralno skupino Skyscanner - srečevali smo se, da bi razpravljali o raziskovalnih prispevkih, ki obravnavajo podobne težave kot tiste, s katerimi se srečujemo v programu Skyscanner. Tako kot zadnja objava, tudi tukaj je kratek netehnični pregled tega, o čemer smo razpravljali.

Izdelava izdelka iz napovedi cen

Cene letov so zmerno podvržene spremembam: prepričan sem, da si je večina izmed nas ogledala let, nekaj časa razmišljala o njem in se nato vrnila le, da bi ugotovila, da se je njegova cena podražila (ali srečen, dol).

Kot pojasnjujejo avtorji tega prispevka, se zdi del napovedovanja cene letenja v dekodiranju mehanizma skrite odločitve, ki ga prevozniki uporabljajo za določanje lastnih cen: morda trenutna cena poti temelji na razpoložljivih sedežih, povpraševanju, konkurenčnih cenah, o času leta ali množici drugih dejavnikov. Glede na to, da obstaja toliko različnih razlogov, zakaj se cene letov lahko spreminjajo (in nimamo nujno dostopa do vseh podatkov, ki jih ponudniki uporabljajo za določanje cen), ali bi sploh lahko smiselno razvili kakršno koli sredstvo za napovedovanje cen letov?

Ta scenarij je takšen, kjer lahko na pomoč priskoči strojno učenje. S samo domnevo, da bo prišlo do podobnosti med zgodovinskimi in prihodnjimi cenami poti, avtorji ustvarijo model, ki temelji le na podatkih, ki so jim na voljo na spletu: pot (npr. Seattle-Washington), dnevi do odhod (npr. 10) in zgodovinske cene. Ta model poskuša odgovoriti na vprašanje: naj glede na pot, datum odhoda in trenutno ceno kupim vozovnico ali naj počakam?

Avtorji na težavo mešajo številne znane metode strojnega učenja, na primer napovedno učenje in napovedovanje časovnih vrst, in kombinirani model, ki se (ne preseneča), izkaže za najbolj natančnega. Papir se sicer drži na številnih frontah: daje rezultate le za majhen niz ročno izbranih poti, upoštevajte le 21 dni pred datumom odhoda (kar pomeni, da 75% uporabnikov ne bi bilo sposobni doseči kakršne koli cenejše možnosti) in ne upošteva nobenih dolgoročnih učinkov, kot so sezonskost (kar bi bilo pošteno, je bilo pred veliko dobo podatkov, zato je bila skalabilnost zanje pomembna).

Kljub temu je v tem prispevku več ključnih primerov:

  1. Natančnost napovedovanja
  2. Napovedovanje ni isto kot obveščanje. Najnovejše Googlove objave kažejo, da so v svoje iskanje letov uvedli kaj takega. Vendar pa uporabnike obveščajo na podlagi zgodovinskih gibanj ("ta cena se bo verjetno zvišala" in ne "predvidevamo, da bo cena vozovnice x").
  3. Časovno urejeni podatki ne pomenijo težav s časovnimi vrstami. Ker so podatki urejeni s časom, je bil eden od "naravnih" pristopov k poskusu model, ki napoveduje, ali se bo cena povišala ali znižala glede na nedavno vedenje. Vendar pa so avtorji ugotovili, da cene letov naraščajo - navzgor ali navzdol -, zato je bilo napovedovanje naslednje cene, ki temelji na dogajanju v zadnjih urah, eden najslabših pristopov.

Avtorji tega prispevka so pozneje ustanovili Farecast, ki ga je na koncu pridobil Microsoft. Bing je sčasoma opustil funkcijo napovedovanja Farecast, vendar so drugi meta-iskalniki razvili podobne izdelke; Kajak je imel orodje za napovedovanje cen več kot 3 leta (glej njihovo objavo na spletnem dnevniku, ki objavlja funkcijo), Google pa je pravkar predstavil orodje za napovedovanje v nedavni objavi spletnega dnevnika.

Zaključek

Če vas zanima tehnična stran tega dela, si oglejte prispevek, se oglasite na twitterju ali pa me spremljajte na Medium - na poti je več povzetkov bralnih skupin!