Domača vdelava za podobna domača priporočila

avtor Sangdi Lin

Slika 1: Podobna domača priporočila za Zillow

Priporočljivi sistemi se pogosto zanašajo na sodelovanje uporabnikov kot vira podatkov za učenje kakovostnih priporočil. Toda v nasprotju s spletnimi mesti, kot so Amazon, Netflix in Airbnb, je veliko uporabnikov, ki obiskujejo Zillow, novi uporabniki ali uporabniki, ki nimajo registriranega računa. Ti novi uporabniki so lahko prvi kupci stanovanj, novi najemniki, nakupovalci doma, ki so novi na spletnih trgih, popotniki, radovedni o lokalnem stanovanjskem trgu, ali ljudje, ki uporabljajo Zillow za pridobivanje informacij o nepremičninah. Za te uporabnike ima podoben domači vrtiljak na vsaki strani podrobnosti (na primer tisti, prikazan na desni strani slike 1) pomembno vlogo pri prikazu zanimivih vsebin in izboljšanju njihove izkušnje. Ko uporabniki izrazijo svoje zanimanje s klikom na en dom, podoben vrtiljak na domu omogoča uporabnikom, da neposredno raziskujejo povezane sezname na Zillow, ne da bi se morali vrniti na iskalno stran ali izbrati filtre.

Odločitev, ali sta si dva doma podobna, ni tako preprosta, kot se morda zdi. Z vsebinskega vidika lahko dom opišemo z različnimi strukturiranimi atributi in nestrukturiranimi atributi, kot so naštevanje slik in opis. Strukturirani atributi vključujejo lastnosti doma, kot so lokacija, cena, velikost, vrsta hiše, števila spalnic in kopalnic ter soseske. Kako izračunati podobnost po značilnostih različnih tipov in lestvic, je lahko sama po sebi težava. Ko uporabnik primerja dva doma, imajo lahko različni strukturirani in nestrukturirani atributi drugačen pomen in medsebojno delujejo. Na primer, 200 dodatnih kvadratnih metrov bivalnega prostora je lahko velika razlika za stanovanje v San Franciscu, ni pa tako pomembno za hišo v Phoenixu. Želeli bi, da bi naš podoben model priporočila za dom "razmišljal" in primerjal domove z vidika uporabnika.

Drug način modeliranja podobnih domov je uporaba podatkov o zajemu uporabniških elementov („kolaborativni“), kot so implicitne povratne informacije uporabnikov (npr. Kliki in shranjevanje), kot v primeru kolaborativnega filtriranja, metoda vdelave v seznam, ki jo uporablja Airbnb [ 1] in metodo vdelave izdelka, ki jo je razvil Yahoo [2]. Intuicija je v tem, da so domovi, na katere kliknejo podobni uporabniki, podobni. Vendar pa za te modele ni enostavno ravnati z novimi seznami, ki predstavljajo pomemben del aktivnih vnosov na Zillow. Od sredine leta 2012 do začetka leta 2018 je število deseasonaliziranih, zglajenih mesečnih številk novih kotacij blizu 500 K [3, 4]. Na priljubljenem trgu, kot je Seattle, lahko vroči dom v nekaj dneh odpade. Zato je reševanje težav s hladnim zagonom izdelkov pri podobnih priporočilih za dom zelo pomembno za tako živahen trg, povezan z domom, kot je Zillow.

V tej objavi na spletnem dnevniku predstavljamo model vdelave doma z uporabo globoke nevronske mreže za podobna priporočila za dom. Naš model uporablja informacije o sodelovanju in vsebini. Natančneje, funkcija preslikave, ki temelji na nevronskem omrežju, iz vsebinskega prostora v prostor za vdelavo, učenje pa nadzirajo podatki o dejavnostih uporabnikov. Še pomembneje je, da je naš model sposoben učinkovito reševati problem hladnega zagona.

Naša metoda

Predstavitev doma s vgradi Skip-Gram

Modeli nevronskih omrežij zahtevajo numerične predstavitve kot svoje vhode. Zato moramo najti številčne predstavitve za vse kategorične atribute doma. Kategorične lastnosti, kot je poštna številka, imajo visoko kardinalnost, tako da lahko eno vroče kodiranje povzroči veliko dimenzionalnost in odvečnost pri predstavitvi doma in povzroči dodatne računske stroške med treningom. Za reševanje teh vprašanj smo uporabili model preskočenih gramov [5], da bi se naučili učinkovite predstavitve (vdelave) teh kategoričnih lastnosti.

Model preskočitve gramov je bil uspešno uporabljen v naravnem jeziku za učenje predstavitve besed. Njegova posplošitev na poljubne zaporedne podatke je intuitivna. Vzemimo za primer funkcijo poštne kode, kot je prikazano na sliki 2. Analogno naravni jezikovni domeni, edinstveno poštno kodo štejemo kot "besedo" v "slovarju", ki jo uporabnik naroči, da klikne različne poštne številke kot " stavek "in zbirko zaporedja poštnih kod različnih uporabnikov kot" korpus ". Model preskočenega grama je usposobljen tako, da reprezentacija trenutne poštne številke napoveduje poštne kode, ki jih je isti uporabnik v seji kliknil v bližini, to je znotraj „kontekstnega okna“, prikazanega na sliki 2.

Slika 2: Ilustracija uporabe modela preskočnega grama pri zaporedjih poštnih kod

Preskočna gramska predstavitev je smiselna, saj merilo razdalje na tej predstavitvi z nižjo dimenzijo odraža bližino med različnimi kategoričnimi vrednostmi. To dejstvo ponazarjajo toplotni zemljevidi na sliki 3, ki prikazujejo podobnost kosinusa med vdelanimi vektorji iz več regij poštnih številk na območju Seattla na poštni številki 98101 (na levi) in 98116 (na desni).

Slika 3: Podobnost med poštnimi številkami Seattla in 98101 (območje v centru mesta, z zvezdico na levi strani) ter med poštnimi številkami Seattla in 98116 (območje zahodnega Seattla, z zvezdico na desni), ki temelji na vdelavah s preskočenim gramom.

Na podoben način se naučimo vektorske reprezentacije za druge kategorične značilnosti, vključno s tipom območja, šolskim okrožjem, mestno regijo, tipom hiše in drugimi. Slika 4 prikazuje t-SNE 2-D vizualizacije za naučene predstavitve poštnih številk in tip zoniranja. t-SNE [6] je tehnika vizualizacije za velike dimenzionalne podatke, ki preslikajo podobne podatkovne točke na mesta, ki so blizu 2D ali 3D prostora. Na primer, poštni številki 988 ** in 989 ** sta zaradi velike podobnosti kosinusa preslikani v zgornji levi kot na levi ploskvi na sliki 4. Ko jih predstavimo, jih lahko shranimo v pregledno tabelo, da jih lahko v prihodnje hitro ogledujemo.

Slika 4: t-SNE vizualizacije v 2D prostoru za poštne številke (levo) in vrste zoniranja (desno) v zvezni državi Washington.

Slika 5: Predstavitev doma v prostorskem vektorskem prostoru

Naučene reprezentacije za kategorične značilnosti so povezane s številčnimi značilnostmi, da tvorijo končno predstavitev vektorja vsebine za vsak dom, kot je prikazano na sliki 5. Ta predstavitev se uporablja kot vhod v model globoke nevronske mreže. Za številčne atribute, kot sta cena in velikost, ki so nakrivili distribucije, lahko nekateri koraki predhodne obdelave, vključno s preoblikovanjem dnevnika in najmanjšim spreminjanjem velikosti (slika 6), izboljšajo delovanje modela nevronske mreže. Poleg tega lahko v prihodnosti vključimo funkcije, izvlečene iz nestrukturirane vsebine, kot so naštevanje slik in opis seznama, kot je prikazano na sliki 5.

Slika 6: Primer predhodne obdelave numeričnih lastnosti. Na levi: cenite histogram pred predobdelavo. Na desni strani: cenite histogram po kvantitativnem izrezu, transformaciji dnevnika in najmanjšem skaliranju

Siamska mreža

S siamsko mrežno arhitekturo se naučimo funkcije preslikave od vsebinskega vektorskega prostora (slika 5) do vdelanega vektorskega prostora, kjer je mogoče neposredno izračunati podobnost kosinusa.

Slika 7: Arhitektura siamske mreže

Za izgradnjo siamske mreže se predstavitve funkcij para domov, ki jih označujeta ui in uj, prenašajo skozi identična podomrežja, sestavljena iz več popolnoma povezanih plasti. Vsako podomrežje preslika svoj dom v prostor za vgradnjo v majhne dimenzije (npr. N = 25), kot je opisano na sliki 7.

V novem izhodnem vgradnem prostoru želimo, da se razlike med dvema domoma merijo z njihovo razdaljo kosinusa:

Parametri nevronske mreže so optimizirani tako, da imajo v tem novem prostoru za vgradnjo podobni domovi manjše razdalje med kosinami, različni domovi pa večje razdalje. Nadzor nad usposabljanjem takšnih omrežij izvira iz podatkov o skupnem kliku ali „sodelovalnih“, ki jih vsebujejo podatki uporabnikovih klikov. Za izdelavo podatkov o vadbi predvidevamo, da so pari domov, ki jih isti uporabnik v določenem kontekstnem oknu (<= 10 minut) s pritiskom istega uporabnika v bližnjih sejah (npr. Velikost okna = 3) razmeroma bolj podobni in označeni kot pozitivni, medtem ko domovi, ki jih noben uporabnik ni nikoli tako kliknil, so si manj podobni in jih označujejo kot negativne (kot je prikazano na sliki 8).

Slika 8: Ilustracija pridobivanja pozitivnih in negativnih domov v sidrišče iz uporabnikovih podatkov o kliku (velikost kontekstnega okna = 3, omejitev seje v bližini: <= 10 minut)

Funkcije izgube

Naslednji dve funkciji izgube sta pogosto upoštevani pri usposabljanju siamske mreže.

Kontrastna izguba neposredno optimizira absolutno vrednost razdalje kosinusa med parom domov, tako da je razdalja kosinusa zmanjšana za pozitivne pare, največja pa za negativne pare.

kje

Naj C predstavlja celoten nabor domov. Po zgornji definiciji pozitivnih in negativnih lastnosti Ci za vsak dom i označuje nabor pozitivnih domov, združenih iz klikov vseh uporabnikov. Yij je oznaka, dodeljena domačemu paru (i, j), pozitivna, če je j ∈ Ci in negativna drugače. Dij je kosinusna podobnost med domom i in domom j v novem prostoru za vgradnjo. Pozitivna meja m (med 0 in 2) omogoča, da se poudarek osredotoči na zahtevne primere (trdne negative).

Trojna izguba šteje trojico domov (i, jp, jn), kjer so jp ∈ Ci, jn ∉ Ci. Namesto da bi optimizirali absolutno razdaljo, izguba trojice maksimira razliko razdalj med negativnim parom (i, jn) in pozitivnim parom (i, jp). Ideja za optimizacijo relativne ustreznosti je podobna ciljni funkciji Bayesove personalizirane razvrstitve (BPR) [7], ki se je izkazala za učinkovito pri modeliranju implicitnih povratnih informacij. Marža m ima podoben učinek kot pri kontrastivni izgubi.

Pri treningu z obema funkcijama izgube smo za vsak pozitivni par, ki smo ga opazili, vzorčili 5 negativnih parov.

Podobna domača priporočila s predmeti Cold-Start

Po preslikavi vseh domov na prostor za vgradnjo se podobno priporočilo doma zmanjša na preprosto iskanje najbližjega soseda, ki temelji na kosinusni razdalji v vdelanem prostoru. Naš model lahko v priporočila vključi vse nove sezname. Kadar koli je naveden nov dom, lahko poiščemo vnaprej izračunane reprezentacije za vse kategorične atribute, da ustvarijo numerično predstavitev za nov seznam. Nato vnaprej trenirano nevronsko omrežje preslika številčno predstavitev v vsebinskem prostoru v domači prostor, v katerem je mogoče izračunati podobnost kosinusa. Diagram na sliki 9 povzema korake za ravnanje z novimi seznami.

Slika 9: Potek dela za podobna priporočila doma z novimi seznami

Vrednotenje

Podobni algoritmi za domača priporočila napajajo podoben vrtiljak na vsaki strani s podrobnostmi o Zillow. Učinkovit podoben priporočevalec za dom bi moral spodbuditi uporabniško udejstvovanje s pomočjo koristnih smernic za raziskovanje stanovanjskega trga. Glede na dom, ki si ga je uporabnik ogledal v zgodnji seji, bi radi priporočili, da tiste domove, ki jih uporabnik rad raziskuje v poznejših sejah, bolj razvrsti v nabor priporočenih podobnih domov. Zato smo zasnovali meritev ustreznosti na podlagi klika za oceno brez povezave. Na datum testiranja z osredotočanjem na njihov prvi ogled doma preverimo, kako se bodoči kliki vsakega uporabnika uvrstijo na seznam priporočenih podobnih domov. Povprečni NDCG na različnih pozicijah ponuja meritev merjenja brez povezave za primerjavo različnih metod.

Predlagani način vdelave smo primerjali s tremi drugimi metodami, ki smo jih razvili v podjetju Zillow:

  1. Izhodiščni model: preprosta kosinusna podobnost, izračunana neposredno iz predstavitev doma v vsebinskem vektorskem prostoru, prikazanem na sliki 5 (brez nadzora).
  2. Linearni model: merjenje razdalje med dvema domovima kot tehtana kombinacija atributnih razlik. Uteži se učijo iz podatkov co-click (pod nadzorom).
  3. Naključni gozd: nelinearna različica metode 2, usposobljena na istem naboru lastnosti atributnih razlik (pod nadzorom).

Ocenili smo različne modele na podlagi podatkov o uporabniških dogodkih v stanju WA. Vsi nadzorovani modeli so bili usposobljeni za uporabniške dogodke teden dni pred datumom testiranja. Na levi ploskvi na sliki 9 so metrike NDCG predstavljene kot razmerje do NDCG @ 1 osnovne metode. Prava ploskev primerja dvigala NDCG različnih nadzorovanih metod glede na osnovno metodo (preprosta podobnost kosinusa).

Naši rezultati kažejo, da je nadzor nad podatki uporabnika, ki kliknejo s klikom, bistveno dvignil meritve NDCG nad osnovno metodo. Primarni vzrok je, da vzorci klikov uporabnikov zagotavljajo pomembne signale, na primer, kateri atributi so pomembni in kako medsebojno vplivajo. Med vsemi nadzorovanimi metodami predlagana siamska metoda vdelave presega linearni model in RF model. Poleg tega trojna izguba kaže rahlo prednost pred kontrastivno izgubo pri usposabljanju siamske mreže za našo uporabo. Najboljši model, siamski vgradni model, treniran s trojno izgubo, je dosegel znatno 21-odstotno dvig NDCG @ 10 po osnovni metodi.

Slika 9: Primerjava različnih podobnih metod priporočevanja domov za metrike NDCG (levo) in dvig NDCG nad osnovno metodo (desno).

Ali so vdelave smiselne?

Da bi odgovorili na to vprašanje, si predstavljamo 25-dimenzionalne vdelave za domove v zvezni državi Washington v 2D prostoru s t-SNE. Na vsaki od t-SNE-grafov na sliki 10 vsaka pika predstavlja dom, zaprtost med vsakim parom pik pa odraža podobnost kosinusa med dvema domoma v prostoru za vgradnjo v dom. Pike smo obarvali po (log) lestvici ene od glavnih značilnosti doma v vsaki parceli. Večja kot je struktura v obarvanih grozdih, večji je pomen posebne lastnosti v prostoru za vgradnjo. Ideja tukaj je precej podobna naši prejšnji objavi v spletnem dnevniku, kjer so uporabljeni samoorganizirajoči zemljevidi za vizualizacijo dejavnikov filtriranja v sodelovanju. Na sliki 10 so atributi prikazani po pomembnosti glede na signal v strukturi. Iz vdelanih vizualizacij opazimo, da se zdi, da je lokacija (zemljepisna dolžina in širina) najpomembnejši dejavnik vgradnje, ki ji sledita cena doma in velikost doma. Vendar moramo opozoriti, da so nekatere značilnosti lahko pomembne tudi zaradi zapletenih interakcij z drugimi, ki jih ni mogoče neposredno opaziti s spodnjimi vizualizacijami.

Slika 10: t-SNE 2D vizualizacije vdelav kotiranja v zvezni državi Washington, obarvane z lestvicami nekaterih izbranih atributov doma. Upoštevajte, da so cena, velikost (sqft) in dnevi na Zillow v naravni lestvici dnevnika.

Sklep

V tem prispevku na spletnem dnevniku predstavljamo metodo vdelave seznama na osnovi učenja s pomočjo siamske mreže za podobna domača priporočila v podjetju Zillow. Naš model vdelave uporablja informacije o sodelovanju in vsebini, modelira kompleksne interakcije med atributi in učinkovito obravnava predmete, ki jih zaženete hladen začetek. Evalvacija brez povezave je pokazala podobno uspešnost naše metode vdelave pri izpostavljanju uporabnikov ustreznih domov s podobnimi domačimi priporočili. Glede na rezultate brez povezave trenutno delamo na uporabi siamskega omrežnega modela za napajanje naslednje generacije podobnih mehanizmov za domača priporočila v podjetju Zillow.

Najlepša hvala celotni ekipi za personalizacijo podjetja Zillow za podporo temu projektu. Posebna zahvala Ericu Ringgerju, Ondrej Lindi in Egorju Klevaku za predloge in povratne informacije o tej objavi na spletnem dnevniku.

Če se vam zdi to delo zanimivo in če želite svoje znanje o podatkih in strojnem učenju uporabiti v našem obsežnem, bogatem in nenehno razvijajočem se naboru nepremičnin, prosimo, pridite. Zaposlujemo!

Referenca

[1] Grbovic, Mihajlo idr. »Uvrstitev vdelav v razvrstitve iskalnega prometa«. 13. marec 2018, Airbnb Engineering & Data Science @Medium.

[2] Grbovic, Mihajlo idr. »E-trgovina v vaši prejeti pošti: priporočila v obsegu.« Zbornik 21. mednarodne konference ACM SIGKDD o odkrivanju znanja in iskanju podatkov. ACM, 2015.

[3] Gudell, Gudell. „Zaloga ni več, vendar kotacije ne obstajajo“, junij 2017 tržno poročilo, skupina Zillow, datum objave: 20. julij 2017, https://www.zillow.com/research/june-2017-market-report-15956 /

[4] Ringger, Eric in sod. »Iskanje svojega doma: Priporočilo velikega obsega na živahnem trgu.« ComplexRec 2018

[5] Mikolov, Tomas in sod. »Porazdeljene predstavitve besed in stavkov ter njihova sestava.« Napredek v nevronskih sistemih za obdelavo informacij. 2013

[6] Maaten, Laurens van der in Geoffrey Hinton. “Vizualizacija podatkov s pomočjo t-SNE.” Journal of Machine Learning Research 9.Nov (2008): 2579–2605.

[7] Rendle, Steffen in sod. "BPR: Bayesova personalizirana razvrstitev iz implicitnih povratnih informacij." Zbornik 25. konference o negotovosti v umetni inteligenci. AUAI Press, 2009.

Prvotno objavljeno na www.zillow.com 17. oktobra 2018.