WO2016169192A1 - 用户相似度确定方法和装置 - Google Patents

用户相似度确定方法和装置 Download PDF

Info

Publication number
WO2016169192A1
WO2016169192A1 PCT/CN2015/089544 CN2015089544W WO2016169192A1 WO 2016169192 A1 WO2016169192 A1 WO 2016169192A1 CN 2015089544 W CN2015089544 W CN 2015089544W WO 2016169192 A1 WO2016169192 A1 WO 2016169192A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
similarity
semantic
users
static
Prior art date
Application number
PCT/CN2015/089544
Other languages
English (en)
French (fr)
Inventor
祝恒书
吴海山
沈志勇
Original Assignee
百度在线网络技术(北京)有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 百度在线网络技术(北京)有限公司 filed Critical 百度在线网络技术(北京)有限公司
Publication of WO2016169192A1 publication Critical patent/WO2016169192A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Definitions

  • the present application relates to the field of communications technologies, and in particular, to the field of network communication technologies, and in particular, to a method and apparatus for determining similarity between users.
  • LBS location-based services
  • the present application provides a method and apparatus for determining similarities between users.
  • a method for determining similarity between users includes: acquiring one or more geographic locations in a user movement trajectory; acquiring semantic annotations on the geographic location; and analyzing the similarity between the users based on the geographical location-based semantic annotation.
  • an apparatus for determining similarity between users includes: a geographic location obtaining unit configured to acquire one or more geographic locations in the user movement trajectory; a semantic category obtaining unit configured to acquire a semantic category of the geographic location; and a similarity analysis unit configured The similarity between users is analyzed based on the semantic category of the geographic location.
  • the degree of similarity between users can be determined by analyzing some semantically-located geographic locations in the user's movement trajectory.
  • the user's living habits and behavior patterns that is, the life mode
  • the similar accuracy is high.
  • many new types of smart applications and services can be supported, such as directed recommendations, dating applications, personalized recommendations, and the like.
  • FIG. 1 illustrates an exemplary system architecture to which embodiments of the present application may be applied
  • FIG. 2 illustrates an exemplary flow chart of a method for determining similarity between users in accordance with one embodiment of the present application
  • FIG. 3 illustrates an exemplary flowchart of a method for analyzing similarities between users in accordance with one embodiment of the present application
  • FIG. 4 illustrates an exemplary flow diagram of a method for determining dynamic semantic similarity in accordance with one embodiment of the present application
  • FIG. 5 shows a schematic structural diagram of an apparatus for determining similarity between users according to an embodiment of the present application
  • FIG. 6 is a block diagram showing the structure of a computer system suitable for implementing the server of the embodiment of the present application.
  • FIG. 1 illustrates an exemplary system architecture 100 in which embodiments of the present application may be applied.
  • system architecture 100 can include terminal devices 101, 102, network 103, and servers 104, 105, 106, and 107.
  • the network 103 is used to provide a medium for communication links between the terminal devices 101, 102 and the servers 104, 105, 106, 107.
  • Network 103 may include various types of connections, such as wired, wireless communication links, fiber optic cables, and the like.
  • the user 110 can interact with the servers 104, 105, 106, 107 over the network 103 using the terminal devices 101, 102 to access various services, such as browsing web pages, downloading data, and the like.
  • Various client applications such as location applications, various LBS applications, browsers, security applications, and the like, can be installed on the terminal devices 101, 102.
  • the terminal devices 101, 102 can be various electronic devices including, but not limited to, personal computers, smart phones, smart televisions, tablets, personal digital assistants, e-book readers, and the like.
  • the servers 104, 105, 106, 107 may be servers that provide various services.
  • the server can provide services in response to a user's service request. It can be understood that one server can provide one or more services, and the same service can also be provided by multiple servers.
  • the servers involved may include, but are not limited to, a user location server, a user similarity server, a recommendation server, and the like.
  • the user location server can provide services related to the location of the user, such as managing historical location information of the user.
  • a user similarity server can be used to determine the similarity between users.
  • the recommendation server can be based on the user The similarity between the two suggests the corresponding content or service for the corresponding user group.
  • terminal devices, networks, and servers in Figure 1 is merely illustrative. Depending on the implementation needs, there can be any number of terminal devices, networks, and servers.
  • FIG. 2 an exemplary flow chart of a method for determining similarity between users in accordance with one embodiment of the present application is shown.
  • the method shown in FIG. 2 can be performed in the server in FIG. 1, such as a user similarity server.
  • step 210 one or more geographic locations in the user's movement trajectory are acquired.
  • these important locations may be obtained by receiving the geographic location entered by the user.
  • the user can actively feedback important places in their lives. For example, the user can fill in the registration information to provide the server with the location of some important places in the life such as the corresponding residence, work place, frequent dining place, and the like.
  • one or more of the above-described important locations of the user may be determined from a historical movement trajectory of the user by a machine learning method. In general, users will stay longer in this important location. Therefore, in one implementation, the location information of the mobile device carried by the user may be collected, and optionally, the WIFI signal of the location of the user may be collected, and then the density-based clustering method is used to determine the important location of the user.
  • a density-based clustering method is known, which can employ various algorithms, and the present application does not There is a limit, and thus a detailed description thereof is omitted here.
  • step 220 a semantic category of the one or more geographic locations is obtained.
  • Semantic categories can include, but are not limited to, work location, place of residence, social location, shopping location, and entertainment location. There are several ways to get the semantic categories of one or more of the above geographic locations.
  • the semantic categories of these important places may be obtained by receiving user annotations of the semantic categories of the geographic locations.
  • the user can actively feedback the semantic categories of their important places. For example, users fill in the registration information together with the semantic categories of important locations.
  • the system can ask the user what the representative represents when needed, thereby obtaining a semantic annotation of the location.
  • the semantic categories of the geographic location may be automatically annotated by machine learning.
  • the semantic category of the important location can be determined based on the user's access time to an important location. For example, user U usually departs from location 1 to location 2 at 8 am on weekdays, from location 2 to location 3 at 12 noon, from location 3 to location 2 at 1 pm, and departure at location 2 at 6 pm. 4, then return to location 1 from location 4 at 8 pm.
  • a classification model can be established to infer the semantic categories of the respective places.
  • the classification model may be trained by using Point of Interest (POI) information around the location to be determined to improve the accuracy of the classification.
  • POI Point of Interest
  • the classification model may be used to infer the semantic category of the location of the user U.
  • the inference result may be: the location 1 is a residence location, the location 2 is a work location, the location 3 is a dining location, and the location 4 is a fitness location or an entertainment location.
  • step 230 the similarity between the users is analyzed based on the semantic categories of the one or more geographic locations.
  • each user can be represented as a collection of multiple geographic locations representing important locations, each with a corresponding semantic category label. Therefore, based on this information, the similarity between users can be calculated in various ways or by constructing multiple model relationships.
  • FIG. 3 an exemplary flow chart of a method for analyzing similarities between users in accordance with one embodiment of the present application is shown.
  • the similarity between the two users can be comprehensively determined based on the static semantic similarity and the dynamic semantic similarity.
  • the static semantic similarity may include the similarity of the user's static attributes of the geographic location of these important locations.
  • a static attribute can include at least one of the following: a semantic category of a geographic location, a number of geographic locations, and a location attribute of a geographic location.
  • the location attribute of the geographic location may be, for example, a developer, a property, or the like to which the building of the geographic location belongs.
  • Static semantic similarity may include similarity measures calculated based on one or more static attributes.
  • the static semantic similarity may include a first static semantic similarity that may be determined by comparing the number of geographically matched distances for which the first user and the second user have the same semantic category. In other words, it is possible to compare important places where two users are close in the same semantic category, that is, consider the similarity between the semantic categories and quantities of two users at important locations.
  • the first static semantic similarity Sim s1 (u1, u2) between the first user u 1 and the second user u 2 can be calculated according to the following formula:
  • c represents a semantic category and C represents a collection of semantic categories. Representing the number of geographic locations owned by the first user u1 that belong to the semantic category c, Representing the number of geographic locations belonging to the semantic category c owned by the second user u2, a number of geographical locations indicating that the distance shared by the first user u1 and the second user u2 is matched and belongs to the semantic category c, A total number of geographic locations representing the semantic categories owned by the first user u1 and the second user u2 belonging to c, wherein the geographical locations of the matching distances are merged.
  • the distance matching means that the distance similarity is less than a predetermined threshold h.
  • Distance similarity can be taken Various metrics are calculated, such as Euclidean distance. Simply put, distance matching means that the two geographical locations are very close, for example, the distance between the two is less than a certain threshold.
  • both user u1 and user u2 live in Huilongguan (semantic category: place of residence), work in Xi Erqi (semantic category: work place), and enjoy shopping near Wudaokou on weekends (semantic category: shopping place).
  • user u1 also has a working place Guomao, a place of residence Xizhimen, user u2 and a place to live in the Olympic Village.
  • the static semantic similarity may include a second static semantic similarity, which may compare the location attributes of the first user and the second user on a geographic location having the same semantic category The degree of matching is determined. In other words, it is possible to compare how many two users have the same important location in the same semantic category, for example, in terms of developers, properties, and the like.
  • the second static semantic similarity can be calculated by referring to the first static semantic similarity given above.
  • the second static semantic similarity Sim s2 (u1, u2) can be calculated according to the following formula:
  • c represents a semantic category and C represents a collection of semantic categories.
  • Representing the number of geographic locations owned by the first user u1 that belong to the semantic category c Representing the number of geographic locations belonging to the semantic category c owned by the second user u2, a number of geographic locations indicating that the location attributes owned by the first user u1 and the second user u2 match and belong to the semantic category c, Indicates the total number of geographical locations of the semantic categories owned by the first user u1 and the second user u2 belonging to c, wherein the geographical locations where the location attributes match are merged.
  • the residential area where the first user u1 and the second user u2's place of residence belongs to the same real estate developer, then it can be considered The two users' residences match on the location properties.
  • the shopping malls of the first user u1 and the shopping location of the second user u2 (Wudaokou) belong to the same real estate developer and the same property, the shopping locations of the two users can be considered to match the location attributes.
  • the location attribute matching may not be limited to the geographical location having the same semantic category.
  • the static semantic similarity of the user may include any one or more of the first and second static semantic similarities, and when multiple items are included, integration may be performed to obtain the final static semantic similarity.
  • the first and second static semantic similarities can be integrated in a variety of ways, such as basic linear weighting functions, various sigmoidal functions, such as Sigmoid functions, logistic functions, and the like.
  • the weights for the first and second static semantic similarities in the integration can be manually set according to experience, or can be obtained by machine learning.
  • step 320 dynamic semantic similarity between users is determined.
  • the dynamic semantic similarity may include the similarity of the user on the dynamic transfer between geographical locations having different semantic categories.
  • FIG. 4 an exemplary flow diagram of a method for determining dynamic semantic similarity in accordance with one embodiment of the present application is shown.
  • transition probability matrices of the first user and the second user are respectively constructed, wherein the transition probability matrix represents the probability of the user transferring between geographical locations of different semantic categories.
  • the transition probability matrix can be expressed as
  • the user's transition probability matrix can be obtained in a variety of ways from the user's historical movement trajectory, or a dynamic important location transfer sequence.
  • the Markov model can be used to analyze the user's important location transfer sequence to obtain a transition probability matrix.
  • the Markov model is a statistical model that can be used to model the behavior of a user moving from an important location in one semantic category to an important location in another semantic category, and then these models can be used after the user Transfer behavior is predicted.
  • a statistical prediction method based on the Markov model is known in the art, and a detailed description thereof is omitted here.
  • each element of the transition probability matrix i.e. transfer of user dependent semantic class c j important sites of the probability of a semantic class c i belong to the important sites may be obtained by the maximum likelihood estimation method.
  • Maximum Likelihood also known as the most approximate estimate, also called maximum likelihood estimation, is a method used to estimate the parameters of a probability model.
  • the basic idea of this method is that when n sets of sample observations are randomly selected from the model population, the most reasonable parameter estimator should make the probability of extracting the n sets of sample observations from the model the largest, instead of the least squares estimation method.
  • the estimator of the parameters that allows the model to best fit the sample data is obtained.
  • a similarity measure between the transition probability matrices of the first user and the second user is calculated as the dynamic semantic similarity between the two users.
  • the similarity of the user on the dynamic transfer between geographical locations having different semantic categories can be determined by comparing the similarity of the transition probability matrices.
  • a variety of metrics can be employed to characterize the similarity between transition probability matrices.
  • the cosine distance of the transition probability matrix, or cosine similarity can be calculated.
  • the cosine distance is a measure of the magnitude of the difference between two individuals using the cosine of the angle between the two vectors in the vector space.
  • the dynamic semantic similarity Sim d (u1, u2) can be calculated as follows:
  • the Euclidean distance of the transition probability matrix can be calculated.
  • the Euclidean distance measures the absolute distance of two vectors in vector space.
  • the Pearson Pearson correlation coefficient method or the modified Pearson correlation coefficient method can also be used. These methods of calculating similarity or correlation are known in the art and will not be described again here.
  • step 330 the similarity between the users is determined according to the static semantic similarity and the dynamic semantic similarity.
  • static semantic similarity and dynamic semantic similarity can be integrated to obtain a measure that fully reflects the similarity of user habits and behaviors.
  • static semantic similarity and dynamic semantic similarity Similar to the integration of the first and second static semantic similarities, there are many ways to integrate static semantic similarity and dynamic semantic similarity, such as basic linear weighting function and various S-curve functions. , such as Sigmoid functions, logistic functions, and so on.
  • the weights for static semantic similarity and dynamic semantic similarity in integration can be manually set according to experience, or can be obtained by machine learning.
  • integration according to the Sigmoid function can be expressed as:
  • Sim(u1, u2) represents the similarity between user u1 and user u2
  • Sim s (u1, u2) represents the static semantic similarity between user u1 and user u2
  • Sim d (u1, u2) represents the user.
  • the dynamic semantic similarity between u1 and user u2, w1, w2 are the weighting factors of static semantic similarity and dynamic semantic similarity respectively.
  • the method may further include recommending information according to the similarity between the users, thereby implementing a personalized service.
  • the same content or service can be pushed for multiple users whose similarity meets predetermined conditions.
  • the predetermined condition may be, for example, that the similarity exceeds a certain threshold, which indicates that the users are very similar, that is, have similar life modes. Therefore, the same content or service can be pushed for these users (or similar living mode user groups) based on this similar lifestyle. This push based on similar life patterns can be tailored to specific user groups to achieve targeted services.
  • one or more second users whose similarities meet predetermined conditions may be recommended to the first user.
  • the predetermined condition may be, for example, that the similarity exceeds a certain threshold. This shows that users are very similar, that is, have similar life patterns. Therefore, it is possible to recommend a friend to the user based on such a similar life mode, for example, in a social dating application.
  • the content or service may be recommended to one or more second users whose similarity meets the predetermined condition based on the information of the first user.
  • the predetermined condition may be, for example, that the similarity exceeds a certain threshold.
  • the information of the first user may be, for example, the hobby of the user.
  • a second user whose similarity satisfies a predetermined condition is very similar to the first user, and thus their hobbies are generally similar. In this way, even if the specific information (for example, hobbies) of the second user is not known, the interest of the second user can be inferred by the information of the first user, thereby providing a recommendation service with high probability of success. This can be applied, for example, to news browsing applications, shopping website applications, and the like.
  • step 310 of determining static semantic similarity in FIG. 3 and step 320 of determining dynamic semantic similarity may be performed sequentially, in reverse order, or concurrently. Additionally or alternatively, certain steps may be omitted, combining multiple steps into one Steps are performed, and/or a step is broken down into multiple steps of execution.
  • FIG. 5 a schematic block diagram of an apparatus for determining similarity between users in accordance with an embodiment of the present application is shown.
  • the similarity device 500 may include a geographic location obtaining unit 510, a semantic class obtaining unit 520, and a similarity analyzing unit 530.
  • the geographic location obtaining unit 510 is configured to acquire one or more geographic locations in the user's movement trajectory.
  • the semantic category obtaining unit 520 configures a semantic category for acquiring a geographic location.
  • the similarity analysis unit 530 is configured to analyze the similarity between users based on the semantic categories of the geographic locations.
  • the similarity analysis unit 530 may include a static semantic similarity determination unit 531, a dynamic semantic similarity determination unit 532, and a similarity determination unit 533.
  • the static semantic similarity determining unit 531 can be configured to determine a static semantic similarity between users.
  • the static semantic similarity includes the similarity of the user on the static attribute of the geographical location, wherein the static attribute includes at least one of the following: a semantic category of the geographical location, a quantity of the geographic location, and a location attribute of the geographic location.
  • the static semantic similarity determining unit 531 can be configured to determine a static semantic similarity by at least one of: comparing a number of geographically matched distances in which the first user and the second user have the same semantic category; And comparing the degree of matching of the location attributes of the first user and the second user on the geographic location having the same semantic category.
  • the dynamic semantic similarity determining unit 532 can be configured to determine dynamic semantic similarity between users. Dynamic semantic similarity includes the similarity of users on dynamic transfer between geographic locations with different semantic categories.
  • the dynamic semantic similarity determining unit 532 can be configured to determine a dynamic semantic similarity by constructing a transition probability matrix of the first user and the second user, respectively, wherein the transition probability matrix represents the geographic location of the user in different semantic categories The probability of transition between locations; and the similarity measure between the transition probability matrices of the first user and the second user is calculated as dynamic semantic similarity.
  • the transition probability matrix can be constructed using a Markov model.
  • the similarity measure between the transition probability matrices can be calculated using cosine cosine similarity, Euclidean distance, or Pearson correlation coefficient method.
  • the similarity determining unit 533 may be configured to determine the degree of similarity between users based on the static semantic similarity and the dynamic semantic similarity.
  • the similarity determination unit 533 can be configured to perform weighted integration of static semantic similarity and dynamic semantic similarity using any of the following functions: a linear weighting function, a Sigmoid function, and a Logistic function.
  • the similarity device 500 may further include a recommendation unit 540, which may be configured to perform at least one of: pushing the same content or service for a plurality of users whose similarity meets a predetermined condition; And recommending, to the first user, the one or more second users whose similarity satisfies the predetermined condition; and recommending the content or service to the one or more second users whose similarity meets the predetermined condition based on the information of the first user.
  • a recommendation unit 540 may be configured to perform at least one of: pushing the same content or service for a plurality of users whose similarity meets a predetermined condition; And recommending, to the first user, the one or more second users whose similarity satisfies the predetermined condition; and recommending the content or service to the one or more second users whose similarity meets the predetermined condition based on the information of the first user.
  • apparatus 500 corresponds to the various steps in the methods described with reference to Figures 2-4. Thus, the operations and features described above for the method are equally applicable to the apparatus 500 and the units contained therein, and are not described herein again.
  • FIG. 6 a block diagram of a computer system 600 suitable for use in implementing a server of an embodiment of the present application is shown.
  • computer system 600 includes a central processing unit (CPU) 601 that can be loaded into a program in random access memory (RAM) 603 according to a program stored in read only memory (ROM) 602 or from storage portion 608. And perform various appropriate actions and processes.
  • RAM random access memory
  • ROM read only memory
  • RAM random access memory
  • various programs and data required for the operation of the system 600 are also stored.
  • the CPU 601, the ROM 602, and the RAM 603 are connected to each other through a bus 604.
  • An input/output (I/O) interface 605 is also coupled to bus 604.
  • the following components are connected to the I/O interface 605: an input portion 606 including a keyboard, a mouse, etc.; an output portion 607 including, for example, a cathode ray tube (CRT), a liquid crystal display (LCD), and the like, and a storage portion 608 including a hard disk or the like. And a communication portion 609 including a network interface card such as a LAN card, a modem, or the like. The communication section 609 performs communication processing via a network such as the Internet.
  • Driver 610 is also coupled to I/O interface 505 as needed.
  • a removable medium 611 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory or the like, is mounted on the drive 610 as needed so that a computer program read therefrom is installed into the storage portion 608 as needed.
  • an embodiment of the present disclosure includes a computer program A sequential product comprising a computer program tangibly embodied on a machine readable medium, the computer program comprising program code for performing the method of FIGS. 2-4.
  • the computer program can be downloaded and installed from the network via communication portion 609, and/or installed from removable media 611.
  • each block of the flowchart or block diagrams can represent a module, a program segment, or a portion of code that includes one or more logic for implementing the specified.
  • Functional executable instructions can also occur in a different order than that illustrated in the drawings. For example, two successively represented blocks may in fact be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending upon the functionality involved.
  • each block of the block diagrams and/or flowcharts, and combinations of blocks in the block diagrams and/or flowcharts can be implemented in a dedicated hardware-based system that performs the specified function or operation. Or it can be implemented by a combination of dedicated hardware and computer instructions.
  • the units or modules described in the embodiments of the present application may be implemented by software or by hardware.
  • the described unit or module may also be disposed in the processor, for example, as a processor including a geographic location acquisition unit, a semantic category acquisition unit, and a similarity analysis unit.
  • the name of these units or modules does not constitute a limitation on the unit or the module itself in some cases.
  • the geographic location obtaining unit may also be described as “for acquiring one or more geography in the user's movement track. Location unit”.
  • the present application further provides a computer readable storage medium, which may be a computer readable storage medium included in the apparatus described in the foregoing embodiment, or may exist separately, not A computer readable storage medium that is assembled into the device.
  • the computer readable storage medium stores one or more programs that are used by one or more processors to perform the formula input methods described in this application.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种用于确定用户之间的相似度的方法和装置。在一些实施例中,确定用户之间的相似度的方法包括:获取用户移动轨迹中的一个或多个地理位置;获取地理位置的语义类别;以及基于地理位置的语义类别分析用户之间的相似度。按照本申请的实施例,通过对用户移动轨迹中的一些具有语义的地理位置进行分析,可以确定用户之间的相似度,从而可以寻找在生活模式上具有相似性的用户,以便为具有相似生活模型的人群提供针对性的服务。

Description

用户相似度确定方法和装置
相关申请的交叉引用
本申请要求申请日为2015年4月24日,申请号为201510202287.0,发明名称为“用户相似度确定方法和装置”的中国专利申请的优先权,其全部内容作为整体并入本申请中。
技术领域
本申请涉及通信技术领域,具体涉及网络通信技术领域,尤其涉及用于确定用户之间的相似度的方法和装置。
背景技术
随着移动通信技术以及智能应用的不断发展,使得人们能够相对容易地获取到移动终端(或者移动用户)的移动轨迹。例如,各种基于位置的服务(location-based service,LBS)能够获取并记录移动终端的位置信息。这些移动轨迹可以反映出移动用户的生活习惯和行为模式。基于用户的生活习惯和行为模式,可以寻找出相似的用户,从而可以为这一类用户群体提供针对性服务。
目前已知针对相似用户发现的方法主要存在如下几类:利用用户的基本资料进行匹配,例如性别、年龄、兴趣等;利用用户的当前位置信息进行匹配,例如各种社交交友应用;利用用户历史上的移动轨迹进行匹配,其主要在于轨迹相似度的计算;利用用户对于某种应用产品或者设备的使用记录进行匹配;诸如此类。
上面提到的几类方法利用不同的参数来匹配用户,这些参数仅反映了用户在某一方面的信息,匹配度的应用存在一定的局限性。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种能够准确反映 用户在生活模式上的相似性的方案,以利于后续对相似用户群体的针对性服务。为了实现上述一个或多个目的,本申请提供了一种用于确定用户之间的相似度的方法和装置。
第一方面,提供了一种用于确定用户之间的相似度的方法。该方法包括:获取用户移动轨迹中的一个或多个地理位置;获取对地理位置的语义标注;以及基于地理位置的语义标注分析用户之间的相似度。
第二方面,提供了一种用于确定用户之间的相似度的装置。该装置包括:地理位置获取单元,配置用于获取用户移动轨迹中的一个或多个地理位置;语义类别获取单元,配置用于获取所述地理位置的语义类别;以及相似度分析单元,配置用于基于所述地理位置的语义类别分析用户之间的相似度。
按照本申请的实施例,通过对用户移动轨迹中的一些具有语义的地理位置进行分析,可以确定用户之间的相似度。在确定相似用户时,基于具有语义的地理位置,能够很好的刻画用户生活习惯和行为模式,也即生活模式,相似的准确度高。基于这种相似用户的确定,可以支持很多新型的智能应用和服务,诸如定向推荐、交友应用、个性化推荐等。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出了可以应用本申请实施例的示例性系统架构;
图2示出了根据本申请一个实施例的用于确定用户之间的相似度的方法的示例性流程图;
图3示出了根据本申请一个实施例的用于分析用户之间的相似度的方法的示例性流程图;
图4示出了根据本申请一个实施例的用于确定动态语义相似度的方法的示例性流程图;
图5示出了按照本申请实施例的用于确定用户之间的相似度的装置的示意性结构图;以及
图6示出了适于用来实现本申请实施例的服务器的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
请参考图1,其示出了可以应用本申请实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、网络103和服务器104、105、106和107。网络103用以在终端设备101、102和服务器104、105、106、107之间提供通信链路的介质。网络103可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户110可以使用终端设备101、102通过网络103与服务器104、105、106、107交互,以访问各种服务,例如浏览网页、下载数据等。终端设备101、102上可以安装有各种客户端应用,例如定位应用、各种LBS应用、浏览器、安全应用等。
终端设备101、102可以是各种电子设备,包括但不限于个人电脑、智能手机、智能电视、平板电脑、个人数字助理、电子书阅读器等等。
服务器104、105、106、107可以是提供各种服务的服务器。服务器可以响应于用户的服务请求而提供服务。可以理解,一个服务器可以提供一种或多种服务,同一种服务也可以由多个服务器来提供。在本申请的实施例中,所涉及的服务器可以包括但不限于,用户位置服务器、用户相似度服务器、推荐服务器等。用户位置服务器可以提供与用户位置有关的服务,例如管理用户的历史位置信息。用户相似度服务器可以用于确定用户之间的相似度。推荐服务器可以基于用户之 间的相似度为对应的用户群体推荐相应的内容或服务。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
如背景技术中所提到的,已知的针对相似用户发现的几类方法利用不同的参数来匹配用户,这些参数仅反映了用户在某一方面的信息,匹配度的应用存在一定的局限性。申请人注意到,在用户的日常生活中,其移动轨迹上通常具有一些重要的地理位置或称“重要地点”,这些重要地点通常会具有特定的潜在语义,例如“家”、“工作地点”、“常去的社交场所”、“常去的娱乐场所”、“常去的购物中心”等等。这些具有语义的重要地点很好地刻画了用户的生活习惯和行为模式。因此,在本申请的实施例中,通过分析来自于用户的重要地点的语义,来寻找在生活模式上具有相似性的用户。
参考图2,其示出了根据本申请一个实施例的用于确定用户之间的相似度的方法的示例性流程图。图2所示的方法可以在图1中的服务器(例如用户相似度服务器)中执行。
如图2所示,在步骤210中,获取用户移动轨迹中的一个或多个地理位置。
如前文所提到的,在用户的移动轨迹中一些具有语义的重要地点能够很好地刻画用户的生活习惯和行为模式,因此可以获取这些重要地点的地理位置。可以采取多种方式来获取上述一个或多个地理位置。
在一些实施例中,可以通过接收用户输入的地理位置而获取这些重要地点。在这些实施例中,用户可以主动反馈其生活中的重要地点。例如,用户可以通过填写注册信息向服务器提供其相应的住宅、工作地点、常去就餐地点等一些生活中的重要地点的地理位置。
在另一些实施例中,可以通过机器学习的方法从用户的历史移动轨迹中确定用户的上述一个或多个重要地点。一般而言,用户在这种重要地点的停留时间会比较长。因此,在一种实现中,可以收集用户所携带的移动设备的定位信息,可选的还可以收集用户所在地点的WIFI信号,然后基于密度的聚类方法来确定该用户的重要地点。基于密度的聚类方法是已知的,其可以采用各种算法,本申请在此方面没 有限制,因而在此省略其详细描述。
接着,在步骤220中,获取该一个或多个地理位置的语义类别。
当获取了作为用户的重要地点的一个或多个地理位置之后,可以对这些地理位置的语义类别进行标注。语义类别可以包括但不限于:工作地点、居住地点、社交地点、购物地点和娱乐地点。可以采取多种方式来获取上述一个或多个地理位置的语义类别。
在一些实施例中,可以通过接收用户对地理位置的语义类别的标注来获取这些重要地点的语义类别。在这些实施例中,用户可以主动反馈其重要地点的语义类别。例如,用户在填写注册信息时同时对重要地点的语义类别进行标注。又例如,系统可以在需要时询问用户相应的地点所代表的意思,从而获得该地点的语义标注。
在另一些实施例中,可以通过机器学习的方法对地理位置的语义类别进行自动标注。例如,可以根据用户对某个重要地点的访问时间来确定该重要地点的语义类别。举例而言,用户U经常工作日早上8点从地点1出发去地点2,中午12点由地点2去地点3,下午1点从地点3回到地点2,下午6点离开地点2去往地点4,然后晚上8点从地点4回到地点1。通过对用户U的历史移动轨迹数据进行学习,可以建立分类模型,从而推断出各个地点的语义类别。可选的或附加的,可以利用待确定地点周边的兴趣点(Point of Interest,POI)信息对分类模型进行训练,以提高分类的准确性。例如,利用分类模型可以对用户U的上述地点的语义类别进行推断,推断结果可以是:地点1为居住地点、地点2为工作地点、地点3为就餐地点,地点4为健身地点或娱乐地点。
基于机器学习建立分类模型以及对分类模型的训练方法是已知的,其可以采用各种算法,例如,决策树、K-means、支持矢量机(Support Vector Machine,SVM)、贝叶斯分类器、分类和回归树,等等。本申请在此方面没有限制,在此省略其详细描述。
继而,在步骤230中,基于该一个或多个地理位置的语义类别分析用户之间的相似度。
当获取了不同用户的重要地点的地理位置及其相应的语义类别后, 可以进行用户的相似度计算。从所收集的信息而已,每个用户可以表示成代表重要地点的多个地理位置的集合,每个地理位置又有相应的语义类标标签。因此,基于这些信息,可以采取多种方式或者构建多种模型关系来计算用户之间的相似度。
参考图3,其示出了根据本申请一个实施例的用于分析用户之间的相似度的方法的示例性流程图。在此实施例中,两个用户之间的相似度可以基于静态语义相似度和动态语义相似度来综合确定。
如图3所示,在步骤310中,确定用户之间的静态语义相似度。静态语义相似度可以包括用户在这些重要地点的地理位置的静态属性上的相似度。静态属性可以包括以下至少一项:地理位置的语义类别,地理位置的数量和地理位置的地点属性。地理位置的地点属性例如可以是该地理位置的建筑物所属的开发商、物业等。
基于不同的静态属性,可以采取不同的方式来计算静态语义相似度。静态语义相似度可以包括基于一项或多项静态属性计算的相似性度量。
在一些实施例中,静态语义相似度可以包括第一静态语义相似度,其可以通过比较第一用户和第二用户具有相同语义类别的、距离匹配的地理位置的数量来确定。换言之,可以比较两个用户在同一语义类别上有多少距离接近的重要地点,也即考虑两个用户在重要地点的语义类别和数量上的相似性。
在一种实现中,可以按照下式来计算第一用户u1与第二用户u2之间第一静态语义相似度Sims1(u1,u2):
Figure PCTCN2015089544-appb-000001
其中,c表示某一个语义类别,C表示语义类别的集合,
Figure PCTCN2015089544-appb-000002
表示第一用户u1拥有的属于语义类别c的地理位置的个数,
Figure PCTCN2015089544-appb-000003
表示第二用户u2拥有的属于语义类别c的地理位置的个数,
Figure PCTCN2015089544-appb-000004
表示第一用户u1和第二用户u2共同拥有的距离匹配且属于语义类别c的地理位置的个数,
Figure PCTCN2015089544-appb-000005
表示第一用户u1和第二用户u2拥有的语义类别属于c的地理位置的总数,其中距离匹配的地理位置合并。
距离匹配是指距离相似度小于预定阈值h。距离相似度可以采取 各种度量来计算,例如欧式距离。简单地说,距离匹配表示两个地理位置非常接近,例如二者之间的距离小于一定阈值。
举例而言,用户u1和用户u2都居住在回龙观(语义类别:居住地点),在西二旗上班(语义类别:工作地点),周末喜欢到五道口附近购物(语义类别:购物地点)。此外,用户u1还有一个工作地点国贸,一个居住地点西直门,用户u2还有一个居住地点奥运村。在此示例中,从上述信息可以看出,总共涉及3个语义类别:居住地点、工作地点和购物地点;用户u1和用户u2各有2个居住地点,其中1个居住地点(回龙观)距离匹配;用户u1有2个工作地点,用户u2有1个工作地点,其中1个工作地点(西二旗)距离匹配;用户u1和用户u2各有1个购物地点,并且这个购物地点(五道口)距离匹配。针对此示例,按照上文给出的公式(1)计算第一静态语义相似度如下:
Figure PCTCN2015089544-appb-000006
备选的或附加的,在另一些实施例中,静态语义相似度可以包括第二静态语义相似度,其可以通过比较第一用户和第二用户在具有相同语义类别的地理位置上的地点属性匹配程度来确定。换言之,可以比较两个用户在同一语义类别上有多少例如在开发商、物业等方面相同的重要地点。可以参照上面给出的第一静态语义相似度来计算第二静态语义相似度,例如可以按照下式计算第二静态语义相似度Sims2(u1,u2):
Figure PCTCN2015089544-appb-000007
其中,c表示某一个语义类别,C表示语义类别的集合,
Figure PCTCN2015089544-appb-000008
表示第一用户u1拥有的属于语义类别c的地理位置的个数,
Figure PCTCN2015089544-appb-000009
表示第二用户u2拥有的属于语义类别c的地理位置的个数,
Figure PCTCN2015089544-appb-000010
表示第一用户u1和第二用户u2共同拥有的地点属性匹配且属于语义类别c的地理位置的个数,
Figure PCTCN2015089544-appb-000011
表示第一用户u1和第二用户u2拥有的语义类别属于c的地理位置的总数,其中地点属性匹配的地理位置合并。
仍以上面的示例为例,假设第一用户u1和第二用户u2的居住地点(回龙观)所在的住宅小区隶属于同一房地产开发商,则可以认为 这两个用户的居住地点在地点属性上匹配。进一步假设第一用户u1和第二用户u2的购物地点(五道口)的商城隶属于同一房地产开发商和同一物业,则可以认为这两个用户的购物地点在地点属性上匹配。
在此示例中,从上述信息可以看出,总共涉及3个语义类别:居住地点、工作地点和购物地点;用户u1和用户u2各有2个居住地点,其中1个居住地点(回龙观)地点属性匹配;用户u1有2个工作地点,用户u2有1个工作地点,两个用户之间没有地点属性匹配的工作地点;用户u1和用户u2各有1个购物地点,并且这个购物地点(五道口)地点属性匹配。针对此示例,按照上文给出的公式(2)计算第二静态语义相似度如下:
Figure PCTCN2015089544-appb-000012
可以理解,还可以构建其他静态语义相似度,例如在地点属性匹配上可以不限于地理位置具有相同语义类别。
本领域技术人员可以理解,用户的静态语义相似度可以包括第一、第二静态语义相似度中的任意一项或多项,当包含多项时,可以进行整合以获得最终的静态语义相似度。可以采用多种方式对第一和第二静态语义相似度进行整合,例如基本的线性加权函数,各种S形曲线函数,诸如Sigmoid函数,logistic函数,等等。整合中针对第一和第二静态语义相似度的权重可以根据经验人工设置,也可以采用机器学习的方法获得。
在步骤320中,确定用户之间的动态语义相似度。动态语义相似度可以包括用户在具有不同语义类别的地理位置之间动态转移上的相似度。
用户在日常生活中,很大一部分行为活动是在不同地理位置之间移动,这对于挖掘用户的生活模式非常有价值。例如,对于常规的上班族而言,其工作日的移动轨迹通常是从家到公司,中午就近用餐,晚上离开公司,或者直接回家,或者去往健身场所或娱乐场所。因此,这些不同地理位置之间的转移能够很好的反映用户的生活模式。采用动态语义相似度来表示两个用户在重要地点语义类别之间动态转移上 的相似性。
参考图4,其示出了根据本申请一个实施例的用于确定动态语义相似度的方法的示例性流程图。
如图4所示,在步骤410中,分别构建第一用户和第二用户的转移概率矩阵,其中转移概率矩阵表示用户在不同语义类别的地理位置之间转移的概率。
在一些实施例中,转移概率矩阵可以表示为
Figure PCTCN2015089544-appb-000013
Figure PCTCN2015089544-appb-000014
其中,ci,cj∈C,ci,cj分别表示某一个语义类别,C表示语义类别的集合,P(ci|cj,u1)表示对于用户u1来说,从属于语义类别cj的重要地点转移到属于语义类别ci的重要地点的概率,因此
Figure PCTCN2015089544-appb-000015
是一个|C|×|C|维的转移概率矩阵。
可以采取多种方式从用户的历史移动轨迹,或称为动态的重要地点转移序列中获得该用户的转移概率矩阵。
在一种实现中,可以利用马尔科夫模型对用户的重要地点转移序列进行分析来获得转移概率矩阵。马尔科夫模型是一种统计模型,其可以用于对一个用户从某一语义类别的重要地点转移到另一语义类别的重要地点的行为进行建模,然后这些模型可以用于对用户之后的转移行为进行预测。基于马尔科夫模型的统计预测方法在本领域是已知的,此处省略其详细描述。
在另一种实现中,转移概率矩阵中的各个元素,也即用户从属于语义类别cj的重要地点转移到属于语义类别ci的重要地点的概率可以通过最大似然估计方法来获得。
最大似然估计(Maximum Likelihood,ML)也称为最大概似估计,也叫极大似然估计,是用来估计一个概率模型的参数的一种方法。此方法的基本思想是:当从模型总体随机抽取n组样本观测值后,最合理的参数估计量应该使得从模型中抽取该n组样本观测值的概率最大,而不是像最小二乘估计法旨在得到使得模型能最好地拟合样本数据的参数估计量。关于最大似然估计的方法在本领域是已知的,此处省略其详细描述。
继续图4,在步骤420中,计算第一用户和第二用户的转移概率矩阵之间的相似性度量作为两用户之间的动态语义相似度。在获得了各用户的转移概率矩阵之后,可以通过比较转移概率矩阵的相似性来确定用户在具有不同语义类别的地理位置之间动态转移上的相似度。可以采取多种度量方式来表征转移概率矩阵之间的相似性。
在一种实现中,可以计算转移概率矩阵的余弦距离,或称余弦相似度。余弦距离是用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异的大小的度量。例如可以按下式计算动态语义相似度Simd(u1,u2):
Figure PCTCN2015089544-appb-000016
在另一种实现中,可以计算转移概率矩阵的欧式距离。欧式距离衡量两个向量在向量空间中的绝对距离。
在其他实现中,还可以采用皮尔森Pearson相关系数法或修正的Pearson相关系数法。这些计算相似度或相关性的方法在本领域中是已知的,此处不再赘述。
在确定了用户之间的动态语义相似度之后,返回图3,在步骤330中,根据静态语义相似度和动态语义相似度确定用户之间的相似度。
在此步骤中,可以对静态语义相似度和动态语义相似度进行整合,以获得全面反映用户生活习惯和行为方面的相似性的度量。
与前面第一和第二静态语义相似度的整合类似的,此处也可以采取多种方式对静态语义相似度和动态语义相似度进行整合,例如基本的线性加权函数,各种S形曲线函数,诸如Sigmoid函数,logistic函数,等等。整合中针对静态语义相似度和动态语义相似度的权重可以根据经验人工设置,也可以采用机器学习的方法获得。
在一种实现中,按照Sigmoid函数进行整合可以表示为下式:
Sim(u1,u2)=F(Sims(u1,u2),Simd(u1,u2))    (5)
Figure PCTCN2015089544-appb-000017
其中,Sim(u1,u2)表示用户u1和用户u2之间的相似度,Sims(u1,u2)表示用户u1和用户u2之间的静态语义相似度, Simd(u1,u2)表示用户u1和用户u2之间的动态语义相似度,w1,w2分别为静态语义相似度和动态语义相似度的权重因子。
在本申请的一些实施例中,进一步的,该方法还可以包括根据用户之间的相似度来推荐信息,从而实现个性化服务。
在一些实现中,可以针对相似度满足预定条件的多个用户,推送相同的内容或服务。预定条件例如可以是相似度超过一定阈值,这表明用户之间非常相似,也即具有相似的生活模式。因此,可以基于这种相似的生活模式,为这些用户(或称为相似生活模式用户群)推送相同的内容或服务。这种基于相似生活模式的推送可以针对特定用户群制定对应的策略,从而实现定向服务。
在另一些实现中,可以向第一用户推荐与其相似度满足预定条件的一个或多个第二用户。同样的,预定条件例如可以是相似度超过一定阈值。这表明用户之间非常相似,也即具有相似的生活模式。因此,可以基于这种相似的生活模式,例如在社交交友应用中向用户推荐好友。
在又一些实现中,可以基于第一用户的信息,向与其相似度满足预定条件的一个或多个第二用户推荐内容或服务。同样的,预定条件例如可以是相似度超过一定阈值。第一用户的信息例如可以是该用户的兴趣爱好。一般而言,相似度满足预定条件的第二用户与第一用户非常相似,因此他们的兴趣爱好通常也会相似。这样,即使不知道第二用户的具体信息(例如,兴趣爱好),也可以通过第一用户的信息来推断第二用户的兴趣爱好,从而给出成功概率高的推荐服务。这例如可以应用于新闻浏览应用、购物网站应用、等等。
上面通过方法流程图描述了本申请实施例的确定用户之间的相似度的方法。应当注意,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。例如,图3中确定静态语义相似度的步骤310和确定动态语义相似度的步骤320可以顺序、逆序或并发执行。附加地或备选地,可以省略某些步骤,将多个步骤合并为一 个步骤执行,和/或将一个步骤分解为多个步骤执行。
进一步参考图5,其示出了按照本申请实施例的用于确定用户之间的相似度的装置的示意性结构图。
如图5所示,相似度装置500可以包括地理位置获取单元510,语义类别获取单元520和相似度分析单元530。
地理位置获取单元510配置用于获取用户移动轨迹中的一个或多个地理位置。语义类别获取单元520配置用于获取地理位置的语义类别。相似度分析单元530配置用于基于地理位置的语义类别分析用户之间的相似度。
在一些实施例中,相似度分析单元530可以包括静态语义相似度确定单元531,动态语义相似度确定单元532和相似度确定单元533。
静态语义相似度确定单元531可以配置用于确定用户之间的静态语义相似度。静态语义相似度包括用户在地理位置的静态属性上的相似度,其中静态属性包括以下至少一项:地理位置的语义类别,地理位置的数量和地理位置的地点属性。
在一些实现中,静态语义相似度确定单元531可以配置用于按以下至少一项来确定静态语义相似度:比较第一用户和第二用户具有相同语义类别的、距离匹配的地理位置的数量;以及比较第一用户和第二用户在具有相同语义类别的地理位置上的地点属性匹配程度。
动态语义相似度确定单元532可以配置用于确定用户之间的动态语义相似度。动态语义相似度包括用户在具有不同语义类别的地理位置之间动态转移上的相似度。
在一些实现中,动态语义相似度确定单元532可以配置用于按如下确定动态语义相似度:分别构建第一用户和第二用户的转移概率矩阵,其中转移概率矩阵表示用户在不同语义类别的地理位置之间转移的概率;以及计算第一用户和第二用户的转移概率矩阵之间的相似性度量作为动态语义相似度。在一些实现中,转移概率矩阵可以采用马尔科夫模型来构建。可选的或附加的,转移概率矩阵之间的相似性度量可以采用余弦cosine相似度、欧式距离或Pearson相关系数法来计算。
相似度确定单元533可以配置用于根据静态语义相似度和动态语义相似度确定用户之间的相似度。在一些实施例中,相似度确定单元533可以配置用于采用以下任一函数对静态语义相似度和动态语义相似度进行加权整合:线性加权函数、Sigmoid函数和Logistic函数。
可选的或附加的,相似度装置500还可以包括推荐单元540,该推荐单元540可以配置用于执行以下至少一项:针对相似度满足预定条件的多个用户,推送相同的内容或服务;向第一用户推荐与其相似度满足预定条件的一个或多个第二用户;以及基于第一用户的信息,向与其相似度满足预定条件的一个或多个第二用户推荐内容或服务。
应当理解,装置500中记载的诸单元或模块与参考图2-4描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征同样适用于装置500及其中包含的单元,在此不再赘述。
下面参考图6,其示出了适于用来实现本申请实施例的服务器的计算机系统600的结构示意图。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口505。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施例,上文参考图2-4描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程 序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行图2-4的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,可以描述为:一种处理器包括地理位置获取单元,语义类别获取单元和相似度分析单元。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定,例如,地理位置获取单元还可以被描述为“用于获取用户移动轨迹中的一个或多个地理位置的单元”。
作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本申请的公式输入方法。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述 发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (22)

  1. 一种用于确定用户之间的相似度的方法,其特征在于,所述方法包括:
    获取用户移动轨迹中的一个或多个地理位置;
    获取所述地理位置的语义类别;以及
    基于所述地理位置的语义类别分析用户之间的相似度。
  2. 根据权利要求1所述的方法,其中,分析用户之间的相似度包括:
    确定用户之间的静态语义相似度,所述静态语义相似度包括用户在所述地理位置的静态属性上的相似度,其中所述静态属性包括以下至少一项:地理位置的语义类别,地理位置的数量和地理位置的地点属性;
    确定用户之间的动态语义相似度,所述动态语义相似度包括用户在具有不同语义类别的地理位置之间动态转移上的相似度;以及
    根据所述静态语义相似度和所述动态语义相似度确定用户之间的相似度。
  3. 根据权利要求2所述的方法,其中,确定用户之间的静态语义相似度包括以下至少一项:
    比较第一用户和第二用户具有相同语义类别的、距离匹配的地理位置的数量;以及
    比较第一用户和第二用户在具有相同语义类别的地理位置上的地点属性匹配程度。
  4. 根据权利要求3所述的方法,其中,所述比较第一用户和第二用户具有相同语义类别的、距离匹配的地理位置的数量包括按下式计算第一用户与第二用户之间第一静态语义相似度Sims1(u1,u2):
    Figure PCTCN2015089544-appb-100001
    其中,c表示某一个语义类别,C表示语义类别的集合,
    Figure PCTCN2015089544-appb-100002
    表示第一用户u1拥有的属于语义类别c的地理位置的个数,
    Figure PCTCN2015089544-appb-100003
    表示第二用户u2拥有的属于语义类别c的地理位置的个数,
    Figure PCTCN2015089544-appb-100004
    表示第一用户u1和第二用户u2共同拥有的距离匹配且属于语义类别c的地理位置的个数,
    Figure PCTCN2015089544-appb-100005
    表示第一用户u1和第二用户u2拥有的语义类别属于c的地理位置的总数,其中距离匹配的地理位置合并。
  5. 根据权利要求2-4任意一项所述的方法,其中,确定用户之间的动态语义相似度包括:
    分别构建第一用户和第二用户的转移概率矩阵,其中所述转移概率矩阵表示用户在不同语义类别的地理位置之间转移的概率;以及
    计算第一用户和第二用户的转移概率矩阵之间的相似性度量作为所述动态语义相似度。
  6. 根据权利要求5所述的方法,其中,采用马尔科夫模型来构建所述转移概率矩阵,以及采用余弦cosine相似度、欧式距离或皮尔森Pearson相关系数法来计算转移概率矩阵之间的相似性度量。
  7. 根据权利要求2-6任意一项所述的方法,其中,根据所述静态语义相似度和所述动态语义相似度确定用户之间的相似度包括采用以下任一函数对所述静态语义相似度和所述动态语义相似度进行加权整合:线性加权函数、Sigmoid函数和Logistic函数。
  8. 根据权利要求1-7任意一项所述的方法,其中,所述语义类别包括以下至少一项:工作地点、居住地点、社交地点、购物地点和娱乐地点。
  9. 根据权利要求1-8任意一项所述的方法,其中,所述获取用户 移动轨迹中的一个或多个地理位置包括以下至少一项:
    接收用户输入的地理位置;
    通过机器学习方法从用户的历史移动轨迹中确定用户的所述地理位置。
  10. 根据权利要求1-9任意一项所述的方法,其中,所述获取所述地理位置的语义类别包括以下至少一项:
    接收用户对地理位置的语义类别的标注;
    通过机器学习方法对所述地理位置的语义类别进行自动标注。
  11. 根据权利要求1-10任意一项所述的方法,其中,所述方法还包括以下至少一项:
    针对相似度满足预定条件的多个用户,推送相同的内容或服务;
    向第一用户推荐与其相似度满足预定条件的一个或多个第二用户;以及
    基于第一用户的信息,向与其相似度满足预定条件的一个或多个第二用户推荐内容或服务。
  12. 一种用于确定用户之间的相似度的装置,其特征在于,所述装置包括:
    地理位置获取单元,配置用于获取用户移动轨迹中的一个或多个地理位置;
    语义类别获取单元,配置用于获取所述地理位置的语义类别;以及
    相似度分析单元,配置用于基于所述地理位置的语义类别分析用户之间的相似度。
  13. 根据权利要求12所述的装置,其中,所述相似度分析单元包括:
    静态语义相似度确定单元,配置用于确定用户之间的静态语义相 似度,所述静态语义相似度包括用户在所述地理位置的静态属性上的相似度,其中所述静态属性包括以下至少一项:地理位置的语义类别,地理位置的数量和地理位置的地点属性;
    动态语义相似度确定单元,配置用于确定用户之间的动态语义相似度,所述动态语义相似度包括用户在具有不同语义类别的地理位置之间动态转移上的相似度;以及
    相似度确定单元,配置用于根据所述静态语义相似度和所述动态语义相似度确定用户之间的相似度。
  14. 根据权利要求13所述的装置,其中,所述静态语义相似度确定单元配置用于按以下至少一项来确定静态语义相似度:
    比较第一用户和第二用户具有相同语义类别的、距离匹配的地理位置的数量;以及
    比较第一用户和第二用户在具有相同语义类别的地理位置上的地点属性匹配程度。
  15. 根据权利要求14所述的装置,其中,所述静态语义相似度确定单元配置用于按下式计算第一用户与第二用户之间第一静态语义相似度Sims1(u1,u2):
    Figure PCTCN2015089544-appb-100006
    其中,c表示某一个语义类别,C表示语义类别的集合,
    Figure PCTCN2015089544-appb-100007
    表示第一用户u1拥有的属于语义类别c的地理位置的个数,
    Figure PCTCN2015089544-appb-100008
    表示第二用户u2拥有的属于语义类别c的地理位置的个数,
    Figure PCTCN2015089544-appb-100009
    表示第一用户u1和第二用户u2共同拥有的距离匹配且属于语义类别c的地理位置的个数,
    Figure PCTCN2015089544-appb-100010
    表示第一用户u1和第二用户u2拥有的语义类别属于c的地理位置的总数,其中距离匹配的地理位置合并。
  16. 根据权利要求13-15任意一项所述的装置,其中,所述动态语义相似度确定单元配置用于按如下确定动态语义相似度:
    分别构建第一用户和第二用户的转移概率矩阵,其中所述转移概率矩阵表示用户在不同语义类别的地理位置之间转移的概率;以及
    计算第一用户和第二用户的转移概率矩阵之间的相似性度量作为所述动态语义相似度。
  17. 根据权利要求16所述的装置,其中,所述转移概率矩阵采用马尔科夫模型来构建,以及所述转移概率矩阵之间的相似性度量采用余弦cosine相似度、欧式距离或皮尔森Pearson相关系数法来计算。
  18. 根据权利要求13-17任意一项所述的装置,其中,所述相似度确定单元配置用于采用以下任一函数对所述静态语义相似度和所述动态语义相似度进行加权整合:线性加权函数、Sigmoid函数和Logistic函数。
  19. 根据权利要求12-18任意一项所述的装置,其中,所述语义类别包括以下至少一项:工作地点、居住地点、社交地点、购物地点和娱乐地点。
  20. 根据权利要求12-19任意一项所述的装置,其中,所述装置还包括推荐单元,配置用于执行以下至少一项:
    针对相似度满足预定条件的多个用户,推送相同的内容或服务;
    向第一用户推荐与其相似度满足预定条件的一个或多个第二用户;以及
    基于第一用户的信息,向与其相似度满足预定条件的一个或多个第二用户推荐内容或服务。
  21. 一种设备,其特征在于,包括:
    一个或者多个处理器;
    存储器;
    一个或者多个程序,所述一个或者多个程序存储在所述存储器中, 当被所述一个或多个处理器执行时:
    获取用户移动轨迹中的一个或多个地理位置;
    获取所述地理位置的语义类别;以及
    基于所述地理位置的语义类别分析用户之间的相似度。
  22. 一种非易失性计算机存储介质,所述计算机存储介质存储有一个或多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:
    获取用户移动轨迹中的一个或多个地理位置;
    获取所述地理位置的语义类别;以及
    基于所述地理位置的语义类别分析用户之间的相似度。
PCT/CN2015/089544 2015-04-24 2015-09-14 用户相似度确定方法和装置 WO2016169192A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510202287.0A CN104765873B (zh) 2015-04-24 2015-04-24 用户相似度确定方法和装置
CN201510202287.0 2015-04-24

Publications (1)

Publication Number Publication Date
WO2016169192A1 true WO2016169192A1 (zh) 2016-10-27

Family

ID=53647700

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/089544 WO2016169192A1 (zh) 2015-04-24 2015-09-14 用户相似度确定方法和装置

Country Status (2)

Country Link
CN (1) CN104765873B (zh)
WO (1) WO2016169192A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110659318A (zh) * 2019-08-15 2020-01-07 中国平安财产保险股份有限公司 基于大数据的策略推送方法、系统及计算机设备
CN110688469A (zh) * 2019-09-27 2020-01-14 厦门市美亚柏科信息股份有限公司 一种自动分析相似行为特征的方法和装置
CN111104468A (zh) * 2019-09-25 2020-05-05 西安交通大学 一种基于语义轨迹推断用户活动的方法
CN112182410A (zh) * 2020-11-05 2021-01-05 西南交通大学 基于时空轨迹知识图谱的用户出行模式挖掘方法
CN112560910A (zh) * 2020-12-02 2021-03-26 中国联合网络通信集团有限公司 用户分类方法和装置
CN112905792A (zh) * 2021-02-20 2021-06-04 深圳前海微众银行股份有限公司 基于非文本场景的文本聚类方法、装置、设备及存储介质
CN113435859A (zh) * 2021-07-12 2021-09-24 建信金融科技有限责任公司 信访件处理方法、装置、电子设备和计算机可读介质
CN114120018A (zh) * 2020-08-25 2022-03-01 四川大学 一种基于人群聚类轨迹熵的空间活力量化方法

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104765873B (zh) * 2015-04-24 2019-03-26 百度在线网络技术(北京)有限公司 用户相似度确定方法和装置
CN105005615B (zh) * 2015-07-17 2017-03-08 广东小天才科技有限公司 一种基于移动轨迹进行终端推荐的方法、装置和系统
CN104978437B (zh) * 2015-07-22 2018-09-25 浙江大学 一种基于地理位置的推荐方法和推荐系统
CN106445961B (zh) * 2015-08-10 2021-02-23 北京奇虎科技有限公司 新闻推送方法及装置
CN106487825B (zh) * 2015-08-25 2019-12-24 阿里巴巴集团控股有限公司 信息关联方法及装置
CN106897282B (zh) * 2015-12-17 2020-06-05 阿里巴巴集团控股有限公司 一种用户群的分类方法和设备
CN107229630A (zh) * 2016-03-25 2017-10-03 樊保义 一种亲密关系在线促进系统
CN105956061B (zh) * 2016-04-26 2020-01-03 海信集团有限公司 一种用户间相似度确定方法及装置
CN105912702A (zh) * 2016-04-26 2016-08-31 南京酷派软件技术有限公司 位置推荐方法及系统
CN106021305A (zh) * 2016-05-05 2016-10-12 北京邮电大学 一种模式与偏好感知的poi推荐方法及系统
CN111858937B (zh) * 2016-12-14 2024-04-30 创新先进技术有限公司 一种虚假地址信息识别的方法及装置
CN106506705B (zh) * 2016-12-29 2020-07-28 平安科技(深圳)有限公司 基于位置服务的人群分类方法及装置
CN108537241A (zh) * 2017-03-02 2018-09-14 镇江雅迅软件有限责任公司 一种楼宇运动物体轨迹相似性度量方法
CN108574715A (zh) * 2017-03-14 2018-09-25 广州市动景计算机科技有限公司 信息推荐方法、装置及系统
CN108628878B (zh) * 2017-03-20 2021-04-09 大有秦鼎(北京)科技有限公司 数据修复方法和装置
CN106991159B (zh) * 2017-03-30 2018-07-24 百度在线网络技术(北京)有限公司 用于生成信息的方法和装置
CN108733692A (zh) * 2017-04-18 2018-11-02 腾讯科技(深圳)有限公司 一种社交信息推荐方法和装置
CN107577782B (zh) * 2017-09-14 2021-04-30 国家计算机网络与信息安全管理中心 一种基于异质数据的人物相似度刻画方法
CN107798557B (zh) * 2017-09-30 2020-09-25 平安科技(深圳)有限公司 电子装置、基于lbs数据的服务场所推荐方法及存储介质
CN109947874B (zh) * 2017-11-16 2023-02-24 腾讯科技(深圳)有限公司 移动轨迹的聚合方法、装置及设备
CN107943943B (zh) * 2017-11-23 2020-11-03 北京小度信息科技有限公司 用户相似度的确定方法、装置、电子设备及存储介质
CN108170795B (zh) * 2017-12-28 2022-02-15 百度在线网络技术(北京)有限公司 信息推送方法、装置及设备
CN109027636B (zh) 2018-09-29 2021-10-26 明基智能科技(上海)有限公司 多功能支撑架
CN109522491B (zh) * 2018-11-29 2020-07-31 杭州飞弛网络科技有限公司 一种基于位置属性的陌生人社交活动推荐方法与系统
CN109815195B (zh) * 2018-12-28 2021-04-20 北京百度网讯科技有限公司 查询方法、终端和存储介质
CN109857498A (zh) 2019-01-09 2019-06-07 明基智能科技(上海)有限公司 智能内容模板推荐系统及其方法
CN111797871A (zh) * 2019-04-09 2020-10-20 Oppo广东移动通信有限公司 信息处理方法、装置、存储介质及电子设备
CN110134865B (zh) * 2019-04-26 2023-03-24 重庆大学 一种基于城市公共交通出行大数据的通勤乘客社交推荐方法及平台
CN111861526B (zh) * 2019-04-30 2024-05-21 京东城市(南京)科技有限公司 一种分析对象来源的方法和装置
CN110139221B (zh) * 2019-05-09 2020-02-14 特斯联(北京)科技有限公司 一种基于手机信号微卡口的人口集群动态监测方法与系统
CN113139767A (zh) * 2020-01-20 2021-07-20 菜鸟智能物流控股有限公司 物流对象分拨方法和装置、电子设备以及计算机可读存储介质
CN115186664B (zh) * 2022-09-13 2023-01-13 深圳市爱聊科技有限公司 基于多维度的主体间相合度测算方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103700018A (zh) * 2013-12-16 2014-04-02 华中科技大学 一种移动社会网络中的人群划分方法
CN104462592A (zh) * 2014-12-29 2015-03-25 东北大学 基于不确定语义的社交网用户行为关系推演系统及方法
CN104636382A (zh) * 2013-11-13 2015-05-20 华为技术有限公司 推理社会关系的方法及装置
CN104765873A (zh) * 2015-04-24 2015-07-08 百度在线网络技术(北京)有限公司 用户相似度确定方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103593361B (zh) * 2012-08-14 2017-02-22 中国科学院沈阳自动化研究所 感应网络环境下移动时空轨迹分析方法
CN102880719A (zh) * 2012-10-16 2013-01-16 四川大学 基于位置社交网络的用户轨迹相似性挖掘方法
CN104252527B (zh) * 2014-09-02 2018-04-20 百度在线网络技术(北京)有限公司 一种确定移动用户的常驻点信息的方法和装置
CN104268171B (zh) * 2014-09-11 2017-09-19 东北大学 基于活动相似和社交信任的社交网好友推荐系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104636382A (zh) * 2013-11-13 2015-05-20 华为技术有限公司 推理社会关系的方法及装置
CN103700018A (zh) * 2013-12-16 2014-04-02 华中科技大学 一种移动社会网络中的人群划分方法
CN104462592A (zh) * 2014-12-29 2015-03-25 东北大学 基于不确定语义的社交网用户行为关系推演系统及方法
CN104765873A (zh) * 2015-04-24 2015-07-08 百度在线网络技术(北京)有限公司 用户相似度确定方法和装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110659318A (zh) * 2019-08-15 2020-01-07 中国平安财产保险股份有限公司 基于大数据的策略推送方法、系统及计算机设备
CN110659318B (zh) * 2019-08-15 2024-05-03 中国平安财产保险股份有限公司 基于大数据的策略推送方法、系统及计算机设备
CN111104468A (zh) * 2019-09-25 2020-05-05 西安交通大学 一种基于语义轨迹推断用户活动的方法
CN111104468B (zh) * 2019-09-25 2023-03-28 西安交通大学 一种基于语义轨迹推断用户活动的方法
CN110688469A (zh) * 2019-09-27 2020-01-14 厦门市美亚柏科信息股份有限公司 一种自动分析相似行为特征的方法和装置
CN114120018A (zh) * 2020-08-25 2022-03-01 四川大学 一种基于人群聚类轨迹熵的空间活力量化方法
CN112182410A (zh) * 2020-11-05 2021-01-05 西南交通大学 基于时空轨迹知识图谱的用户出行模式挖掘方法
CN112182410B (zh) * 2020-11-05 2023-04-21 西南交通大学 基于时空轨迹知识图谱的用户出行模式挖掘方法
CN112560910A (zh) * 2020-12-02 2021-03-26 中国联合网络通信集团有限公司 用户分类方法和装置
CN112560910B (zh) * 2020-12-02 2024-03-01 中国联合网络通信集团有限公司 用户分类方法和装置
CN112905792A (zh) * 2021-02-20 2021-06-04 深圳前海微众银行股份有限公司 基于非文本场景的文本聚类方法、装置、设备及存储介质
CN113435859A (zh) * 2021-07-12 2021-09-24 建信金融科技有限责任公司 信访件处理方法、装置、电子设备和计算机可读介质

Also Published As

Publication number Publication date
CN104765873A (zh) 2015-07-08
CN104765873B (zh) 2019-03-26

Similar Documents

Publication Publication Date Title
WO2016169192A1 (zh) 用户相似度确定方法和装置
Bao et al. Recommendations in location-based social networks: a survey
Kim et al. Item recommendation based on context-aware model for personalized u-healthcare service
US8856229B2 (en) System and method for social networking
Wan et al. A hybrid ensemble learning method for tourist route recommendations based on geo-tagged social networks
US11729286B2 (en) Feature-based network embedding
US20170169351A1 (en) Heterogenous network (r-knowledge) for bridging users and apps via relationship learning
Piccialli et al. A deep learning approach for path prediction in a location-based IoT system
Tang et al. Discovering travel community for POI recommendation on location-based social networks
Zhang et al. Sparse user check-in venue prediction by exploring latent decision contexts from location-based social networks
Jiang et al. Using combined network information to predict mobile application usage
CN114817715A (zh) 一种隐私保护的物联网实体服务搜索方法
Liu et al. A novel trajectory similarity–based approach for location prediction
US20210350202A1 (en) Methods and systems of automatic creation of user personas
Bouneffouf DRARS, a dynamic risk-aware recommender system
Li et al. A contextualized and personalized model to predict user interest using location-based social networks
Yang et al. Attention mechanism and adaptive convolution actuated fusion network for next POI recommendation
Wang et al. Recommendation algorithm based on graph-model considering user background information
Priyanga et al. Mobile app usage pattern prediction using hierarchical flexi-ensemble clustering (HFEC) for mobile service rating
Yang Three challenges in data mining
JP2021149682A (ja) 学習装置、学習方法及び学習プログラム
JP2021149681A (ja) 判定装置、判定方法及び判定プログラム
Vidmar et al. An automatic Wi-Fi-based approach for extraction of user places and their context
Bioglio et al. Measuring the inspiration rate of topics in bibliographic networks
Zhang et al. Context-aware point-of-interest recommendation algorithm with interpretability

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15889679

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15889679

Country of ref document: EP

Kind code of ref document: A1