Sut mae Yandex.Taxi yn chwilio am geir pan nad oes rhai

Sut mae Yandex.Taxi yn chwilio am geir pan nad oes rhai

Dylai gwasanaeth tacsi da fod yn ddiogel, yn ddibynadwy ac yn gyflym. Ni fydd y defnyddiwr yn mynd i fanylion: mae'n bwysig iddo glicio ar y botwm "Gorchymyn" a derbyn car cyn gynted â phosibl a fydd yn mynd ag ef o bwynt A i bwynt B. Os nad oes ceir gerllaw, dylai'r gwasanaeth rhoi gwybod ar unwaith am hyn fel nad oes gan y cleient roedd disgwyliadau ffug. Ond os yw'r arwydd "Dim ceir" yn ymddangos yn rhy aml, yna mae'n rhesymegol y bydd person yn rhoi'r gorau i ddefnyddio'r gwasanaeth hwn ac yn mynd at gystadleuydd.

Yn yr erthygl hon rwyf am siarad am sut, gan ddefnyddio dysgu peiriant, rydym wedi datrys y broblem o chwilio am geir mewn ardaloedd dwysedd isel (mewn geiriau eraill, lle, ar yr olwg gyntaf, nid oes ceir). A beth ddaeth ohono.

cynhanes

I alw tacsi, mae'r defnyddiwr yn perfformio ychydig o gamau syml, ond beth sy'n digwydd y tu mewn i'r gwasanaeth?

Defnyddiwr Cam Backend Yandex.Taxi
Yn dewis y man cychwyn Pin Rydym yn lansio chwiliad symlach am ymgeiswyr - chwiliad pin. Yn seiliedig ar y gyrwyr a ddarganfuwyd, rhagwelir yr amser cyrraedd - ETA yn y pin. Mae'r cyfernod cynyddol ar bwynt penodol yn cael ei gyfrifo.
Yn dewis cyrchfan, pris, gofynion Cynnig Rydym yn adeiladu llwybr ac yn cyfrifo prisiau ar gyfer pob tariff, gan ystyried y cyfernod cynyddol.
Pwyswch y botwm “Galwch Tacsi”. Gorchymyn Rydym yn lansio chwiliad llawn am y car. Rydyn ni'n dewis y gyrrwr mwyaf addas ac yn cynnig archeb iddo.

Про ETA mewn pin, cyfrifiad pris и dewis y gyrrwr mwyaf addas ysgrifenasom eisoes. A stori am ddod o hyd i yrwyr yw hon. Pan fydd gorchymyn yn cael ei greu, mae'r chwiliad yn digwydd ddwywaith: ar y Pin ac ar y gorchymyn. Mae'r chwilio am orchymyn yn digwydd mewn dau gam: recriwtio ymgeiswyr a graddio. Yn gyntaf, canfyddir gyrwyr ymgeisiol sydd agosaf ar hyd y graff ffordd. Yna caiff taliadau bonws a hidlo eu cymhwyso. Mae'r ymgeiswyr sy'n weddill yn cael eu rhestru ac mae'r enillydd yn derbyn cynnig archeb. Os yw'n cytuno, caiff ei aseinio i'r archeb ac aiff i'r man dosbarthu. Os bydd yn gwrthod, yna daw'r cynnig i'r un nesaf. Os nad oes mwy o ymgeiswyr, bydd y chwiliad yn dechrau eto. Nid yw hyn yn para mwy na thri munud, ac ar ôl hynny mae'r gorchymyn yn cael ei ganslo a'i losgi.

Mae chwilio ar bin yn debyg i chwilio ar orchymyn, dim ond y gorchymyn sydd heb ei greu a dim ond unwaith y cynhelir y chwiliad ei hun. Defnyddir gosodiadau symlach ar gyfer nifer yr ymgeiswyr a radiws chwilio hefyd. Mae symleiddio o'r fath yn angenrheidiol oherwydd bod trefn maint yn fwy o binnau nag o orchmynion, ac mae chwilio yn weithrediad eithaf anodd. Y pwynt allweddol ar gyfer ein stori: os na ddaethpwyd o hyd i ymgeiswyr addas ar y Pin yn ystod y chwiliad rhagarweiniol, yna nid ydym yn caniatáu ichi osod archeb. O leiaf dyna fel yr arferai fod.

Dyma a welodd y defnyddiwr yn y rhaglen:

Sut mae Yandex.Taxi yn chwilio am geir pan nad oes rhai

Chwilio am geir heb geir

Un diwrnod fe wnaethom lunio rhagdybiaeth: efallai mewn rhai achosion y gellir dal i gwblhau'r gorchymyn, hyd yn oed os nad oedd ceir ar y pin. Wedi'r cyfan, mae peth amser yn mynd heibio rhwng y pin a'r gorchymyn, ac mae'r chwiliad am y gorchymyn yn fwy cyflawn ac weithiau'n cael ei ailadrodd sawl gwaith: yn ystod yr amser hwn, gall y gyrwyr sydd ar gael ymddangos. Gwyddem y gwrthwyneb hefyd: pe canfyddid gyrwyr ar y pin, nid oedd yn ffaith y byddent i’w cael wrth archebu. Weithiau maen nhw'n diflannu neu mae pawb yn gwrthod y gorchymyn.

I brofi’r ddamcaniaeth hon, fe wnaethom lansio arbrawf: fe wnaethon ni roi’r gorau i wirio presenoldeb ceir yn ystod chwiliad ar Pin am grŵp prawf o ddefnyddwyr, h.y., cawsant gyfle i wneud “archeb heb geir.” Roedd y canlyniad yn eithaf annisgwyl: os nad oedd y car ar y pin, yna mewn 29% o achosion fe'i canfuwyd yn ddiweddarach - wrth chwilio ar yr archeb! Ar ben hynny, nid oedd archebion heb geir yn sylweddol wahanol i archebion rheolaidd o ran cyfraddau canslo, graddfeydd, a dangosyddion ansawdd eraill. Roedd archebion heb geir yn cyfrif am 5% o'r holl archebion, ond ychydig dros 1% o'r holl deithiau llwyddiannus.

I ddeall o ble mae ysgutorion y gorchmynion hyn yn dod, gadewch i ni edrych ar eu statws yn ystod chwiliad ar Pin:

Sut mae Yandex.Taxi yn chwilio am geir pan nad oes rhai

  • Ar gael: oedd ar gael, ond am ryw reswm heb ei gynnwys yn yr ymgeiswyr, er enghraifft, roedd yn rhy bell i ffwrdd;
  • Ar archeb: yn brysur, ond llwyddodd i ryddhau ei hun neu ddod ar gael ar gyfer gorchymyn cadwyn;
  • Prysur: roedd y gallu i dderbyn archebion yn anabl, ond yna dychwelodd y gyrrwr i'r llinell;
  • Dim ar gael: nid oedd y gyrrwr ar-lein, ond ymddangosodd.

Gadewch i ni ychwanegu dibynadwyedd

Mae archebion ychwanegol yn wych, ond mae 29% o chwiliadau llwyddiannus yn golygu bod 71% o'r amser y bu'r defnyddiwr yn aros am amser hir ac yn y pen draw yn mynd i unman. Er nad yw hyn yn beth drwg o safbwynt effeithlonrwydd system, mewn gwirionedd mae'n rhoi gobaith ffug i'r defnyddiwr ac yn gwastraffu amser, ac ar ôl hynny maent yn cynhyrfu ac (o bosibl) yn rhoi'r gorau i ddefnyddio'r gwasanaeth. I ddatrys y broblem hon, fe wnaethom ddysgu rhagweld y tebygolrwydd y bydd car ar archeb yn cael ei ddarganfod.

Mae'r cynllun fel a ganlyn:

  • Mae'r defnyddiwr yn rhoi pin.
  • Gwneir chwiliad ar y pin.
  • Os nad oes ceir, rydym yn rhagweld: efallai y byddant yn ymddangos.
  • Ac yn dibynnu ar y tebygolrwydd, rydym yn caniatáu neu ddim yn caniatáu ichi osod archeb, ond rydym yn eich rhybuddio bod dwysedd y ceir yn yr ardal hon ar hyn o bryd yn isel.

Yn y cais roedd yn edrych fel hyn:

Sut mae Yandex.Taxi yn chwilio am geir pan nad oes rhai

Mae defnyddio'r model yn caniatáu ichi greu archebion newydd yn fwy cywir a pheidio â thawelu meddwl pobl yn ofer. Hynny yw, i reoleiddio'r gymhareb o ddibynadwyedd a nifer yr archebion heb beiriannau gan ddefnyddio'r model adalw manwl gywir. Mae dibynadwyedd y gwasanaeth yn dylanwadu ar yr awydd i barhau i ddefnyddio'r cynnyrch, h.y. yn y diwedd mae'r cyfan yn dibynnu ar nifer y teithiau.

Ychydig am drachywiredd-dalUn o'r tasgau sylfaenol mewn dysgu peirianyddol yw'r dasg ddosbarthu: aseinio gwrthrych i un o ddau ddosbarth. Yn yr achos hwn, mae canlyniad yr algorithm dysgu peiriant yn aml yn dod yn asesiad rhifiadol o aelodaeth yn un o'r dosbarthiadau, er enghraifft, asesiad tebygolrwydd. Fodd bynnag, mae'r gweithredoedd a gyflawnir fel arfer yn ddeuaidd: os yw'r car ar gael, yna byddwn yn gadael i chi ei archebu, ac os na, yna ni fyddwn. I fod yn benodol, gadewch i ni alw algorithm sy'n cynhyrchu amcangyfrif rhifiadol yn fodel, a dosbarthwr yn rheol sy'n ei aseinio i un o ddau ddosbarth (1 neu -1). I wneud dosbarthwr yn seiliedig ar yr asesiad enghreifftiol, mae angen i chi ddewis trothwy asesu. Mae sut yn union yn dibynnu'n fawr ar y dasg.

Tybiwch ein bod yn gwneud prawf (dosbarthwr) ar gyfer rhai clefydau prin a pheryglus. Yn seiliedig ar ganlyniadau'r profion, rydyn ni naill ai'n anfon y claf am archwiliad manylach, neu'n dweud: “Da, ewch adref.” I ni, mae anfon person sâl adref yn waeth o lawer nag archwilio person iach yn ddiangen. Hynny yw, rydym am i'r prawf weithio i gynifer o bobl sâl iawn â phosibl. Gelwir y gwerth hwn yn adalw =Sut mae Yandex.Taxi yn chwilio am geir pan nad oes rhai. Mae gan ddosbarthwr delfrydol adalw o 100%. Sefyllfa ddirywiedig yw anfon pawb i'w harchwilio, yna bydd yr adalw hefyd yn 100%.

Mae hefyd yn digwydd y ffordd arall. Er enghraifft, rydym yn gwneud system brofi ar gyfer myfyrwyr, ac mae ganddi synhwyrydd twyllo. Os yn sydyn nad yw'r siec yn gweithio ar gyfer rhai achosion o dwyllo, yna mae hyn yn annymunol, ond nid yn hollbwysig. Ar y llaw arall, mae'n hynod o ddrwg cyhuddo myfyrwyr yn annheg o rywbeth na wnaethant. Hynny yw, mae'n bwysig i ni, ymhlith atebion cadarnhaol y dosbarthwr, fod cymaint o rai cywir ag sy'n bosibl, er anfantais efallai i'w rhif. Mae hyn yn golygu bod angen i chi wneud y mwyaf o drachywiredd = Sut mae Yandex.Taxi yn chwilio am geir pan nad oes rhai. Os bydd sbardun yn digwydd ar bob gwrthrych, yna bydd y manwl gywirdeb yn hafal i amlder y dosbarth diffiniedig yn y sampl.

Os yw'r algorithm yn cynhyrchu gwerth tebygolrwydd rhifiadol, yna trwy ddewis gwahanol drothwyon, gallwch gyflawni gwahanol werthoedd adalw manwl.

Yn ein problem mae'r sefyllfa fel a ganlyn. Dwyn i gof yw nifer y gorchmynion y gallwn eu cynnig, cywirdeb yw dibynadwyedd y gorchmynion hyn. Dyma sut olwg sydd ar gromlin adalw manwl ein model:
Sut mae Yandex.Taxi yn chwilio am geir pan nad oes rhai
Mae dau achos eithafol: peidiwch â gadael i neb archebu a chaniatáu i bawb archebu. Os na fyddwch chi'n caniatáu unrhyw un, yna bydd adalw yn 0: nid ydym yn creu gorchmynion, ond ni fydd yr un ohonynt yn methu. Os byddwn yn caniatáu i bawb, yna bydd adalw yn 100% (byddwn yn derbyn pob archeb bosibl), a bydd y manwl gywirdeb yn 29%, h.y. bydd 71% o orchmynion yn ddrwg.

Fe wnaethom ddefnyddio paramedrau amrywiol y man cychwyn fel arwyddion:

  • Amser/lle.
  • Cyflwr y system (nifer y peiriannau a feddiannir o'r holl dariffau a phinnau yn y cyffiniau).
  • Paramedrau chwilio (radiws, nifer yr ymgeiswyr, cyfyngiadau).

Mwy am yr arwyddion

Yn gysyniadol, rydym am wahaniaethu rhwng dwy sefyllfa:

  • “Coedwig ddwfn” - does dim ceir yma ar hyn o bryd.
  • “Anlwcus” - mae yna geir, ond wrth chwilio doedd dim rhai addas.

Un enghraifft o “Anlwcus” yw os oes llawer o alw yn y ganolfan nos Wener. Mae yna lawer o orchmynion, llawer o bobl yn fodlon, a dim digon o yrwyr i bawb. Efallai y bydd yn troi allan fel hyn: nid oes unrhyw yrwyr addas yn y pin. Ond yn llythrennol o fewn eiliadau maent yn ymddangos, oherwydd ar hyn o bryd mae yna lawer o yrwyr yn y lle hwn ac mae eu statws yn newid yn gyson.

Felly, roedd dangosyddion system amrywiol yng nghyffiniau pwynt A yn nodweddion da:

  • Cyfanswm nifer y ceir.
  • Nifer y ceir ar archeb.
  • Nifer y ceir nad ydynt ar gael i'w harchebu yn y statws “Prysur”.
  • Nifer y defnyddwyr.

Wedi'r cyfan, po fwyaf o geir sydd yna, y mwyaf tebygol yw hi y bydd un ohonyn nhw ar gael.
Mewn gwirionedd, mae'n bwysig i ni nid yn unig lleoli ceir, ond hefyd teithiau llwyddiannus. Felly, roedd yn bosibl rhagweld y tebygolrwydd o daith lwyddiannus. Ond fe wnaethom benderfynu peidio â gwneud hyn, oherwydd mae'r gwerth hwn yn dibynnu'n fawr ar y defnyddiwr a'r gyrrwr.

Roedd yr algorithm hyfforddi model CatBoost. Defnyddiwyd data a gafwyd o'r arbrawf ar gyfer hyfforddiant. Ar ôl gweithredu, bu'n rhaid casglu data hyfforddi, gan ganiatáu weithiau i nifer fach o ddefnyddwyr archebu yn erbyn penderfyniad y model.

Canlyniadau

Roedd canlyniadau'r arbrawf yn unol â'r disgwyl: mae defnyddio'r model yn caniatáu ichi gynyddu'n sylweddol nifer y teithiau llwyddiannus oherwydd archebion heb geir, ond heb gyfaddawdu ar ddibynadwyedd.

Ar hyn o bryd, mae'r mecanwaith wedi'i lansio ym mhob dinas a gwlad a gyda'i help, mae tua 1% o deithiau llwyddiannus yn digwydd. Ar ben hynny, mewn rhai dinasoedd sydd â dwysedd isel o geir, mae cyfran y teithiau o'r fath yn cyrraedd 15%.

Postiadau eraill am dechnoleg Tacsi

Ffynhonnell: hab.com

Ychwanegu sylw