Cluster Generation Device, Cluster Generation Method, and Cluster Generation Program
By clustering users based on the types of spots they visit rather than their geographical location, the method effectively reduces regional biases and enables the analysis of user behavior patterns on a wider scale.
Patent Information
- Application Number
- JP2021172955
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-10-22
- Publication Date
- 2025-06-05
- Estimated Expiration
- 2041-03-19
AI Technical Summary
Existing methods for user clustering based on movement history and preference information often result in users from the same region being grouped together, making it difficult to analyze user behavior on a wider scale such as a national or global level.
The proposed solution involves a cluster generation device, method, and program that classify users based on the types of spots they visit, rather than their geographical location, using position information and time information to reduce regional influence and generate clusters.
This approach allows for the analysis of user behavior patterns while minimizing regional biases, enabling effective clustering even on a national or global scale.
Smart Images

Figure 0007688901000001 
Figure 0007688901000002 
Figure 0007688901000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to a cluster generation device, a cluster generation method, and a cluster generation program that classify users based on user location information and spot information visited by the users.
Background Art
[0002] With the recent spread of smartphones, it has become possible to easily obtain user location information. If it is possible to obtain the location information of multiple users, it becomes possible to visualize the flow of people, and it becomes possible to analyze who gathers in what places and where people flow from and to. Furthermore, by analyzing based on the commonality of the places visited by people, etc., it can be used for regional revitalization, cultural protection, business, etc.
[0003] For example, in Patent Document 1, a method has been proposed in which clustering is performed using a user's movement history and preference information, etc., and analysis such as people's hobbies and behavior patterns is performed.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] However, since the method disclosed in Patent Document 1 performs clustering using a user's behavior history as one element, there is a high possibility that users living in the same region will be generated as one cluster, and it is difficult to perform analysis in a wide area such as the whole country or the whole world.
[0006] Therefore, in the present disclosure, when obtaining the spots visited by a user from the user's movement history, clustering is performed with elements such as the genre of the visited spots, for example, the types of spots such as restaurants, movie theaters, parks, etc., to reduce the influence of regionality and perform user clustering, and a cluster generation program, a cluster generation method, and a cluster generation device are provided for the purpose of grasping those characteristics.
Means for Solving the Problems
[0007] A program for causing a computer including a processor and a memory to execute. The program causes the processor to execute a user information acquisition step of acquiring position information and time information of a plurality of users, and a first cluster generation step of detecting the types of spots visited by the user using the position information of the user and generating a first cluster that is a classification of the user based on the commonality of the types of visited spots.
Effects of the Invention
[0008] According to the present disclosure, by performing cluster generation using information on the spots visited by the user and their types from the position information of the user, it is possible to analyze the user's behavior pattern while reducing the influence of regionality even in an analysis of a wide range of targets such as a national analysis.
Brief Description of the Drawings
[0009]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Embodiments for Carrying Out the Invention
[0010] Hereinafter, a clustering program, a clustering method, and a clustering apparatus according to embodiments of the present disclosure will be described with reference to the drawings. Note that the embodiments described below do not unduly limit the content of the present disclosure described in the claims. Also, not all of the configurations described in the embodiments are essential constituent elements of the present disclosure. Further, in all the drawings for describing the embodiments, the same reference numerals are given to common constituent elements, and repeated descriptions are omitted.
[0011] <Embodiment 1> In Embodiment 1, location information is acquired from a user, and clustering is performed based on the spots visited by the user.
[0012] <Configuration of the Server> The configuration of server 10 will be described in detail below. As shown in FIG. 1, server 10 according to this embodiment includes a communication unit 101, a storage unit 102, and a control unit 103. The communication unit 101 performs processes for the server 10 to communicate with other devices. The communication unit 101 performs transmission processing on the signals generated by the control unit 103 and transmits them to the outside. The communication unit 101 performs reception processing on the signals received from the outside and outputs them to the control unit 103.
[0013] The storage unit 102 is constituted by, for example, a flash memory or the like, and stores data and programs used by the server 10.
[0014] The control unit 103 is realized by the processor 11 reading the programs stored in the storage unit 102 and executing the instructions included in the programs. The control unit 103 controls the operation of the server 10. Specifically, for example, the control unit 103 functions as a user information acquisition unit 1031, a first cluster generation unit 1032, and a second cluster generation unit 1033.
[0015] The functional configuration of the control unit 103 of the server 10 will be described below.
[0016] The user information acquisition unit 1031 acquires the user's location information and time information via the communication unit 101. The user's location information is, for example, information such as latitude and longitude. The time information is the time information at the time when the location information is acquired.
[0017] To obtain the user's location information, information such as GPS (Global Positioning System) installed in the user's smartphone, smartwatch, etc. may be used. Also, terminals such as magnetic readers and IC readers may be installed at spots, etc., and the location information may be obtained when the user causes their own terminal, etc. to be read by these terminals. Furthermore, location information obtained from a base station of a communication device such as a mobile phone, or location information obtained from WiFi (Wireless Fidelity, registered trademark) may be acquired.
[0018] Also, the user information acquisition unit 1031 may acquire location information based on information transmitted to an SNS (Social Networking Service).
[0019] The user information acquisition unit 1031 periodically acquires location information and time information from the user at regular time intervals. The interval for acquiring the user's location information is desirably short in that more detailed analysis becomes possible.
[0020] On the other hand, if the time interval for acquiring location information is long, it is possible to reduce the burden on the system and network, and if the interval is short, the possibility of analyzing the user's behavior in more detail increases. Therefore, the user information acquisition unit 1031 may set the time interval for acquiring the user's location information while considering the analysis target and the load on the system.
[0021] The user information acquisition unit 1031 stores the location information acquired from the user, together with the user ID and the acquired time information, in the user information DB 1021. It is desirable for the server 10 to store the user's location information in the storage unit 102 once so that cluster analysis can be performed from various viewpoints.
[0022] The first cluster generation unit 1032 generates a first cluster, which is a classification of users, based on the type of spot visited by the user. Here, a spot refers to a certain location that can be specified by latitude and longitude, such as a store or a facility. Also, the type of spot specifically includes restaurants, amusement facilities, computer shops, bookstores, etc., and indicates a higher concept of the spot such as the classification or genre of the spot. In addition, the type of spot may be indicated by classifying the service from various aspects, such as the opening date of the spot, the date introduced and registered in SNS (Social Networking Service) or media, the service symbolizing which country (for example, American style, Italian style, etc.), the classification of customer unit price, whether it is for the general public or niche, etc.
[0023] First, based on the information acquired from the user information acquisition unit 1031 and the information in the spot information DB 1022, the first cluster generation unit 1032 determines which spot the user has checked in to, that is, which spot the user has visited.
[0024] In order for the first cluster generation unit 1032 to determine the user's spot visit, for example, the position information such as the latitude and longitude of the user is compared with the position information such as the latitude and longitude of the spot, and if the locations match, it is determined as a visit.
[0025] Also, if it is considered that a visit occurs only when the position information exactly matches, there is a possibility that it may be determined that the user has not visited any spot. Therefore, a certain threshold value L is set, and when the distance between the spot and the user is L or less, it may be considered that the user has visited the spot. This makes it possible to absorb the error of the position information. Also, the map may be divided into a grid pattern in advance, and it may be considered that the user has visited the spot on that mesh. In addition, a general algorithm may be used to determine that the user has visited the spot.
[0026] When the first cluster generation unit 1032 determines a user's spot visit, it determines that the position information of the user and the spot match. At this time, it may simply determine that it is a visit when they match, or it may use the matching information for consecutive time periods to distinguish and determine passing, visiting, and utilization.
[0027] For example, when the user information acquisition unit 1031 acquires the position information of the user at regular time intervals, even if the position information of the user and the spot match, it may be that the user has just passed by the spot rather than visited it. In this case, it may be determined as passing. Also, when the position information of the user and the spot match a certain number of times (the first threshold) or more continuously in time, it may be determined that the user has visited the spot. Furthermore, in spots such as movie theaters, hot spring facilities, and theme parks, when the position information of the user and the spot match a certain number of times (the second threshold) or more continuously in time, it may be determined that the user has utilized the spot. Additionally, when the position information of the user and the spot match a certain number of times (the third threshold) or more continuously in time, it may be determined that the user is working at the spot. In addition, if there are places where the user stays for a long time including night time periods, or places where the user stays for a long time including weekends and holidays, etc., it may be determined that the user is at home at the spot.
[0028] That is, in consecutive time, when the match of the position information of the user and the spot is less than the first threshold, it may be determined as passing, when it is equal to or more than the first threshold and less than the second threshold, it is a visit, and when it is equal to or more than the second threshold and less than the third threshold, it is utilization. Also, each threshold may be set for each spot.
[0029] When the first cluster generation unit 1032 determines a user's spot visit, the user's movement method may be considered. For example, the user information acquisition unit 1031 acquires the user's position information at regular time intervals. At this time, based on the moving distance of the position information for consecutive times and the moving speed inferred from the moving distance per unit time, it may be determined whether the user's movement method is walking or using a moving method such as a car or a train. And when it is determined that the user is moving at least by car, train, etc., even if the position information of the user and the spot match, the user has only passed by the spot and has not visited it. Therefore, the first cluster generation unit 1032 may not determine that the user has visited the spot.
[0030] Regarding the acquisition of the user's position information, for example, when acquiring based on terminals such as a magnetic reader or an IC reader installed at the spot, the first cluster generation unit 1032 may determine that the user has visited the spot when the user's terminal is read by these terminals.
[0031] The first cluster generation unit 1032 detects the type of the spot from the spots visited by the user and generates the first cluster, which is the classification of the user, based on the type of the spots visited by the user. The first cluster generation unit 1032 performs the first cluster generation using, for example, hierarchical clustering, non-hierarchical clustering, or a known algorithm based on the commonality of the types of spots visited by the user. At this time, the first cluster generation unit 1032 sets the target of cluster generation to M and generates clusters based on the common types of spots.
[0032] When performing clustering, the first cluster generation unit 1032 may perform non-hierarchical clustering, for example, based on the similarity considering the type of the spot and the total stay time. Also, for example, non-hierarchical clustering may be performed based on the similarity considering the type of the spot, the average stay time, and the number of visits.
[0033] In addition, when performing clustering, the first cluster generation unit 1032 may generate the first cluster in consideration of the total stay time, number of visits, visit time, visit date and time, average stay time, commonality of the number of visited spots, etc. of the types of spots.
[0034] For example, when there is a user who has stayed in a park for 15 hours, if clustering is simply performed based on the total stay time, a user who has visited the park 30 times for 0.5 hours each and a user who has visited the park 3 times for 5 hours each will be clustered as common. However, the user who has visited the park 30 times for 0.5 hours each may have visited for jogging, and the user who has visited the park 3 times for 5 hours each may have visited for flower viewing. Therefore, by considering the number of visits and the average stay time for clustering, it becomes possible to distinguish between them. Similarly, when there is a user who has stayed in a park for 15 hours, if clustering is simply performed based on the common spots, a user who has visited the same park 5 times for 3 hours each and a user who has visited a different park 5 times for 3 hours each will be clustered as common. However, by considering the number of visits to the type of spot and the number of visited spots, it becomes possible to distinguish between the two. In this way, when performing clustering, the first cluster generation unit 1032 may consider, in addition to the commonality of the types of spots, the total stay time, number of visits, visit time, visit date and time, average stay time, and number of visited spots of the types of spots.
[0035] In addition, for example, when performing clustering, the first cluster generation unit 1032 may use the information of the visit date and time to generate a cluster that visited a movie theater in August, a cluster that visited a ski resort in December, etc.
[0036] Furthermore, when performing clustering, the first cluster generation unit 1032 may generate a cluster by weighting and then considering elements such as the commonality of the types of spots, the total stay time, number of visits, visit time, visit date and time, average stay time, and number of visited spots of the types of spots.
[0037] For example, when clustering with an emphasis on actions at specific dates and times common to clusters such as participating in year-end countdowns, by prioritizing the visit date and time and preferentially clustering users who visit a theme park or the like at that date and time, it becomes possible to generate clusters such as seasonal event participants. Also, for example, when clustering, by prioritizing the visit date and time, clusters can be generated that include visits to a ski resort in early August, which are characterized by visits to a specific spot type at a specific date and time period, and clusters that include visits to an exhibition hall in mid-August and late December.
[0038] The first cluster generation unit 1032 may assign a high value to a meaningful location, that is, a location with a high rarity, for each spot type. Also, a rarity may be assigned to meaningful elements for spots, users, user actions, and the like.
[0039] Regarding the assignment of rarity, the first cluster generation unit 1032 may assign rarity according to the number of spots of each type in the survey area, in other words, according to the bias or ratio of each spot type. For example, a high rarity may be assigned to a spot type with a small number of occurrences compared to another spot type. Specifically, if there are 1000 convenience stores and 10 movie theaters, a high rarity is assigned to the movie theaters with a small number of occurrences. That is, rarity may be assigned using the reciprocal of the number of occurrences of each spot type in the survey area as the value.
[0040] The first cluster generation unit 1032 may take rarity into account according to the visited spot for each spot type, for example. For example, when visiting a movie theater with a high rarity, 10 visit points may be given, and when visiting a movie theater with a low rarity, 1 visit point may be given to take rarity into account.
[0041] For the assignment of rarity, the first cluster generation unit 1032 may, for example, assign a high value when a small number of users, i.e., a certain number of users, take common actions even though the number is small.
[0042] For the assignment of rarity, the first cluster generation unit 1032 may assign rarity according to user actions such as the length of stay, the frequency of visits, and / or the bias of visit times. For example, rarity may be assigned to a type of spot with a large bias compared to other types of spots, or rarity may be assigned to a type of spot with a partial bias compared to other types of spots. The first cluster generation unit 1032 may perform clustering taking rarity into account.
[0043] When performing clustering taking rarity into account, the first cluster generation unit 1032 may calculate it by the following method. For example, use, instead of the number of visits of a certain user to a certain spot in clustering, the value obtained by multiplying the frequency obtained by dividing the number of visits of each type of spot of each user by the total number of visits of all types of spots of each user by the rarity obtained by dividing the total number of visits of all types of spots of all users by the total number of visits of all types of spots of all users. Thereby, clustering can be performed while assigning rarity.
[0044] In the foregoing example, regarding clustering considering rarity, the number of visits was used. However, similar to the number of visits, for the total stay time, average stay time, visit time, visit date and time, and the number of spots visited, clustering considering rarity may also be performed as in the foregoing example. That is, let i = (A / B)×(C / D), and the combinations of A, B, C, and D be (the number of visits for each type of spot of each user, the total number of visits for all types of spots of each user, the total number of visits for all types of spots of all users, the total number of visits for each type of spot of all users), (the total stay time for each type of spot of each user, the total stay time for all types of spots of each user, the total stay time for all types of spots of all users, the total stay time for each type of spot of all users), (the average stay time for each type of spot of each user, the average stay time for all types of spots of each user, the average stay time for all types of spots of all users, the average stay time for each type of spot of all users), (the number of visited spots for each type of spot of each user, the total number of visited spots for all types of spots of each user, the total number of visited spots for all types of spots of all users, the total number of visited spots for each type of spot of all users). By using rarity (C / D) in this way, the importance of the types of spots in the behavior of users may be evaluated and clustering may be performed.
[0045] When the first cluster generation unit 1032 generates the first cluster, a hierarchical clustering, non-hierarchical clustering, or a known clustering algorithm may be used.
[0046] When generating the first cluster, the first cluster generation unit 1032 may generate the first cluster within the specified time with a certain time range. At this time, the first cluster generation unit 1032 may generate a cluster with a range such as day of the week and time zone.
[0047] By performing clustering based on certain elements such as the commonality of spot types, it becomes possible to grasp the characteristics of each cluster or spot. Also, by performing clustering according to the type of spot, the influence of regionality can be reduced, and it becomes possible to perform clustering targeting a wide area. Note that in Embodiment 1, the user's clustering may be performed using only the first cluster obtained by performing clustering using the types of spots visited by the user, by using the function of the first cluster generation unit 1032.
[0048] The second cluster generation unit 1033 generates a second cluster, which is a classification of users, for each first cluster generated by the first cluster generation unit 1032, based on the spots visited by the user.
[0049] Specifically, if the first cluster generation unit 1032 generates three clusters, A, B, and C, as the first clusters, the second cluster generation unit 1033 generates a second cluster, which is a classification of users, for cluster A based on the spots visited by the user. Similarly, the second cluster generation unit 1033 generates a second cluster for clusters B and C as well. The first cluster generation unit 1032 performs clustering based on the types of spots visited by the user, while the second cluster generation unit 1033 performs clustering based on the spots visited by the user.
[0050] The second cluster generation unit 1033 performs cluster generation using, for example, hierarchical clustering, non-hierarchical clustering, or a known algorithm based on the commonality of the spots visited by the user. At this time, the second cluster generation unit 1033 may set the target number of clusters to M, and after performing clustering, extract M clusters from those with a large number of common spots and users and configure them as clusters. At this time, clustering may be performed taking rarity into account by the method described above.
[0051] In addition, when performing clustering, the second cluster generation unit 1033 may generate clusters taking into account the total stay time, number of visits, visit time, visit date and time, average stay time, etc. of the spots.
[0052] Furthermore, when performing clustering, the second cluster generation unit 1033 may generate clusters by weighting and taking into account elements such as the total stay time, number of visits, visit time, visit date and time, average stay time, etc. of the spots.
[0053] The second cluster generation unit 1033 may assign a high value to a meaningful place for the spot, that is, a place with high rarity.
[0054] Regarding the assignment of rarity, the second cluster generation unit 1033 may, for example, assign a high value when a small number but a number exceeding a threshold of users, that is, users within a certain range of numbers, take common actions.
[0055] Regarding the assignment of rarity, the second cluster generation unit 1033 may assign rarity according to, for example, the length of the stay time at the spot, the number of spots in the survey area, the number of visits, and / or the bias of the visit time. For example, rarity may be assigned to a spot with a large bias compared to other spots, or rarity may be assigned to a spot with a partial bias compared to other spots. The second cluster generation unit 1033 may perform clustering taking rarity into account.
[0056] Specifically, although the stay time at a certain spot is usually within 15 minutes, when only some users stay for 60 minutes or more, a high rarity may be assigned, and clustering may be performed considering the commonality of the spots and the stay time at the spots.
[0057] When performing clustering while taking rarity into account, the second cluster generation unit 1033 may calculate it by, for example, the following method. For example, the frequency obtained by dividing the number of visits per spot of each user by the total number of visits to all spots of each user is multiplied by the rarity obtained by dividing the total number of visits to all spots of all users by the total number of visits per spot of all users, and the resulting value is used instead of the number of visits of a certain spot of a certain user in clustering. Thereby, clustering can be performed while imparting rarity. Note that rarity may be taken into account not only for the number of visits but also for the total stay time, average stay time, visit time, visit date and time, and the number of visited spots. That is, let i = (A / B)×(C / D), and the combinations of A, B, C, and D are (the number of visits per spot of each user, the total number of visits to all spots of each user, the total number of visits to all spots of all users, the total number of visits per spot of all users), (the total stay time per spot of each user, the total stay time of all spots of each user, the total stay time of all spots of all users, the total stay time per spot of all users), (the average stay time per spot of each user, the average stay time of all spots of each user, the average stay time of all spots of all users, the average stay time per spot of all users), (the number of visited spots per spot of each user, the total number of visited spots of all spots of each user, the total number of visited spots of all spots of all users, the total number of visited spots per spot of all users). By using rarity (C / D) in this way, the importance of spots in the behavior of users may be evaluated and clustered.
[0058] After generating the second cluster, the second cluster generation unit 1033 may extract the bias for each cluster of spots, assign rarity to the spots, and generate the second cluster again. Also, after generating the second cluster, assigning rarity to the spots and performing scoring, the second cluster extracted when using hierarchical clustering may be controlled.
[0059] Furthermore, for example, for a certain spot, a spot with some characteristics, such as a spot with few related spots, or a spot with many related spots despite being far from other spots, etc., a high rarity may be assigned. Also, rarity may be assigned to spots considering the number of postings on the Internet site and / or the bias in the number of postings, etc.
[0060] When generating clusters, the second cluster generation unit 1033 may perform cluster generation based on the commonality of the spots visited by the user after selecting only the spots whose rarity exceeds a certain threshold.
[0061] When generating clusters, the second cluster generation unit 1033 may set a high score for a cluster that includes many spots with high rarity, preferentially generate the cluster with the high score, or extract the clusters by rearranging from the clusters with high scores after cluster generation.
[0062] When generating clusters, the second cluster generation unit 1033 may limit the range of spots and areas to be classified, and generate clusters based on the spots and areas within the limited range. Also, the second cluster generation unit 1033 may generate clusters within a specified time with a certain time range. At this time, the second cluster generation unit 1033 may generate clusters with a range such as day of the week and time zone.
[0063] By performing clustering based on certain elements such as the commonality of spots, it becomes possible to grasp the characteristics of each cluster or spot. Also, since users generally often visit spots near their place of residence, by performing second clustering based on the spots visited by the user, it becomes possible to perform regional analysis on the first cluster.
[0064] (Specific example of the DB stored in the storage unit) Fig. 2 shows a specific example of the user information DB 1021. The user information acquisition unit 1031 periodically acquires position information and time information from the user at regular time intervals. Then, the user information acquisition unit 1031 stores the user id of the user who has acquired the position information, the acquisition time, and the position information (latitude and longitude) of the user in the user information DB 1021. The information stored in the user information DB 1021 is not limited to these, and other information such as the age (age group), gender, and residential area of the user may be stored.
[0065] Fig. 3 shows a specific example of the spot information DB 1022. The spot information DB 1022 stores an identification id for identifying the spot, the position information (latitude, longitude) of the spot, the spot name (such as a shop name), and the type (classification of the spot such as a restaurant, theme park, station, etc.). In addition, the spot information DB 1022 may store other information such as the opening hours and average budget of the spot, or may store links to the official homepage and introduction page of the spot so that various information of the spot can be obtained.
[0066] (Specific example of cluster generation) The first cluster generation unit 1032 generates a first cluster, which is a classification of the user, based on the type of spot visited by the user. For cluster generation, for example, existing non-hierarchical clustering methods that are already known, such as the K-means algorithm and the minimum average variance method, may be used. Also, not limited to non-hierarchical clustering, a hierarchical clustering method may be used.
[0067] The first cluster generation unit 1032 may generate the first cluster taking into account the commonality of the total stay time, number of visits, visit time, visit date and time, average stay time, and number of visited spots of the type of spot. Also, the first cluster may be generated taking into account the ratio of the total stay time, number of visits, visit time, visit date and time, average stay time, etc. of the type of spot.
[0068] FIG. 4 shows, for example, the total stay time of five types of spots from A to E represented in a radar chart. The first cluster generation unit 1032 may generate the first cluster after normalizing the total stay time, number of visits, visit time, visit date and time, average stay time, etc. of the spot types, for example, by dividing them by their total number. That is, the first cluster generation unit 1032 may create a radar chart like FIG. 4 for each user and generate the first cluster based on the similarity of the radar chart. In this way, by generating the first cluster after normalization, it becomes possible to perform clustering that emphasizes the similarity of the radar chart using the ratios of the respective parameters, that is, the waveform.
[0069] The first cluster generation unit 1032 may generate the first cluster using rarity. Specifically, for example, the frequency obtained by dividing the number of visits for each type of spot of each user by the total number of visits for all types of spots of each user, and the rarity obtained by dividing the total number of visits for all types of spots of all users by the total number of visits for each type of spot of all users are multiplied together, and this value is used instead of the number of visits of a certain spot of a certain user in clustering, so that rarity may be taken into account.
[0070] Also, when considering rarity, rarity may be assigned taking into account not only the number of visits of the user, but also elements such as the ratio of the total stay time, visit time, and average stay time.
[0071] The first cluster generation unit 1032 determines, for example, the number of clusters to be generated as K, and generates K clusters by non-hierarchical clustering. However, the first cluster generation unit 1032 is not limited to non-hierarchical clustering, and other clustering methods may be used.
[0072] For example, when multiple types of spots are assigned to a certain facility, or when there are multiple facilities in the vicinity of the location information visited by the user, if the type of spot cannot be obtained correctly, the first cluster generation unit 1032 may solve the problem that the type of spot cannot be correctly grasped by extracting only the areas with limited types of spots from the target area, and generate the first cluster.
[0073] The second cluster generation unit 1033 generates a second cluster, which is the classification of the user, based on the spot visited by the user. At this time, the second cluster generation unit 1033 may use, for example, hierarchical clustering. However, not limited to hierarchical clustering, other clustering methods such as non-hierarchical clustering methods may also be used.
[0074] In hierarchical clustering, for example, clustering of spot types is performed by regarding the commonality of spots as distance or similarity. Specifically, for example, there are three spots A, B, and C, and the user IDs of the users who visited these spots are A = (01, 02, 03, 04, 05), B = (01, 02, 03, 04, 06), and C = (01, 02, 07, 08, 09) respectively. In this case, A and B with high user commonality (high similarity) are first clustered, and then clustering is performed in the form of A + B, C. As candidates for hierarchical clustering, patterns such as A + B + C, A + B, C, A, and B are generated.
[0075] The second cluster generation unit 1033 performs hierarchical clustering while combining similar spots to generate the second cluster. At this time, clusters with few common spots are considered to be limited to visits to general places such as stations and convenience stores, and have few features. Therefore, the final cluster may be generated by extracting the cluster with many common spots (the number of common users is reduced).
[0076] In addition, in order to select characteristic clusters, the second cluster generation unit 1033 may sort the clusters in descending order according to the number of common spots × the number of users. Additionally, indicators such as the total stay time of the common spots may be used, or other elements for extracting characteristic clusters may be taken into account. Further, the second cluster generation unit 1033 may use these indicators to extract the top M and configure them as clusters.
[0077] The second cluster generation unit 1033 is not limited to hierarchical clustering, and may perform cluster generation using non-hierarchical clustering or known clustering algorithms.
[0078] The second cluster generation unit 1033 may generate the second clusters using rarity. When generating clusters, the second cluster generation unit 1033 may calculate the rarity from the spots included in the clusters as described later, and may sort the generated clusters in descending order of rarity. At this time, the second cluster generation unit 1033 may extract M from those with high rarity.
[0079] Regarding the calculation of rarity, for example, the second cluster generation unit 1033 may take the reciprocal according to the number of user visits as the rarity.
[0080] For example, the second cluster generation unit 1033 may take into account rarity by using, instead of the value obtained by taking the reciprocal according to the number of visits of a certain spot of a certain user in clustering, the value obtained by dividing the total number of visits of all spots of all users by the total number of visits of each spot of all users.
[0081] In addition, when considering rarity, rarity may be assigned taking into account not only the number of user visits but also elements such as total stay time, visit time, and average stay time.
[0082] Fig. 5 shows a specific example 1041 of the second cluster generated after the second cluster generation unit 1033 performs clustering. For example, when aiming to generate 100 clusters, an example of generating 100 clusters is shown, starting from those with many common spots and a large number of constituent people.
[0083] The second cluster generation unit 1033 may perform clustering after taking into account not only the commonality of spots but also elements such as total stay time, visit time, visit date and time, visit frequency, average stay time, etc. At this time, the second cluster generation unit 1033 may perform clustering after weighting each element such as the commonality of spots, total stay time, visit time, visit date and time, visit frequency, average stay time, etc.
[0084] Fig. 6 shows a specific example 1042 of performing clustering by taking into account, in addition to the commonality of spots, stay time, visit frequency (shown as CI frequency in Fig. 6), stay time dispersion, visit frequency dispersion, maximum stay time, minimum stay time, maximum visit frequency, and minimum visit frequency. Although omitted in Fig. 6, actually, as in Fig. 5, there are multiple spots in each second cluster. For example, in the second cluster with cluster ID1 in Fig. 6, not only spot A but also spots BCDE exist as elements.
[0085] (Processing flow) Fig. 7 shows the processing flow of the cluster generation program in Embodiment 1 of the present disclosure.
[0086] In step S1031, the user information acquisition unit 1031 acquires the position information and time of the user. Then, the user information acquisition unit 1031 stores the acquired information in the user information DB 1021.
[0087] In step S1032, the first cluster generation unit 1032 uses the user's location information, time information, and spot information to determine which spots the user has visited. Then, the first cluster generation unit 1032 generates a first cluster using the information of the users who have visited the spots. Each first cluster is generated based on the types of spots that the users have visited in common.
[0088] In step S1033, the second cluster generation unit 1033 performs clustering on the first clusters generated by the first cluster generation unit 1032 based on the commonality of the spots visited by the users, and generates second clusters.
[0089] (Effect) According to the present embodiment, it is possible to analyze how people gather at a spot or area using the user's location information and information regarding the spots visited by the user. Furthermore, by generating and analyzing the first clusters, clustering can be performed at a higher concept that users who visited a live venue in Tokyo and users who visited a live venue in Osaka both participated in the live event, making it possible to perform clustering without being affected by regional factors. That is, it is possible to analyze that both users who visited a live venue in Tokyo and users who visited a live venue in Osaka are both fond of live events.
[0090] Furthermore, by generating the second clusters, it becomes possible to perform a specific analysis of which spots were visited by users with commonalities. Also, by generating the second clusters, it becomes possible to perform a regional analysis. That is, in addition to being able to analyze the respective lives of those who like live events in Tokyo and those who like live events in Osaka, it is also possible to analyze, for example, that they commonly visit a live venue in Niigata.
[0091] <Modification Example 1> In Modification Example 1, clustering is performed after determining the user's companions.
[0092] <Configuration of the Server> The configuration of server 20 will be described in detail below. As shown in FIG. 8, server 20 according to this embodiment includes a communication unit 101, a storage unit 102, and a control unit 203. The communication unit 101 performs processes for the server 20 to communicate with other devices. The communication unit 101 performs transmission processing on the signal generated by the control unit 203 and transmits it to the outside. The communication unit 101 performs reception processing on the signal received from the outside and outputs it to the control unit 203.
[0093] The storage unit 202 is configured by, for example, a flash memory or the like, and stores data and programs used by the server 20.
[0094] The control unit 203 is realized by the processor 11 reading the program stored in the storage unit 102 and executing the instructions included in the program. The control unit 203 controls the operation of the server 20. Specifically, for example, the control unit 203 functions as a user information acquisition unit 1031, a companion determination unit 2034, a first cluster generation unit 2032, and a second cluster generation unit 2033.
[0095] The functional configuration of the control unit 103 of the server 10 will be described below.
[0096] The companion determination unit 2034 makes a determination regarding companions among users. For example, if a certain user visits the same spot as another user at the same time and in the same place, it is determined that they are traveling together.
[0097] If the companion determination unit 2034 simply determines that they are traveling together just because they visit the same spot as another user at the same time and in the same place, then, for example, in places where many people gather such as movie theaters and live venues, all of them will be regarded as companions. Therefore, for example, a threshold such as three places may be set, and when they visit the same spot at the same time above the threshold, the determination may be made that they are traveling together.
[0098] The companion determination unit 2034 may, for example, set a threshold value and extract those exceeding the threshold value from those with a large matching distance with respect to the moving distance within a certain period to determine companions.
[0099] The companion determination unit 2034 determines how many users in total are performing the same action and calculates it as the number of companions. For example, if it is two people and the gender or sexual orientation is known, it can be inferred as a couple, and if it is 20 people or more, it can be inferred as some kind of group.
[0100] The first cluster generation unit 2032 sets a certain condition (for example, the number of companions is N people, N people or more, N people or less, between N people and M people, etc.) for the number of companions in the companion determination unit 2034, and generates a first cluster for the users of companions who meet the condition. The method of generating the first cluster is the same as that of the first cluster generation unit 1032 in the server 10. Thereby, for example, when the companion determination unit 2034 aims to analyze a couple and sets a group of two users traveling together as a companion condition, it is possible to generate a first cluster for the group of two users traveling together and perform analysis.
[0101] The second cluster generation unit 2033 generates a second cluster for each first cluster for the users determined to be companions in the companion determination unit 2034 based on the commonality of the visited spots. The method of generating the second cluster is the same as that of the second cluster generation unit 1033 in the server 10.
[0102] By the above method, it is possible to perform clustering and analysis on users of certain companions.
[0103] Also, in the embodiment of Modification 1, the first cluster generation unit 2032 may perform clustering for all numbers of companions (that is, perform normal clustering without setting companion conditions), and perform clustering with the commonality of the types of visited spots and the number of companions as one element.
[0104] Also, in the embodiment of Modification 1, when analyzing the generated first cluster and second cluster, including the number of companions, the analysis such as the ratio of x companions being y% for a certain spot or type of spot may be performed for this cluster.
[0105] (Processing flow) FIG. 9 shows the processing flow of the cluster generation program in the modification of the present disclosure.
[0106] In step S2031, the user information acquisition unit 1031 acquires the position information and time of the user. Then, the user information acquisition unit 1031 stores the acquired information in the user information DB 1021.
[0107] In step S2034, the companion determination unit 2034 determines companions based on the fact that a plurality of users visit the same spot at the same time.
[0108] In step S2032, the first cluster generation unit 2032 uses the position information, time information of the user, and the information of the spot to grasp which spots the users accompanied by companions visited. Then, the first cluster generation unit 2032 generates the first cluster using the information of the users who visited the spot. Each first cluster belongs to the type of spot that the users commonly visited.
[0109] In step S2033, the second cluster generation unit 2033 performs clustering based on the commonality of the spots visited by the users in the first cluster generated by the first cluster generation unit 2032, and generates the second cluster.
[0110] (Effect) According to this modification, it is possible to determine the companions of the user and change the object of clustering the user according to the number of companions, and analyze, for example, the behavior of a couple, the behavior of a group of three or more people, etc.
[0111] <Modification Example 2> In Modification Example 2, clustering is performed after adding temporal elements that can measure the user's trend sensitivity, such as the opening date of the spot and the date of introduction / registration on SNS (Social Networking Service) media, etc. In the following description, these temporal elements are collectively shown as the opening date.
[0112] In Modification Example 2, the processing is performed with the same configuration as in Embodiment 1. In Embodiment 1, in the spot information DB 1022, information regarding the type of spot is stored, and in the first cluster generation unit 1032, clustering is performed based on the commonality of the type of spot. In contrast, in Modification Example 2, in the spot information DB 1022, information regarding the opening date of the spot is stored.
[0113] The first cluster generation unit 1032, for example, assigns information such as visited within N days from the opening date or visited between the top x% and y% of the visit date from the opening date, and performs clustering according to the period from the opening date of the spot.
[0114] By generating the first cluster as described above, it becomes possible to generate and analyze clusters such as early adopters who visit the spot within a short period after opening.
[0115] Also, in the embodiment of Modification Example 2, when analyzing the generated first cluster and second cluster, the user is analyzed including the period from the opening date. For example, an analysis may be performed on which cluster the users who visited between the top x% and y% of the visit time from the opening date belong to. Also, for example, an analysis may be performed on a certain cluster for a certain spot or type of spot, such as visiting between the top x% and y% from the opening date.
[0116] <Embodiment 2> In Embodiment 2, after clustering, a schedule is generated and displayed for each cluster on what actions to take. Also, recommendations regarding marketing are made.
[0117] <Configuration of Server> Hereinafter, the configuration of the server 30 will be described in detail. As shown in FIG. 10, the server 20 according to the present embodiment includes a communication unit 101, a storage unit 102, and a control unit 303. The communication unit 101 performs processing for the server 30 to communicate with other devices. The communication unit 101 performs transmission processing on the signal generated by the control unit 303 and transmits it to the outside. The communication unit 101 performs reception processing on the signal received from the outside and outputs it to the control unit 303.
[0118] The storage unit 202 is configured by, for example, a flash memory or the like, and stores data and programs used by the server 20.
[0119] The control unit 303 is realized by the processor 11 reading the program stored in the storage unit 102 and executing the instructions included in the program. The control unit 303 controls the operation of the server 30. Specifically, for example, the control unit 303 functions as a user information acquisition unit 1031, a first cluster generation unit 1032, a schedule generation unit 3035, a display unit 3036, and a recommendation unit 3037. Note that the user information acquisition unit 1031 and the first cluster generation unit 1032 perform the same processing as the server 10.
[0120] Hereinafter, the functional configuration of the control unit 303 of the server 30 will be described.
[0121] The schedule generation unit 3035 generates a usage schedule for how the use of the spots or types of spots belonging to the cluster has changed for each user for each first cluster generated by the first cluster generation unit 1032 or for each second cluster generated by the second cluster generation unit 1033. That is, a schedule is generated for each first cluster classified by the first cluster generation unit 1032 or for each second cluster generated by the second cluster generation unit 1033.
[0122] At this time, as described above, the schedule generation unit 3035 may generate a schedule after the first cluster generation unit 1032 determines the user's employment, home presence, movement, etc. from the user's location information, spot location information, and time information.
[0123] When generating a schedule, the schedule generation unit 3035 plots the change relationship between the types of each spot for each user based on, for example, the history of changes between the types of each spot of the users belonging to the first cluster or the history of changes between each spot of the users belonging to the second cluster, and then generates a schedule. That is, assuming that there are five types of spots A to E in the first cluster, the schedule generation unit 3035 generates a matrix for each user action for the change patterns of A~A (continuation), A~B, A~C, … B~A, B~B (continuation), B~C, … E~D, E~E (continuation). Then, the schedule generation unit 3035 generates, for example, the most frequent change pattern as a schedule and generates it as the schedule for the users belonging to the first cluster.
[0124] When generating a schedule, the schedule generation unit 3035 is not limited to the above method. For example, it may combine the types of spots that are most frequently visited by the user for each time period. Also, for example, it may make the history of changes between the types of spots into a schedule for each user and generate the most frequent schedule as the schedule for that cluster.
[0125] By generating a schedule in this way, it becomes possible to generate a schedule while grasping the context of the changes between the types of spots or between spots.
[0126] By generating a schedule using the change relationship between spot types or between spots, it is possible to reduce the computational complexity compared to creating a schedule from the user's location information. Also, by using the relationship of changes between spot types, it is possible to generate and analyze a schedule between common spot types.
[0127] For example, the schedule generation unit 3035 may generate a schedule by determining the majority spot type within a cluster by majority vote at regular time intervals (such as every 10 minutes, every 30 minutes, every hour, etc.) and plotting it on the time axis.
[0128] Alternatively, after generating a schedule using, for example, the change relationship between spot types or between spots, the schedule generation unit 3035 may determine the time by majority vote of the users within the corresponding cluster and assign a time axis. For example, the schedule generation unit 3035 may select the majority at the start time and end time of the spot types visited by the user and generate a schedule assuming that the spot types were visited within the corresponding time.
[0129] For example, when the change of A~B~C is generated as a schedule, if the start time of A being 9:00 is the majority, the time axis is adjusted to 9:00, if the start time of B being 12:00 is the majority, the time axis is adjusted to 12:00, and if the start time of C being 18:00 is the majority, the time axis is adjusted to 18:00, etc., to assign a time axis.
[0130] When generating a schedule, the schedule generation unit 3035 may generate not a single path but may generate a main schedule and a subordinate schedule separately. For example, in the change relationship between spot types or between spots, the event with the most changes may be associated as the main schedule. After setting a threshold value T, schedules with changes of T or more may be generated as subordinate schedules excluding the main schedule. Further, there may be more than one subordinate schedule, and a plurality of subordinate schedules may be generated.
[0131] When generating a schedule, the schedule generation unit 3035 may generate a schedule within a limited time range, such as a schedule that separates weekdays and holidays, a monthly schedule, or a daily schedule.
[0132] When generating a schedule, the schedule generation unit 3035 may generate a schedule taking into account the number of companions of the user. For example, a schedule for two companions, a schedule for three or more companions, etc. may be generated. Also, for the generated schedule, the number of companions and its ratio may be displayed together.
[0133] In generating a schedule, it is not limited to using the change relationship between spot types or between spots as described above. A visit schedule for the spot types belonging to the first cluster may be generated using a known schedule generation algorithm.
[0134] The display unit 3036 creates and displays a schedule for the spots or spot types belonging to the cluster for the schedule generated by the schedule generation unit 3035. At this time, the display unit 3036 may display only the main schedule, or may display the main schedule and the subordinate schedule together.
[0135] When the display unit 3036 displays the main schedule and the subordinate schedule together, it may display them with different line types and / or colors so that the distinction between the main schedule and the subordinate schedule can be identified, and / or display the main schedule on a straight line and shift the subordinate schedule from the straight line of the main schedule for display. Further, it may be expressed using graphs such as a pie chart and a bar graph. As a result, it becomes possible to visually grasp at a glance the main schedule and the subordinate schedule in the first cluster.
[0136] When the display unit 3036 displays the schedule, it may be displayed so that a plurality of display methods can be switched. For example, as already described, the method of generating the schedule may include a method of combining the most common types of spots for each time zone, a method of combining the most frequent changes according to the change of the type of spot, etc., and these may be displayed so that they can be switched.
[0137] In addition, when the display unit 3036 creates a schedule with a limited time range, it may display them in parallel. The display unit 3036 may, for example, display the schedule on weekdays and the schedule on holidays in parallel, and / or display the schedule for each day of the week in parallel.
[0138] The recommendation unit 3037 makes a recommendation after performing cluster analysis on the first cluster and / or the second cluster. For example, assuming that the owner of the spot receives a recommendation, when analyzing a cluster strongly related to a certain spot, the recommendation unit 3037 analyzes, for the spot, what other spots the user is visiting, what types of stores handling what types of goods and services the user is visiting, what types of goods and services the user is purchasing, etc. As a result, it may recommend goods and services handled at the spot, stores to be partnered with, etc.
[0139] The recommendation unit 3037 assumes, for example, that a person in charge of a regional revitalization association receives a recommendation, and when analyzing strongly related clusters for a certain region, it analyzes in that region what spots the user visits, what types of stores handling what types of goods and services the user visits, and what spots the user visits in other regions. Based on this, at the said spot, it may recommend spots that are not in the said region but are highly likely to be used by the user, and may also recommend goods, services, etc. that the user is highly likely to purchase.
[0140] The recommendation unit 3037 assumes, for example, that a user receives a recommendation, and analyzes from the cluster to which the user belongs what spots other users belonging to the said cluster visit, what types of stores handling what types of goods and services they visit, etc. Based on this, it may recommend other spots that the user has not visited to the user, and may also recommend goods and services.
[0141] By means of cluster analysis as described above, the recommendation unit 3037 may recommend types of spots, stores, facilities, types of goods and services, etc.
[0142] (Specific example of schedule generation) The schedule generation unit 3035 generates a schedule of how the types of spots belonging to the cluster change for the first cluster generated by the first cluster generation unit 3032 or the second cluster generated by the second cluster generation unit 1033. For example, the schedule generation unit 3035 performs schedule generation using the relationship of changes between types of spots.
[0143] Fig. 11 shows a specific example of the relationship between changes among spot types. For example, assume that there are six types of spots A to F belonging to a certain first cluster. At this time, the schedule generation unit 3035 inputs the changes of each user from A to F into the relationship between changes among spot types. For example, if a user who was at the spot type A moves to the spot type E, 1 is added to the cell at the A row and E column. Also, if a user who was at the spot type A remains at the spot type A, 1 is added to the cell at the A row and A column.
[0144] When the schedule generation unit 3035 generates the relationship between changes among spot types, it may be generated at arbitrarily divided time (a certain period from a certain date and time to a certain date and time).
[0145] Fig. 11 shows the relationship 1043 between changes among spot types. In this matrix, when starting from A, the number of continuations staying at A is 4, the change to B is 1, the change to C is 1, the change to D is 2, the change to E is 4, and the change to F is 10. Therefore, the change from A to F is the most dominant and is grasped as the main schedule.
[0146] Similar to the above, when grasping the most dominant changes, it becomes A→F, B→F, C→D, D→E, E→A, F→B. Connecting these changes results in C→D→E→A→F→B. The schedule generation unit 3035 grasps this change as the main schedule.
[0147] Next, in the relationship 1043 between changes among spot types in Fig. 11, although not grasped as the main schedule, those with a large number of changes may be grasped as subordinate schedules. For example, setting the threshold to 10, those with 10 or more changes that were not grasped as the main schedule are grasped. Then, B→C and C→B can be grasped. Therefore, the schedule generation unit 3035 grasps B→C and C→B as subordinate schedules in addition to the main schedule.
[0148] (Specific Example of Schedule Display) The display unit 3036 displays the schedule generated by the schedule generation unit 3035 for the spots belonging to the cluster or the schedule between the types of spots.
[0149] FIG. 12 is a specific example of the schedule displayed by the display unit 3036. In FIG. 12, the main schedule is shown as "Home → Company → Meal → Home" on a straight line, and as subordinate schedules, "Hospital", "Gym", "Movie", etc. are displayed.
[0150] Also, the display unit 3036 may display the schedule generated by the schedule generation unit 3035 in combination with the time axis assigned by the schedule generation unit 3035.
[0151] For example, in FIG. 12, if the majority of the time until 7:00 is for "Home", the time axis is adjusted accordingly. Also, if the majority of the start times of "Company" and "Hospital" are 8:00, and the majority of the time until 18:00 for "Company" and until 10:00 for "Hospital", the time axis is adjusted and displayed accordingly.
[0152] FIG. 13 is a specific example of the schedule displayed by the display unit 3036 and is an example using a bar graph. The display unit 3036 may display the schedule by distinguishing the main schedule and the subordinate schedule by showing them proportionally in the bar graph.
[0153] (Flow of Processing) FIG. 14 shows the flow of processing of the cluster generation program in a modified example of the present disclosure.
[0154] In step S3031, the user information acquisition unit 1031 acquires the user's position information and time. Then, the user information acquisition unit 1031 stores the acquired information in the user information DB 1021.
[0155] In step S3032, the first cluster generation unit 1032 uses the user's location information, time information, and spot information to determine which spots the user has visited. Then, the first cluster generation unit 1032 generates the first cluster using the information of the users who have visited the spots. Each first cluster belongs to the types of common spots that the users have visited in common.
[0156] In step S3035, the schedule generation unit 3035 generates a schedule from the history of changes between the spots or types of spots of the users belonging to the first cluster generated by the first cluster generation unit 1032 or the second cluster of the second cluster generation unit 1033.
[0157] In step S3036, the display unit 3036 displays the schedule generated by the schedule generation unit 3035.
[0158] In step S3037, the recommendation unit 3037 recommends spots, areas, stores belonging to the cluster, and users for the types of products and services handled, other spots to visit, products and services to purchase, etc.
[0159] (Effect) By creating and displaying the cluster schedule by the schedule generation unit 3035 and the display unit 3036, it becomes possible to visually grasp what kind of behavior patterns each cluster takes. Thereby, the user's behavior pattern can be analyzed.
[0160] Also, by performing analysis for each season, weekday or holiday, etc., it is possible to understand the change in behavior during a specific period according to the characteristics of the user, and these can also be utilized for marketing.
[0161] In addition, by recommending recommended spots, recommended products and services, etc. based on cluster analysis, it becomes possible to contribute to regional revitalization and activation of consumption.
[0162] The description of the embodiments ends above, but the above embodiments are merely examples. Therefore, the specific configurations, processing details, etc. of the servers 10, 20, and 30 are not limited to those described in the above embodiments.
[0163] FIG. 15 is a diagram showing the overall configuration of the server 10. The server 10 is a general-purpose computer. The server 10 is realized by, for example, a desktop PC (Personal Computer), a laptop PC, or the like. Further, the server 10 may be a computer having portability such as a smartphone or a tablet terminal. Note that the overall configuration of the servers 20 and 30 is the same as that of the server 10.
[0164] As shown in FIG. 15, the server 10 includes a processor 11, a memory 12, a storage 13, a communication IF 14, and an input / output IF 15.
[0165] The processor 11 is hardware for executing an instruction set described in a program, and is composed of an arithmetic unit, registers, peripheral circuits, and the like. The memory 12 is for temporarily storing programs and data processed by the programs and the like, and is realized by a volatile memory such as a DRAM (Dynamic Random Access Memory). The storage 13 is a storage device for storing data, and is realized by, for example, a flash memory or an HDD (Hard Disc Drive). The communication IF 14 is an interface for transmitting and receiving signals for the server 10 to communicate with an external device. The input / output IF 15 functions as an interface between an input device for receiving an input from a user and an output device for presenting information to the user.
[0166] The clustering device according to the present disclosure is not limited to being realized on a computer operating stand-alone, and may be operated as, for example, a server-type computer.
[0167] FIG. 16 shows an example in which the server 10 of the clustering device and the user terminal 40 are connected. The clustering device according to the present disclosure may be operated by connecting the server 10 and the user terminal 40 via a network, for example, as shown in FIG. 16. At this time, the functions may be distributed between the server 10 and the user terminal 40. Also, the functions may be distributed using a plurality of servers.
[0168] In addition, the information analysis device according to the present disclosure may realize its function, for example, by a computer executing a program, regardless of the above device. The program for realizing the function of the information analysis device may be stored in a computer-readable recording medium such as a USB (Universal Serial Bus) memory, a CD-ROM (Compact Disc - Read Only Memory), a DVD (Digital Versatile Disc), an HDD (Hard Disc Drive), etc., or may be downloaded to the computer via a network.
[0169] As described above, the preferred embodiments of the present disclosure have been described. However, the present disclosure is not limited to such specific embodiments, and the present disclosure includes the invention described in the claims and its equivalent scope. Also, the configurations of the devices described in the above embodiments and modified examples can be combined as appropriate as long as no technical contradiction occurs.
Description of Reference Numerals
[0170] 10, 20, 30... servers, 11... processor, 12... memory, 13... storage, 14... communication IF, 15... input / output IF, 40... user terminal, 101... communication unit, 102, 202... storage units, 103, 203, 303... control units, 1031... user information acquisition unit, 1032, 2032, 3032... first cluster generation units, 1033, 2033, 3033... second cluster generation units, 2034... fellow traveler determination unit, 3035... schedule generation unit, 3036... display unit, 3037... recommendation unit, 1041, 1042... specific examples of clusters, 1043... specific example of the relationship of changes between types of spots
Claims
1. A program for causing a computer including a processor to perform processing, the program causing the processor to: a user information acquisition step of acquiring position information and time information of a plurality of users; a first cluster generation step of detecting the types of spots visited by a user without using the commonality of the visited spots, and generating a first cluster which is a classification of users based on the commonality of the types of spots visited; a schedule step of generating a schedule for each first cluster based on changes in the types of spots of the users belonging to the cluster for each cluster classified in the first cluster generation step; A program for causing the above to be executed.
2. The program according to claim 1, causing the processor to: a schedule presentation step of presenting the schedule of the types of spots generated in the schedule step; A program for causing the above to be executed. The program according to claim 1.
3. The program according to claim 1 or 2, causing the processor to: a recommendation step of recommending a product or service associated with a predetermined type of spot to the user based on the schedule of the types of spots generated in the schedule step; A program for causing the above to be executed. The program according to claim 1 or 2.
4. The program according to any one of claims 1 to 3, wherein the first cluster generation step generates a cluster based on any one or more of the total stay time, the number of visits, the average stay time, the visit time, the visit date and time, and the number of visited spots of the types of the visited spots in addition to the commonality of the types of the visited spots.
5. The program according to any one of claims 1 to 4, wherein the first cluster generation step assigns a rarity according to any one or more of the ratio of the types of spots, the length of the stay time, the number of visits, and / or the bias of the visit time, and generates a cluster taking into account the rarity when generating a cluster based on the commonality of the types of the visited spots.
6. The program according to any one of claims 1 to 5, further comprising a second cluster generation step of generating a second cluster which is a classification of users based on the commonality of the visited spots for each first cluster.
7. The program according to claim 6, wherein the second cluster generation step generates a second cluster based on the commonality of the spots belonging to a designated area among the visited spots.
8. The program according to claim 6 or claim 7, wherein the second cluster generation step generates a cluster based on any one or more of the total stay time, the number of visits, the average stay time, the visit time, and the visit date and time of the visited spots in addition to the commonality of the visited spots.
9. The program according to any one of claims 6 to 8, wherein the second cluster generation step assigns rarity according to any one or more of the ratio of spot types, the length of stay time, the number of visits, and / or the bias of visit time, and when generating a cluster based on the commonality of the visited spots, generates the cluster taking into account the rarity.
10. Further comprising a companion determination step of determining the number of companions of the user, wherein the first cluster generation step and the second cluster generation step use the number of companions as an element for generating a cluster and generate a cluster The program according to any one of claims 6 to 9.
11. The scheduling step is a step of generating a visit schedule for each of the first cluster or the second cluster based on the change between the types of spots or between spots of the users belonging to the cluster for each cluster classified in the first cluster generation step or the second cluster generation step. The program according to any one of claims 6 to 10.
12. The program according to claim 11, wherein the scheduling step, for each cluster classified in the first cluster generation step or the second cluster generation step, based on the change between the types of spots or between spots of the users belonging to the cluster, for each of the first cluster or the second cluster, generates an associated schedule by connecting between the common spot types of the cluster in which the number of users has changed as the main schedule.
13. The program according to claim 11, wherein the schedule step sets a threshold value for each cluster classified in the first cluster generation step or the second cluster generation step, based on the change between the types of spots or between spots of the users belonging to the cluster, and generates a schedule with a change that exceeds the threshold value but does not become the main schedule as a subordinate schedule.
14. The program according to claim 13, further comprising a display step of displaying the main schedule and / or the subordinate schedule generated in the schedule step so that the main schedule and the subordinate schedule can be distinguished.
15. A method executed in an information processing apparatus including a processor and a storage unit, the method comprising the processor executing all steps executed in the invention according to any one of claims 1 to 14.
16. An information processing apparatus including a processor and a storage unit, the processor executing all steps executed in the invention according to any one of claims 1 to 14.
Citation Information
Patent Citations
Stock collating system, stock collation method, and stock collation program
JP2010117788A
Nursery school management support service system and method
JP2015036846A
Nursery facility fee management device
JP2017090956A
System and method related to mobile advertisement supply on marketing
JP2018136968A
Cluster generator, cluster generation method, and cluster generation program
JP2019197460A