CN115038935A - 导航系统 - Google Patents
导航系统 Download PDFInfo
- Publication number
- CN115038935A CN115038935A CN202180012260.9A CN202180012260A CN115038935A CN 115038935 A CN115038935 A CN 115038935A CN 202180012260 A CN202180012260 A CN 202180012260A CN 115038935 A CN115038935 A CN 115038935A
- Authority
- CN
- China
- Prior art keywords
- navigation
- client device
- data
- navigation client
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012549 training Methods 0.000 claims abstract description 49
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000002776 aggregation Effects 0.000 claims abstract description 33
- 238000004220 aggregation Methods 0.000 claims abstract description 33
- 238000010801 machine learning Methods 0.000 claims description 94
- 230000015654 memory Effects 0.000 claims description 57
- 238000004891 communication Methods 0.000 claims description 45
- 238000012545 processing Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 5
- 238000009826 distribution Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 28
- 239000000523 sample Substances 0.000 description 17
- 238000004422 calculation algorithm Methods 0.000 description 11
- 238000013459 approach Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 230000000306 recurrent effect Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 101100328887 Caenorhabditis elegans col-34 gene Proteins 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 235000012020 french fries Nutrition 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3453—Special cost functions, i.e. other than distance or default speed limit of road segments
- G01C21/3484—Personalized, e.g. from learned user behaviour or user-defined profiles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3605—Destination input or retrieval
- G01C21/3617—Destination input or retrieval using user history, behaviour, conditions or preferences, e.g. predicted or inferred from previous use or current movement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Automation & Control Theory (AREA)
- Social Psychology (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Neurology (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
- Vehicle Body Suspensions (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本文中公开一种用于操作导航服务器及多个导航客户端的技术。所述导航客户端中的每一者将在本地训练数据集上训练的模型数据传输到所述导航服务器。所述导航客户端还将表征所述本地训练数据集的属性数据传输到所述导航服务器。所述导航服务器使用所述属性数据以对所述模型数据的贡献进行加权以执行加权聚合成聚合模型参数集,以分布到所述导航客户端以改进其本地模型数据。
Description
背景技术
本发明涉及导航装置及系统,及其操作方法。
包含GPS(全球定位系统)信号接收及处理功能性的导航装置是众所周知的且被广泛用作交通工具导航系统。一般来说,现代导航装置可包括处理器、存储器(易失性及非易失性中的至少一者,且通常两者)及存储在所述存储器内的地图数据。此类导航装置通常能够处理GPS位置数据以便确定装置的当前位置。
GPS位置数据可由装置使用以基于所述装置的当前位置用于提供导航功能性,或用于执行其它基于位置的服务。例如,所述装置可提供相关导航指令(例如“在下一个路口左转”)以便在沿着路线导航时辅助所述装置的用户。
来自多个此类导航装置的GPS位置数据可提供给中央服务器,且例如用于构建道路网络内的交通状况图。此导航历史数据也可用于一系列数字地图绘制目的,例如以便更新或构建电子地图,所述电子地图接着可由此类导航装置使用。
然而,从导航客户端装置导出导航数据,例如由用户访问的路线及目的地可能产生隐私问题,因为信息可能是个人敏感信息。
本发明寻求提供一种用来处理导航历史数据以使数据能够用以改进导航系统的性能同时保护用户隐私的新方法。
发明内容
从第一方面,本发明提供一种操作导航系统的方法,其中所述导航系统包括服务器及多个导航客户端装置,所述方法包括:
每一导航客户端装置使用相应位置传感器以随时间收集代表由所述导航客户端装置访问的位置的相应导航历史数据,且将所述导航历史数据存储在所述导航客户端装置的存储器中;
每一导航客户端装置使用所述导航历史数据的相应训练集以训练存储在所述导航客户端装置的所述存储器中的相应本地机器学习模型,以确定所述本地机器学习模型的相应经更新参数集;
每一导航客户端装置将代表所述相应经更新参数集的模型数据传输到所述服务器;
每一导航客户端装置将代表用以确定所述经更新参数集的所述相应训练集的共同性质的相应值的属性数据传输到所述服务器;
所述服务器从所述导航客户端装置接收所述模型数据及所述属性数据;
所述服务器通过执行加权聚合来从所述经更新参数集确定聚合参数集,在所述加权聚合中所述经更新参数集中的每一者取决于用以确定所述经更新参数集的所述相应训练集的所述性质的所述值进行加权;
所述服务器将代表所述聚合参数集的数据传输到所述多个导航客户端装置中的第一导航客户端装置;及
所述第一导航客户端装置使用所述聚合参数集以更新存储在所述第一导航客户端装置的所述存储器中的所述本地机器学习模型。
从第二方面,本发明提供一种导航系统,其包括服务器及多个导航客户端装置,
其中每一导航客户端装置包括相应的:
位置传感器;
存储器;
处理系统;及
通信模块,
且经配置以:
使用所述位置传感器以随时间收集代表由所述导航客户端装置访问的位置的相应导航历史数据;
将所述导航历史数据存储在所述存储器中;
使用所述导航历史数据的相应训练集以训练存储在所述导航客户端装置的所述存储器中的相应本地机器学习模型,以确定所述本地机器学习模型的相应经更新参数集;
将代表所述相应经更新参数集的模型数据传输到所述服务器;及
将代表用以确定所述经更新参数集的所述相应训练集的共同性质的相应值的属性数据传输到所述服务器,
其中所述服务器经配置以:
从所述导航客户端装置接收所述模型数据及所述属性数据;
通过执行加权聚合来从所述经更新参数集确定聚合参数集,在所述加权聚合中所述经更新参数集中的每一者取决于用以确定所述经更新参数集的所述相应训练集的所述性质的所述值进行加权;及
将代表所述聚合参数集的数据传输到所述多个导航客户端装置中的第一导航客户端装置,
且其中所述第一导航客户端装置经配置以使用所述聚合参数集以更新存储在所述第一导航客户端装置的所述存储器中的所述本地机器学习模型。
从第三方面,本发明提供一种导航客户端装置,其包括:
位置传感器;
存储器;及
处理系统;及
通信模块,
其中所述导航客户端装置经配置以:
使用所述位置传感器以随时间收集代表由所述导航客户端装置访问的位置的导航历史数据;
将所述导航历史数据存储在所述存储器中;
使用所述导航历史数据的训练集以训练存储在所述导航客户端装置的所述存储器中的本地机器学习模型,以确定所述本地机器学习模型的经更新参数集;
将代表所述经更新参数集的模型数据传输到所述服务器;及
将代表用以确定所述经更新参数集的所述训练集的性质的值的属性数据传输到所述服务器。
所述导航客户端装置可进一步经配置以:
从所述服务器接收代表聚合参数集的数据;及
使用所述聚合参数集以更新存储在所述导航客户端装置的所述存储器中的所述本地机器学习模型。
从第四方面,本发明提供一种计算机程序产品,其包括在由具有位置传感器、存储器及通信模块的导航客户端装置的处理器执行时致使所述处理器进行以下步骤的指令:
使用所述位置传感器以随时间收集代表由所述导航客户端装置访问的位置的导航历史数据;
将所述导航历史数据存储在所述存储器中;
使用所述导航历史数据的训练集以训练存储在所述导航客户端装置的所述存储器中的本地机器学习模型,以确定所述本地机器学习模型的经更新参数集;
控制所述通信模块以将代表所述经更新参数集的模型数据传输到所述服务器;及
控制所述通信模块以将代表用以确定所述经更新参数集的所述训练集的性质的值的属性数据传输到所述服务器。
这个方面扩展到承载所述计算机程序产品的暂时性或非暂时性媒体。
所述计算机程序产品可进一步包括致使所述处理器进行以下步骤的指令:
使用所述通信模块以从服务器接收代表聚合参数集的数据;及
使用所述聚合参数集以更新存储在所述导航客户端装置的所述存储器中的所述本地机器学习模型。
因此将看出,根据本发明,单个客户端装置上的机器学习模型可受益于系统中的其它导航客户端装置收集的导航历史数据,而所述客户端装置中的任一者不需从所述客户端装置导出任何敏感历史数据。
此外,每一客户端装置对总体模型的贡献是基于存储在每一相应客户端装置上的导航数据的性质进行加权。当相应导航客户端装置的使用模式彼此大不相同时,这可帮助防止在总体模型中出现不稳定性,导航系统通常将是这种情况。例如,用户通常具有不同行驶模式且在基本上不同的地图区域(即,一个国家的不同物理位置)中进行操作。不同导航装置在个别旅程中行驶的典型距离及/或不同用户沿着给定道路或道路类型行驶的速度可能存在显著差异。通过对不同装置的贡献进行加权,可降低不稳定性及偏差的可能性,这帮助确保聚合参数集实际上改进经聚合参数发送到其的任何客户端装置的导航性能。
此联合机器学习方法可使同一模型能够部署到大量导航客户端装置,接着所述导航客户端装置可根据用户的个人数据个别地更新相应本地模型参数。接着可使用基于来自每一客户端装置的本地训练数据的性质的权重,将这些经更新参数聚合为一个经更新集中式模型。接着可按一定间隔重复这个过程,以允许对跨所有导航客户端装置分布的本地模型进行持续改进。这种分散式迭代方法可实现强用户隐私,因为一般来说无法对传输到服务器的经更新模型参数进行逆向工程以重现原始训练集。
每一训练集的共同性质可与导航历史数据的训练集的任何属性相关。然而,在一些实施例中,共同性质表示所述训练集的熵或信息内容。将明白,这与单纯所述训练集的原始大小不一样;例如,由在不同天行驶的同一路线的20个例子组成的导航历史数据将具有比20个完全不同路线的20个例子少得多的信息内容,即使原始历史数据在导航装置的存储器中可占据类似量的存储器也是如此。相应值因此可为熵值。熵在此可以正式的数学意义(例如,经香农(Shannon)定义)或以更一般的意义来理解。在一些实施例中,共同性质是所述训练集的统计,例如表示所述训练集的方差的统计。
在一些实施例中,共同性质表示由训练集覆盖的地理区域的大小—例如,含有导航历史数据中所含的位置集中的一些或全部的最小凸形形状的区域。当将二维位置视为正态分布数据样本时,所述区域可包含所有位置或仅子集,例如在预定值,例如95%的置信椭圆内的那些位置。共同性质的值可将所覆盖区域表示为绝对区域或相对区域,例如表示为更大区域的一部分,例如预定地图区域(例如国家)。
位置传感器可为卫星定位传感器,例如GPS传感器。
导航历史数据的训练集可包括位置数据(例如坐标数据),所述位置数据可带时间戳。位置可为由导航装置实行的行程的目的地。位置可为沿着由导航装置行驶的路线的点。训练集可包括路线数据。
本地机器学习模型另外可使用并非从位置传感器收集的另外的数据进行训练。在一些实施例中,所述另外的数据可包括搜索数据—例如,对由用户输入的编码搜索项或先前呈现给用户的搜索结果。由客户端装置传输的属性数据可对所述另外的数据的一或多个性质的值进行进一步编码。当对经更新参数集中的每一者进行加权以确定聚合参数集时,服务器可额外使用这些另外的值。
本地机器学习模型可为任何合适模型,例如卷积神经网络、递归神经网络(RNN)、门控递归单元(GRU)模型、长短期记忆(LSTM)模型、差分神经网络计算机(DNC)模型、前馈神经网络、成对排序模型或任何其它合适模型。
导航客户端装置可使用任何适当训练过程—例如使用随机梯度下降来训练其相应的本地机器学习模型。
导航客户端装置可使用本地机器学习模型以将功能提供给所述装置的用户。
所述装置可包括输入,例如用于接收用户输入的触摸屏。所述装置可包括用于向用户显示信息(例如地图)的输出(例如显示屏)。
在一些实施例中,所述模型用以预测目的地。所述装置可使用所述模型以确定可能目的地的候选列表。所述装置可向用户呈现这个列表(例如在显示屏上),以供用户选择所期望目的地。所述装置可通过估计每一目的地是用户所期望的目的地的可能性来对可能目的地进行排序。
在一些实施例中,所述模型用以预测到目的地的路线—例如,取决于从用户接收的目的地数据,或取决于由所述模型或由存储在客户端装置上的另一本地机器学习模型预测的目的地。所述装置可使用本地机器学习模型以确定可能路线的候选列表。所述装置可向用户呈现这个列表,以供用户选择所期望路线。所述装置可通过估计每一路线是用户所期望的路线的可能性来对可能路线进行排序。替代地,所述装置可确定单个路线。所述装置可经配置以沿着选定或经确定路线对用户进行导航。
在一些实施例中,所述模型用以预测到达目的地的时间。所述装置可例如在开始旅程之前或在旅程期间将这作为估计到达时间呈现给用户。
在一些实施例中,所述模型用以预测例如所期望目的地的搜索结果或搜索结果集。预测可基于从用户接收的搜索查询—例如部分搜索项,例如地名的前几个字母,或具有多个可能结果的查询,例如“巴黎的好餐厅”。所述装置可使用所述模型来为用户的位置搜索提供情境化排序。所述装置可在向用户显示位置集之前对位置集进行排序。
本地模型可接收一或多个输入,例如当前时间、当前天气或当前用户的身份,所述本地模型可在确定预测时使用所述一或多个输入。
服务器可将聚合参数集传输到多个导航客户端装置中的一或多个另外的导航客户端装置。所述服务器可将聚合参数集传输或尝试传输到所述系统中的每个导航客户端装置。
第一导航客户端装置及接收聚合参数集的任何其它客户端装置可使用聚合参数集以通过用经接收聚合参数集替换本地机器学习模型的经存储参数集(例如,所述客户端装置传输到服务器的经更新参数)来更新其相应的本地机器学习模型。
每一客户端装置可经配置以按一定间隔将经更新参数及相关联性质值传输到服务器,所述间隔可为规则的或不规则的(例如,取决于所述装置何时通电及具有网络连接性)。客户端装置可持续或按一定间隔训练其本地模型—例如一旦已收集多于阈值数量的新导航历史数据。
客户端装置可使用所有经存储导航历史数据来训练其本地模型。然而,在一些实施例中,客户端装置经配置以过滤经存储导航历史数据以选择满足一或多个选择准则的训练集。例如,客户端装置可排除某种类型的数据,或客户端装置可排除与被排除目的地(例如家庭位置或工作位置)相关联的数据。这可进一步增强用户隐私。
服务器可经配置以随时间计算一系列聚合参数集,例如按规则间隔,或响应于从客户端装置接收经更新参数。服务器可连续地将每一聚合参数集传输或尝试传输到第一导航客户端装置及/或所述系统中的另外的客户端装置。
在适当情况下,本文中所描述的任何方面或实施例的特征可应用于本文中所描述的任何其它方面或实施例。在提及不同实施例或实施例集的情况下,应理解,这些不一定不同,但可重叠。
附图说明
现在将参考附图、仅通过实例的方式描述本发明的某些优选实施例,在附图中:
图1是体现本发明的客户端导航装置的示意图;
图2是全部体现本发明、具有不同形状因子的一组变体客户端导航装置;
图3是体现本发明的导航系统的示意图;
图4是展示在导航系统的机器学习服务器与机器学习客户端模块内及之间的组件及数据流的更多细节的示意图;
图5是展示在体现本发明的导航系统中的机器学习服务器与变体机器学习客户端模块内及之间的组件及数据流的示意图;及
图6是由体现本发明的导航系统使用的联合训练过程的流程图。
具体实施方式
图1展示体现本发明的客户端导航装置1的关键元件。
导航装置1包含处理器2、存储用于由处理器2执行的软件的非易失性快闪存储器3、用于存储临时数据的易失性RAM 4、显示屏5、GPS模块6及电池7,以及其它组件。
快闪存储器3存储用于由处理器2执行的导航客户端软件程序。导航客户端程序可从GPS模块6接收位置数据且使用这个位置数据以在显示屏5上显示的电子地图上显示装置1的当前位置的视觉表示。
存在可执行此导航客户端软件的广泛范围的计算装置。
图2展示几个实例,包含平板装置1'、智能手机1”、膝上型计算机1”'及可为复杂信息娱乐系统的内置车载导航系统1””。每一者具有用于向用户显示导航数据,例如地图的显示屏5'、5”、5”'、5””。这可辅助用户导航到所期望目的地。然而,视觉显示并非必不可少的;例如,一些实施例可仅提供声音输出,例如语音导航指令。
个人导航装置(PND)是单用途计算装置。交通工具还具有带有导航客户端的集成计算装置。其它计算装置是通用计算装置,例如移动电话、平板计算机及可穿戴装置(手表)。这些装置中的任一者可用以实施本发明的实施例。
图3提供体现本发明的导航系统400的功能图。
系统400包含导航客户端装置402、地图服务器404、交通信息服务器406及机器学习(ML)服务器500。这些服务器404、406、500及客户端装置402与其模块在下文更详细地进行描述。
导航客户端装置402可为如图1中的装置1,尽管这并非必不可少的。其功能可使用在客户端导航装置1的处理器2上执行的软件来实施。
系统400通常将包含许多其它导航客户端装置(图3中未展示),每一装置与这个导航客户端402类似。这些可跨一系列硬件平台实施,例如如图2中所例示。
导航客户端402与地图服务器404、交通信息服务器406及ML服务器500进行无线通信。更特定来说,导航客户端402上的HTTPS客户端424可存取地图服务器404上的地图数据服务438及交通信息服务器406上的交通信息服务444。导航客户端402上的探测接口428可与交通信息服务器406上的探测数据服务446进行通信。导航客户端402上的机器学习(ML)客户端模块429可与ML服务器500上的机器学习服务450进行通信。这些通信可通过蜂窝电话链路及/或BluetoothTM或WiFiTM及/或任何其它合适数据信道发生。
地图服务器404、交通信息服务器406及ML服务器500可为单独服务器,或其可至少部分地组合在单个服务器系统中。服务器404、406、500可为个别物理服务器,或其可为分布式服务器,每一服务器物理上跨多个位置定位,以提供负载平衡或改进对导航客户端装置的存取速度。
导航客户端402
图3中的导航客户端装置402含有大多数计算装置共有的用户输入装置410及输出装置(例如显示屏412)。地图数据控制器414获得地图数据且将其存储在计算装置(例如客户端导航装置1)的非易失性存储器(例如快闪存储器3)中。位置传感器416(例如GPS模块6)除包括例如处理单元、存储器、显示器、长期存储(快闪存储器)及联网接口的常规计算硬件组件之外,还包括位置传感器(例如GPS接收器)。
导航客户端402使用地理区域的电子地图进行操作。地图信息可本地长期存储在装置上(例如,在非易失性固态存储器中)或可根据需要从地图服务器404例如以片段的形式检索。导航客户端402使用电子地图以在显示器412上产生所关注地理区域的地图视图。通常,地理区域以执行导航客户端软件应用程序的客户端装置的当前位置为中心。基于位置传感器416,使用已知位置感测技术(例如卫星定位(GPS、GNSS等)、WiFiTM、移动电话跟踪、BluetoothTM信标、图像分析(例如来自TomTomTM的RoadDNATM,在PCT/EP2016/068593、PCT/EP2016/068594、PCT/EP2016/068595及PCT/IB2016/001198中所描述)、地图匹配、航位推算及其它位置传感器来确定当前位置。在存在位置感测错误的情况下,可使用被称为“地图匹配”的过程以调整(若干)经测量位置以最佳地匹配地图上的路段。
导航客户端402可辅助人类用户从当前位置导航到目的地位置。可使用目的地选择模块418来输入目的地。模块418可提供搜索接口,其允许用户通过名称(例如“London(伦敦)”)或其它查询(例如“我附近的炸鱼薯条”)来搜索所期望目的地。模块418可提供自动完成功能,所述自动完成功能从不完整的搜索项建议可能的搜索项—例如当用户键入字母“L”及“O”时,在列表中建议“London”、“Loughborough(拉夫伯勒)”等。导航客户端可使用定序过程以对搜索建议及/或搜索结果进行定序,例如按可能性的顺序。定序过程可使用机器学习模型,如下文更详细地描述,所述机器学习模型可根据用户的搜索历史及导航数据进行训练。所述机器学习模型还可使用如本文中所公开的联合学习方法来考虑其它用户的搜索历史及导航模式。
导航客户端402的选路模块420计算到选定目的地的路线。除经由地图数据控制器414存取电子地图之外,选路模块420还可从交通信息服务器406获得当前交通信息,以确定估计行驶时间或估计到达时间。当前交通信息描述电子地图地理区域中的道路网络的当前情况。这包含当前平均速度、当前交通密度、当前道路封闭等。
选路模块420可使用机器学习模型来确定行驶时间或到达时间估计,所述机器学习模型可使用例如用户在不同道路或道路类型上的典型驾驶速度的数据进行训练。所述模型还可使用本文中所公开的联合学习方法来考虑其它用户的驾驶数据。
选路模块420可呈现优选路线以及替代路线,从而使用户能够选择优选路线。
导航客户端402的引导模块422使用选定优选路线以将终端用户引导到选定目的地。引导模块422可使用显示器412以展示地图及到目的地的路线的一部分。引导还可采取显示器412上的额外图形指示的形式。大多数导航客户端402还支持带有转弯指令的音频引导。
主动导航客户端402使用位置传感器416以使用位置探测产生器426来产生位置探测,且将这些位置探测提供给交通信息服务器406。通信是经由客户端402上的探测接口428发生,所述探测接口与交通信息服务器406上的探测数据服务446进行通信。
地图服务器404
地图服务器404提供用于存储、管理及创建大量信息以创建电子地图及使用电子地图进行导航的基础设施。
地图服务器404管理与广泛范围的国家(大约200个国家)的107到108千米的道路网络相关联的地图信息。地图信息需要具有高质量,因此服务器基础设施404处理对地图信息的更新,其中更新速率平均为大约1,000次更新/每秒。另外,地图信息分布到导航客户端402的全球基础设施。除需要云计算系统之外,所述分布还需要复杂的内容分布网络(未展示)来产生待分布的地图信息。地图服务器404因此可分布在多个物理位置上。
地图数据源434将数据馈送到地图制作模块432,所述数据从所述地图制作模块传递到地图编译器430。这是使用信息以将地图信息编译成适当格式(例如,符合标准化地图规范(NDS、OSM等)的格式)的后台应用程序,或产生用于特定应用(汽车导航、步行导航、交通工具类型特定导航、公共运输导航、自主交通工具导航等)的地图信息。地图编译器从一种呈现格式获取相关信息且产生与特定地图区域相关的地图信息。
经编译地图数据通过地图数据服务器438及相关联地图元数据服务436而对远程导航客户端402可用。导航客户端402可仅偶尔(例如,作为通过有线因特网连接的单一大下载),或根据需要接近实时(例如,取决于客户端402的当前位置,无线地下载较小的地图单元或图块)获得更新。
交通信息服务器406
交通信息服务器406使用交通信息编译器440以通过交通信息服务444将道路及交通信息提供给导航客户端402。服务器406还接收来自导航客户端402的探测且使用这些探测以计算、更新及提供实时交通信息。
交通信息服务器406将来自导航客户端402的位置探测聚合成描述从起始位置行驶到目的地的路径的位置探测序列。此定时位置数据是敏感的个人数据。此数据的处置受法律法规的约束,例如欧洲的《通用数据保护条例(General Data Protection Regulationin Europe)》。TomTomTM专利EP3095226公开用于在处置可在本系统400中使用的实时探测数据时解决隐私问题的机制。其描述在轨迹数据从“现时轨迹”数据库移动到“历史轨迹”数据库时从轨迹中的所有探测移除装置识别符值(识别用户)的解决方案。所述探测存储在探测数据源442中。
地图信息通常含有基于历史数据的静态交通信息。对于更动态的交通信息,例如交通密度、停车可用性、事故、道路封闭、经更新路标、所关注点,交通信息服务器406使用来自导航客户端402的位置探测数据。交通信息编译器440可使用当前位置探测数据以提供当前交通信息。
机器学习服务器500
ML服务器500将机器学习服务501提供给导航客户端402。ML服务器500包含模型更新引擎520,所述模型更新引擎聚合从多个导航客户端402接收的数据,且控制模型数据向外传输到导航客户端402。模型更新模块520存取存储在服务器500的存储器中的中央模型510。
图4提供ML服务器500及ML客户端模块429的更多细节。
机器学习服务器500及多个导航客户端装置402的客户端模块429一起实施联合机器学习系统,其中每一客户端装置402使用本地数据来独立地更新从集中式服务器500获得的本地机器学习模型,且将经更新模型返回到集中式服务器500。ML服务器500接着合并经接收的经更新模型且将更新模型数据提供给导航客户端402。随时间重复这个客户端更新循环。
这种方法避免对含有敏感用户数据(例如导航及位置历史)的中央数据存储库的需要,从而防止数据泄露且改进用户隐私。
ML服务器500及客户端模块429可实施所属领域中已知的联合机器学习原理—例如如WO 2018/057302A1中所公开。然而,其还实施如本文中所公开的额外新过程。
图4展示存储对中央模型510进行编码的数据的ML服务器500及与ML服务器500进行通信的多个导航客户端中的代表性导航客户端402。每一导航客户端402具有含有客户端数据640的私人数据存储区(体现如上文所公开的训练集)。
当首次初始化时(例如,当用户在购买装置402之后首次打开装置402时),客户端402接收代表中央模型510的数据且将其用作客户端模型610。此后,每一客户端402使用其客户端数据640来调整客户端模型610,且按一定间隔将经更新客户端模型610发送到服务器。服务器500中的中央模型更新模块520聚合这些经更新客户端模型以产生经更新模型,接着存储522所述经更新模型作为当前中央模型510。随时间重复这个过程,由此通过每次迭代改进中央模型510。因为客户端数据640仍然存储在本地,所以这种方法保护客户端数据640的隐私,但其对每一客户端402提供基于更大客户端数据集的客户端模型610,从而改进所得客户端模型的质量。
每一导航客户端402在其ML客户端模块429内具有客户端模型更新模块620,其接收512当前中央模型510且用最新接收的中央模型510替换经存储客户端模型610。客户端装置402进一步具有学习算法模块630,其使用客户端数据640以确定通过本地机器学习训练过程改变本地客户端模型610的更新参数632。客户端402按一定间隔将代表其经更新客户端模型610的数据612发送回到ML服务器500。数据612可例如使用US 2018/0089587A1中所公开的原理来对模型更新矩阵进行编码。
重要的是,客户端402还将权重数据652(体现上文所公开的属性数据)发送到ML服务器500。客户端402含有存取客户端402的客户端数据640以产生权重数据652的权重估计模块650。权重数据652描述已被学习算法630用以训练当前客户端模型610的客户端数据640的一或多个性质。所述权重数据可表征客户端402的客户端数据640。
在一些实施例中,权重数据652包括表示客户端数据的信息熵的熵值—即,客户端数据中所含的新或意外信息的量。在其它实施例中,权重数据652可表示客户端数据640的统计方差。在一些实施例中,权重数据652可包括表征本地数据的大小的分布参数集及/或用于客户端数据的分布函数。
在一些实施例中,权重数据652可表示在客户端数据640内表示的位置的物理或几何范围。所述权重数据可例如表示含有客户端数据640内的所有位置的全部或预定比例(例如90%)的区的面积(例如,以km2为单位)。所述区可被定义为含有所有位置的最小凸形区,或以任何其它合适方式来定义。权重数据652可对面积比值进行编码,所述值被确定为常见行驶区域相对于总数据空间(例如,更大地图区域,例如整个国家)的比。权重值可另外或替代地使用其它因素,例如所行驶道路类型来确定。
例如,主要在单一路线上行驶(例如,在家庭与工作地点之间行驶)的第一导航客户端402及在大量路线上行驶的第二导航客户端将具有显著不同的本地客户端数据640。在一些实施例中,相应的权重估计模块650可表征两个客户端之间的权重数据652中的这些差异。
每一权重估计模块650可计算相应统计值zj,以作为权重值(体现共同性质的值,如上文所描述)发送到ML服务器500。
服务器500可例如使用Softmax函数来归一化经接收权重值:
这允许服务器500将权重缩放为概率分布(即,总和为1)。然而,Softmax的使用并非必不可少的;例如,服务器500可简单地将每一经接收权重值除以来自K个客户端402的K个最新接收的权重值的和。
当首次配置系统400时,可将每一客户端模型的系数(参数)初始化为相同值,例如如文章“从分散式数据对深度网络的通信高效学习(Communication-Efficient Learningof Deep Networks from Decentralized Data)”(arXiv:1602.05629)中所描述。然而,在本地客户端学习算法630基于客户端数据640来进一步训练客户端模型610之后,客户端402将客户端模型数据612及权重数据652发送到服务器500。
可对来自不同导航客户端402、具有不同性质及/或熵度的客户端数据进行操作的联合机器学习模型的这种方法允许ML服务器500开发稳定模型,即使在从对基本上不同的客户端数据640进行训练的导航客户端402接收本地模型数据时也是如此。这在导航系统中非常有用,其中用户通常在其导航模式(例如,所覆盖地图区域、所使用路线、频率、行驶时间、行驶持续时间)上有很大不同;例如,大多数用户将其大部分行驶时间花在离家较近的地方。
从客户端导航历史数据640导出的权重数据652的使用可提供中央模型510的快速收敛及稳定性,即使在使用与总体数据集具有广泛不同程度的重叠的本地数据时也是如此,同时还保护用户隐私。
服务器500的中央更新模块520使用其从导航客户端402接收的权重数据652以调整相关联经更新客户端模型612的贡献,以产生经更新中央模型522。中央模型更新模块520执行根据相关联权重数据652进行加权的客户端模型612的加权模型平均化。例如,更新模块520可将更高权重赋予具有更高熵权重的模型,因为这些模型可能提供更“新”信息。
在处理来自客户端402的所有模型及权重之后,经更新中央模型522替换中央模型510以分布到客户端402。可按规则间隔或每当已从阈值数目个客户端402接收经更新模型数据612时计算新中央模型510。在一些实施例中,可在每次接收任何新客户端模型数据612及权重数据652时执行更新;这将确保中央模型510尽可能是当前的,但计算效率可能较低。在服务器500初始化之后,可对中央模型进行若干次客户端更新迭代来收敛到稳定版本。
导航客户端402通常存储包括以下中的一或多者的客户端数据640:所访问位置集、起始位置、终止位置、行驶时间、行驶速度、地图位置搜索或运输模式。
图5展示具有变体机器学习模块429'的变体导航客户端装置402'。在这个实施例中,导航客户端402'与图4中所展示的装置类似,但另外含有本地数据控制器模块660,本地数据控制器模块660管理在学习算法模块630及权重估计模块650中使用的客户端数据640。本地数据控制器660对本地数据640执行过滤操作,使得在分布式学习系统中不使用某些本地数据—即,使得仅本地数据640中的一些形成训练集。例如,导航客户端402'可排除某些类型的数据,或可排除与例如家庭位置或工作位置的目的地相关联的数据以免在分布式学习系统中使用。
在一些实施例中,客户端402、402'可存储服务于不同目的的多个不同客户端模型。不同机器学习模型可具有不同的相关联学习算法、权重估计模块、中央模型等。所述模型可存储在不同的相应ML服务器上,或在同一ML服务器500上。因此,在适当的情况下,可在客户端402内及服务器500上复制图4中所描述的特征中的至少一些。
现在将给出一些特定实施例,以说明由如本文中所公开的导航系统联合开发的ML模型的各种各样的应用及用例。这些不是限制性的,且其它用例也是可能的。
目的地预测
在一些实施例中,中央及本地ML模型510、610用以预测旅程的预期目的地,而无需用户必须手动添加目的地。这是多类分类问题。
通过开发并入来自许多不同用户的模型参数的中央模型510,本地客户端模型610不仅可预测特定用户的先前访问的位置,而且还可根据一些性质,例如在同一类“超市”中预测与先前访问的目的地类似的从未访问过的新目的地。
过程将客户有关以下项的历史行为,即,他先前的行程当作输入:
-GPS轨迹序列(每一序列是一次行程);
-来自GPS轨迹的地图属性序列(例如,以下中的一或多者:地图的版本;所行驶路段的数目;对于所行驶路段登记的平均速度;所使用的平均转弯时间;等等);
-外部数据库,例如天气、个人日历等。
-先前目的地,其可从先前行程中的最后索引项及/或从先前搜索查询得到的项导出。
这些存储在客户端数据640中且由学习算法630用以训练本地客户端模型610。
过程由以下步骤组成,所述步骤随时间重复:
-当无历史数据可用时,导航装置402接收经预训练集中式模型510;如果此模型也不可用,那么初始化随机模型;
-在每次迭代(行程、行程的部分、搜索查询)之后,通过对新客户数据640进行训练来更新本地客户端模型610;可在线执行地图匹配过程以从行程/目的地提取地图属性;
-将本地模型610(即,参数数据612)及权重数据652周期性地发送到ML服务器400,其中由模型更新模块520执行聚合操作;
-将中央模型510周期性地发送到系统400中的所有个别导航装置402,所述导航装置用经接收中央模型510替换其相应的本地模型610;所述使本地模型610对情境变化更加稳健。
图6从客户端装置402的角度将这些步骤说明为流程图。
在第一步骤600中,通过从服务器400接收预训练模型数据来初始化客户端装置402。
接下来在601,用户开始将所述装置用于导航目的,且导航历史数据开始被存储在存储器中。这可滚动存储,例如存储在固定大小的缓冲器中,或每次更新本地模型时可清除历史。
接着在602,一旦已获得合适数量的数据(例如,在每次行程终止之后,或在每次搜索查询之后),就重新训练本地模型以合并新材料(例如,使用梯度下降方法)。
接着在603,在训练完成之后,或按规则间隔,将经更新模型数据612及属性数据(权重数据652)发送到服务器400,所述服务器将数据输入到加权聚合过程以产生经更新的经聚合模型数据。
客户端装置402(连同其它客户端装置)接着从服务器接收604这些经聚合参数,且取决于经更新参数来更新605其本地模型。
在获得601新导航数据时,重复所述过程。
在目的地预测的实例用例中,由学习算法630执行的机器学习任务是多类分类,且所述模型是由于对时间维度的依赖性而处理序列的深度学习模型。其可为一维卷积神经网络;递归神经网络(RNN),例如门控递归单元(GRU)、长短期记忆(LSTM)或差分神经计算机(DNC)模型;前馈神经网络;或任何其它合适模型。
路线预测
在一些实施例中,中央及本地ML模型510、610用以预测旅程的最优路线,而用户不需手动选择路线。
问题可被描述为导航系统400并非通过根据单个度量(例如旅程时间或距离)进行优化,而是基于路线的不同部分的多个度量,例如基于用户的驾驶风格及情境信息来预测客户路线。例如,系统可能了解用户的偏好:“当我早上晚到目的地A时,我更喜欢走高速公路(最快),除了我总是避开的特定高速公路之外且在那种情况下我更喜欢绕道而行”。
本文中所公开的联合学习方法不仅可预测当前用户先前使用的路线,而且可根据一些性质,例如尤其是“高速公路”类而推广到与先前使用的路线类似的新路线。
过程将客户有关以下项的历史行为,即,他先前的行程当作输入:
-GPS轨迹序列(每一序列是一次行程);
-来自GPS轨迹的地图属性序列;
-外部数据库,例如天气、个人日历等。
这些存储在客户端数据640中且由学习算法630用以训练本地客户端模型610。
在这种情况下,ML模型是由于对时间维度的依赖性而处理序列的深度学习模型。另外,由于问题的性质及待预测的大量类,最适合的模型可为递归神经网络。
联合学习过程可与上文对于目的地预测所提出的过程相同或类似。
到达时间预测
在一些实施例中,中央及本地ML模型510、610用以在不共享属于用户的敏感信息的情况下,考虑到她的个人驾驶风格来预测用户在行程中的估计到达时间(ETA)。
联合学习方法可为用户预测她先前使用的路线的ETA,但其也可推广到新路线。
过程将客户有关以下项的历史行为,即,他先前的行程当作输入:
-GPS轨迹序列(每一序列是一次行程);
-来自GPS轨迹的地图属性序列;
-外部数据库,例如天气、个人日历等。
这些存储在客户端数据640中且由学习算法630用以训练本地客户端模型610。
在这个实例中,ML问题可被视为递归问题或多类分类问题。对于多类分类模型,需要预定义ETA(例如1、5、10、15、30分钟),且任务接着将涉及预测所述预定义类中的一者。对于递归任务,将推断确切的到达时间,其意味着这种方法将尝试预测确切的到达时间。
联合学习过程可与上文对于目的地预测所提出的过程相同或类似。
对搜索结果进行排序
在一些实施例中,中央及本地ML模型510、610用以为用户的位置搜索提供情境化排序。搜索过程在本地及/或远程发生(例如,涉及与地图服务器404的通信),且一旦产生结果,所述过程就在向客户显示位置之前对位置进行排序。
排序将基于用户的个人偏好(例如他的搜索历史),但也将受益于由其它用户例如由于联合学习而在同一地点中执行的先前搜索。
过程将客户有关以下项的历史行为,即,他先前的行程当作输入:
-先前访问的目的地(例如从GPS轨迹获得);
-先前的搜索数据(例如查询日志)。
这些存储在客户端数据640中且由学习算法630用以训练本地客户端模型610。
在这个实例中,ML问题是一种形式的基于机器学习的排序(MLR)。由学习算法630使用的ML模型可为成对排序模型。所述模型在给定一对可能结果(s1、s2)的情况下尝试预测以下中的哪一者更适合客户的用户查询的信息需要。
联合学习过程可与上文对于目的地预测所提出的过程相同或类似。
进一步一般细节
一般来说,在本文中所公开的任何实施例中,可用以实施本文中所公开的过程的系统及设备可包含智能手机、蜂窝电话、便携式个人计算机(PC)、个人数字助理(PDA)、专用便携式导航装置(PND)、例如汽车的交通工具或经配置以按便携式方式执行导航软件以便提供路线规划及导航功能性的任何类型的处理装置。
已参考路段描述一些实施例。应认识到,本发明还可适用于其它可导航路段,例如路径、河流、运河、自行车道、牵道、铁路线等的段。为了便于参考,这些在本文中通常被称为路段。
还将显而易见的是,在本发明的一些实施例中执行路线规划的情况下,即使在其中用户不寻求关于如何从一个点导航到另一点的指令,而是仅仅希望被提供给定位置的视图的境况下,这也可能发生。在此类境况下,由用户选择的“目的地”位置不需要具有用户希望从其起始导航的对应起始位置,且因此在本文中对“目的地”位置或实际上对“目的地”视图的引用不应被解释为意味着路线的产生是必不可少的,必须发生行驶到“目的地”,或实际上目的地的存在需要指定对应起始位置。
实施例可使用全球定位系统(GPS)—例如当不在隧道或带棚停车区域的范围内时。一般来说,GPS是能够确定无限数目个用户的连续位置、速度、时间及在一些例子中方向信息的基于卫星无线电的导航系统。GPS先前被称为NAVSTAR,并入以极其精确的轨道环绕地球运行的多颗卫星。基于这些精确的轨道,GPS卫星可将其位置作为GPS数据中继到任何数目个接收单元。然而,将理解,可使用其它全球定位系统,例如GLOSNASS、欧洲伽利略定位系统、COMPASS定位系统或IRNSS(印度区域导航卫星系统)。
GPS系统是在专门经装备以接收GPS数据的装置1开始扫描GPS卫星信号的无线电频率时实施。在接收来自GPS卫星的无线电信号时,装置1经由多种不同常规方法中的一者确定那颗卫星的精确位置。在大多数例子中,装置1将继续扫描信号,直到其已获取至少三个不同卫星信号(应注意,位置通常不是但能仅以两个信号使用其它三角测量技术来确定)。实施几何三角测量,接收器利用三个已知位置以确定其自身相对于卫星的二维位置。这可以已知方式完成。另外,获取第四卫星信号允许接收装置1以已知方式通过相同的几何计算来计算其三维位置。位置及速度数据可由无限数目个用户连续实时更新。
视需要,体现本发明的装置1可能够经由移动装置,例如移动电话、PDA及/或具有移动电话技术的任何装置与“移动”或电信网络的网络硬件建立数据会话,以便建立数字连接,例如经由已知BluetoothTM技术的数字连接。此后,通过其网络服务提供商,移动装置可与服务器建立网络连接(例如通过因特网)。因而,可在所述装置(所述装置在其独自地及/或在交通工具中行驶时可为且通常是移动的)与服务器之间建立“移动”网络连接,以提供“实时”或至少非常“最新”的信息网关。
使用例如因特网在移动装置(经由服务提供商)1、402与例如服务器404、406、500的另一装置之间建立网络连接可以已知方式完成。就这一点来说,可采用任何数目个适当数据通信协议,例如TCP/IP分层协议。此外,移动装置可利用任何数目个通信标准,例如CDMA2000、GSM、IEEE 802.11a/b/c/g/n等。因此,可见,可利用因特网连接,其可经由数据连接,例如经由移动电话或在导航装置内的移动电话技术实现。
装置1、402可能够经由可由数种不同布置中的任一者实施的通用通信信道,例如蜂窝网络数据连接、经由个人计算机经由因特网的直接连接等与服务器404、406、500进行通信。在一种说明性布置中,通信信道包含电话及计算机网络。此外,通信信道可能够适应无线通信,例如红外线通信、射频通信,例如微波频率通信等。另外,通信信道可适应卫星通信。
通过通信信道传输的通信信号包含(但不限于)给定通信技术可能需要或期望的信号。例如,信号可经调适以用于蜂窝通信技术,例如时分多址(TDMA)、频分多址(FDMA)、码分多址(CDMA)、全球移动通信系统(GSM)、通用分组无线电服务(GPRS)等。数字及模拟信号两者可通过通信信道进行传输。这些信号可为通信技术可能期望的经调制、经加密及/或经压缩信号。
除包含其它组件之外,远程服务器404、406、500还可包含可操作地连接到存储器且经由有线或无线连接进一步可操作地连接到海量数据存储装置的处理器。海量存储装置含有导航数据及地图信息的存储,且可同样为与服务器分开的装置或可并入到服务器中。处理器进一步可操作地连接到发射器及接收器,以经由通信信道将信息传输到导航装置1、402及从导航装置1、402接收信息。所发送及所接收信号可包含数据、通信及/或其它传播信号。发射器及接收器可根据导航系统的通信设计中使用的通信要求及通信技术来选择或设计。此外,应注意,发射器及接收器的功能可组合到单个收发器中。
体现本发明的装置1、402可包括处理器2及存储器3、4,处理器2及存储器3、4可协作以支持用作所述装置的功能硬件组件与由所述装置执行的软件之间的接口的BIOS(基本输入/输出系统)。处理器2可从存储器3、4加载操作系统,所述操作系统提供应用程序软件(例如,实施路线规划及导航功能性)可在其中运行的环境。应用程序软件可提供包含图形用户界面(GUI)的操作环境,所述GUI支持所述装置的核心功能,例如与所述装置相关联的地图查看、路线规划、导航功能及任何其它功能。就这一点来说,应用程序软件的部分可包括视图产生模块。
装置1的处理器2可经编程以接收由天线接收的GPS数据,且不时地将那个GPS数据连同接收GPS数据的时间戳一起存储在存储器内,以构建导航装置的位置记录。如此存储的每一数据记录可被认为是GPS定位;即,其是导航装置位置的定位且包括纬度、经度、时间戳及准确度报告。
数据可基本上周期性地存储,例如每5秒一次。所属领域的技术人员将明白,其它周期将是可能的且在数据分辨率与存储器容量之间存在平衡;即,随着通过采集更多样本来增加数据的分辨率,需要更多存储器来保存数据。然而,在其它实施例中,分辨率可基本上是每1秒、10秒、15秒、20秒、30秒、45秒、1分钟、2.5分钟(或实际上,这些周期中间的任何周期)。因此,在所述装置的存储器内,构建装置200在各时间点的行踪记录。
在一些实施例中,可发现所捕获数据的质量随周期增加而降低,且当降级程度至少部分地取决于装置1在大约15秒的周期内移动的速度时可提供合适上限。
虽然装置1通常经布置以构建其行踪记录,但一些实施例不记录在旅程开始或结束时的预定周期及/或距离的数据。此布置有助于保护所述装置的用户的隐私,因为其可能保护他/她家的位置及其它常出入的目的地。例如,装置1可经布置以不存储旅程的大约前5分钟及/或旅程的大约第一英里的数据。
在其它实施例中,GPS可不周期性地存储,而是可在预定事件发生时存储在存储器中。例如,处理器可经编程以在所述装置通过路口、路段变化或其它此类事件时存储GPS数据。
此外,处理器2可不时地经编程以将装置1、402的行踪记录(即,GPS数据及时间戳,及/或使用本文中所描述的光传感器或麦克风获得的位置及时间戳数据)上传到服务器404、406、500。在其中所述装置具有将其连接到服务器的永久或至少通常存在的通信信道的一些实施例中,数据的上传周期性地发生,例如可为每24小时一次。所属领域的技术人员将明白,其它周期是可能的且可基本上为以下周期中的任一者:15分钟、30分钟、每小时、每2小时、每5小时、每12小时、每2天、每周或这些中的任何时间。实际上,在此类实施例中,处理器可经布置以基本上实时地上传行踪记录,尽管这可能不可避免地意味着数据事实上是不时地被传输,而在传输之间的周期相对短且因而可能更正确地被认为是伪实时。在此类伪实时实施例中,装置可经布置以在存储器内缓冲GPS定位,且在已存储预定数目时传输这些GPS定位。这个预定数目可为大约20、36、100、200或其中的任何数目。所属领域技的术人员将明白,所述预定数目部分地由存储器的大小决定。
在不具有普遍存在的通信信道的其它实施例中,处理器2可经布置以在通信信道经建立时将记录上传到服务器404、406、500。例如,这可在装置1、402连接到用户的计算机时,或当装置1、402从没有网络连接性的隧道或其它区域出现时发生。又,在此类实施例中,导航装置1、402可经布置以在存储器内缓冲位置定位。如果存储器充满位置定位,那么装置可经布置以删除最旧位置定位且因而其可被认为是先进先出(FIFO)缓冲器。
在一些实施例中,装置1、402的行踪记录可包括一或多个轨迹,其中每一轨迹代表所述装置例如在24小时周期内的移动。每一周期可经布置以与日历天一致,但在其它实施例中,情况不必如此。通常,装置的用户同意将所述装置的行踪记录上传到服务器。如果没有同意,那么在一些实施例中,无记录上传到服务器。装置1、402本身及/或所述装置连接到的计算机可经布置以询问用户他/她是否同意此行踪记录的使用。远程服务器404、406、500可经布置以接收装置的行踪记录且将这个行踪记录存储在海量数据存储装置内以供处理。
所属领域的技术人员将明白,本发明已通过描述其各种特定实施例进行说明,但不限于这些实施例;在随附权利要求书的范围内,许多变动及修改是可能的。
Claims (25)
1.一种操作导航系统的方法,其中所述导航系统包括服务器及多个导航客户端装置,所述方法包括:
每一导航客户端装置使用相应位置传感器以随时间收集代表由所述导航客户端装置访问的位置的相应导航历史数据,且将所述导航历史数据存储在所述导航客户端装置的存储器中;
每一导航客户端装置使用所述导航历史数据的相应训练集以训练存储在所述导航客户端装置的所述存储器中的相应本地机器学习模型,以确定所述本地机器学习模型的相应经更新参数集;
每一导航客户端装置将代表所述相应经更新参数集的模型数据传输到所述服务器;
每一导航客户端装置将代表用以确定所述经更新参数集的所述相应训练集的共同性质的相应值的属性数据传输到所述服务器;
所述服务器从所述导航客户端装置接收所述模型数据及所述属性数据;
所述服务器通过执行加权聚合来从所述经更新参数集确定聚合参数集,在所述加权聚合中所述经更新参数集中的每一者取决于用以确定所述经更新参数集的所述相应训练集的所述性质的所述值进行加权;
所述服务器将代表所述聚合参数集的数据传输到所述多个导航客户端装置中的第一导航客户端装置;及
所述第一导航客户端装置使用所述聚合参数集以更新存储在所述第一导航客户端装置的所述存储器中的所述本地机器学习模型。
2.根据权利要求1所述的方法,其包括:
所述服务器将代表所述聚合参数集的所述数据传输到所述多个导航客户端装置中的每一者;及
所述多个导航客户端装置中的每一者使用所述聚合参数集以更新存储在所述相应导航客户端装置的所述存储器中的所述相应本地机器学习模型。
3.根据权利要求1或2所述的方法,其中随时间重复每一步骤。
4.一种导航系统,其包括服务器及多个导航客户端装置,
其中每一导航客户端装置包括相应的:
位置传感器;
存储器;
处理系统;及
通信模块,
且经配置以:
使用所述位置传感器以随时间收集代表由所述导航客户端装置访问的位置的相应导航历史数据;
将所述导航历史数据存储在所述存储器中;
使用所述导航历史数据的相应训练集以训练存储在所述导航客户端装置的所述存储器中的相应本地机器学习模型,以确定所述本地机器学习模型的相应经更新参数集;
将代表所述相应经更新参数集的模型数据传输到所述服务器;及
将代表用以确定所述经更新参数集的所述相应训练集的共同性质的相应值的属性数据传输到所述服务器,
其中所述服务器经配置以:
从所述导航客户端装置接收所述模型数据及所述属性数据;
通过执行加权聚合来从所述经更新参数集确定聚合参数集,在所述加权聚合中所述经更新参数集中的每一者取决于用以确定所述经更新参数集的所述相应训练集的所述性质的所述值进行加权;及
将代表所述聚合参数集的数据传输到所述多个导航客户端装置中的第一导航客户端装置,
且其中所述第一导航客户端装置经配置以使用所述聚合参数集以更新存储在所述第一导航客户端装置的所述存储器中的所述本地机器学习模型。
5.根据权利要求4所述的导航系统,其中所述共同性质表示所述相应训练集的熵或方差。
6.根据权利要求4或5所述的导航系统,其中所述共同性质表示由所述训练集覆盖的地理区域的大小。
7.根据权利要求4到6中任一权利要求所述的导航系统,其中每一导航客户端装置经配置以使用所述相应本地机器学习模型以进行以下中的一或多者:
确定可能目的地的候选列表;
预测到目的地的路线;
预测到达目的地的时间;及
基于从用户接收的搜索查询来预测一或多个搜索结果。
8.根据权利要求4到7中任一权利要求所述的导航系统,其中所述服务器经配置以将所述聚合参数集传输或尝试传输到所述多个导航客户端装置中的每一者。
9.根据权利要求4到8中任一权利要求所述的导航系统,其中每一导航客户端装置经配置以过滤所述经存储导航历史数据以选择满足一或多个选择准则的训练集。
10.一种导航客户端装置,其包括:
位置传感器;
存储器;及
处理系统;及
通信模块,
其中所述导航客户端装置经配置以:
使用所述位置传感器以随时间收集代表由所述导航客户端装置访问的位置的导航历史数据;
将所述导航历史数据存储在所述存储器中;
使用所述导航历史数据的训练集以训练存储在所述导航客户端装置的所述存储器中的本地机器学习模型,以确定所述本地机器学习模型的经更新参数集;
将代表所述经更新参数集的模型数据传输到所述服务器;及
将代表用以确定所述经更新参数集的所述训练集的性质的值的属性数据传输到所述服务器。
11.根据权利要求10所述的导航客户端装置,其进一步经配置以:
从所述服务器接收代表聚合参数集的数据;及
使用所述聚合参数集以更新存储在所述导航客户端装置的所述存储器中的所述本地机器学习模型。
12.根据权利要求10或11所述的导航客户端装置,其中所述性质表示所述训练集的熵或方差。
13.根据权利要求10到12中任一权利要求所述的导航客户端装置,其中所述性质表示由所述训练集覆盖的地理区域的大小。
14.根据权利要求10到13中任一权利要求所述的导航客户端装置,其中所述位置传感器是卫星定位传感器。
15.根据权利要求10到14中任一权利要求所述的导航客户端装置,其中所述训练集包括目的地数据或路线数据。
16.根据权利要求10到15中任一权利要求所述的导航客户端装置,其经配置以除使用代表由所述导航客户端装置访问的位置的数据以外,还使用搜索数据以训练所述本地机器学习模型。
17.根据权利要求10到16中任一权利要求所述的导航客户端装置,其经配置以使用所述本地机器学习模型以确定可能目的地的候选列表,且经配置以向用户呈现所述可能目的地的候选列表。
18.根据权利要求10到17中任一权利要求所述的导航客户端装置,其经配置以使用所述本地机器学习模型以预测到目的地的路线。
19.根据权利要求10到18中任一权利要求所述的导航客户端装置,其经配置以使用所述本地机器学习模型以预测到达目的地的时间。
20.根据权利要求10到19中任一权利要求所述的导航客户端装置,其经配置以使用所述本地机器学习模型以基于从用户接收的搜索查询来预测一或多个搜索结果。
21.根据权利要求10到20中任一权利要求所述的导航客户端装置,其经配置以将输入数据提供到所述本地模型以预测输出,其中所述输入数据代表时间、天气及当前用户的身份中的一或多者。
22.根据权利要求10到21中任一权利要求所述的导航客户端装置,其经配置以使用所述聚合参数集以通过用所述聚合参数集替换所述经更新参数来更新所述本地机器学习模型。
23.根据权利要求10到22中任一权利要求所述的导航客户端装置,其经配置以过滤所述经存储导航历史数据以选择满足一或多个选择准则的训练集。
24.一种计算机程序产品,其包括在由具有位置传感器、存储器及通信模块的导航客户端装置的处理器执行时致使所述处理器进行以下步骤的指令:
使用所述位置传感器以随时间收集代表由所述导航客户端装置访问的位置的导航历史数据;
将所述导航历史数据存储在所述存储器中;
使用所述导航历史数据的训练集以训练存储在所述导航客户端装置的所述存储器中的本地机器学习模型,以确定所述本地机器学习模型的经更新参数集;
控制所述通信模块以将代表所述经更新参数集的模型数据传输到服务器;及
控制所述通信模块以将代表用以确定所述经更新参数集的所述训练集的性质的值的属性数据传输到所述服务器。
25.根据权利要求15所述的计算机程序产品,其进一步包括在由所述处理器执行时致使所述处理器进行以下步骤的指令:
使用所述通信模块以从服务器接收代表聚合参数集的数据;及
使用所述聚合参数集以更新存储在所述导航客户端装置的所述存储器中的所述本地机器学习模型。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB2001468.4 | 2020-02-04 | ||
GBGB2001468.4A GB202001468D0 (en) | 2020-02-04 | 2020-02-04 | Navigation system |
PCT/EP2021/052659 WO2021156363A1 (en) | 2020-02-04 | 2021-02-04 | Navigation system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115038935A true CN115038935A (zh) | 2022-09-09 |
Family
ID=69800080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180012260.9A Pending CN115038935A (zh) | 2020-02-04 | 2021-02-04 | 导航系统 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20230080592A1 (zh) |
EP (1) | EP4100699A1 (zh) |
JP (1) | JP7464728B2 (zh) |
KR (1) | KR20220132006A (zh) |
CN (1) | CN115038935A (zh) |
GB (1) | GB202001468D0 (zh) |
WO (1) | WO2021156363A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI841069B (zh) | 2022-11-21 | 2024-05-01 | 鴻海精密工業股份有限公司 | 行車路線規劃方法、電子設備及電腦可讀存儲介質 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117350373B (zh) * | 2023-11-30 | 2024-03-01 | 艾迪恩(山东)科技有限公司 | 一种基于局部自注意力机制的个性化联邦聚合算法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101925799A (zh) * | 2008-02-15 | 2010-12-22 | 通腾科技股份有限公司 | 具有空中搜索模块的导航装置、系统及方法 |
CN101939740A (zh) * | 2007-12-11 | 2011-01-05 | 声钰科技 | 在集成语言导航服务环境中提供自然语言语音用户界面 |
WO2013075072A2 (en) * | 2011-11-18 | 2013-05-23 | Tomtom North America Inc. | A method and apparatus for creating cost data for use in generating a route across an electronic map |
US20150324686A1 (en) * | 2014-05-12 | 2015-11-12 | Qualcomm Incorporated | Distributed model learning |
US20170293857A1 (en) * | 2016-04-08 | 2017-10-12 | Here Global B.V. | Distributed online learning for privacy-preserving personal predictive models |
CN109801491A (zh) * | 2019-01-18 | 2019-05-24 | 深圳壹账通智能科技有限公司 | 基于风险评估的智能导航方法、装置、设备及存储介质 |
CN109870164A (zh) * | 2017-12-01 | 2019-06-11 | 上海博泰悦臻网络技术服务有限公司 | 导航终端及其路线偏好预测方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7483864B2 (en) | 2003-11-17 | 2009-01-27 | Nec Corporation | Active learning method and system |
US7472096B2 (en) | 2005-07-18 | 2008-12-30 | Microsoft Corporation | Training a learning system with arbitrary cost functions |
US7698236B2 (en) | 2006-05-02 | 2010-04-13 | Invidi Technologies Corporation | Fuzzy logic based viewer identification for targeted asset delivery system |
JP5003537B2 (ja) | 2008-03-06 | 2012-08-15 | 株式会社デンソー | 車両用ナビゲーション装置 |
JP2011252844A (ja) | 2010-06-03 | 2011-12-15 | Sony Corp | データ処理装置、データ処理方法、およびプログラム |
JP2013211616A (ja) | 2012-03-30 | 2013-10-10 | Sony Corp | 端末装置、端末制御方法、プログラム、および情報処理システム |
GB201400601D0 (en) | 2014-01-14 | 2014-03-05 | Tomtom Int Bv | Apparatus and method for a probe data management |
DE102016101665A1 (de) | 2015-01-29 | 2016-08-04 | Affectomatics Ltd. | Auf datenschutzüberlegungen gestützte filterung von messwerten der affektiven reaktion |
CN109716346A (zh) | 2016-07-18 | 2019-05-03 | 河谷生物组学有限责任公司 | 分布式机器学习系统、装置和方法 |
US20180089587A1 (en) | 2016-09-26 | 2018-03-29 | Google Inc. | Systems and Methods for Communication Efficient Distributed Mean Estimation |
CA3028278A1 (en) | 2017-11-23 | 2019-05-23 | Beijing Didi Infinity Technology And Development Co., Ltd. | System and method for estimating arrival time |
US11373115B2 (en) | 2018-04-09 | 2022-06-28 | Here Global B.V. | Asynchronous parameter aggregation for machine learning |
-
2020
- 2020-02-04 GB GBGB2001468.4A patent/GB202001468D0/en not_active Ceased
-
2021
- 2021-02-04 JP JP2022544848A patent/JP7464728B2/ja active Active
- 2021-02-04 EP EP21703444.6A patent/EP4100699A1/en active Pending
- 2021-02-04 KR KR1020227030641A patent/KR20220132006A/ko unknown
- 2021-02-04 US US17/799,902 patent/US20230080592A1/en active Pending
- 2021-02-04 CN CN202180012260.9A patent/CN115038935A/zh active Pending
- 2021-02-04 WO PCT/EP2021/052659 patent/WO2021156363A1/en unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101939740A (zh) * | 2007-12-11 | 2011-01-05 | 声钰科技 | 在集成语言导航服务环境中提供自然语言语音用户界面 |
CN101925799A (zh) * | 2008-02-15 | 2010-12-22 | 通腾科技股份有限公司 | 具有空中搜索模块的导航装置、系统及方法 |
WO2013075072A2 (en) * | 2011-11-18 | 2013-05-23 | Tomtom North America Inc. | A method and apparatus for creating cost data for use in generating a route across an electronic map |
US20150324686A1 (en) * | 2014-05-12 | 2015-11-12 | Qualcomm Incorporated | Distributed model learning |
US20170293857A1 (en) * | 2016-04-08 | 2017-10-12 | Here Global B.V. | Distributed online learning for privacy-preserving personal predictive models |
CN109870164A (zh) * | 2017-12-01 | 2019-06-11 | 上海博泰悦臻网络技术服务有限公司 | 导航终端及其路线偏好预测方法 |
CN109801491A (zh) * | 2019-01-18 | 2019-05-24 | 深圳壹账通智能科技有限公司 | 基于风险评估的智能导航方法、装置、设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI841069B (zh) | 2022-11-21 | 2024-05-01 | 鴻海精密工業股份有限公司 | 行車路線規劃方法、電子設備及電腦可讀存儲介質 |
Also Published As
Publication number | Publication date |
---|---|
WO2021156363A1 (en) | 2021-08-12 |
GB202001468D0 (en) | 2020-03-18 |
KR20220132006A (ko) | 2022-09-29 |
JP2023514079A (ja) | 2023-04-05 |
EP4100699A1 (en) | 2022-12-14 |
JP7464728B2 (ja) | 2024-04-09 |
US20230080592A1 (en) | 2023-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220333930A1 (en) | Map-matching for low-sampling-rate gps trajectories | |
EP3114433B1 (en) | Reconstructing routes using electronic map data | |
US9261376B2 (en) | Route computation based on route-oriented vehicle trajectories | |
KR102602628B1 (ko) | 라우팅 정책들 및 경로들 생성을 위한 방법 및 시스템 | |
US8457880B1 (en) | Telematics using personal mobile devices | |
US8768624B2 (en) | Vehicle operation support system and vehicle operation support method | |
EP2370785B1 (en) | Systems and methods for processing information related to a geographic region | |
US20100312472A1 (en) | Method of processing positioning data | |
CN102538813A (zh) | 路径搜索方法及装置 | |
CN107084732A (zh) | 产生预期平均行进速度的方法 | |
US11042648B2 (en) | Quantification of privacy risk in location trajectories | |
EP2771644B1 (en) | Method and system for navigation using bounded geographic regions | |
JP7464728B2 (ja) | ナビゲーションシステム | |
KR20010099007A (ko) | 개인 지리정보 제공 시스템 및 그 방법 | |
JP2023507560A (ja) | 交通量データを生成するための方法およびシステム | |
WO2022229049A1 (en) | Methods and systems for determining estimated travel times through a navigable network | |
WO2020099647A1 (en) | Determining location data accuracy using probe measurements | |
JP2019211484A (ja) | 画像処理装置、画像処理管理装置、端末装置及び画像処理方法 | |
JP2018109631A (ja) | 画像処理装置、画像処理管理装置、端末装置及び画像処理方法 | |
JP5860136B2 (ja) | 画像処理装置、画像処理管理装置、端末装置及び画像処理方法 | |
JP5815843B2 (ja) | 画像処理装置、画像処理管理装置、端末装置及び画像処理方法 | |
Griffin | GPS CaPPture: A system for GPS trajectory collection, processing, and destination prediction | |
JP2016027347A (ja) | 画像処理装置、画像処理管理装置、端末装置及び画像処理方法 | |
KR20130135655A (ko) | 검색 서비스 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |