Content recommendation method and device, server and storage medium
Through the intersection calculation of geographical location and activity circle, the recommendation of content related to user life solves the problem that users find it difficult to find videos that match interests on multimedia platforms and improves user satisfaction.
Patent Information
- Application Number
- CN202411222084.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-02
- Publication Date
- 2025-01-03
AI Technical Summary
It is difficult for users to find video content that suits their interests and preferences on multimedia platforms, resulting in low user satisfaction.
By obtaining the location of the client, determining its geographical area, and performing intersection calculations with the activity circle, recalling and recommending content associated with the activity circle, including videos, articles or news, to improve the relevance of the content and user satisfaction .
The recommended content is closely related to the user's daily life, improves the user's LBS perception, meets the user's interest and needs for surrounding events, and improves user satisfaction.
Smart Images

Figure CN119248993A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data processing technology, and in particular to a content recommendation method, device, server, and storage medium. Background Art
[0002] With the rapid development of the Internet and digital media technologies, the amount of videos on multimedia platforms has increased dramatically. Faced with this massive amount of videos, users often find it difficult to find videos that suit their interests and preferences, resulting in low user satisfaction. Summary of the Invention
[0003] The purpose of the embodiments of the present application is to provide a content recommendation method, device, server, and storage medium to recommend content that matches the user's interests and preferences to improve user satisfaction. The specific technical solution is as follows:
[0004] In a first aspect of the present application, a content recommendation method is provided, which is applied to a server. The method includes:
[0005] In response to a content recommendation request sent by a client, obtaining a first location of the client;
[0006] determining, based on the first location, a first geographical area in which the client is located;
[0007] Determine a target activity circle where the geographical area where the target activity circle is located intersects with the first geographical area;
[0008] Recalling content to be recommended to the client from content associated with the target activity circle;
[0009] The recalled content is recommended to the client.
[0010] In some embodiments, determining the first geographical area where the client is located based on the first location includes:
[0011] Determining a first grid where the client is located based on the first location and the geographical area covered by the grid in the city grid map, and using the geographical area covered by the first grid as the first geographical area where the client is located;
[0012] The determining of a target activity circle where the geographical area where the target activity circle is located intersects with the first geographical area includes:
[0013] Determining, based on the geographical area covered by the grid, a neighboring grid that intersects with the geographical area covered by the first grid as a second grid;
[0014] According to the correspondence between the grids and the activity circles, a target activity circle is determined, wherein the target activity circle includes a first activity circle in the geographical area covered by the first grid and / or a second activity circle in the geographical area covered by the second grid.
[0015] In some embodiments, determining, based on the geographical area covered by the grid, a neighboring grid that intersects with the geographical area covered by the first grid as the second grid includes:
[0016] According to the geographical area covered by the grids, a grid having a boundary overlapping with the geographical area covered by the first grid is determined as the second grid.
[0017] In some embodiments, determining, based on the geographical area covered by the grids, a grid having a boundary overlapping with the geographical area covered by the first grid as the second grid includes:
[0018] Determining boundary points of the first grid according to the geographical area covered by the grid;
[0019] A grid having a common boundary point with the geographical area covered by the first grid is determined as the second grid.
[0020] In some embodiments, the correspondence between the grid and the activity circle is generated based on the following method:
[0021] Get the second position of the activity circle;
[0022] Determining a third grid where the activity circle is located based on the second location and the geographical area covered by the grid in the city grid map;
[0023] A correspondence between the third grid and the activity circle is generated.
[0024] In some embodiments, generating a correspondence between the third grid and the activity circle includes:
[0025] Determining position feature points of the third grid;
[0026] Generate a correspondence between the position feature points of the third grid and the identifier of the activity circle.
[0027] In some embodiments, the content associated with the target activity circle includes one or more of the following:
[0028] The tag is associated with the content of the target activity circle;
[0029] The content associated with the subject and the target activity circle;
[0030] Content that is semantically associated with the target activity circle.
[0031] In some embodiments, the activity circle includes one or more of the following:
[0032] Business activity circle, residential activity circle, sports circle, and learning circle.
[0033] In a second aspect of the present application, a content recommendation device is provided, comprising:
[0034] an acquisition module, configured to acquire a first location of the client in response to a content recommendation request sent by the client;
[0035] A first determining module, configured to determine a first geographical area where the client is located based on the first location;
[0036] A second determining module is configured to determine a target activity circle whose geographical area intersects with the first geographical area;
[0037] A recall module, configured to recall content to be recommended to the client from content associated with the target activity circle;
[0038] A recommendation module is used to recommend the recalled content to the client.
[0039] In some embodiments, the first determining module is specifically configured to:
[0040] Determining a first grid where the client is located based on the first location and the geographical area covered by the grid in the city grid map, and using the geographical area covered by the first grid as the first geographical area where the client is located;
[0041] The second determining module is specifically configured to:
[0042] Determining, based on the geographical area covered by the grid, a neighboring grid that intersects with the geographical area covered by the first grid as a second grid;
[0043] According to the correspondence between the grids and the activity circles, a target activity circle is determined, wherein the target activity circle includes a first activity circle in the geographical area covered by the first grid and / or a second activity circle in the geographical area covered by the second grid.
[0044] In some embodiments, the second determining module is specifically configured to:
[0045] According to the geographical area covered by the grids, a grid having a boundary overlapping with the geographical area covered by the first grid is determined as the second grid.
[0046] In some embodiments, the second determining module is specifically configured to:
[0047] Determining boundary points of the first grid according to the geographical area covered by the grid;
[0048] A grid having a common boundary point with the geographical area covered by the first grid is determined as the second grid.
[0049] In some embodiments, the correspondence between the grid and the activity circle is generated based on the following method:
[0050] Get the second position of the activity circle;
[0051] Determining a third grid where the activity circle is located based on the second location and the geographical area covered by the grid in the city grid map;
[0052] A correspondence between the third grid and the activity circle is generated.
[0053] In some embodiments, generating a correspondence between the third grid and the activity circle includes:
[0054] Determining position feature points of the third grid;
[0055] Generate a correspondence between the position feature points of the third grid and the identifier of the activity circle.
[0056] In some embodiments, the content associated with the target activity circle includes one or more of the following:
[0057] The tag is associated with the content of the target activity circle;
[0058] The content associated with the subject and the target activity circle;
[0059] Content that is semantically associated with the target activity circle.
[0060] In some embodiments, the activity circle includes one or more of the following:
[0061] Business activity circle, residential activity circle, sports circle, and learning circle.
[0062] In a third aspect of the present application, a server is provided, comprising a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other via the communication bus;
[0063] Memory for storing computer programs;
[0064] The processor is configured to implement the steps of any one of the content recommendation methods described in the first aspect when executing the program stored in the memory.
[0065] In another aspect of the present application, a computer-readable storage medium is provided, wherein a computer program is stored in the computer-readable storage medium. When the computer program is executed by a processor, the steps of the content recommendation method described in any one of the first aspects are implemented.
[0066] In another aspect of the implementation of the present application, a computer program product comprising instructions is provided, which, when executed on a computer, enables the computer to execute the steps of any of the content recommendation methods described in the first aspect.
[0067] In the technical solution provided by the embodiment of the present application, upon receiving a content recommendation request from a client, the client's first location is obtained, and the first activity circle of the client's first geographic area is determined. The intersection of the first geographic area and the geographic areas where each activity circle is located is then calculated to determine a target activity circle whose geographic area intersects with the client's first geographic area. Content associated with the target activity circle is then recalled and recommended to the user. The above technical solution recommends content to the client user at the activity circle granularity. The recommended content is closely related to the user's daily activities, making the user's LBS (Location Based Services) perception more obvious. The user will be more interested in surrounding events, and the content recommended to the user is more in line with the user's interests and preferences, thereby improving user satisfaction. In addition, in the above technical solution, the target activity circle is determined by determining whether there is an intersection between the geographic areas where the client and the activity circle are located. Even if the client's first location is not within the activity circle, the target activity circle near the client can be found, and content associated with the target activity circle can be recommended to the client. BRIEF DESCRIPTION OF THE DRAWINGS
[0068] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art.
[0069] Figure 1 A flowchart of a content recommendation method provided in an embodiment of the present application;
[0070] Figure 2 This is a first example schematic diagram of a city grid map provided in an embodiment of the present application;
[0071] Figure 3 A detailed flowchart of step S13 provided in an embodiment of the present application;
[0072] Figure 4 A second example schematic diagram of a city grid map provided in an embodiment of the present application;
[0073] Figure 5A schematic diagram of a flow chart of a method for generating a correspondence between grids and activity circles provided in an embodiment of the present application;
[0074] Figure 6 An example of applying the content recommendation method provided in the embodiments of the present application;
[0075] Figure 7 A schematic diagram of the structure of a content recommendation device provided in an embodiment of the present application;
[0076] Figure 8 A schematic diagram of the structure of the server provided in an embodiment of the present application. DETAILED DESCRIPTION
[0077] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.
[0078] With the rapid development of the internet and digital media technologies, the volume of videos on multimedia platforms has increased dramatically. Faced with this vast volume of videos, users often struggle to find videos that match their interests and preferences, resulting in low user satisfaction. This problem also applies to content other than videos, including but not limited to articles or news pushed by official accounts. To improve user satisfaction, multimedia platforms need to address these issues.
[0079] In order to solve the above problems, the present application embodiment provides a content recommendation method, which is applied to the server. Figure 1 As shown, the method includes the following steps S11-S15. The above-mentioned service end can be a desktop computer, a server, etc.
[0080] Step S11: In response to a content recommendation request sent by a client, a first position of the client is obtained.
[0081] The client can be an electronic device capable of providing content recommendations, such as a desktop computer, laptop computer, tablet computer, or smartphone. The first location is the geographic location of the client. The content recommendation request can carry the geographic coordinates of the client's geographic location. The geographic coordinates can be longitude and latitude.
[0082] When a user opens an application related to content recommendation on the client, the client can send a content recommendation request to the server. For example, if the client is a mobile phone and the user opens a short video app on the phone, the phone can send a content recommendation request to the server for short videos.
[0083] After receiving the content recommendation request from the client, the server can obtain the geographical coordinates of the client's location from the content recommendation request as the geographical coordinates of the first location. The server can also obtain the geographical coordinates of the client's location from the client via GPS (Global Positioning System), local area network, or communication base station, etc., as the geographical coordinates of the first location, with the authorization of the client.
[0084] Step S12: determining a first geographical area where the client is located according to the first location.
[0085] The first geographical area where the client is located can be a pre-divided geographical area where the first position is located. The server can compare the geographical coordinates of the first position with the geographical coordinate range of the pre-divided geographical area to determine the geographical coordinate range where the geographical coordinates of the first position are located, thereby determining the first geographical area where the first position is located.
[0086] Step S13: determining a target activity circle that intersects the geographical area where the user is located and the first geographical area.
[0087] An activity circle is a geographical area where users engage in various types of activities. For example, an activity circle can include one or more of the following: a commercial activity circle, a residential activity circle, a sports circle, a learning circle, or a scenic spot. A commercial activity circle is an area where users conduct commercial activities and can be composed of numerous shops, such as Sanlitun Commercial Street or Wangfujing Commercial Street. A residential activity circle is a community-centered area that includes amenities necessary for residential activities, such as Huilongguan, Tiantongyuan, or Beiyuan Garden. These amenities may include barber shops, restaurants, parks, and convenience stores. A sports circle is an area where users engage in sports, such as gyms, parks, and soccer fields. A learning circle is an area centered around educational institutions or learning venues, such as university towns, study rooms, and libraries. Scenic spots can be natural or artificial, such as forest parks or museums or the Bird's Nest.
[0088] The server can determine whether the geographic coordinate range of the first geographic area and the geographic coordinate range of the geographic area where each activity circle is located intersect. If there is an intersection, the server can determine the activity circle as the target activity circle. For example, the first geographic area and the geographic area where the activity circle is located can be represented by a longitude and latitude range. The server can determine whether the longitude and latitude range of the first geographic area and the longitude and latitude range of the geographic area covered by the activity circle intersect. If the longitude and latitude range of the first geographic area and the longitude and latitude range of the geographic area covered by a certain activity circle intersect, the server can determine the activity circle as the target activity circle. The server can determine multiple target activity circles at the same time.
[0089] Step S14: Recalling content to be recommended to the client from the content associated with the target activity circle.
[0090] The content can be videos, articles or news pushed by official accounts, etc.
[0091] The content associated with the target activity circle may include one or more of the following: content associated with the target activity circle by a label; content associated with the target activity circle by a subject; content associated with the target activity circle by semantics. The content associated with the target activity circle may include identification information of the target activity circle; identification information may include the name of the target activity circle, the name of a landmark object, or the name of a landmark building, etc. That is, the content label associated with the target activity circle may include identification information of the target activity circle in the content label, such as the name of the target activity circle, the name of a landmark object, or the name of a landmark building, etc.; the content subject associated with the target activity circle may include identification information of the target activity circle in the content body, such as the name of the target activity circle, the name of a landmark object, or the name of a landmark building, etc.; the content semantics associated with the target activity circle may be the same as the semantics of the identification information of the target activity circle, such as the semantics of the content are the same as the name of the target activity circle, the name of a landmark object, or the name of a landmark building, etc.
[0092] For example, if the target activity circle is named "University A Circle" and a video's tags include "University A Circle," then the video's tags are associated with the target activity circle "University A Circle," and the video is content associated with "University A Circle." For another example, if the target activity circle is Scenic Area B, and Scenic Area B contains Landmark Building B, and the body of an article includes the name of Landmark Building B, then the body of the article is associated with the target activity circle Scenic Area B, and the article is content associated with Scenic Area B.
[0093] The server can use the identification information of the target activity circle to search for content whose tags, subjects or semantics include these identification information from the content library, that is, content associated with the target activity circle, and recall the content to be recommended to the client from the content associated with the target activity circle found.
[0094] In addition, a correspondence between activity circles and content associated with the activity circles can also be pre-established. Specifically, an index can be established between the identification information of the activity circle and the content list associated with the activity circle. The server can use the identification information of the target activity circle as an index to find the content list associated with the target activity circle in the pre-established correspondence, and recall the content to be recommended to the client from the found content list.
[0095] Step S15: recommend the recalled content to the client.
[0096] The server can sort the recalled content based on its quantitative indicators and recommend the content with better quantitative indicators to the client in the sorted order. Quantitative indicators can include click-through rate, conversion rate, etc.
[0097] In the technical solution provided by the embodiment of the present application, when a content recommendation request sent by a client is received, the first location of the client is obtained, and the first activity circle of the first geographical area where the client is located is determined; then the intersection of the first geographical area and the geographical area where each activity circle is located is calculated, and the target activity circle where the geographical area where the client is located intersects with the first geographical area where the client is located is determined; and then the content associated with the target activity circle is recalled and recommended to the user. The above technical solution recommends content to the client user based on the activity circle granularity. The recommended content is closely related to the activities in the user's daily life. The user's LBS perception is more obvious, and the user will be more interested in the surrounding events. The content recommended to the user is more in line with the user's interests and preferences, thereby improving user satisfaction. In addition, in the above technical solution, the target activity circle is determined by judging whether there is an intersection between the geographical area where the client and the activity circle are located. When the first location of the client is not in the activity circle, the target activity circle near the client can also be found, and the content associated with the target activity circle can be recommended to the client.
[0098] In some embodiments, the server can also determine the first geographical area in the following manner, that is, the above step S12 can be implemented in the following manner: based on the first location and the geographical area covered by the grid in the city grid map, determine the first grid where the client is located, and use the geographical area covered by the first grid as the first geographical area where the client is located.
[0099] A city grid map is a map obtained by dividing a city map into grids, where each grid covers a corresponding geographical area in the map. Figure 2 As shown, the city map is divided into regular hexagonal grids to obtain Figure 2 Part of the city grid map shown, Figure 2 Grid 21 in FIG. 2 covers the geographical area marked with left slashes, and grid 22 covers the geographical area marked with right slashes.
[0100] The server can determine whether the first location is within the geographical area covered by a certain grid by judging whether the geographical coordinates of the first location are within the geographical coordinate range of the geographical area covered by the grid in the city grid map. After the server determines the geographical area covered by the grid where the first location is located, it can determine the grid as the first grid and use the geographical area covered by the first grid as the first geographical area where the client is located. For example, the first location is the longitude and latitude of the client. The server determines the longitude and latitude range of the longitude and latitude of the client based on the longitude and latitude of the client and the longitude and latitude range of the geographical area covered by each grid in the city grid map, thereby determining the first grid where the client is located and using the geographical area covered by the first grid as the first geographical area.
[0101] After determining the first geographical area based on the above method, the server can Figure 3 The method shown in FIG. 1 determines the target activity circle, that is, the above step S13 may include the following steps S31 - S32 .
[0102] Step S31 : According to the geographical area covered by the grid, a neighboring grid that intersects with the geographical area covered by the first grid is determined as a second grid.
[0103] The server may determine, based on the geographic coordinates of the representation points in the geographic area covered by the grid, a neighboring grid that intersects with the geographic area covered by the first grid as the second grid.
[0104] The representative point in the geographical area covered by the grid can be the center point of the geographical area covered by the grid. Figure 2 In the city grid map shown, the characterization point in the geographical area covered by each grid is the center point of the geographical area covered by each grid. The boundary length of the geographical area covered by each regular hexagonal grid is a, and the first grid is grid 23. The geographical areas covered by the grids whose characterization points are less than 2a have intersections. The server can calculate the geographical coordinates of the center point of the geographical area covered by each grid based on the geographical coordinates of the center point of the geographical area covered by each grid. Figure 2 The distance between the center point of the geographical area covered by each gray solid color grid and the center point of the geographical area covered by grid 23 is √3a, and the distance between the center point of the geographical area covered by grid 22 and the center point of the geographical area covered by grid 23 is also √3a, and √3a is less than 2a, then the server can determine Figure 3 The grid filled with medium gray solid color and grid 22 are neighboring grids that intersect with the geographical area covered by grid 23, and the server can Figure 2 The grid filled with a medium gray solid color and the grid 22 are determined as the second grid.
[0105] Step S32: determining the target activity circle according to the correspondence between the grids and the activity circles.
[0106] The target activity circle includes a first activity circle in a geographical area covered by a first grid and / or a second activity circle in a geographical area covered by a second grid.
[0107] Each activity circle can be located entirely or partially within the geographic area covered by a grid. When an activity circle is located within the geographic area covered by a grid, a corresponding relationship may exist between the two. The server may store the correspondence between grids and activity circles, such as the correspondence between the grid identifier and the activity circle identifier. After determining the first grid and the second grid, the server may determine the activity circles corresponding to the first grid and the second grid, respectively, based on the stored correspondence between the grids and the activity circles, i.e., the first activity circle located in the first grid and the second activity circle located in the second grid.
[0108] In the technical solution provided by the embodiment of the present application, a city grid map is used to determine the first grid where the client is located and the adjacent second grid, and then the target activity circle is determined based on the correspondence between the grid and the activity circle. When determining the target activity circle, there is no need to compare each time whether there is an intersection between the first geographical area where the client is located and the geographical area where each activity circle is located; instead, the first geographical area where the client is located and the geographical area where the activity circle is located are unified based on the grid. After determining the first grid where the client is located and the adjacent second grid, the server can use the pre-stored correspondence between the grid and the activity circle to quickly determine all target activity circles in the geographical area covered by the first grid and / or the second grid, reducing the time required to determine the target activity circle, thereby reducing the time required for content recommendation, improving the efficiency of content recommendation to the client, and thus improving user satisfaction.
[0109] In some embodiments, the server may also determine the second grid in the following manner, that is, the above step S31 may include the following steps: according to the geographical area covered by the grid, determine a grid that has a boundary overlapping with the geographical area covered by the first grid as the second grid.
[0110] The server can determine whether there is boundary overlap in the geographical areas covered by the grids based on the geographical coordinates of the boundaries in the geographical areas covered by the grids.
[0111] In an example, Figure 2As shown, the first grid is grid 23. The server can determine that the longitude and latitude of the boundaries of the geographic area covered by the grid filled with solid gray and grid 22 overlap with the longitude and latitude of the boundaries of the geographic area covered by grid 23. Furthermore, the server can determine that the boundaries of the geographic area covered by the grid filled with solid gray and grid 22 overlap with the geographic area covered by grid 23, and the server can use the grid filled with solid gray and grid 22 as the second grid.
[0112] In the technical solution provided in the embodiment of the present application, the second grid is determined by whether the boundaries overlap, without considering the shape or size of each grid itself, which is more versatile and does not require calculating the distance between the representation points. This improves the efficiency of determining the second grid, thereby improving the efficiency of content recommendation to client users, and further improving user satisfaction.
[0113] In some embodiments, boundary overlap may also mean the existence of common boundary points. The server may also determine the second grid in the following manner: determine the boundary points of the first grid based on the geographical area covered by the grid; and determine a grid that has common boundary points with the geographical area covered by the first grid as the second grid.
[0114] The boundary points of a grid can be vertices or any points on the boundary of the geographic area covered by the grid. The server can determine whether the geographic area covered by the grid has a common boundary point based on the geographic coordinates of the boundary points in the geographic area covered by the grid.
[0115] In one example, a city map can be divided into 1 / 60 degree longitude and latitude intervals, and each grid in the resulting city grid map is a quadrilateral grid, such as Figure 4 The first grid is Figure 4 For grid 41 filled with a solid medium gray color, the server can determine that the geographical locations of the four grid vertices A, B, C, and D are the boundary points of the geographic area covered by grid 41. Furthermore, based on the latitude and longitude of the boundary points in the geographic areas covered by each grid, the server can determine that grids 42, 43, and 44 share a common boundary point A with the geographic area covered by grid 41; grids 44, 45, and 46 share a common boundary point B with the geographic area covered by grid 41; grids 46, 47, and 48 share a common boundary point C with the geographic area covered by grid 41; and grids 42, 48, and 49 share a common boundary point D with the geographic area covered by grid 41. In other words, the server can determine that grids 42, 43, 44, 45, 46, 47, 48, and 49 are the second grids.
[0116] In the technical solution provided in the embodiment of the present application, for the urban grid map division method in which each grid includes boundary points with strong characteristics, the second grid is determined by whether there are common boundary points, that is, it is only necessary to compare whether there is overlap in the boundary points of the grids to determine the second grid, which reduces the amount of calculation for determining the second grid and can further improve the efficiency of determining the second grid, thereby further improving the efficiency of content recommendation to client users, and further improving user satisfaction.
[0117] In some embodiments, the correspondence between the grid and the activity circle used in the above step S32 can also be generated based on the following method: Figure 5 As shown, the method includes the following steps S51-S53.
[0118] For ease of explanation, the subject that executes the above-mentioned method of generating the correspondence between grids and activity circles is referred to as the first device, which can be a desktop computer or a server, etc. The first device and the server can be the same device or different devices, which is not limited.
[0119] Step S51, obtaining the second position of the activity circle.
[0120] The second location may be the geographic coordinates of the center or boundary of the activity circle, such as longitude and latitude. The first device may, within the permitted range and based on the activity circle identifier, retrieve the geographic coordinate range of each activity circle from the website, and then obtain the geographic coordinates of the center or boundary of the activity circle as the second location of each activity circle.
[0121] Step S52: determining a third grid where the activity circle is located based on the second location and the geographical area covered by the grid in the city grid map.
[0122] The first device can determine whether the second location is within the geographic area covered by a grid by determining whether the geographic coordinates of the second location are within the geographic coordinate range of the geographic area covered by the grid in the city grid map. After the first device determines the geographic area covered by the grid where the second location is located, it can determine the grid as the third grid where the activity circle is located.
[0123] In one example, the first device may determine the third grid using the longitude and latitude of the second location and the longitude and latitude range of the geographical area covered by the grid in the city grid map. Figure 4As shown, the geographical location of the center of the commercial activity circle 1 is the geographical location of point T, that is, the second position of the commercial activity circle 1 is the geographical location of point T. The longitude and latitude of the geographical location of point T are 116.4549922 east longitude and 39.9208806 north latitude. The longitude and latitude range of the geographical area covered by grid 41 is 116.4500000 east longitude to 116.4666667 east longitude and 39.9166667 north latitude to 39.9333333 north latitude. The first device can determine that the longitude and latitude of the geographical location of point T is within the longitude and latitude range of the geographical area covered by grid 41, and then the first device can determine that grid 41 is the third grid where the commercial activity circle 1 is located.
[0124] Step S53: Generate a correspondence between the third grid and the activity circle.
[0125] The first device may record the correspondence between the third grid and the activity circle by numbering the grids and activity circles. The first device may generate a record based on the number of the activity circle and the number of the third grid corresponding to the activity circle as the correspondence between the third grid and the activity circle.
[0126] In this way, the first device can determine the third grid where the activity circle is located based on the second position of the activity circle and the city grid map, and generate a correspondence between the third grid and the activity circle, and unify the geographical area where the activity circle is located into the grid. Subsequently, when determining the target activity circle where the geographical area intersects with the first geographical area, there is no need to compare whether there is an intersection between the first geographical area where the client is located and the geographical area where each activity circle is located each time. Instead, the target activity circle is determined based on the correspondence between the generated grid and the activity circle, which reduces the time required to determine the target activity circle, thereby reducing the time required for content recommendation, further improving the efficiency of content recommendation to client users, and further improving user satisfaction.
[0127] In some embodiments, the first device may also generate a correspondence between the third grid and the activity circle in the following manner, that is, the above step S53 may also include: determining the position feature points of the third grid; generating a correspondence between the position feature points of the third grid and the identifier of the activity circle.
[0128] The aforementioned location feature points may be grid vertices of the third grid, equally divided points of a grid edge, or a center point of the grid. The identifier of the activity circle may be a name or number of the activity circle. The first device may generate a record based on the identifier of the activity circle and the geographic coordinates of the location feature points of the third grid corresponding to the activity circle, as a correspondence between the third grid and the activity circle.
[0129] For example, continuing the above Figure 4Taking the example of, the correspondence between the third grid and the activity circle generated in the above manner will be described. Figure 4 In, grid 41 is the third grid where commercial activity circle 1 is located. The first device can determine that the position feature points of grid 41 are the 4 grid vertices of grid 41: A, B, C, D. The longitude and latitude of these 4 grid vertices are A<116.4500000, 39.<9166667>, B<116.4500000, 39.<9333333>, C<116.4666667, 39.<9333333>, D<116.4666667, 39.<9166667> respectively. The identifier of commercial activity circle 1 is T. The first device can generate the following 4 records respectively according to the longitude and latitude of the 4 position feature points of grid 41 and the identifier T of commercial activity circle 1:
[0130] A<116.4500000, 39.<9166667> => T;
[0131] B<116.4500000, 39.<9333333> => T;
[0132] C<116.4666667, 39.<9333333> => T;
[0133] D<116.4666667, 39.<9166667> => T.
[0134] In addition, grid 44 is the third grid where commercial activity circle 2 is located. The geographical location where the center of commercial activity circle 2 is located is G. The first device can also generate the following 4 records according to the geographical coordinates of the four grid vertices of grid 44 and the identifier G of commercial activity circle 2:
[0135] A<116.4500000, 39.<9166667> => G;
[0136] B<116.4500000, 39.<9333333> => G; <00
[0141] B<116.4500000, 39.<9333333> => [T, G];
[0142] C<116.4666667, 39.<9333333> => [T];
[0143] D<116.4666667, 39.<9166667> => [T];
[0144] E<116.4333333, 39.<9333333> => [G];
[0145] F<116.4333333, 39.<9166667> => [G].
[0146] Furthermore, the first device can summarize the correspondence between the position feature points and activity circles of all grids in the urban grid map in the above manner, and then obtain a mapping table including the above records.
[0147] In this way, when the server determines the first activity circle corresponding to the first grid and the second activity circle corresponding to the second grid according to the correspondence between the grid and the activity circle, it can directly use the position feature points of the first grid and the second grid to match the pre-generated and stored record information, and can find the identifier of the target activity circle faster. Then, according to the identifier of the target activity circle, content recommendation is made to the client, which further improves the efficiency of content recommendation to users, and further improves user satisfaction.
[0148] To more clearly illustrate the content recommendation method provided in the embodiments of the present application, the embodiments of the present application also provide an example as Figure 6 shown.
[0149] Figure 6 In, the recommendation system interface is the interface of the server. After receiving the content recommendation request from the client, the server obtains the first location where the client is located through the recommendation system interface, which is equivalent to step S11 above; the server determines the first geographical area based on the first location, and then determines the target activity circle, which is equivalent to steps S12 - S13 above; the server performs video recall from the video library, and recalls the videos to be recommended associated with the target activity circle, which is equivalent to step S14 above; after the server sorts the recalled videos to be recommended, it recommends the recalled videos to the client through the recommendation system interface according to the sorting result, which is equivalent to step S15 above.
[0150] Corresponding to the above content recommendation method, the embodiments of the present application also provide a content recommendation device, as Figure 7 shown, the device includes: [[ID=An acquisition module 71 is configured to acquire a first position of a client in response to a content recommendation request sent by the client;
[0152] A first determining module 72 is configured to determine a first geographical area where the client is located based on the first location;
[0153] A second determining module 73 is configured to determine a target activity circle where the geographical area intersects with the first geographical area;
[0154] A recall module 74 is used to recall content to be recommended to the client from the content associated with the target activity circle;
[0155] The recommendation module 75 is used to recommend the recalled content to the client.
[0156] In the technical solution provided by the embodiment of the present application, when a content recommendation request sent by a client is received, the first location of the client is obtained, and the first activity circle of the first geographical area where the client is located is determined; then the intersection of the first geographical area and the geographical area where each activity circle is located is calculated, and the target activity circle where the geographical area where the client is located intersects with the first geographical area where the client is located is determined; and then the content associated with the target activity circle is recalled and recommended to the user. The above technical solution recommends content to the client user based on the activity circle granularity. The recommended content is closely related to the activities in the user's daily life. The user's LBS perception is more obvious, and the user will be more interested in the surrounding events. The content recommended to the user is more in line with the user's interests and preferences, thereby improving user satisfaction. In addition, in the above technical solution, the target activity circle is determined by judging whether there is an intersection between the geographical area where the client and the activity circle are located. When the first location of the client is not in the activity circle, the target activity circle near the client can also be found, and the content associated with the target activity circle can be recommended to the client.
[0157] In some embodiments, the first determining module 72 may be specifically configured to:
[0158] Determining a first grid where the client is located based on the first location and the geographical area covered by the grid in the city grid map, and using the geographical area covered by the first grid as the first geographical area where the client is located;
[0159] The second determining module 73 may be specifically configured to:
[0160] Determine, based on the geographical area covered by the grid, a neighboring grid that intersects with the geographical area covered by the first grid as the second grid;
[0161] According to the correspondence between the grids and the activity circles, a target activity circle is determined, wherein the target activity circle includes a first activity circle in the geographical area covered by the first grid and / or a second activity circle in the geographical area covered by the second grid.
[0162] In some embodiments, the second determining module 73 may be specifically configured to:
[0163] According to the geographical areas covered by the grids, a grid having a boundary overlapping with the geographical area covered by the first grid is determined as the second grid.
[0164] In some embodiments, the second determining module 73 may be specifically configured to:
[0165] Determining boundary points of a first grid based on the geographical area covered by the grid;
[0166] A grid having a common boundary point with the geographical area covered by the first grid is determined as the second grid.
[0167] In some embodiments, the correspondence between the grid and the activity circle can be generated based on the following method:
[0168] Get the second position of the activity circle;
[0169] Determining a third grid where the activity circle is located based on the second location and the geographical area covered by the grid in the city grid map;
[0170] Generate a corresponding relationship between the third grid and the activity circle.
[0171] In some embodiments, generating a correspondence between the third grid and the activity circle may include:
[0172] Determine the position feature points of the third grid;
[0173] Generate a correspondence between the position feature points of the third grid and the identifiers of the activity circles.
[0174] In some embodiments, the content associated with the target activity circle may include one or more of the following:
[0175] The content associated with the tag and the target activity circle;
[0176] The content of the subject's association with the target activity circle;
[0177] Content that is semantically associated with the target activity circle.
[0178] In some embodiments, the activity circle may include one or more of the following:
[0179] Business activity circle, residential activity circle, sports circle, and learning circle.
[0180] The present application also provides a server, such as Figure 8 As shown, it includes a processor 81, a communication interface 82, a memory 83 and a communication bus 84, wherein the processor 81, the communication interface 82, and the memory 83 communicate with each other through the communication bus 84.
[0181] Memory 83, for storing computer programs;
[0182] The processor 81 is configured to implement any of the above-mentioned steps of the content recommendation method when executing the program stored in the memory 83 .
[0183] The communication bus mentioned in the terminal can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. This communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is used in the figure, but this does not mean that there is only one bus or only one type of bus.
[0184] The communication interface is used for communication between the above terminal and other devices.
[0185] The memory may include random access memory (RAM) or non-volatile memory, such as at least one disk storage. Alternatively, the memory may be at least one storage device located away from the processor.
[0186] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, and discrete hardware components.
[0187] In another embodiment provided by the present application, a computer-readable storage medium is further provided, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the content recommendation method described in any of the above embodiments are implemented.
[0188] In another embodiment provided by the present application, a computer program product including instructions is also provided, which, when executed on a computer, enables the computer to execute the steps of the content recommendation method described in any one of the above embodiments.
[0189] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)).
[0190] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.
[0191] Each embodiment in this specification is described in a related manner. Similar portions between the various embodiments can be referenced to each other. Each embodiment focuses on the differences between the other embodiments. In particular, the device, server, storage medium, and computer program product embodiments are generally similar to the method embodiments, so their descriptions are relatively simple. For relevant portions, reference can be made to the descriptions of the method embodiments.
[0192] The above description is only a preferred embodiment of the present application and is not intended to limit the scope of protection of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application are included in the scope of protection of the present application.
Claims
1. A content recommendation method, characterized in that: Applied to the server, the method includes: In response to a content recommendation request sent by a client, obtaining a first position of the client; Determining a first geographical area where the client is located according to the first location; Determine a target activity circle where the geographical area where the target activity circle is located intersects with the first geographical area; Recalling content to be recommended to the client from content associated with the target activity circle; The recalled content is recommended to the client.
2. The method according to claim 1, characterized in that: The determining, according to the first location, a first geographical area where the client is located includes: Determine a first grid where the client is located according to the first location and the geographical area covered by the grid in the city grid map, and use the geographical area covered by the first grid as the first geographical area where the client is located; The determining of a target activity circle where the geographical area where the target activity circle is located intersects with the first geographical area includes: According to the geographical area covered by the grid, determine a neighboring grid that intersects with the geographical area covered by the first grid as the second grid; According to the correspondence between the grids and the activity circles, a target activity circle is determined, wherein the target activity circle includes a first activity circle in the geographical area covered by the first grid and / or a second activity circle in the geographical area covered by the second grid.
3. The method according to claim 2, characterized in that The step of determining, according to the geographical area covered by the grid, a neighboring grid that intersects with the geographical area covered by the first grid as the second grid comprises: According to the geographical area covered by the grid, a grid having a boundary overlapping with the geographical area covered by the first grid is determined as the second grid.
4. The method according to claim 3, characterized in that The step of determining, according to the geographical area covered by the grids, a grid having a boundary overlapping with the geographical area covered by the first grid as the second grid comprises: Determining the boundary points of the first grid according to the geographical area covered by the grid; A grid having a common boundary point with the geographical area covered by the first grid is determined as the second grid.
5. The method according to claim 2, characterized in that: The correspondence between the grid and the activity circle is generated based on the following method: Get the second position of the activity circle; Determine a third grid where the activity circle is located according to the second location and the geographical area covered by the grid in the city grid map; A corresponding relationship between the third grid and the activity circle is generated.
6. The method according to claim 5, characterized in that The generating the corresponding relationship between the third grid and the activity circle includes: Determining position feature points of the third grid; Generate a correspondence between the position feature points of the third grid and the identifier of the activity circle.
7. The method according to any one of claims 1 to 6, characterized in that: The content associated with the target activity circle includes one or more of the following: The content associated with the tag and the target activity circle; The content of the subject's association with the target activity circle; Content that is semantically associated with the target activity circle.
8. The method according to any one of claims 1 to 6, characterized in that: The activity circle includes one or more of the following: Business activity circle, residential activity circle, sports circle, and learning circle.
9. A content recommendation device, characterized in that: The device comprises: An acquisition module, configured to acquire a first position of the client in response to a content recommendation request sent by the client; A first determining module, configured to determine a first geographical area where the client is located according to the first location; A second determination module is used to determine a target activity circle whose geographical area intersects with the first geographical area; A recall module, used to recall content to be recommended to the client from the content associated with the target activity circle; A recommendation module is used to recommend the recalled content to the client.
10. A server, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; Memory, used to store computer programs; A processor, for implementing the steps of the method described in any one of claims 1 to 8 when executing a program stored in a memory.
11. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.