为按需服务提供信息的系统及方法

文档序号:1590886 发布日期:2020-01-03 浏览:24次 >En<

阅读说明:本技术 为按需服务提供信息的系统及方法 (System and method for providing information for on-demand services ) 是由 陈欢 宋奇 张俊英 于 2017-05-27 设计创作,主要内容包括:本申请涉及一种系统、方法和非暂时性计算机可读介质。该系统包括至少一个计算机可读存储介质,该计算机可读存储介质包括一组指令以及与所述至少一个计算机可读存储介质通信的至少一个处理器。当执行所述一组指令时,所述至少一个处理器用于:从终端接收对查询和用户信息进行编码的第一电信号;基于所述查询,获取一个或以上兴趣点POI;操作所述至少一个处理器中的逻辑电路以获取排序模型;操作所述至少一个处理器中的所述逻辑电路,以基于所述排序模型和所述用户信息来确定所述一个或以上POI的排序;并且响应于所述查询,根据所述排序,生成对所述一个或以上POI进行编码的第二电信号,以发送到所述终端。(The present application relates to a system, method, and non-transitory computer-readable medium. The system includes at least one computer-readable storage medium comprising a set of instructions and at least one processor in communication with the at least one computer-readable storage medium. The at least one processor, when executing the set of instructions, is configured to: receiving a first electrical signal encoding a query and user information from a terminal; based on the query, acquiring one or more POIs; operating logic circuitry in the at least one processor to obtain an ordering model; operating the logic in the at least one processor to determine a ranking of the one or more POIs based on the ranking model and the user information; and in response to the query, generating a second electrical signal encoding the one or more POIs for transmission to the terminal in accordance with the ranking.)

为按需服务提供信息的系统及方法

技术领域

本申请涉及为按需服务提供信息的系统和方法,具体地,涉及响应于来自按需服务的用户的查询来提供至少两个排序位置的系统和方法。

背景技术

按需服务越来越受欢迎。按需服务的用户可以通过使用移动设备输入查询来搜索位置。很多时候,对位置的查询可能会生成多个位置作为结果。用户可以选择其感兴趣的一个位置,并且发起服务订单(例如,在所选择的餐厅点餐、乘出租车到选定的音乐厅)。基于排序,在向用户提供多个位置中的至少一部分之前,对多个位置进行排序可能有必要的。

发明内容

根据本申请的一个方面,系统可以包括至少一个计算机可读存储介质,该计算机可读存储介质包括一组指令以及与该至少一个计算机可读存储介质通信的至少一个处理器。当执行所述指令时,所述至少一个处理器用于:从终端接收对查询和用户信息进行编码的第一电信号;操作所述至少一个处理器中的逻辑电路,以基于所述查询获取一个或以上兴趣点POI;操作所述至少一个处理器中的所述逻辑电路以获取排序模型;操作所述至少一个处理器中的所述逻辑电路,以基于所述排序模型和所述用户信息确定所述一个或以上POI的排序;以及响应于所述查询,根据所述排序,生成对所述一个或以上POI进行编码的第二电信号,以发送到所述终端。

根据本申请的一个方面,一种在具有至少一个处理器、至少一个计算机可读存储介质和连接到网络的通信平台的计算设备上实现的方法,可以包括:从终端接收对查询和用户信息进行编码的第一电信号;操作所述至少一个处理器中的逻辑电路,以基于所述查询获取一个或以上兴趣点POI;操作所述至少一个处理器中的所述逻辑电路以获取排序模型;操作所述至少一个处理器中的所述逻辑电路,以基于所述排序模型和所述用户信息确定所述一个或以上POI的排序;以及响应于所述查询,根据所述排序,生成对所述一个或以上POI进行编码的第二电信号,以发送到所述终端。

根据本申请的一个方面,非临时性计算机可读介质可以包括被配置为使至少一个处理器执行以下操作的指令:从终端接收对查询和用户信息进行编码的第一电信号;操作所述至少一个处理器中的所述这逻辑电路,以基于所述查询获取一个或以上兴趣点(POI);操作所述至少一个处理器中的逻辑电路以获取排序模型;操作所述至少一个处理器中的所述逻辑电路,以基于所述排序模型和所述用户信息确定所述一个或以上POI的排序;以及响应于所述查询,根据所述排序,生成对所述一个或以上POI进行编码的第二电信号,以发送到所述终端。

附加特征部分将在下面的描述中阐述,并且对于本领域技术人员在研究以下和附图时将部分地变得显而易见,或者可以通过示例的生产或操作来了解。本申请的特征可以通过实践或使用下面讨论的详细示例中阐述的方法、手段和组合的各个方面来实现和获得。

附图说明

本申请将结合示例性实施例进一步进行描述。参考附图可以详细描述所述示例性实施例。这些实施例并非限制性的,在这些实施例中,相同的组件符号表示相同的结构,其中:

图1是根据本申请的一些实施例所示的提供按需服务的示例性网络环境;

图2是根据本申请的一些实施例所示的可以在其上实现按需服务系统的示例性计算设备;

图3是根据本申请的一些实施例所示的可以在其上实现按需服务的示例性移动设备;

图4是根据本申请的一些实施例所示的示例性处理引擎;

图5是根据本申请的一些实施例所示的使用按需服务系统确定一个或以上POI的排序的示例性流程图;以及

图6是根据本申请的一些实施例所示的使用按需服务系统确定排序模型的示例性流程图。

具体实施方式

下述描述是为了使本领域普通技术人员能制造和使用本申请,并且该描述是在特定的应用场景及其要求的背景下提供的。对于本领域的普通技术人员来讲,对本申请披露的实施例进行的各种修改是显而易见的,并且本申请定义的通则可以适用于其他实施例和应用,而不背离本申请的精神和范围。因此,本申请不限于所示的实施例,而是符合与权利要求一致的最广泛范围。

本申请所使用的术语仅为了描述特定实施例,并不限制本申请的范围。如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”、和/或“该”等词并非特指单数,也可包括复数。应该被理解的是,本申请中所使用的术语“包括”与“包括”仅提示已明确标识的特征、整数、步骤、操作、元素和/或部件,而不排除可以存在和添加其他一个或以上特征、整数、步骤、操作、元素、部件和/或其组合。

根据以下对附图的描述,本申请所述的和其他的特征、操作方法、相关组件的功能和经济的结构更加显而易见,这些都构成本申请的一部分。然而,应当理解,附图仅仅是为了说明和描述的目的,并不旨在限制本申请的范围。应当理解的是,附图并不是按比例绘制的。

本申请中使用了流程图来说明根据本申请的实施例的系统所执行的操作。应当理解的是,流程图的操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。而且,可以将一个或以上其他操作添加到流程图。一个或以上操作也可以从流程图中删除。

此外,尽管本申请中的系统和方法主要描述关于确定与运输服务的查询相关的至少一个兴趣点(Point of Interest,POI)的排序,但是还应该理解的是,本申请并不旨在限制。本申请的系统或方法可以应用于任何其他类型的服务。例如,本申请的系统或方法可以应用于搜索引擎、数字地图应用、导航系统等。搜索引擎、数字地图应用或导航系统可以使用本文提供的方法的系统来对搜索结果、位置或目的地等进行排序。又例如,本申请的系统或方法可以应用于不同环境的运输系统,包括陆地、海洋、航空航天等或其任何组合。运输系统涉及的车辆可以包括出租车、私家车、顺风车、巴士、列车、动车、高铁、地铁、船舶、飞机、飞船、热气球、无人驾驶的车辆等或上述举例的任意组合。运输系统还可以包括用于管理的任何运输系统,例如用于发送和/或接收快递的系统。本申请的系统或方法的应用可以在用户设备上实现,并且包括网页、浏览器插件、客户端、定制系统、企业内部分析系统、人工智能机器人等,或其任意组合。

本申请中的术语“乘客”、“请求者”、“服务请求者”和“用户”可互换使用,指的是可以请求或订购服务的个人、实体或工具。本申请中的术语“司机”、“提供者”、以及“服务提供者”也可以交换使用,指的是可以提供服务或促进该服务提供的个体、实体或工具。

本申请中的术语“服务请求”,“请求服务”,“请求”,“订单”和“服务订单”可互换使用以指可由乘客、服务请求者、用户、司机、提供者、服务提供者等或其任何组合发起的请求。服务请求可以被乘客、服务请求者、客户、司机、提供者、服务提供者中的任意一个接受。服务请求可能是收费的或免费的。

本申请中的术语“司机设备”用于指服务提供者用来提供服务或便于提供服务的移动终端。本申请中的术语“终端设备”用于指由服务请求者用来请求或订购服务的移动终端。

本申请中使用的定位技术可以基于全球定位系统(global positioning system,GPS)、全球导航卫星系统(global navigation satellite system,GLONASS)、罗盘导航系统(compass navigation system,COMPASS)、伽利略定位系统、准天顶卫星系统(quasi-zenith satellite system,QZSS)、无线保真(wireless fidelity,WiFi)定位技术等或其任意组合。上述定位系统中的一种或多种可以在本申请中互换使用。

根据本申请的一个方面,提供了响应于查询来提供至少一个排序的POI的系统和方法。系统从用户的移动设备获得查询和用户信息。系统根据查询获取一个或以上POI。该系统进一步获取排序模型,并基于排序模型和用户信息,确定一个或以上POI的排序。响应于所述查询,系统将一个或以上POI的排序发送到移动设备。通过使用训练的排序模型对一个或以上POI进行排序,系统可以根据用户的兴趣提供POI。因此,运输服务的效率得到提高,并且用户体验也得到改善。

需要注意的是,本申请中的信息检索服务可以用于地图应用、搜索引擎或诸如在线出租车呼叫等按需服务。所述信息检索服务是一种产生于后互联网时代的新兴业务。它为用户提供了只可在后互联网时代产生的技术解决方案。在前互联网时代,当乘客或旅行者想要获得与位置相关的信息时,他/她可能必须咨询当地导游或在当地目录中查找可能难以访问的位置。此外,当地导游或当地目录可能不具备能够提供关于乘客所需位置的全部情况的全面答案的相关知识。因此,乘客或旅行者常常难以搜寻位置。然而,在线信息检索系统能够通过移动设备,响应于用户的查询,来检索至少两个POI。在线信息检索系统确定至少两个POI的排序。在线信息检索系统根据排序,向移动设备发送排序的至少两个POI。用户只需根据排序浏览和/或选择他/她感兴趣的POI。用户可以在点击其感兴趣的POI后发起服务订单。响应于用户的查询,通过检索和排序多个POI,在线信息检索系统可以向用户提供方便有效的位置搜索服务,并且提高用户体验。此外,用于生成服务订单的过程可以被简化,并且用于订购服务的耗时可以被减少。因此,通过互联网,在线信息检索系统可以为乘客提供更加方便有效的交易平台,这在互联网出现前的传统情景下是无法达成的。

图1是根据本申请的一些实施例所示的提供按需服务的示例性网络环境。按需服务系统100可以是在线运输服务平台,该在线运输服务平台在具有提供运输服务的定位系统的网络环境中实施。按需服务系统100可以包括服务器110、网络120、终端设备130、司机设备140、车辆150和数据存储器160。按需服务系统100可以进一步通信连接到定位系统170。

按需服务系统100可以提供至少两种服务。示例性的按需服务可以包括出租车呼叫服务、代驾服务、快递服务、拼车服务、公交车服务、司机招聘服务和班车服务。在一些实施例中,可以向按需服务提供推荐的补充信息以执行按需服务。订单类型可以包括出租车订单、豪华轿车订单、快车订单、公共汽车订单、班车订单等。在一些实施例中,所述服务可以是任何在线服务,诸如预订用餐、购物等或其组合。

服务器110可以是计算机服务器。服务器110可以与终端设备130和/或司机设备140通信,以提供在线按需服务的各种功能。在一些实施例中,服务器110可以是单个服务器或服务器组。服务器组可以是经接入点连接到网络120的中央服务器组,或分别经由一个或以上接入点连接到网络120的分布式服务器组。在一些实施例中,服务器110可以本地连接到网络120或与网络120远程连接。例如,服务器110可以经由网络120访问存储在终端设备130、司机设备140和/或数据存储器160中的信息和/或数据。又例如,数据存储设备160可以用作服务器110的后端数据存储设备。在一些实施例中,服务器110可以在云平台上执行。仅作为示例,云平台可以包括私有云、公共云、混合云、小区云、分布云、跨云、多云等或上述举例的任意组合。在一些实施例中,服务器110可以在计算设备200上实现,如本申请图2所示,该计算设备200包括一个或以上部件。

在一些实施例中,服务器110可以包括处理引擎112。处理引擎112可以处理与执行本申请中描述的一个或以上功能相关的信息和/或数据。例如,处理引擎112可以分析来自终端设备130的查询。例如,处理引擎112可以确定与查询相关的一个或以上POI。又例如,处理引擎112可以确定与查询相关的一个或以上POI的排序。在一些实施例中,处理引擎112可包括一个或以上处理单元(例如,单芯片处理引擎或多芯片处理引擎)。仅作为范例,处理引擎112可包括一中央处理器(central processing unit,CPU)、特定应用集成电路(application-specific integrated circuit,ASIC)、特定应用指令集处理器(application-specific instruction-set processor,ASIP)、图像处理器(graphicsprocessing unit,GPU)、物理运算处理单元(physics processing unit,PPU)、数字信号处理器(digital signal processor,DSP)、现场可编程门阵列(field programmable gatearray,FPGA)、可编程逻辑设备(programmable logic device,PLD)、控制器、微控制器单元、精简指令集计算器(reduced instruction-set computer,RISC)、微处理器等或其任意组合。

网络120可以促进信息和/或数据的交换。在一些实施例中,按需服务系统100中的一个或以上组件(例如,服务器110、终端设备130、司机设备140、车辆150、数据存储器160)可以通过网络120将信息和/或数据发送到按需服务系统100中的其他组件。例如,服务器110可以经由网络120从数据存储器160访问和/或获得至少两个POI。例如,服务器110可以将一个或以上POI的排序发送到终端设备130。在一些实施例中,网络120可以是任何类型的有线或无线网络或其组合。仅作为示例,网络120可以包括缆线网络、有线网络、光纤网络、远程通信网络、内部网络、互联网、局域网络(local area network,LAN)、广域网络(widearea network,WAN)、无线局域网络(wireless local area network,WLAN)、城域网(metropolitan area network,MAN)、公共交换电话网络(public telephone switchednetwork,PSTN)、蓝牙网络、紫蜂网络、近场通讯(NFC)网络等或上述举例的任意组合。在一些实施例中,网络120可以包括一个或以上网络接入点。例如,网络120可以包括有线或无线网络接入点,例如基站和/或互联网交换点120-1,120-2,...,按需服务系统100的一个或以上组件可以通过它连接到网络120,以交换数据和/或信息。

在一些实施例中,乘客可以是终端设备130的所有者。在一些实施例中,终端设备130的所有者可以是乘客以外的人。例如,终端设备130的所有者A可以使用终端设备130为乘客B发送服务请求,和/或从服务器110接收服务确认和/或信息或指令。在一些实施例中,司机可以是司机设备140的用户。在一些实施例中,司机设备140的用户可以是司机之外的人。例如,司机设备140的用户C可以使用司机设备140为司机D接收服务请求,和/或来自服务器110的信息或指令。在一些实施例中,司机可以被分配去使用司机设备140和/或车辆150中的一个至少一段时间,例如,一天、一周、一个月或一年等。在一些其他实施例中,司机可以随机被分配去使用司机设备140和/或车辆150中的一个。例如,当司机可用于提供按需服务时,他/她可以被分配去使用接收最早请求的司机终端,和被推荐执行该类型的按需服务的车辆。在一些实施例中,“乘客”和“终端设备”可以互换使用,并且“司机”和“司机设备”可以互换使用。在一些实施例中,司机设备可以与一个或以上司机(例如,夜班司机、白班司机或随机调班的司机池)相关。

在一些实施例中,终端设备130可以包括移动设备130-1、平板电脑130-2、膝上型计算机130-3、车辆中的内置设备130-4等,或者其任何组合。在一些实施例中,移动设备130-1可包括智能家居设备、可穿戴设备、智能移动设备、虚拟现实设备、增强实境设备等或其任意组合。在一些实施例中,智能家居设备可包括智能照明设备、智能电器控制装置、智能监测装置、智能电视、智能摄像机、对讲机等或其任意组合。在一些实施例中,可穿戴设备可以包括智能手环、智能鞋袜、智能眼镜、智能头盔、智能手表、智能服装、智能背包、智能配件等,或其任意组合。在一些实施例中,智能移动设备可以包括智能手机、个人数字助理(PDA)、游戏设备、导航设备、销售点(POS)设备等或其任意组合。在一些实施例中,虚拟现实设备和/或增强型虚拟现实设备可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实补丁、增强型虚拟现实头盔、增强型虚拟现实眼镜、增强型虚拟现实补丁等或其任意组合。例如,虚拟现实设备和/或增强现实设备可以包括Google GlassTM,Oculus RiftTM,HololensTM,GearVRTM等。在一些实施例中,车辆中的内置设备130-4可以包括内置计算机、机载内置电视机、内置平板电脑等。在一些实施例中,终端设备130可以包括信号发射机和信号接收机,其被配置为与定位系统170通信,以定位乘客和/或终端设备130的位置的。

司机设备140可以包括至少两个司机设备140-1、140-2、...、140-n。在一些实施例中,司机设备140可以与终端设备130相似或者相同。在一些实施例中,司机设备140可以被定制为实施在线运输服务。在一些实施例中,司机设备140和终端设备130可以被配置信号发射器和信号接收器,以从定位系统170接收司机设备140和终端设备130的位置信息。在一些实施例中,终端设备130和/或司机设备140可以与其他定位设备通信,以确定乘客、终端设备130、司机和/或司机设备140的位置。在一些实施例中,终端设备130和/或司机设备140可以周期性地将定位信息发送到服务器110。在一些实施例中,司机设备140也可以周期性地将可用性状态发送到服务器110。可用性状态可以指示与司机设备140相关的车辆150是否可用于运输乘客。例如,终端设备130可以每三十分钟向服务器110发送定位信息。又例如,司机设备140可以每三十分钟和/或在按需服务完成时向服务器发送可用性状态。又例如,每当用户登录到与在线按需服务相关的移动应用中时,终端设备130可以将定位信息发送到服务器110。

在一些实施例中,司机设备140可对应于一个或以上车辆150。车辆150可携带乘客并前往目的地。车辆150可以包括至少两个车辆150-1,150-2,...,150-n。至少两个车辆中的一个车辆可以对应于一种订单类型。订单类型可以包括出租汽车订单、豪华轿车订单、大型豪华轿车订单、快车订单、公共汽车订单、班车订单等。

数据存储器160可以存储数据和/或指令。数据可以包括与至少两个POI相关的数据、与至少两个用户相关的数据、与至少两个司机相关的数据、与外部环境相关的数据等。与POI有关的数据可以包括POI的名称、POI的描述、POI的位置、POI的评论、POI的评价等。与用户有关的数据可以包括用户画像。与司机相关的数据可以包括司机画像。与外部环境相关的数据可以包括天气状况、道路状况等。在一些实施例中,数据存储器160可以存储从终端设备130和/或司机设备140获得的数据。例如,数据存储器160可以存储与终端设备130相关的日志信息。数据存储器160可以包括关于存储在数据存储器160中的对象的一个或以上同义词。关于对象的一个或以上同义词可以是对象的同义描述,或与对象相关的一个或以上属性或形态同化等。一个或以上同义词可以包括至少一种语言。例如,华盛顿特区的同义词可以包括美国首都、哥伦比亚特区、白宫、国会山、“华盛顿特区”的中文等。在一些实施例中,数据存储设备160可以存储服务器110可以执行的数据和/或指令以提供本申请中描述的按需服务。在一些实施例中,数据存储器160可以包括大容量存储器、可移动存储器、易失性读写存储器、只读存储器(ROM)等或其任何组合。示例性大容量存储器可以包括磁盘、光盘、固态驱动器等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、存储卡、压缩盘、磁带等。示例性的易失性读写存储器可以包括随机存取存储器(random access memory,RAM)。示例性的随机存取存储器(RAM)可包括一动态随机存取存储器(dynamic RAM,DRAM)、双倍速率同步动态随机存取存储器(double date rate synchronous dynamic RAM,DDRSDRAM)、静态随机存取存储器(static RAM,SRAM)、闸流体随机存取存储器(thyristorRAM,T-RAM)和零电容随机存取存储器(zero-capacitor RAM,Z-RAM)等。示例性的只读存储器可包括一屏蔽只读存储器(mask ROM,MROM)、可程序只读存储器(programmable ROM,PROM)、可抹除可程序只读存储器(erasable programmable ROM,EPROM)、电子可抹除可程序只读存储器(electrically erasable programmable ROM,EEPROM)、光盘只读存储器(compact disk ROM,CD-ROM)或数字通用磁盘只读存储器等。在一些实施例中,数据存储器160可以在云平台上实现。仅仅举个例子,云平台可以包括私有云、公共云、混合云、社区云、分布云、跨云、多层云等或上述举例的任意组合。

在一些实施例中,按需服务系统100中的一个或以上组件可以通过网络120访问存储在数据存储设备160中的数据或指令。在一些实施例中,数据存储器160可以直接连接到服务器110作为后端存储。

在一些实施例中,按需服务系统100中的一个或以上组件(例如,服务器110、终端设备130、司机设备140等)可具有访问数据存储器160的权限。在一些实施例中,当满足一个或以上条件时,按需服务系统100中的一个或以上组件可以读取和/或修改与乘客、司机和/或车辆有关的信息。例如,服务器110可以在按需服务订单完成之后读取和/或修改一个或以上乘客的用户画像。

定位系统170可以确定与对象相关的信息,例如终端设备130、司机设备140、车辆150等中的一个或以上。例如,定位系统170可以确定当前时间和终端设备130的当前位置。在一些实施例中,定位系统170可以是全球定位系统(global positioning system,GPS)、全球导航卫星系统(global navigation satellite system,GLONASS)、罗盘导航系统(compass navigation system,COMPASS)、北斗导航卫星系统、伽利略定位系统、准天顶卫星系统(quasi-zenith satellite system,QZSS)等。所述信息可以包括对象的位置、高度、速度或加速度,和/或当前时间。位置可以是坐标的形式,例如纬度坐标和经度坐标等。定位系统170可以包括一个或以上卫星,例如卫星170-1、卫星170-2和卫星170-3。卫星170-1至170-3可以独立或共同确定上述信息。定位系统170可以经由网络120将上述信息发送给终端设备130、司机设备140或车辆150。

在一些实施例中,按需服务系统100的一个或以上组件之间的信息交换可以通过在终端设备上启动按需服务的移动应用、请求服务或通过终端设备输入查询(例如,搜索POI)而被启动。服务请求的对象可以是任何产品。在一些实施例中,该产品可以包括食品、医药、商品、化学产品、电器、衣物、小汽车、房屋、奢侈品等或上述举例的任意组合。在一些其他实施例中,产品可以包括服务产品、金融产品、知识产品、互联网产品等或其任何组合。互联网产品可以包括个人主机产品、网络产品、移动互联网产品、商业主机产品、嵌入式产品等或其任何组合。移动互联网产品可以用于移动终端、程序、系统等的软件等或其任何组合中。可移动终端可以包括平板电脑、手提电脑、移动电话、个人数字助理(personaldigital assistance,PDA)、智能手表、POS装置、车载电脑、车载电视、可穿戴装置等或其任意组合。例如,产品可以是计算机或移动电话中使用的任何软件和/或应用程序。该软件和/或应用程序可涉及社交、购物、运输、娱乐、学习、投资等或其任何组合。在一些实施例中,与交通相关的软件和/或应用程序可以包括出行软件和/或应用程序、交通工具调度软件和/或应用程序、地图软件和/或应用程序等。在交通工具调度软件和/或应用程序中,交通工具可以包括马、马车、人力车(例如独轮手推车、自行车、三轮车等)、汽车(例如,出租车、公共汽车、私家车等)、火车、地铁、船舶、航空器(例如,飞机、直升机、航天飞机、火箭、热气球等)等或上述举例的任意组合。

本领域普通技术人员应当理解,当按需服务系统100中的一个组件进行操作时,该组件可以通过电信号和/或电磁信号执行操作。例如,当终端130处理任务(例如做出决定、对至少两个POI进行排序)时,终端130可以操作其处理器中的逻辑电路来处理这样的任务。当终端130向服务器110发出查询(例如,与目的地有关的信息)时,终端130的处理器可以生成对查询进行编码的电信号。然后终端130的处理器可以将电信号发送到输出端口。如果终端130通过有线网络与服务器110通信,则输出端口可以物理连接到电缆,该电缆还可以将电信号传输到服务器110的输入端口。如果终端130通过无线网络与服务器110通信,则终端130的输出端口可以是一个或以上天线,其将电信号转换为电磁信号。类似地,司机设备140可以通过操作其处理器中的逻辑电路来处理任务,并且通过电信号或电磁信号从服务器110接收指令和/或服务订单。在诸如终端130、司机终端140和/或服务器110的电子设备内,当其处理器处理指令、发出指令和/或执行动作时,指令和/或动作通过电信号实施。例如,当处理器从存储介质(例如,数据存储器160)检索数据(例如,与查询相关的至少两个POI)时,其可以将电信号发送到存储介质的读取设备,该读取设备可以读取存储介质中的结构化数据。结构化数据可以通过电子设备的总线,以电信号的形式传输到处理器。这里,电信号可以是一个电信号、一系列电信号和/或至少两个分立电信号。

图2是根据本申请的一些实施例所示的可以在其上实现按需服务系统的示例性计算设备200。

计算设备200可以是通用计算机或专用计算机。两者都可以用来实现本申请的按需系统。计算设备200可以用来实现如这里的服务的任何组件。例如,服务器的处理引擎112可以通过其硬件、软件程序、固件或其组合在计算设备200上实现。虽然为了方便仅示出了一个这样的计算机,但是与在此描述的服务相关的计算机功能可以以分布式的方式在多个类似的平台上实现以分配处理负载。

例如,计算设备200可以包括与其连接的网络(例如,网络120)连接的通信(COM)端口250,以便于数据通信。计算设备200还可以包括一个或以上处理器形式的中央处理器(central processing unit,CPU)220,用于执行程序指令。示例性计算机平台可以包括内部通信总线210,不同形式的程序存储器和数据存储器,例如磁盘270、只读存储器(readonly memory,ROM)230、或随机存取存储器(random access memory,RAM)240,用于各种需要由计算机处理和/或传输的数据文件。示例性计算机平台还可以包括存储在只读存储器230、随机存取存储器240和/或要由中央处理器220执行的其他类型的非暂时性存储介质中的程序指令。本申请的方法和/或过程可以作为程序指令来实现。计算设备200还可以包括I/O组件260,其支持计算机、用户以及其中其他组件之间的输入/输出。计算设备200也可以通过网络通信接收程序和数据。

仅仅为了说明,在计算设备200中仅描述了一个CPU和/或处理器。然而,需要注意的是,本申请中的计算设备200可以包括至少两个CPU和/或处理器,因此本申请中描述的由一个CPU和/或处理器实现的操作和/或方法也可以共同地或独立地由至少两个CPU和/或处理器实现。例如,计算设备200的CPU和/或处理器可以执行步骤A和步骤B两者。如在另一个示例中,步骤A和步骤B也可以由计算设备200中的两个不同的CPU和/或处理器共同地或单独地执行(例如,第一处理器执行步骤A,且第二处理器执行步骤B,或第一和第二处理器共同执行步骤A和B)。

图3是根据本申请的一些实施例所示的可以在其上实现按需服务的示例性移动设备。

如图3所示,移动设备300可以包括通信模块310、显示器320、图形处理单元(graphic processing unit,GPU)330、中央处理单元(central processing unit,CPU)340、I/O 350、内存360和存储器390。在一些实施例中,包括但不限于系统总线或控制器(未示出)的任何其他合适的组件也可以被包括在移动设备300中。在一些实施例中,移动操作系统370(例如,iOSTM、AndroidTM、Windows PhoneTM等)和一个或以上应用程序380可以从存储器390加载到内存360中,以便由CPU 340执行。应用程序380可以包括浏览器或任何其他合适的移动应用程序,用于从处理引擎112和/或数据存储器160发送、接收和呈现与服务订单有关的信息(例如,与查询相关的至少两个POI)。用户与信息流的交互可以经由I/O 350来实现并且通过网络120被提供给处理引擎112和/或按需服务系统100的其他组件。

图4是根据本申请的一些实施例所示的示例性处理引擎112。服务器110的处理引擎112可以包括获取模块410、训练模块420、确定模块430和通信模块440。处理引擎112中的一个或以上模块可以由至少一个处理器(例如中央处理器220)来实现。

获取模块410可以从一个或以上终端设备130获取查询和用户信息。所述查询可以指与地址有关的信息(例如,起始位置、目的地)。在一些实施例中,所述查询可以采取字符串、图片、音频等的形式。例如,查询可以包括完整的单词或短语。又例如,查询可以包括完整单词或短语的部分输入。作为又一示例,查询可以包括通过终端设备的麦克风录制的音频信号。所述用户信息可以指与用户有关的信息。在一些实施例中,用户信息可以包括终端设备130的地理位置、与终端设备130相关的用户画像等。用户画像可以包括用户的性别、用户的年龄、用户与之相关的群组(例如,学生会、推销员网络、北京地区的注册律师协会或任何类型的社交网络群组等)等或其组合。在一些实施例中,可以通过操纵服务应用程序的用户界面上的一个或以上项目(图标、按钮等)来发起查询。例如,可以通过经由用户界面上的虚拟键盘或物理键盘输入信息来初始化查询。

获取模块410可以进一步基于查询获取一个或以上POI。在一些实施例中,获取模块410可以从数据存储器160获取一个或以上POI。POI可以包括姓名(例如,北京大学、北京协和医院)、类型(例如,学校、医院)、地址(例如苏州高新区学森路9号)、坐标(例如,纬度坐标和经度坐标)、邮政编码(例如,100000)、描述等或其组合。在一些实施例中,获取模块410还可以执行查询解析。获取模块410可以基于查询解析确定一个或以上元素。获取模块410还可以基于所述一个或以上元素来获取一个或以上POI。

训练模块420可以获取排序模型。排序模型可以对与从终端设备130发送的查询相关的一个或以上POI进行排序。排序模型可以包括学习排序(learning to rank,LTR)模型。在一些实施例中,可以通过使用大量训练数据来训练初始模型以获取所述排序模型。排序模型和初始模型的细节的描述可以结合图5、图6及其描述。

确定模块430可确定一个或以上POI的排序。在一些实施例中,确定模块430可以基于一个或以上POI与查询之间的相关性确定排序。例如,最相关的POI可以被指定为最高等级,而最不相关的POI可以被指定为最低等级。在一些实施例中,确定模块430可以基于排序模型(例如,由训练模块420获取的)和用户信息(例如,由获取模块410获取的)确定排序。

确定模块430可以确定与一个或以上POI的一个或以上特征相对应的一个或以上值。仅作为示例,所述一个或以上特征可以包括终端设备130与POI之间的距离、查询与POI之间的相关度、与POI相关的点击率、与POI相关的点击次数、等等。在一些实施例中,确定模块430可以基于与所述一个或以上POI的一个或以上特征相对应的一个或以上值确定所述一个或以上POI的排序。

响应于所述查询,通信模块440可以根据排序向终端设备130发送一个或以上POI。在一些实施例中,通信模块440可以发送一个或以上排序好的POI中的全部或一部分。例如,通信模块440可以将排在前六位的POI发送给终端设备130。

处理引擎112中的获取模块410、训练模块420、确定模块430和通信模块440可以通过有线连接、无线连接或其任何组合来相互连接或通信。有线连接可以包括金属电缆、光缆、混合电缆等,或其任何组合。无线连接可包括局域网络(Local Area Network,LAN)、广域网路(Wide Area Network,WAN)、蓝牙、紫蜂、近距离通讯(Near Field Communication,NFC)等或其任意组合。获取模块410、训练模块420、确定模块430和通信模块440中的两个或两个以上可以被组合为单个模块。例如,训练模块420可以与确定模块430集成为单个模块。单个模块可以确定排序模型并基于所述排序模型确定一个或以上POI的排序。

图5是根据本申请的一些实施例所示的使用按需服务系统确定一个或以上POI的排序的示例性流程图500。流程图500可以被实现为系统100的服务器110的非暂时性存储介质中的一组指令。服务器110的中央处理器220可以执行该组指令,并且可以相应地执行流程图500中的步骤。

以下所示流程图500的操作旨在说明性的而非限制性的。在一些实施例中,过程500可以利用未描述的一个或以上附加操作和/或没有所讨论的一个或以上操作来完成。另外,图5所示和下面描述的流程图500的操作顺序不是限制性的。

在步骤510中,获取模块410可以从终端设备130获取查询和用户信息。终端设备130可以由用户拥有和/或使用。在一些实施例中,查询可以采取文本、图片、音频等的形式。查询可以包括地址(例如,起始位置、目的地)、附近区域(例如,距离用户5公里的区域)、一个或以上POI(例如,旅馆,商店和公园)的类别、邮编等。在一些实施例中,用户信息可以包括终端设备130的地理位置、用户的用户画像、当前时间等或其组合。在一些实施例中,查询可以通过在用户界面上输入字符串、通过麦克风输入音频、拍摄照片等来启动。

在步骤520中,获取模块410可以基于查询获取一个或以上POI。

在一些实施例中,获取模块410还可以执行查询解析。查询解析可以将查询(例如,由用户输入的或从用户输入的音频转换而来的较长字符串)分割成一个或以上元素。仅作为示例,可以将较长的字符串“华盛顿特区酒店地铁通道”分割成三个元素,即“华盛顿特区”、“酒店”和“地铁通道”。获取模块410可以分析所述元素,并确定用户的意图。

获取模块410还可以基于来自数据存储器160的一个或以上元素来获得一个或以上POI。一个或以上POI的名称和/或描述可以涉及一个或以上元素。根据所获得的用户信息,可以根据用户的兴趣进一步确定POI。例如,如果获取模块410确定用户喜欢下班后喝酒,则POI可以从“酒吧”的类别中获得。在一些实施例中,可基于所确定的用户兴趣的同义词,从数据存储器160获得一个或以上POI。

在步骤530中,训练模块420可以获取排序模型。排序模型可以包括机器学习模型。在一些实施例中,排序模型可以包括LTR模型。排序模型可以是使用从大量用户收集的训练数据训练的通用排序模型。在一些实施例中,排序模型可以是使用与一个用户或一组用户相关的指定训练数据训练的特定排序模型。排序模型可以结合图6描述的操作来训练。

在步骤540中,确定模块430可以基于排序模型和用户信息确定一个或以上POI的排序。确定模块430可以确定至少两个值。每个值可以与POI的一个特征相关联。所述特征可以包括终端设备130与POI之间的距离、POI与查询之间的相关度、POI的点击率(click-through rate,CTR)、POI的点击次数等。

终端设备130与POI之间的距离可以指欧几里得距离,其可以基于终端设备130的地理位置和POI的坐标确定。所述距离可以进一步表示为一个或以上测量单位,例如,街区的数量、步行的出行时间、驾驶的行驶时间、步行的到达时间、驾驶的到达时间等。

POI和查询之间的相关度可以基于命中率等来确定。在查询解析之后,查询可以被分割成一个或以上元素。命中率可以基于查询中的一个或以上元素的总数、所述查询和POI的描述中共同拥有的元素的数量确定。例如,如果所述查询包含五个元素,而POI的描述包含所述五个元素中的三个,则POI的命中率为60%。

点击率可以指通过至少两个通道的对POI的点击次数与提供到POI的接入链路的所述至少两个通道的访问次数之比。所述至少两个通道可以包括网页、移动应用、网络广告、移动应用广告等。点击率可以基于历史查询、响应于所述历史查询的历史POI以及历史点击确定。所述历史查询、历史POI和历史点击可以在离当前时间的一段时间内(例如,三个月、六个月或一年)。

点击次数可以指通过至少两个通道提供的POI上的点击次数,例如网页、移动应用程序、网络广告、移动应用程序广告等。点击次数可以基于历史查询、响应于所述历史查询的历史POI以及历史点击确定。所述历史点击可以在离当前时间的一段时间内(例如,三个月、六个月或一年)。

在一些实施例中,确定模块430可以确定POI和查询之间的相关度的值。相关度的值可以基于针对所述查询的POI的命中率确定。

在一些实施例中,确定模块430可以确定POI的点击率的值。与点击率相对应的值可以基于用户画像(例如,用户的性别、用户的年龄、用户相关的组等等)确定。例如,确定模块430可以确定相对于用户相关的特定组的POI的点击率。

在一些实施例中,确定模块430可以确定POI的点击次数的值。与点击次数对应的值可以基于用户画像(例如,用户的性别、用户的年龄、用户相关的组等等)确定。例如,确定模块430可以确定相对于用户相关的特定组的POI的点击次数。

在一些实施例中,确定模块430可以确定终端设备130与POI之间的距离的值。距离可以基于用户信息(例如,终端设备130的地理位置)确定。例如,确定模块430可以基于终端设备130的地理位置和POI的地理位置确定所述距离。

确定模块430可以基于关于一个或以上特征的至少两个值确定一个或以上POI的排序。在一些实施例中,确定模块430可以基于所述至少两个值确定所述一个或以上POI与查询之间的相关性。例如,当对应于关于POI的一个或以上特征的一个或以上值高时,POI对查询的相关性可以被确定为高。又例如,当终端设备130与POI之间的距离比预定距离(例如,500米)短时,POI与查询的相关性可以被确定为较低。当终端设备130与POI之间的距离相对较短时,用户可能更喜欢步行到POI,而不是乘坐出租车到POI。在一些实施例中,确定模块430可以基于一个或以上POI与查询的相关性确定排序。例如,确定模块430可以指定具有最高相关性的POI为最高排序。

在步骤550中,响应于所述查询,通信模块440可以根据所述排序向终端设备130发送一个或以上POI。在一些实施例中,通信模块440可以将排序中的一个或以上POI中的全部或部分发送到终端设备130。例如,通信模块440可以将排在前六位的POI发送给终端设备130。

在一些实施例中,流程图500可以进一步包括附加步骤。获取模块410可以接收响应于从终端设备130选择一个或以上POI中的一个而生成的服务订单。与终端设备130相关的用户可以选择一个或以上POI中的一个作为目的地。用户可以基于所述选择确定服务订单,并将所述服务订单发送到获取模块410。在一些实施例中,用户可以通过点击POI来执行所述选择。

以上描述仅旨在说明。应该注意的是,本领域技术人员可以考虑除了图5中所描述的步骤之外的附加或替代步骤。

图6是根据本申请的一些实施例所示的使用按需服务系统确定排序模型的示例性流程图600。流程图600可以被实现为系统100的服务器110的非暂时性存储介质中的一组指令。服务器110的中央处理器220可以执行该组指令,并且可以相应地执行流程图600中的步骤。

下面所示流程图600的操作旨在说明。在一些实施例中,流程图600可以用未描述的一个或以上附加操作和/或不用所讨论的一个或以上操作来完成。另外,图6所示和下面描述的流程图600的操作顺序不是限制性的。

在步骤610中,训练模块420可以获得与样本查询相关的至少两个样本POI。训练模块420可以对所述样本查询执行查询解析并生成一个或以上元素。训练模块420还可以基于关于所述查询的一个或以上元素,从数据存储器160获得所述至少两个样本POI。例如,所述训练可以获得包括所述一个或以上元素中至少一个元素的POI。

在步骤620中,训练模块420可以基于与所述至少两个样本POI的一个或以上用户交互来注释所述至少两个样本POI中的每一个样本POI。用户交互可以包括对样本POI的点击、与所点击的样本POI相关的服务订单等或其组合。在一些实施例中,训练模块420可以检测与所述至少两个样本POI中的每一个样本POI相关的一个或以上用户交互。基于检测到的用户交互,训练模块420可以用预定值进一步注释所述至少两个样本POI中的每一个样本POI。预定值可以指示用户对样本POI的兴趣。在一些实施例中,预定值可以是0、1或任何其他数字。值“1”可以指示样本查询与样本POI之间的相关性相对较高。值“0”可以指示样本查询和样本POI之间的相关性相对较低。

例如,响应于检测到样本POI上的点击,训练模块420可以用“1”注释所述样本POI,并用“0”注释其他样本POI。又例如,响应于检测到与选择的样本POI相关的服务订单,训练模块420可以用“1”来注释所选择的样本POI。训练模块420可以用“0”注释其他样本POI。

在步骤630中,训练模块420可以从所述至少两个样本POI中的每一个样本POI提取一个或以上特征。在一些实施例中,一个或以上特征可以包括终端设备130与样本POI之间的距离、样本POI与样本查询之间的相关度、样本POI的点击率(click-through rate,CTR)、样本POI的点击次数等。

在步骤640中,训练模块420可以确定关于与所述至少两个样本POI中的每一个样本POI相关的一个或以上特征的一个或以上值。一个或以上值中的每一个值可以对应于一个特征。在一些实施例中,训练模块420可以确定样本POI与样本查询之间的相关度的值。训练模块420可以基于命中率确定该值。在一些实施例中,训练模块420可以确定样本POI的点击率的值。训练模块420可以基于样本POI的历史点击率确定该值。与点击率对应的值可以根据不同的用户群确定。可以基于包括性别、年龄等的用户画像信息划分不同的用户群。在一些实施例中,训练模块420可以确定样本POI的点击计数的值。训练模块420可以基于样本POI的历史点击次数确定该值。对应于点击次数的值可以对应于不同的用户群来确定。不同的用户群可以基于包括性别、年龄等的用户画像信息。在一些实施例中,训练模块420可以确定样本终端设备130与样本POI之间的距离的值。样本终端的用户可以通过样本终端输入样本查询。

在步骤650中,训练模块420可以确定初始模型。初始模型可以包括排序支持向量机(Ranking Support Vector Machine,SVM)模型、RankBoost模型、LambdaMART模型、AdaRank模型、SoftRank模型等。初始模型可以具有一个以上初始参数。

在步骤660中,训练模块420可以通过基于所述至少两个注释的样本POI中的每一个样本POI以及与所述至少两个样本POI中每一个样本POI相关的一个或以上特征的一个或以上值来训练初始模型,以确定排序模型。初始模型可以将所述一个或以上值作为输入,并确定样本POI的实际排序作为实际输出。训练模块420可以基于所述至少两个注释的样本POI确定期望的输出。训练模块420可训练初始模型以最小化损失函数。损失函数可以指示期望输出与由初始模型确定的实际输出之间的差异。样本POI可能在实际输出中具有实际的顺序,并且在期望输出中具有期望的顺序。实际顺序和期望顺序可能相同或不同。损失函数可以是样本POI中每一个样本POI的实际顺序和期望顺序之间的绝对差之和。具体而言,当实际输出与期望输出相同时,损失函数为0。最小化的过程可以是迭代的。当损失函数的值小于预定阈值时,损失函数的最小化的迭代可以结束。预定阈值可以基于各种因素来设置,包括样本POI的数量、排序模型的准确度等。训练模块420可以在最小化损失函数期间迭代地调整初始模型的初始参数。在损失函数最小化结束时,训练模块420可以确定不止一个最终参数和排序模型。

以上描述仅用于说明目的。应该注意的是,本领域技术人员可以考虑除了图6中所描述的步骤之外的附加或替代步骤。例如,流程图600可以进一步包括通过通信模块440,将排序模型发送到按需服务系统100中的数据存储器160或任何其他组件。

上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述发明披露仅仅作为示例,而并不构成对本申请的限定。虽然此处并没有明确说明,本领域技术人员可以对本申请进行各种修改、改进和修正。该类修改、改进和修正在这申请中被建议,并且该类修改、改进、修正仍属于这申请示范实施例的精神和范围之内。

同时,本申请使用了特定术语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多于两次提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或以上实施例中的某些特征、结构或特征可以进行适当的组合。

此外,本领域的普通技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的制程、机器、产品或物质的组合,或对其任何新的和有用的改良。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“子单元”、“组件”或“系统”。此外,本申请的各方面可能表现为位于一个或以上非暂时性计算机可读介质中的计算机程序产品,该产品包括计算机可读程序编码。

计算机可读信号介质可以包括传播数据信号,其中包含例如在基带中或者作为载波的一部分的计算机可读程序代码,。这样的传播信号可以采用多种形式中的任何形式,包括电磁、光学等或其任何合适的组合。计算机可读信号介质可以包括不属于计算机可读存储介质的任何计算机可读介质,并且可以传送、传播或传输供指令执行系统、装置或设备使用或与其结合使用的程序。体现在计算机可读信号介质上的程序代码可以使用任何适当的介质来传输,包括无线、有线、光缆、RF等或者前述的任何适当的组合。

本申请各部分操作所需的计算器程序代码可以用任意一种或多种程序语言编写,包括面向对象程序设计语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化程序设计语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL2002、PHP、ABAP,动态程序设计语言如Python、Ruby和Groovy,或其他程序设计语言等。程序代码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机上运行、或完全在远程计算机或服务器上运行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(local area network,LAN)或广域网(wide area network,WAN),或者可以连接到外部计算机(用于例如通过使用互联网服务提供商的互联网)或者在云计算环境中提供或作为诸如软件即服务(Software as a Service,SaaS)的服务提供。

此外,除非申请专利范围中明确说明,否则处理元素或序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,此类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。

同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或以上发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本申请对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。

23页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:有效地增强具有相关内容的图像

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!