CN110928914A - Method and apparatus for outputting information - Google Patents

Method and apparatus for outputting information Download PDF

Info

Publication number
CN110928914A
CN110928914A CN201811001545.9A CN201811001545A CN110928914A CN 110928914 A CN110928914 A CN 110928914A CN 201811001545 A CN201811001545 A CN 201811001545A CN 110928914 A CN110928914 A CN 110928914A
Authority
CN
China
Prior art keywords
track point
target
track
point sequence
sequences
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
Application number
CN201811001545.9A
Other languages
Chinese (zh)
Inventor
郑灿祥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Baidu Online Network Technology Beijing Co Ltd
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201811001545.9A priority Critical patent/CN110928914A/en
Publication of CN110928914A publication Critical patent/CN110928914A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/26Government or public services
    • G06Q50/265Personal security, identity or safety

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Tourism & Hospitality (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The embodiment of the application discloses a method and a device for outputting information. One embodiment of the above method comprises: obtaining track points of a target user in a target time interval to obtain a target track point sequence; obtaining track points of a plurality of users in a city where a target user is located within a target time period to obtain a plurality of track point sequences; clustering track point sequences in a track point sequence set formed by a target track point sequence and a plurality of track point sequences to obtain at least two track point sequence subsets; determining the similarity between the target track point sequence and other track point sequences except the target track point sequence in the track point sequence subset to which the target track point sequence belongs; and outputting at least one track point sequence according to the determined similarity. According to the embodiment, the obtained track point sequences are clustered, so that the accuracy is ensured, and meanwhile, the calculation amount can be effectively reduced.

Description

Method and apparatus for outputting information
Technical Field
The embodiment of the application relates to the technical field of computers, in particular to a method and a device for outputting information.
Background
In the public safety field, the proportion of group crime is higher and higher, and the harm is larger and larger. Public security institutions utilize big data to analyze and solve cases, and capture gangs and meet great challenges. Especially the association between different cases and parties is difficult to obtain. How to effectively dig out the gangs of the crime in the mass data becomes the key of solving the crime.
Disclosure of Invention
The embodiment of the application provides a method and a device for outputting information.
In a first aspect, an embodiment of the present application provides a method for outputting information, including: obtaining track points of a target user in a target time interval to obtain a target track point sequence; obtaining track points of a plurality of users in the city where the target user is located in the target time period to obtain a plurality of track point sequences; clustering track point sequences in a track point sequence set formed by the target track point sequence and the plurality of track point sequences to obtain at least two track point sequence subsets; determining the similarity between the target track point sequence and other track point sequences except the target track point sequence in the track point sequence subset to which the target track point sequence belongs; and outputting at least one track point sequence according to the determined similarity.
In some embodiments, the clustering the track point sequences in the track point sequence set formed by the target track point sequence and the plurality of track point sequences to obtain at least two track point sequence subsets includes: determining the target number of the track point sequence subset according to the number of the track point sequences in the track point sequence set; selecting the target number of track point sequences from the track point sequence set as a first center of the target number of track point sequence subsets; based on the determined first center, performing the following calculation steps: for the track point sequences in the track point sequence set, calculating the distance between the track point sequence and the first centers with the target number, and adding the track point sequence into a track point sequence subset where the first center with the closest distance is located; calculating second centers of the target number of track point sequence subsets and determining whether the target number of second centers are the same as the target number of first centers; and in response to determining that the target number of second centers is different from the target number of first centers, determining the second centers as the first centers, and continuing to perform the calculating step.
In some embodiments, the clustering the track point sequences in the track point sequence set formed by the target track point sequence and the plurality of track point sequences to obtain at least two track point sequence subsets includes: and obtaining the subset of the track point sequences with the number of the targets respectively taking the second centers with the number of the targets as the centers in response to determining that the second centers with the number of the targets are the same as the first centers with the number of the targets.
In some embodiments, the sequence of trace points includes the positions and the acquisition times of the trace points; and the determining the similarity between the target track point sequence and other track point sequences except the target track point sequence in the track point sequence subset includes: determining the track vectors of the included track points according to the positions and the acquisition moments of the included track points for the target track point sequence and the other track point sequences; obtaining a target track vector sequence corresponding to the target track point sequence and other track vector sequences corresponding to the other track point sequences according to the track vectors of the included track points; and determining the similarity between the target track vector sequence and the other track vector sequences.
In some embodiments, the outputting at least one track point sequence according to the determined similarity includes: and outputting a preset number of track point sequences corresponding to the similarity according to the sequence of the determined similarity from large to small.
In a second aspect, an embodiment of the present application provides an apparatus for outputting information, including: the first acquisition unit is configured to acquire track points of a target user in a target time interval to obtain a target track point sequence; the second acquisition unit is configured to acquire track points of a plurality of users in a city where the target user is located within the target time interval to obtain a plurality of track point sequences; a clustering unit configured to cluster the track point sequences in a track point sequence set formed by the target track point sequence and the plurality of track point sequences to obtain at least two track point sequence subsets; the calculating unit is configured to determine the similarity between the target track point sequence and other track point sequences except the target track point sequence in the track point sequence subset; an output unit configured to output at least one sequence of trajectory points according to the determined similarity.
In some embodiments, the clustering unit includes: a quantity determination module configured to determine a target quantity of the track point sequence subset according to a quantity of the track point sequences in the track point sequence set; a center determining module configured to select the target number of track point sequences from the set of track point sequences as a first center of a subset of the target number of track point sequences; a calculation module configured to perform the following calculation steps based on the determined first center: for the track point sequences in the track point sequence set, calculating the distance between the track point sequence and the first centers with the target number, and adding the track point sequence into a track point sequence subset where the first center with the closest distance is located; calculating second centers of the target number of track point sequence subsets and determining whether the target number of second centers are the same as the target number of first centers; a feedback module configured to determine the second center as the first center to feed back to the calculation module in response to determining that the target number of second centers is not the same as the target number of first centers.
In some embodiments, the clustering unit includes: and the clustering module is configured to respond to the determination that the target number of second centers is the same as the target number of first centers to obtain the target number of track point sequence subsets respectively centered on the target number of second centers.
In some embodiments, the sequence of trace points includes the positions and the acquisition times of the trace points; and the computing unit is further configured to: determining the track vectors of the included track points according to the positions and the acquisition moments of the included track points for the target track point sequence and the other track point sequences; obtaining a target track vector sequence corresponding to the target track point sequence and other track vector sequences corresponding to the other track point sequences according to the track vectors of the included track points; and determining the similarity between the target track vector sequence and the other track vector sequences.
In some embodiments, the output unit is further configured to: and outputting a preset number of track point sequences corresponding to the similarity according to the sequence of the determined similarity from large to small.
In a third aspect, an embodiment of the present application provides a server, including: one or more processors; a storage device, on which one or more programs are stored, which, when executed by the one or more processors, cause the one or more processors to implement the method as described in any of the embodiments of the first aspect.
In a fourth aspect, the present application provides a computer-readable medium, on which a computer program is stored, which when executed by a processor implements the method as described in any one of the embodiments of the first aspect.
According to the method and the device for outputting the information, provided by the embodiment of the application, the track points of the target user in the target time period can be obtained firstly, and the target track point sequence is obtained. Then, track points of a plurality of users in the city where the target user is located in the target time period can be obtained, and a plurality of track point sequences are obtained. And the target track point sequence and the plurality of track point sequences form a track point sequence set. And clustering the track point sequences in the track point sequence set to obtain at least two track point sequence subsets. Then, the similarity between the target track point sequence and other track point sequences in the track point sequence subset to which the target track point sequence belongs is calculated. And finally, outputting at least one track point sequence according to the similarity. According to the method and the device, the obtained track point sequences are clustered, so that the accuracy is ensured, and meanwhile, the calculation amount can be effectively reduced.
Drawings
Other features, objects and advantages of the present application will become more apparent upon reading of the following detailed description of non-limiting embodiments thereof, made with reference to the accompanying drawings in which:
FIG. 1 is an exemplary system architecture diagram in which one embodiment of the present application may be applied;
FIG. 2 is a flow diagram for one embodiment of a method for outputting information, in accordance with the present application;
FIG. 3 is a schematic diagram of an application scenario of a method for outputting information according to the present application;
FIG. 4 is a flow diagram of yet another embodiment of a method for outputting information according to the present application;
FIG. 5 is a schematic block diagram illustrating one embodiment of an apparatus for outputting information according to the present application;
FIG. 6 is a schematic block diagram of a computer system suitable for use in implementing a server according to embodiments of the present application.
Detailed Description
The present application will be described in further detail with reference to the following drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the relevant invention and not restrictive of the invention. It should be noted that, for convenience of description, only the portions related to the related invention are shown in the drawings.
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
Fig. 1 shows an exemplary system architecture 100 to which embodiments of the present method for outputting information or apparatus for outputting information may be applied.
As shown in fig. 1, the system architecture 100 may include terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 serves as a medium for providing communication links between the terminal devices 101, 102, 103 and the server 105. Network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, to name a few.
The user may use the terminal devices 101, 102, 103 to interact with the server 105 via the network 104 to receive or send messages or the like. Various communication client applications, such as a positioning application, a network connection application, a call application, a web browser application, etc., may be installed on the terminal devices 101, 102, 103.
The terminal apparatuses 101, 102, and 103 may be hardware or software. When the terminal devices 101, 102, 103 are hardware, they may be various electronic devices that support location acquisition, including but not limited to smart phones, tablet computers, e-book readers, laptop portable computers, desktop computers, and the like. When the terminal apparatuses 101, 102, 103 are software, they can be installed in the electronic apparatuses listed above. It may be implemented as multiple pieces of software or software modules (e.g., to provide distributed services) or as a single piece of software or software module. And is not particularly limited herein.
The server 105 may be a server providing various services, such as a background server that processes the locations collected by the terminal devices 101, 102, 103. The background server can analyze and process the received data such as the track points.
The server may be hardware or software. When the server is hardware, it may be implemented as a distributed server cluster formed by multiple servers, or may be implemented as a single server. When the server is software, it may be implemented as multiple pieces of software or software modules (e.g., to provide distributed services), or as a single piece of software or software module. And is not particularly limited herein.
It should be noted that the method for outputting information provided in the embodiment of the present application is generally performed by the server 105, and accordingly, the apparatus for outputting information is generally disposed in the server 105. It is understood that the terminal devices 101, 102, 103 and the network 104 may not be included in the architecture 100. The server 105 may obtain the trace points from the image capture device, or the server 105 may store the trace points locally.
It should be understood that the number of terminal devices, networks, and servers in fig. 1 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
With continued reference to FIG. 2, a flow 200 of one embodiment of a method for outputting information in accordance with the present application is shown. The method for outputting information of the embodiment comprises the following steps:
step 201, obtaining track points of a target user in a target time interval to obtain a target track point sequence.
In this embodiment, an execution subject (for example, the server 105 shown in fig. 1) of the method for outputting information may locally acquire track points of the target user in the target time period from a terminal device (for example, the terminal devices 101, 102, 103 shown in fig. 1), an image capture device (for example, various monitoring cameras capable of capturing road surface information), or a server through a wired connection manner or a wireless connection manner. The target user may be a suspect, and the target time period may be a crime time period of the suspect, and the like. The track points can be longitude and latitude information and can also be geographical position information. The plurality of track points form a target track point sequence, and in the target track point sequence, the track points are sequenced according to the acquisition time of the track points.
It should be noted that the wireless connection means may include, but is not limited to, a 3G/4G connection, a WiFi connection, a bluetooth connection, a WiMAX connection, a Zigbee connection, a uwb (ultra wideband) connection, and other wireless connection means now known or developed in the future.
Step 202, obtaining track points of a plurality of users in a city where the target user is located in the target time period, and obtaining a plurality of track point sequences.
In this embodiment, in order to determine a peer group with the target user, track points of multiple users in a city where the target user is located within the target time period may also be obtained. The plurality of users may be all residents of the city or other known case-related suspects. After obtaining the track points of a plurality of users, the execution main body can obtain a plurality of track point sequences. It will be appreciated that the track points for each user form a sequence of track points.
And 203, clustering the track point sequences in the track point sequence set formed by the target track point sequence and the plurality of track point sequences to obtain at least two track point sequence subsets.
In this embodiment, the execution main body can add the target track point sequence and the plurality of track point sequences into the track point sequence set after obtaining the target track point sequence and the plurality of track point sequences. And then clustering each track point sequence in the track point sequence set to obtain at least two track point sequence subsets. And each track point sequence subset is a cluster obtained after clustering. In clustering, various clustering algorithms may be employed. Such as K-means, mean shift clustering, density-based clustering methods, and the like.
And step 204, determining the similarity between the target track point sequence and other track point sequences except the target track point sequence in the track point sequence subset.
In this embodiment, after clustering each track point sequence in the track point sequence set, a track point sequence subset to which the target track point sequence belongs may be determined. Then, the execution subject may calculate the similarity between the target track point sequence and other track point sequences in the track point sequence subset to which the target track point sequence belongs. Specifically, the execution subject may calculate a distance between each track point in the target track point sequence and a corresponding track point in another track point sequence. And then, averaging the obtained multiple distances, and taking the finally obtained average as the similarity of the target track point sequence and other track point sequences.
And step 205, outputting at least one track point sequence according to the determined similarity.
After determining the similarity between the target track point sequence and other track point sequences, at least one track point sequence can be output according to the determined similarity. For example, the execution subject may output the sequence of trace points with the highest similarity. Alternatively, the execution subject may output the first 5 higher-similarity sequences of trajectory points. It will be appreciated that the sequence of track points may include a user identification, and the technician may determine the person associated with the suspect based on the user identification of the output sequence of track points.
With continued reference to fig. 3, fig. 3 is a schematic diagram of an application scenario of the method for outputting information according to the present embodiment. In the application scenario of fig. 3, the server first obtains each track point of the target user in the target time interval to obtain a target track point sequence (Z1, Z2, Z3 … … Zn), then obtains track points of a plurality of users in the city where the target user is located in the target time interval to obtain a track point sequence (a1, a2, A3 … … An), (B1, B2, B3 … … Bn), (C1, C2, C3 … … Cn), (D1, D2, D3 … … Dn) … …, and obtains a plurality of track point sequence subsets after cluster analysis. Then, the server calculates the similarity between the target track point sequence (Z1, Z2, Z3 … … Zn) and other track point sequences (B1, B2, B3 … … Bn), (D1, D2, D3 … … Dn) in the subset of the target track point sequences. Finally, two track point sequences (B1, B2, B3 … … Bn), (D1, D2, D3 … … Dn) with higher similarity and corresponding similarities are output.
According to the method for outputting the information provided by the embodiment of the application, the track points of the target user in the target time period can be firstly obtained, and the target track point sequence is obtained. Then, track points of a plurality of users in the city where the target user is located in the target time period can be obtained, and a plurality of track point sequences are obtained. And the target track point sequence and the plurality of track point sequences form a track point sequence set. And clustering the track point sequences in the track point sequence set to obtain at least two track point sequence subsets. Then, the similarity between the target track point sequence and other track point sequences in the track point sequence subset to which the target track point sequence belongs is calculated. And finally, outputting at least one track point sequence according to the similarity. According to the method, the obtained track point sequences are clustered, so that the accuracy is guaranteed, and meanwhile, the calculation amount can be effectively reduced.
In some optional implementations of this embodiment, the sequence of trace points includes positions of the trace points and acquisition times. The step 204 may be specifically implemented by the following steps not shown in fig. 2: firstly, for a target track point sequence and other track point sequences, determining track vectors of included track points according to positions and acquisition moments of the included track points. And then, obtaining a target track vector sequence corresponding to the target track point sequence and other track vector sequences corresponding to other track point sequences according to the track vectors of the included track points. And finally, determining the similarity of the target track vector sequence and other track vector sequences.
In this implementation, the trace point sequence includes the position and the collection time of the trace point. For each track point, the execution main body can combine the acquisition time and the acquisition position of the track point to obtain a track vector of the track point. After the track vector of each track point is obtained, a target track vector sequence corresponding to the target track point sequence and other track vector sequences corresponding to other track point sequences can be obtained. Finally, the execution subject may calculate the similarity of the target trajectory vector sequence with other trajectory vector sequences. The realization mode comprehensively considers the position of the track point and the time when the user appears at the track point, thereby improving the accuracy rate of searching for the party of the same party.
In some optional implementation manners of this embodiment, the step 205 may be implemented by the following steps not shown in fig. 2: and outputting a preset number of track point sequences corresponding to the similarity according to the sequence of the determined similarity from big to small.
In this implementation manner, after obtaining the similarity between the target trace point sequence and other trace point sequences, the execution main body may arrange the similarities in descending order, and then output the corresponding first N trace point sequences. Wherein N is a preset constant.
With further reference to fig. 4, a flow 400 for clustering sequences of track points in a set of sequences of track points in a method for outputting information according to the present application is shown. As shown in fig. 4, in this embodiment, the execution subject may cluster the track point sequences in the track point sequence set by the following steps:
step 401, determining the target number of the track point sequence subset according to the number of the track point sequences in the track point sequence set.
In this embodiment, the execution subject may first determine the number of track point sequences in the track point sequence set. The target number of subsets of sequences of track points can then be determined from the above numbers. For example, the execution body may take the square root of the above-mentioned number as the value of the target number, or take the logarithm of the above-mentioned number as the value of the target number.
In some optional implementations of this embodiment, the execution subject may determine the value of the target number according to the following formula:
Figure BDA0001783065350000091
and k is the number of targets, and n is the number of track point sequences in the track point sequence set. In the existing scheme, each track point sequence is usually compared pairwise, and whether two users are same-person or not is determined according to the comparison result. If the population in a city is 100 million, hundreds of millions of calculations may be required. Therefore, the reasonable selection of the k value can reduce the calculation amount and avoid the accuracy reduction caused by the reduction of the calculation times.
And step 402, selecting a target number of track point sequences from the track point sequence set as a first center of a target number of track point sequence subsets.
After determining the value of the target number, the execution main body may select each trace point sequence of the target number from the set of trace point sequences. At the time of selection, the execution subject may adopt various selection methods, such as random selection. The execution subject may take the selected sequence of trajectory points as a first center of a subset of the target number of sequences of trajectory points.
Step 403, based on the determined first center, performing the following calculation steps:
step 4031, for the track point sequences in the track point sequence set, calculating the distances between the track point sequences and the first centers of the target number and adding the track point sequences into the track point sequence subset where the first center with the closest distance is located.
After determining the first centers of the subset of the target number of sequences of trace points, for each sequence of trace points in the set of sequences of trace points, the executing entity may calculate the distance between the sequence of trace points and the first centers of the target number of sequences of trace points. The distance may be a euclidean distance, a manhattan distance, a chebyshev distance, a cosine distance, or the like. Then, adding the track point sequence into a track point sequence subset located at the first center closest to the track point sequence.
Step 4032, calculate the second centers of the subset of the target number of trace point sequences and determine whether the target number of second centers is the same as the target number of first centers.
After each track point sequence in the track point sequence set is divided, the execution main body can calculate the second centers of the target number of track point sequence subsets. In calculating the second center, the executing entity may use the mean value of each track point sequence in each track point sequence subset as the second center of the track point sequence subset. The execution subject may determine whether the second center of each track point sequence subset is the same as the first center of the track point sequence subset. If so, go to step 405; if not, step 404 is performed.
In step 404, in response to determining that the number of second centers is not the same as the number of first centers, determining that the second centers are the first centers, and continuing to execute step 4031.
If the executing entity determines that the second centers are different from the first centers, the calculated second center may be used as a new first center, and the step 4031 is continuously executed.
In some optional implementations of this embodiment, the step 404 may further include the following content not shown in fig. 4: in response to determining that the target number of second centers is different from the target number of first centers, determining the second centers as the first centers and determining a preset iteration number value plus 1; determining whether the iteration number value is the same as a preset iteration number threshold value; in response to determining whether the iteration count value is not equal to the preset iteration count threshold, continue to step 4031.
In this implementation, the execution body may also record the number of iterations. And if the iteration times reach a preset iteration time threshold value, stopping iteration and ending the clustering process. And (4) obtaining each track point sequence subset obtained by the last iteration, namely each cluster obtained by clustering.
Step 405, in response to determining that the number of second centers of the target is the same as the number of first centers of the target, obtaining a subset of the number of track point sequences of the target, which respectively take the number of second centers of the target as the center.
And if the execution main body determines that the second centers are the same as the first centers, finishing clustering, wherein the obtained track point sequence subset is each cluster obtained by clustering. The centers of the track point sequence subsets are the second centers.
According to the method for outputting information provided by the embodiment of the application, the accuracy of calculation can be ensured by determining the value of the track point sequence subset; and meanwhile, the calculation amount can be effectively reduced.
With further reference to fig. 5, as an implementation of the methods shown in the above-mentioned figures, the present application provides an embodiment of an apparatus for outputting information, which corresponds to the method embodiment shown in fig. 2, and which is particularly applicable to various electronic devices.
As shown in fig. 5, the apparatus 500 for outputting information of the present embodiment includes: a first acquisition unit 501, a second acquisition unit 502, a clustering unit 503, a calculation unit 504, and an output unit 505.
The first obtaining unit 501 is configured to obtain track points of a target user in a target time period, so as to obtain a target track point sequence.
The second obtaining unit 502 is configured to obtain track points of multiple users in a city where the target user is located within the target time period, so as to obtain multiple track point sequences.
The clustering unit 503 is configured to cluster the track point sequences in a track point sequence set formed by the target track point sequence and the plurality of track point sequences to obtain at least two track point sequence subsets.
The calculating unit 504 is configured to determine similarity between the target track point sequence and other track point sequences except the target track point sequence in the track point sequence subset to which the target track point sequence belongs.
An output unit 505 configured to output at least one track point sequence according to the determined similarity.
In some optional implementations of this embodiment, the clustering unit 503 may further include a number determining module, a center determining module, a calculating module, and a feedback module, which are not shown in fig. 5.
A number determination module configured to determine a target number of the subset of sequences of track points based on a number of sequences of track points in the set of sequences of track points.
And the center determining module is configured to select a target number of track point sequences from the track point sequence set as a first center of a target number of track point sequence subsets.
A calculation module configured to perform the following calculation steps based on the determined first center: calculating the distance between the track point sequence and first centers of the number of targets and adding the track point sequence into a track point sequence subset where the first center with the closest distance is located for the track point sequence in the track point sequence set; calculating second centers of the target number of track point sequence subsets and determining whether the target number of second centers is the same as the target number of first centers.
A feedback module configured to determine the second center as the first center to feed back to the calculation module in response to determining that the target number of second centers is not the same as the target number of first centers.
In some optional implementations of this embodiment, the clustering unit 503 may further include a clustering module, not shown in fig. 5, configured to, in response to determining that the target number of second centers is the same as the target number of first centers, obtain a target number of track point sequence subsets respectively centered on the target number of second centers.
In some optional implementations of this embodiment, the sequence of trace points includes positions of the trace points and acquisition times. The above-mentioned computing unit 504 may be further configured to: determining the track vector of the included track points according to the positions and the acquisition moments of the included track points for the target track point sequence and other track point sequences; obtaining a target track vector sequence corresponding to the target track point sequence and other track vector sequences corresponding to other track point sequences according to the track vectors of the included track points; and determining the similarity of the target track vector sequence and other track vector sequences.
In some optional implementations of this embodiment, the output unit 505 may be further configured to: and outputting a preset number of track point sequences corresponding to the similarity according to the sequence of the determined similarity from big to small.
The device for outputting information provided by the above embodiment of the application can first obtain the track points of the target user in the target time interval, and obtain the target track point sequence. Then, track points of a plurality of users in the city where the target user is located in the target time period can be obtained, and a plurality of track point sequences are obtained. And the target track point sequence and the plurality of track point sequences form a track point sequence set. And clustering the track point sequences in the track point sequence set to obtain at least two track point sequence subsets. Then, the similarity between the target track point sequence and other track point sequences in the track point sequence subset to which the target track point sequence belongs is calculated. And finally, outputting at least one track point sequence according to the similarity. The device of this embodiment, through clustering a plurality of track point sequences that acquire, when guaranteeing the accuracy, can reduce the calculated amount effectively.
It should be understood that units 501 to 505, which are described in the apparatus 500 for outputting information, correspond to the respective steps in the method described with reference to fig. 2, respectively. Thus, the operations and features described above for the method for outputting information are equally applicable to the apparatus 500 and the units included therein and will not be described again here.
Referring now to FIG. 6, shown is a block diagram of a computer system 600 suitable for use in implementing a server according to embodiments of the present application. The server shown in fig. 6 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present application.
As shown in fig. 6, the computer system 600 includes a Central Processing Unit (CPU)601 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)602 or a program loaded from a storage section 608 into a Random Access Memory (RAM) 603. In the RAM 603, various programs and data necessary for the operation of the system 600 are also stored. The CPU 601, ROM 602, and RAM 603 are connected to each other via a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
The following components are connected to the I/O interface 605: an input portion 606 including a keyboard, a mouse, and the like; an output portion 607 including a display such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage section 608 including a hard disk and the like; and a communication section 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. The driver 610 is also connected to the I/O interface 605 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 necessary, so that a computer program read out therefrom is mounted in the storage section 608 as necessary.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a machine-readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication section 609, and/or installed from the removable medium 611. The computer program performs the above-described functions defined in the method of the present application when executed by a Central Processing Unit (CPU) 601.
It should be noted that the computer readable medium described herein can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
In the present application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present application may be implemented by software or hardware. The described units may also be provided in a processor, and may be described as: a processor includes a first obtaining unit, a second obtaining unit, a clustering unit, a calculating unit, and an output unit. The names of the units do not form a limitation on the units themselves in some cases, and for example, the first acquisition unit may also be described as a "unit that acquires a track point of the target user within the target time period".
As another aspect, the present application also provides a computer-readable medium, which may be contained in the apparatus described in the above embodiments; or may be present separately and not assembled into the device. The computer readable medium carries one or more programs which, when executed by the apparatus, cause the apparatus to: obtaining track points of a target user in a target time interval to obtain a target track point sequence; obtaining track points of a plurality of users in a city where a target user is located within a target time period to obtain a plurality of track point sequences; clustering track point sequences in a track point sequence set formed by a target track point sequence and a plurality of track point sequences to obtain at least two track point sequence subsets; determining the similarity between the target track point sequence and other track point sequences except the target track point sequence in the track point sequence subset to which the target track point sequence belongs; and outputting at least one track point sequence according to the determined similarity.
The above description is only a preferred embodiment of the application and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the invention herein disclosed is not limited to the particular combination of features described above, but also encompasses other arrangements formed by any combination of the above features or their equivalents without departing from the spirit of the invention. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.

Claims (12)

1. A method for outputting information, comprising:
obtaining track points of a target user in a target time interval to obtain a target track point sequence;
obtaining track points of a plurality of users in the city where the target user is located in the target time period to obtain a plurality of track point sequences;
clustering the track point sequences in a track point sequence set formed by the target track point sequence and the plurality of track point sequences to obtain at least two track point sequence subsets;
determining the similarity between the target track point sequence and other track point sequences except the target track point sequence in the track point sequence subset to which the target track point sequence belongs;
and outputting at least one track point sequence according to the determined similarity.
2. The method according to claim 1, wherein the clustering the track point sequences in the set of track point sequences formed by the target track point sequence and the plurality of track point sequences to obtain at least two subsets of track point sequences comprises:
determining the target number of the track point sequence subset according to the number of the track point sequences in the track point sequence set;
selecting the target number of track point sequences from the track point sequence set as a first center of the target number of track point sequence subsets;
based on the determined first center, performing the following calculation steps: for the track point sequences in the track point sequence set, calculating the distances between the track point sequences and the first centers with the number of the targets, and adding the track point sequences into a track point sequence subset where the first center with the closest distance is located; calculating second centers of the target number of track point sequence subsets and determining whether the target number of second centers are the same as the target number of first centers;
and in response to determining that the target number of second centers is not the same as the target number of first centers, determining that the second centers are the first centers, and continuing to perform the calculating step.
3. The method according to claim 2, wherein the clustering the track point sequences in the set of track point sequences formed by the target track point sequence and the plurality of track point sequences to obtain at least two subsets of track point sequences comprises:
and obtaining the target number of track point sequence subsets respectively taking the target number of second centers as centers in response to determining that the target number of second centers are the same as the target number of first centers.
4. The method of claim 1, wherein the sequence of trace points includes the location and acquisition time of the trace points; and
the determining the similarity between the target track point sequence and other track point sequences except the target track point sequence in the track point sequence subset includes:
determining the track vectors of the included track points according to the positions and the acquisition moments of the included track points for the target track point sequence and the other track point sequences;
obtaining a target track vector sequence corresponding to the target track point sequence and other track vector sequences corresponding to the other track point sequences according to the track vectors of the included track points;
and determining the similarity of the target track vector sequence and the other track vector sequences.
5. The method of any one of claims 1-4, wherein the outputting at least one sequence of trajectory points according to the determined similarity comprises:
and outputting a preset number of track point sequences corresponding to the similarity according to the sequence of the determined similarity from big to small.
6. An apparatus for outputting information, comprising:
the first acquisition unit is configured to acquire track points of a target user in a target time interval to obtain a target track point sequence;
the second acquisition unit is configured to acquire track points of a plurality of users in a city where the target user is located within the target time interval to obtain a plurality of track point sequences;
a clustering unit configured to cluster the track point sequences in a track point sequence set formed by the target track point sequence and the plurality of track point sequences to obtain at least two track point sequence subsets;
the calculating unit is configured to determine the similarity of the target track point sequence and other track point sequences except the target track point sequence in the track point sequence subset;
an output unit configured to output at least one sequence of trajectory points according to the determined similarity.
7. The apparatus of claim 6, wherein the clustering unit comprises:
a number determination module configured to determine a target number of the subset of track point sequences according to a number of track point sequences in the set of track point sequences;
a center determining module configured to select the target number of trace point sequences from the set of trace point sequences as a first center of a subset of the target number of trace point sequences;
a calculation module configured to perform the following calculation steps based on the determined first center: for the track point sequences in the track point sequence set, calculating the distances between the track point sequences and the first centers with the number of the targets, and adding the track point sequences into a track point sequence subset where the first center with the closest distance is located; calculating second centers of the target number of track point sequence subsets and determining whether the target number of second centers are the same as the target number of first centers;
a feedback module configured to determine a second center as the first center to feed back to the calculation module in response to determining that the target number of second centers is not the same as the target number of first centers.
8. The apparatus of claim 7, wherein the clustering unit comprises:
a clustering module configured to obtain the target number of track point sequence subsets respectively centered on the target number of second centers in response to determining that the target number of second centers is the same as the target number of first centers.
9. The device of claim 6, wherein the sequence of trace points includes the location of the trace points and the acquisition time; and
the computing unit is further configured to:
determining the track vectors of the included track points according to the positions and the acquisition moments of the included track points for the target track point sequence and the other track point sequences;
obtaining a target track vector sequence corresponding to the target track point sequence and other track vector sequences corresponding to the other track point sequences according to the track vectors of the included track points;
and determining the similarity of the target track vector sequence and the other track vector sequences.
10. The apparatus of any of claims 6-9, wherein the output unit is further configured to:
and outputting a preset number of track point sequences corresponding to the similarity according to the sequence of the determined similarity from big to small.
11. A server, comprising:
one or more processors;
a storage device having one or more programs stored thereon,
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-5.
12. A computer-readable medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1-5.
CN201811001545.9A 2018-08-30 2018-08-30 Method and apparatus for outputting information Pending CN110928914A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811001545.9A CN110928914A (en) 2018-08-30 2018-08-30 Method and apparatus for outputting information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811001545.9A CN110928914A (en) 2018-08-30 2018-08-30 Method and apparatus for outputting information

Publications (1)

Publication Number Publication Date
CN110928914A true CN110928914A (en) 2020-03-27

Family

ID=69854914

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811001545.9A Pending CN110928914A (en) 2018-08-30 2018-08-30 Method and apparatus for outputting information

Country Status (1)

Country Link
CN (1) CN110928914A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111612675A (en) * 2020-05-18 2020-09-01 浙江宇视科技有限公司 Method, device and equipment for determining peer objects and storage medium
CN111737387A (en) * 2020-06-11 2020-10-02 南京森根安全技术有限公司 Method and module for discovering specific personnel based on track similarity
CN111831178A (en) * 2020-06-29 2020-10-27 中国科学院软件研究所 Auxiliary target selection method and system in three-dimensional environment based on motion trend information

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116614A (en) * 2013-01-25 2013-05-22 北京奇艺世纪科技有限公司 Collaborative filtering recommendation method, device and system base on user track
CN105409306A (en) * 2014-06-11 2016-03-16 华为技术有限公司 Method and apparatus for predicting location of mobile terminal
CN105787104A (en) * 2016-03-21 2016-07-20 百度在线网络技术(北京)有限公司 User attribute information acquiring method and device
CN106506705A (en) * 2016-12-29 2017-03-15 平安科技(深圳)有限公司 Listener clustering method and device based on location-based service

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116614A (en) * 2013-01-25 2013-05-22 北京奇艺世纪科技有限公司 Collaborative filtering recommendation method, device and system base on user track
CN105409306A (en) * 2014-06-11 2016-03-16 华为技术有限公司 Method and apparatus for predicting location of mobile terminal
CN105787104A (en) * 2016-03-21 2016-07-20 百度在线网络技术(北京)有限公司 User attribute information acquiring method and device
CN106506705A (en) * 2016-12-29 2017-03-15 平安科技(深圳)有限公司 Listener clustering method and device based on location-based service

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111612675A (en) * 2020-05-18 2020-09-01 浙江宇视科技有限公司 Method, device and equipment for determining peer objects and storage medium
CN111612675B (en) * 2020-05-18 2023-08-04 浙江宇视科技有限公司 Method, device, equipment and storage medium for determining peer objects
CN111737387A (en) * 2020-06-11 2020-10-02 南京森根安全技术有限公司 Method and module for discovering specific personnel based on track similarity
CN111831178A (en) * 2020-06-29 2020-10-27 中国科学院软件研究所 Auxiliary target selection method and system in three-dimensional environment based on motion trend information
CN111831178B (en) * 2020-06-29 2023-01-17 中国科学院软件研究所 Method and system for assisting target selection in three-dimensional environment based on motion trend information

Similar Documents

Publication Publication Date Title
CN108229419B (en) Method and apparatus for clustering images
CN108280477B (en) Method and apparatus for clustering images
CN109492772B (en) Method and device for generating information
CN109376267B (en) Method and apparatus for generating a model
CN109447156B (en) Method and apparatus for generating a model
CN109308490B (en) Method and apparatus for generating information
CN108520470B (en) Method and apparatus for generating user attribute information
CN107944481B (en) Method and apparatus for generating information
WO2017012236A1 (en) Method and apparatus for crowd risk early warning
CN108228428B (en) Method and apparatus for outputting information
CN110929799B (en) Method, electronic device, and computer-readable medium for detecting abnormal user
CN109214501B (en) Method and apparatus for identifying information
CN108509921B (en) Method and apparatus for generating information
CN110619078B (en) Method and device for pushing information
CN110928914A (en) Method and apparatus for outputting information
CN111814910A (en) Abnormality detection method, abnormality detection device, electronic apparatus, and storage medium
CN109934142B (en) Method and apparatus for generating feature vectors of video
CN110941978A (en) Face clustering method and device for unidentified personnel and storage medium
CN109919220B (en) Method and apparatus for generating feature vectors of video
CN113256339B (en) Resource release method and device, storage medium and electronic equipment
JP7216757B2 (en) Method and apparatus for obtaining information
CN110414613A (en) Method, apparatus, equipment and the computer readable storage medium of region clustering
US10845485B2 (en) Method and apparatus for generating information
CN108062576B (en) Method and apparatus for output data
CN113034580B (en) Image information detection method and device and electronic equipment

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200327