A method for visualizing user behavior, a device for visualizing user behavior, a program for visualizing user behavior, and a computer-readable storage medium storing the visualization program.

The method addresses inefficiencies in visualizing user behavior on websites by using N-gram data to create a directed graph structure, reducing node count and computational load while enhancing visibility through hierarchical node grouping and edge settings, effectively depicting user transitions.

JP2026082621APending Publication Date: 2026-05-19MAZDA MOTOR CORP
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
MAZDA MOTOR CORP
Filing Date
2025-06-02
Publication Date
2026-05-19

AI Technical Summary

Technical Problem

Existing methods for visualizing user behavior on websites, such as Non-Patent Document 1, are inadequate for handling complex transitions and large volumes of access logs, particularly in hierarchical structures, leading to inefficiencies in visualization and increased computational load.

Method used

A method using N-gram data to create a directed graph structure from access logs, where nodes represent transition points and edges indicate transitions, allowing for visualization on a two-dimensional plane with reduced node count and time-based edge settings, and hierarchical node grouping for clear distinction between user interests.

Benefits of technology

Efficient visualization of user transitions on complex websites with reduced computational load, enabling clear differentiation of user interests and improved visibility through circular node arrangements and loop-shaped edges, even in hierarchical structures.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026082621000001_ABST
    Figure 2026082621000001_ABST
Patent Text Reader

Abstract

Efficiently visualize user transition behavior based on user access logs. [Solution] The method for visualizing user behavior generates N-gram data 33 based on access log data 31, associating the source P1, destination P2, and time spent at source P1 G3. Based on the N-gram data 33, a directed graph structure Gs is determined that includes nodes Nd corresponding to source P1 and destination P2, and edges Ed corresponding to time spent G3 and indicating transitions between nodes Nd. The directed graph structure Gs is then visualized and displayed on a virtual plane corresponding to the data space Sp.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a method for visualizing user behavior, a device for visualizing user behavior, a program for visualizing user behavior, and a computer-readable storage medium storing the user behavior, based on access logs of a website.

Background Art

[0002] Non-Patent Document 1 discloses a method for visualizing user behavior based on SNS data. Specifically, this visualization method visualizes dominant user behavior in an intuitive manner by tracking a sequence of timestamped events (clickstream) generated by user behavior.

[0003] The visualization method disclosed in Non-Patent Document 1 quantifies events and required time with k-gram, and performs clustering that represents user groups showing similar behaviors based on a graph constructed using the feature amounts. Here, the graph is composed of nodes corresponding to each user and edges representing weights corresponding to the similarity between the clickstreams.

Prior Art Documents

Non-Patent Documents

[0004]

Non-Patent Document 1

Summary of the Invention

[0005] By the way, the method disclosed in Non-Patent Document 1 is merely a visualization of SNS data. In contrast, the inventors of the present application attempted to visualize user transition behavior based on access logs to each transition point in a data space in which multiple transition points can be defined, such as access logs of a hierarchical website.

[0006] This disclosure is made in view of the above points, and its purpose is to efficiently visualize user transition behavior based on each user's access log. [Means for solving the problem]

[0007] A first aspect of this disclosure relates to a method for visualizing user behavior, which is performed by a computer having a calculation unit and a storage unit, and a display unit that displays a screen, based on the user's time-series data.

[0008] According to the first embodiment, the time-series data represents the user's access logs to each transition point in a data space in which multiple transition points can be defined, and the method for visualizing user behavior involves the calculation unit generating N-gram data based on the access logs, associating first identification information that can identify the source transition point, second identification information that can identify the destination transition point, and the time spent at the source transition point; the calculation unit determining a directed graph structure based on the N-gram data, including nodes corresponding to the first and second identification information, and edges that connect the two nodes so as to indicate a transition from the node corresponding to the first identification information to the node corresponding to the second identification information, corresponding to the time spent; and the calculation unit visualizing a set of nodes representing the directed graph structure on a two-dimensional virtual plane displayed on the screen and corresponding to the data space, and visualizing and displaying a set of edges connecting the nodes so as to reflect the time spent.

[0009] According to the first embodiment, the calculation unit generates at least 3-gram or more N-gram data by associating first identification information that can identify the source transition point, second identification information that can identify the destination transition point, and the time spent at the source transition point.

[0010] By using this N-gram data, it is possible to naturally assign parent nodes corresponding to the first identification information, child nodes corresponding to the second identification information, and edges connecting the parent and child nodes. This allows even access logs with enormous amounts of data, or situations where visitors (website viewers) are expected to perform complex transitions on a website, to be reduced to a simple directed graph structure. As a result, from the perspective of the visibility of the displayed content, the user's transitions to each transition point, such as the transitions of users (visitors, viewers) who visit a website, can be efficiently visualized.

[0011] Furthermore, by including the time spent on each N-gram in the N-gram data, it becomes possible to determine the display settings for each edge to reflect that time spent. In addition, by using the source and destination transition points, such as the web pages visited by the visitor, as child and parent nodes, instead of information that identifies individual users, the number of nodes can be significantly reduced compared to a configuration that uses individual visitors as nodes. This reduces the load on the computer. As a result, the transition behavior of users visiting a website can be visualized efficiently, even in terms of computer processing speed.

[0012] Furthermore, according to a second aspect of this disclosure, the time-series data is a website access log that can be represented in a data space having one factor that changes according to the time series, the website has a hierarchical structure and each hierarchy includes one or more web pages as transition points, the plurality of web pages include a first group of pages which includes a target page which indicates the object to be analyzed and a set of web pages which belong to a lower hierarchy than the target page, and a second group of pages which includes a set of web pages which belong to a higher hierarchy than the first group of pages, the set of nodes which corresponds to each web page which belongs to the first group of pages which is a first group of nodes, and the set of nodes which corresponds to each web page which belongs to the second group of pages which is a second group of nodes, the calculation unit may, when visualizing the directed graph structure, display the first group of nodes on the screen and display each node which constitutes the second group of nodes which surrounds each node which constitutes the first group of nodes.

[0013] The inventors of this application attempted to visualize user behavior on a hierarchical website, particularly user transitions, such as moving between web pages, based on the website's access logs.

[0014] However, in the case of a website, for example, visitors may repeatedly visit the same page or move between pages belonging to higher or lower levels of the hierarchy. Furthermore, it is necessary to analyze access logs, which amount to a huge amount of data depending on the number of visitors to the website. The method disclosed in Non-Patent Document 1 cannot address these circumstances specific to websites.

[0015] In light of the above circumstances, the inventors of the present invention considered how to efficiently visualize the transition behavior of users who visited a website based on the website's access logs.

[0016] According to the second embodiment described above, the processing unit causes the first group of nodes relating to the target page and web pages belonging to its lower hierarchy to display each node constituting the second group of nodes so as to surround the first group of nodes.

[0017] This allows for a clear distinction between visitors who are interested in a specific target page and related web pages, and visitors who are not interested in the target page, or who are interested in other web pages. As a result, the user navigation behavior of website visitors can be efficiently visualized in terms of the visibility of the displayed content.

[0018] Furthermore, according to a third aspect of this disclosure, the calculation unit may arrange the first group of nodes in a ring on the screen, and the calculation unit may arrange the second group of nodes in a ring with a larger diameter than the first group of nodes on the screen.

[0019] According to the third embodiment described above, the arithmetic unit arranges the first node group and the second node group in a circular pattern. This ensures that no more than three nodes are located on the same straight line in the first node group. As a result, when transitioning between nodes constituting the first node group, no other node constituting the same first node group is interposed between two nodes, thus improving visibility.

[0020] Furthermore, according to a fourth aspect of this disclosure, if, among the plurality of web pages, a web page belonging to a hierarchy at least one level lower than the target page is defined as a first type of subpage, the calculation unit may display a plurality of nodes in a circular manner on the display unit as the first node group, including a node corresponding to the target page and a node corresponding to the first type of subpage.

[0021] According to the fourth aspect, it is possible to clearly distinguish between visitors who are interested in the target page and the first-type sub-pages, and visitors who are not interested in both pages or are interested in other web pages. As a result, from the perspective of the visibility of the display content, the transition behavior of the user who visited the website can be efficiently visualized.

[0022] Further, according to the fifth aspect of the present disclosure, among the plurality of web pages, a web page that belongs to a lower hierarchy than the first-type sub-page and is transitionable from the first-type sub-page is defined as a second-type sub-page. Then, the arithmetic unit may visualize the first-type sub-page and the second-type sub-page with the same node or nodes that overlap each other, and visualize the transition between the first-type sub-page and the second-type sub-page with a loop-shaped edge representing self-transition.

[0023] Generally, it is considered that the websites of companies such as manufacturers have many hierarchies. In such a case, if all the hierarchies are displayed in a circular manner, it is inconvenient from the perspective of ensuring visibility.

[0024] On the other hand, according to the fifth aspect, the arithmetic unit visualizes the transition between the second-type sub-page and the first-type sub-page defined as above with a loop-shaped edge. By doing so, even a website with a complex hierarchical structure can be visualized without sacrificing visibility.

[0025] Further, according to the sixth aspect of the present disclosure, a reception unit for receiving an operation input by the user is connected to the arithmetic unit. When the arithmetic unit receives an operation input for an edge representing the self-transition or a node connected to the edge on the screen, the arithmetic unit expands the node into a plurality of nodes including a node corresponding to the first-type sub-page and a node corresponding to the second-type sub-page, and displays the plurality of nodes in a circular manner on the screen.

[0026] According to the sixth aspect, the arithmetic unit expands nodes to which loop-shaped edges are connected in response to an operation input on the screen. By expanding the nodes, the relationship between the nodes corresponding to the first type of sub-page and the nodes corresponding to the second type of sub-page can be visualized in detail. Furthermore, by configuring to switch the display in response to the operation input, it is possible to achieve both ensuring visibility when not expanded and providing detailed visualization when expanded.

[0027] Also, according to the seventh aspect of the present disclosure, among the plurality of web pages, a web page belonging to the same hierarchy as the target page or a hierarchy at least one level higher than the target page is defined as the upper page. Separately from the web pages belonging to the first page group, a web page belonging to a hierarchy at least one level lower than the upper page and transitionable from the upper page is defined as the third type of sub-page. Then, for the web page names of the upper page and the third type of sub-page, they may be visualized by overlapping nodes or the same node, and for the transition between the upper page and the third type of sub-page, it may be visualized by a loop-shaped edge representing self-transition.

[0028] According to the seventh aspect, the arithmetic unit visualizes the transition between the upper page and the third type of sub-page with a loop-shaped edge. By doing so, even for a website having a complex hierarchical structure, it can be visualized without sacrificing visibility.

[0029] Also, according to the eighth aspect of the present disclosure, a reception unit for receiving an operation input by the user is connected to the arithmetic unit. When the arithmetic unit receives an operation input for an edge representing the self-transition on the screen or a node to which the edge is connected, the arithmetic unit expands the node into a plurality of nodes including the node corresponding to the upper page and the node corresponding to the third type of sub-page, and displays the plurality of nodes annularly on the screen.

[0030] According to the eighth embodiment described above, the calculation unit expands nodes with connected loop-shaped edges in response to on-screen operation input. By expanding the nodes, the relationship between nodes corresponding to higher-level pages and nodes corresponding to lower-level third-level pages can be visualized in detail. Furthermore, by configuring the display to switch according to operation input, it is possible to achieve both visibility when the nodes are not expanded and detailed visualization when they are expanded.

[0031] Furthermore, according to a ninth aspect of this disclosure, the N-gram data may include in the first identification information information that can identify the source linking to the website, and in the second identification information information that can identify the destination link from the website, and the calculation unit may arrange on the display screen a node corresponding to the source link and a node corresponding to the destination link, flanking the first group of nodes and the second group of nodes.

[0032] According to the ninth embodiment described above, the nodes corresponding to the source and destination links are displayed in a layout different from that of the first and second node groups. This makes the transition between the source and destination links and the website clearly visible, thereby improving visibility.

[0033] Furthermore, according to a tenth aspect of this disclosure, the time-series data may represent access logs to each transition point of the user in the data space having two factors that change according to the time series, the calculation unit may consider the data space as a two-dimensional plane with the two factors as two-dimensional coordinates, associate an index represented as one-dimensional data with each two-dimensional coordinate on the two-dimensional plane, and the calculation unit may generate the N-gram data based on the access logs by classifying the plurality of transition points based on the index.

[0034] According to the tenth embodiment described above, the calculation unit treats the two factors as two-dimensional coordinates and assigns indices, which are represented as one-dimensional data, to these two-dimensional coordinates. By distinguishing transition points based on the values ​​of each index, even access logs with two factors can be converted into time-series data with a single factor. This makes it possible to apply the visualization method described above.

[0035] Furthermore, according to an eleventh aspect of this disclosure, the calculation unit may divide the two-dimensional plane into a plurality of two-dimensional regions and associate the index with at least a portion of the plurality of two-dimensional regions.

[0036] According to the eleventh embodiment described above, the calculation unit divides the two-dimensional plane corresponding to the two-dimensional coordinates into a plurality of two-dimensional regions and assigns an index to at least a portion of them. In this way, even access logs having two factors can be reliably converted into one-dimensional time-series data, that is, one-factor time-series data.

[0037] Furthermore, according to a twelfth aspect of this disclosure, the time-series data may represent access logs to each transition point of the user in the data space having three or more factors that change according to the time series, the calculation unit may select two factors from the three or more factors, the calculation unit may replace the data space with a two-dimensional plane in which the two factors are two-dimensional coordinates, associate an index represented as one-dimensional data with each two-dimensional coordinate on the two-dimensional plane, and the calculation unit may generate the N-gram data based on the access logs by classifying the plurality of transition points based on the index.

[0038] According to the 12th embodiment described above, the calculation unit selects two of the three or more factors, treats the two selected factors as two-dimensional coordinates, and then performs the conversion to single-factor data as described above. In this way, even access logs having three or more factors can be sequentially converted to two-factor time-series data, and then to single-factor time-series data. This makes it possible to apply the visualization method described above.

[0039] Furthermore, according to a thirteenth aspect of this disclosure, the calculation unit may set one of the three or more factors as the dependent variable and two factors as independent variables, and perform a regression analysis based on the dependent variable and the independent variables, and calculate the importance in the regression analysis. The calculation unit may repeatedly perform the regression analysis and the calculation of importance while changing the combination of at least two factors constituting the independent variables from the dependent variable and the independent variables. The calculation unit may determine the combination of two factors constituting the independent variables based on the level of importance, and the calculation unit may perform the association of the index based on the determined combination of the two factors.

[0040] According to the 13th embodiment described above, the calculation unit uses the importance scores obtained during regression analysis to select two of the three or more factors. This regression analysis may be linear or nonlinear. In this way, even access logs with three or more factors can be sequentially converted into two-factor time series data, and then into one-factor time series data. This makes it possible to apply the visualization method described above.

[0041] Furthermore, according to a fourteenth aspect of this disclosure, the time-series data may represent the user's access logs to each transition point in the data space having three or more factors that change according to the time series, the calculation unit may divide the time-series data into a plurality of clusters in the time-series direction for each of the three or more factors, and the calculation unit may generate the N-gram data by considering the plurality of clusters as the plurality of transition points.

[0042] According to the 14th embodiment described above, the calculation unit divides an access log having three or more factors into multiple clusters in the time-series direction. Then, by distinguishing transition points according to the classification to each cluster, even an access log having three or more factors can be sequentially converted into two-factor time-series data, and subsequently into one-factor time-series data. This makes it possible to apply the visualization method described above.

[0043] Furthermore, according to a 15th aspect of the present disclosure, the calculation unit may determine the display settings on the screen for at least one of the edge and the node based on at least one of attribute information including the dwell time at each of the plurality of transition points and the number of transitions to each of the plurality of transition points, wherein the display settings include at least one of the display color, display width and line type of the edge and at least one of the display color, display size and outline of the node.

[0044] According to the 15th embodiment described above, the calculation unit determines display settings for edges, nodes, etc., based on attribute information that characterizes access to each transition point, such as access to each web page constituting the website. In this way, the user's browsing behavior to each transition point can be visualized while making use of the directed graph structure. This contributes to ensuring visibility.

[0045] Furthermore, according to a sixteenth aspect of this disclosure, the arithmetic unit may acquire the pre-generated directed graph structure, and the arithmetic unit may perform a notification based on the differences between the plurality of directed graph structures.

[0046] According to the 16th embodiment described above, the calculation unit, for example, uses one of several directed graph structures as a comparison target, such as a normal directed graph structure or a model directed graph structure. The calculation unit can also detect and notify the presence or absence of anomalies in the other directed graph structure by determining the difference between the comparison target and another directed graph structure. This is advantageous in expanding the range of applications for directed graph structures.

[0047] Furthermore, according to a 17th aspect of this disclosure, the calculation unit may extract the differences in the display settings as differences between a plurality of directed graph structures.

[0048] According to the 17th embodiment described above, the calculation unit extracts differences between multiple directed graph structures through display settings such as nodes and edges. This makes it possible to extract differences between multiple directed graph structures in a way that is highly interpretable.

[0049] Furthermore, according to the 18th aspect of this disclosure, the time-series data may be data indicating the user's location information or physical and mental state.

[0050] According to the 18th aspect described above, the visualization method relating to this disclosure is not limited to website access logs, but can also be applied to data indicating the user's location information or physical and mental state.

[0051] Furthermore, according to a 19th aspect of the present disclosure, the calculation unit generates a two-dimensional map on the screen in which one of the plurality of nodes and the user is plotted to constitute a scatter plot, the two-dimensional map being a scatter plot relating to attribute information including the time spent at each of the plurality of transition points and the number of transitions to each of the plurality of transition points, the calculation unit calculates the density of each plot constituting the scatter plot and displays it superimposed as contour lines on the two-dimensional map.

[0052] According to the 19th embodiment described above, the calculation unit displays the two-dimensional map, making it possible to visualize the variability of nodes or users related to attribute information intuitively and quantitatively.

[0053] Furthermore, according to a 20th aspect of this disclosure, the calculation unit may determine the difference between the previously generated two-dimensional map and other two-dimensional maps based on the results of supervised learning using the previously generated two-dimensional map as training data.

[0054] According to the 20th embodiment described above, the calculation unit, for example, uses one of a plurality of 2D maps as a comparison target, such as a normal 2D map or a model 2D map. The calculation unit can also detect and notify the presence or absence of anomalies in the other 2D map by determining the difference between the comparison target and another 2D map. This is advantageous in expanding the range of applications for 2D maps.

[0055] Furthermore, a 21st aspect of this disclosure relates to a user behavior visualization device, which is performed by a computer having a calculation unit and a storage unit, and a display unit that displays a screen, based on the user's time-series data.

[0056] According to the 21st embodiment, the time-series data represents the user's access logs to each transition point in a data space in which a plurality of transition points can be defined, and the user behavior visualization device includes: data processing means that generates N-gram data relating first identification information that can identify the source transition point, second identification information that can identify the destination transition point, and the time spent at the source transition point based on the access logs; graphing means that determines a directed graph structure based on the N-gram data, including nodes corresponding to the first identification information and the second identification information, and edges that connect the two nodes so as to indicate a transition from the node corresponding to the first identification information to the node corresponding to the second identification information, corresponding to the time spent; and visualization means that visualize a set of nodes representing the directed graph structure on a two-dimensional virtual plane displayed on the screen and corresponding to the data space, and visualize and display a set of edges connecting the nodes so as to reflect the time spent.

[0057] Furthermore, a 22nd aspect of this disclosure relates to a user behavior visualization program executed by a computer comprising a calculation unit and a storage unit, and a display unit that displays a screen, based on the user's time-series data. This invention relates to a user behavior visualization device, which is operated by a computer equipped with a calculation unit and a storage unit, and a display unit that displays a screen, based on the user's time-series data.

[0058] According to the 22nd aspect described above, the time-series data represents the user's access logs to each transition point in a data space in which multiple transition points can be defined, and the user behavior visualization program causes the computer to perform the following processes: the calculation unit generates N-gram data based on the access logs, relating first identification information that can identify the source transition point, second identification information that can identify the destination transition point, and the time spent at the source transition point; the calculation unit determines a directed graph structure based on the N-gram data, including nodes corresponding to the first identification information and the second identification information, and edges that connect the two nodes so as to indicate a transition from the node corresponding to the first identification information to the node corresponding to the second identification information, corresponding to the time spent; and the calculation unit visualizes a set of nodes representing the directed graph structure on a two-dimensional virtual plane displayed on the screen and corresponding to the data space, and visualizes and displays a set of edges connecting the nodes so as to reflect the time spent.

[0059] Furthermore, a 23rd aspect of this disclosure relates to a computer-readable storage medium that stores the user behavior optimization program. [Effects of the Invention]

[0060] As explained above, this disclosure makes it possible to efficiently visualize user transition behavior based on each user's access log. [Brief explanation of the drawing]

[0061] [Figure 1] Figure 1 is a diagram illustrating the hardware configuration of a user behavior visualization device. [Figure 2] Figure 2 illustrates the software configuration of a user behavior visualization device. [Figure 3] Figure 3 is a flowchart illustrating the steps of the method for visualizing user behavior according to the first embodiment. [Figure 4]Figure 4 is a block diagram illustrating the input and output of computer 1 as a visualization device. [Figure 5A] Figure 5A is an example of a website with a hierarchical structure. [Figure 5B] Figure 5B is an example of a link source and destination for a website. [Figure 6] Figure 6 is a table illustrating access log data. [Figure 7] Figure 7 is a flowchart illustrating the steps of the data processing process. [Figure 8] Figure 8 illustrates the process of generating N-gram data. [Figure 9] Figure 9 is a table illustrating the categorized duration of stay. [Figure 10] Figure 10 is a flowchart illustrating the steps of the graphing process. [Figure 11] Figure 11 is an example diagram illustrating the nodes corresponding to each web page. [Figure 12] Figure 12 is a flowchart illustrating the procedure for configuring the display settings of each node. [Figure 13A] Figure 13A is a diagram illustrating the display settings for each node. [Figure 13B] Figure 13B is a diagram illustrating the display settings for each node. [Figure 14] Figure 14 is a flowchart illustrating the procedure for configuring the display settings of each edge. [Figure 15A] Figure 15A is a diagram illustrating the display settings for each edge. [Figure 15B] Figure 15B is a diagram illustrating the display settings for each node. [Figure 16] Figure 16 shows a partial excerpt of the directed graph structure generated based on N-gram data. [Figure 17] Figure 17 is a flowchart illustrating the steps of the first display process. [Figure 18] Figure 18 shows an example of a directed graph structure. [Figure 19A] Figure 19A is a diagram illustrating the deployment of nodes related to the first type of subpage. [Figure 19B] Figure 19B is a diagram illustrating the deployment of nodes related to higher-level pages. [Figure 20] Figure 20 is a flowchart illustrating the steps of the second display process. [Figure 21] Figure 21 shows an example of the display in the second display process. [Figure 22] Figure 22 is a corresponding diagram to Figure 3 illustrating the procedure for visualizing user behavior according to the second embodiment. [Figure 23A] Figure 23A is a diagram illustrating the visualization target according to the second embodiment. [Figure 23B] Figure 23B is a diagram illustrating an example of a visualization target according to the second embodiment. [Figure 24] Figure 24 is a flowchart illustrating the steps of the pretreatment process in the case of two factors. [Figure 25] Figure 25 illustrates a two-dimensional plane corresponding to a two-factor data space. [Figure 26] Figure 26 is a diagram illustrating the index in the second embodiment. [Figure 27A] Figure 27A shows an example of a directed graph structure in the second embodiment. [Figure 27B] Figure 27B shows an example of a directed graph structure in the second embodiment. [Figure 28] Figure 28 is a flowchart showing an example of the pretreatment process steps for cases with three or more factors. [Figure 29] Figure 29 is a flowchart showing another example of the pretreatment process steps in the case of three or more factors. [Figure 30A] Figure 30A is a diagram illustrating another example of the pretreatment process procedure in cases with three or more factors. [Figure 30B] Figure 30B shows an example of a directed graph structure in the case of three or more factors. [Figure 31] Figure 31 is a flowchart illustrating the steps of the first post-processing process. [Figure 32] Figure 32 is a flowchart illustrating the steps of the second post-processing process. [Figure 33] Figure 33 shows an example of how to display the differences between two directed graph structures. [Modes for carrying out the invention]

[0062] The embodiments of this disclosure will be described below with reference to the drawings. Note that the following description is illustrative.

[0063] <1.Device configuration> Figure 1 is a diagram illustrating the hardware configuration of a user behavior visualization device (specifically, computer 1 which constitutes the device), and Figure 2 is a diagram illustrating its software configuration.

[0064] Hereinafter, the method for visualizing user behavior, the device for visualizing user behavior, and the program for visualizing user behavior will be simply referred to as the "visualization method," the "visualization device," and the "visualization program," respectively.

[0065] As illustrated in Figure 1, computer 1 comprises a Central Processing Unit (CPU) 3 that controls the entire computer 1, a Read Only Memory (ROM) 5 that stores boot programs and the like, a Random Access Memory (RAM) 7a that functions as main memory, and a Solid State Drive (SSD) 7b as secondary storage. Note that a Hard Disk Drive (HDD) or the like can be used instead of the SSD 7b as secondary storage.

[0066] Of these elements, the CPU 3 executes various programs. The CPU 3 constitutes the arithmetic unit in this embodiment. The RAM 7a and SSD 7b temporarily or continuously store the programs executed by the CPU 3. The RAM 7a and SSD 7b constitute the storage unit 7 in this embodiment.

[0067] Computer 1 also includes a display 9, graphics memory (Video RAM: VRAM) 11 for storing image data displayed on the display 9, and a keyboard 13a and mouse 13b as a human-machine interface. It is not mandatory for the display 9 to be an element of Computer 1. As will be described later, the display 9 may be an independent element of Computer 1.

[0068] As illustrated in Figures 17 and 18 described later, the display 9 can display a display screen (screen) Sc based on the calculation results of the CPU 3, and constitutes the display unit in this embodiment. The display 9 is electrically connected to the CPU 3 by wireless or wired connection.

[0069] The keyboard 13a and mouse 13b each accept at least one of user input and / or operation (hereinafter collectively referred to as "operation input"). The keyboard 13a and mouse 13b constitute the reception unit 13 in this embodiment. The reception unit 13 is electrically connected to the CPU 3 by wireless or wired connection.

[0070] Furthermore, the computer 1 according to this embodiment can send and receive data with external devices via a communication unit 15 configured as a communication interface. Specifically, the computer 1 is connected to external devices via the communication unit 15.

[0071] Furthermore, as illustrated in Figure 2, the program memory of the SSD7b stores the visualization program 21 according to this embodiment, as well as an operating system (OS) and application programs (not shown).

[0072] Here, the visualization program 21 is a program that causes the computer 1 to execute the visualization method according to this embodiment. The visualization program 21 is pre-stored in a computer-readable storage medium 18. This storage medium 18 is a tangible storage medium composed of a disk medium or the like.

[0073] The visualization program 21 causes the computer 1, which acts as a visualization device, to execute each process that constitutes the visualization method. As illustrated in Figure 2, the visualization program 21 includes a data processing program 211, a graphing program 213, a first display program 215, a second display program 217, a pre-processing program 218, a first post-processing program 219A, and a second post-processing program 219B. Note that the second display program 217, the pre-processing program 218, the first post-processing program 219A, and the second post-processing program 219B are not mandatory. It includes [this]. Note that the second display program 217 is not required.

[0074] In the program memory of SSD7b, each program constituting the visualization program 21 is launched in response to commands input from the keyboard 13a, mouse 13b, etc. At that time, each program is loaded from SSD7b into RAM7a and executed by CPU3.

[0075] Note that these programs that make up the visualization program 21 are merely a convenient grouping of the visualization program 21 based on its function. One or more of these programs may constitute another single program. Furthermore, each program that makes up the visualization program 21 may be divided and executed by two or more computers 1.

[0076] Meanwhile, as shown in Figure 2, the data memory of SSD7b temporarily or continuously stores access log data 31 showing the access logs of the website Ws, and N-gram data 33 generated based on the access log data 31. In addition, the data memory temporarily or continuously stores hierarchical structure data 35, which includes data showing the hierarchical structure of the website Ws, such as a sitemap, a configuration file 37, which includes parameter settings related to the graph structure, and graph structure data 39, which shows the graph structure determined by the CPU 3.

[0077] Furthermore, as in the second embodiment described later, if access logs other than the access logs to the website Ws are selected for visualization, SSD7b will store access log data 31 indicating the access logs corresponding to those selected for visualization.

[0078] In addition, various data generated by each program constituting the visualization program 21, as well as the execution results of application programs, are either continuously stored in the data memory of SSD 7b or temporarily stored in RAM 7a as main memory, as needed.

[0079] <2. Outline of the Visualization Method (First Embodiment)> Figure 3 is a flowchart illustrating the procedure of the visualization method according to the first embodiment. Figure 4 is a block diagram illustrating the input and output of computer 1 as a visualization device. Figure 5A is a diagram illustrating a website Ws having a hierarchical structure. Figure 5B is a diagram illustrating the source link 71 and destination link 72 to website Ws. Figure 6 is a table illustrating access log data 31.

[0080] As shown in Figure 3, the visualization method generally includes a data processing process (step S1), a graphing process (step S2), a first display process (step S3), and a second display process (step S4). Note that the second display process is not mandatory.

[0081] The visualization program 21 is configured to cause the CPU 3 of computer 1 to execute these control processes. Specifically, the CPU 3 executes the data processing process via the data processing program 211, the graphing process via the graphing program 213, the first display process via the first display program 215, and the second display process via the second display program 217.

[0082] The computer 1 configures a visualization device by executing the visualization program 21 on the CPU 3. That is, the computer 1 functions as a visualization device comprising a data processing means 1A that performs step S1, a graphing means 1B that performs step S2, a first display means (visualization means) 1C that performs step S3, and a second display means 1D that performs step S3, as illustrated in Figure 4.

[0083] Thus, the computer 1, acting as a visualization device, executes the visualization method according to this embodiment. This visualization method is performed by the computer 1 and the display 9, acting as a display unit. The visualization method is configured to visualize user behavior based on the user's time-series data. The time-series data is exemplified by the access log data 31.

[0084] More generally, time-series data only needs to represent a user's access logs to each transition point P in a data space Sp where multiple transition points P can be defined. For example, access logs to a website Ws can be considered time-series data with one factor that changes over time (visit logs to each web page 6). This time-series data can be represented for each user, for example, in a one-dimensional data space Sp (see, for example, the middle section of Figure 8).

[0085] Here, the websites Ws that are made visible in this disclosure have a hierarchical structure. As an example, Figure 5A shows an example of the websites Ws of manufacturer A, which manufactures and sells consumer products.

[0086] As illustrated in Figure 5A, the website Ws according to this embodiment consists of multiple layers, starting from the top site 6z. In the example shown, a total of five layers are illustrated, including the top site 6z.

[0087] In this embodiment, the website Ws to be visualized includes one or more web pages 6 at each hierarchical level. In the example shown, the top site 6z has a total of six web pages 6 that present visitors with information on "Brand," "Product Lineup," "Support," "Purchase," "News," and "Sitemap." At least six of these web pages 6 are accessible from the top site 6z. Each of the multiple web pages 6 is an example of a "transition point P" in this embodiment.

[0088] Furthermore, the webpage 6 labeled "Lineup" is linked to at least two other webpages 6, each configured to present visitors with information about "Product 1" and "Product 2." These two webpages 6 are accessible from at least the webpage 6 labeled "Lineup."

[0089] In this embodiment, the information presented on these two web pages 6 is, in both cases, information about manufacturer A's products. For example, "Brand" is web page 6 describing manufacturer A's brand, and "Lineup" is web page 6 describing manufacturer A's product lineup.

[0090] In addition, each of the web pages labeled "News" (6) is linked to a web page labeled "New Product Information" (6), which is configured to present visitors with information about new products from manufacturer A. These web pages (6) can be accessed from at least one of the web pages labeled "News" (6).

[0091] Furthermore, the webpage 6 labeled "Product 1 (Top)" contains at least five webpages 6, each configured to present visitors with information on "Settings List," "Features," "Introduction Video," "Accessories," and "Specifications Table." These five webpages 6 are accessible from at least the webpage 6 labeled "Product 1."

[0092] The information presented on these five web pages 6 is all related to the aforementioned "First Product." Specifically, the "Settings List" is a web page 6 that explains the various settings (various specifications) of the "First Product."

[0093] Furthermore, the webpage 6 labeled "Settings List" contains at least five webpages 6, each configured to present visitors with information regarding "Setting a," "Setting b," and "Setting c." These five webpages 6 are accessible from at least the webpage 6 labeled "Settings List."

[0094] The information presented on these five web pages 6 is all related to the aforementioned "settings list." Specifically, "setting a" is web page 6 describing the first setting (specification) of "product 1," "setting b" is web page 6 describing the second setting (specification) of "product 1," and "setting a" is web page 6 describing the second setting (specification) of "product 1."

[0095] Hereafter, when transitioning from one webpage 6 to another webpage 6, the source webpage 6 will simply be referred to as the "source page" and assigned the code "P1". Similarly, the destination webpage 6 will simply be referred to as the "destination page" and assigned the code "P2".

[0096] On the other hand, the access log data 31 in this disclosure, as described above, is data that shows the access logs of the website Ws. This access log data 31 is, for example, data exported from a commercial access analysis system.

[0097] The access log data 31 is composed of a dataset consisting of user ID 31a, visitor ID 31b, first identification information (referred to as "source page name" in the example) 31c, second identification information (referred to as "destination page name" in the example) 31e, first start time 31d, and second start time 31f, linked together for each visitor ID 31b, as shown in Figure 6, for example.

[0098] Here, User ID 31a is an ID that can identify a visitor. Visitor ID 31b is an ID that can identify each event that transitions between web pages 6. The first start time 31d indicates the time when the user started viewing the source page P1. The second start time 31f indicates the time when the user started viewing the destination page P2.

[0099] Furthermore, the first identification information 31c is information that can identify the source page P1. The first identification information 31c may include information that indicates the source page P1 itself. The second identification information 31e is information that can identify the destination page P2. The second identification information 31e may include information that indicates the destination page P2 itself.

[0100] More specifically, the first identification information 31c may be the page name of the source page P1, or the URL (Uniform Resource Locator) of the source page P1. Similarly, the second identification information 31e may be the page name of the destination page P2, or the URL of the destination page P2. In addition, any information that can identify each web page 6 constituting the website Ws can be used for the first identification information 31c or the second identification information 31e.

[0101] The following explanation details the case where the page name of the source page P1 (hereinafter referred to as "source page name") G1 is used as the first identification information 31c, and the page name of the destination page P2 (hereinafter referred to as "destination page name") G2 is used as the second identification information 31e. However, the following explanation can be replaced with explanations related to the URLs of each page as appropriate.

[0102] The user behavior visualized by the visualization method includes transition patterns between web pages 6 (hereinafter simply referred to as "transition patterns" or "transition behavior"). These transition patterns are visualized based on the source page name G1, the destination page name G2, and the time spent on the source page P1 G3. Here, the time spent G3 can be appropriately calculated by the CPU 3 based on the first start time 31d and the second start time 31f mentioned above.

[0103] Furthermore, the visualization method according to this embodiment is performed based on a target page 6a that indicates the target of analysis, among multiple web pages 6, as illustrated in Figure 5A. In the example shown, the target page 6a is a web page 6 labeled "First Product (Top)".

[0104] Hereinafter, multiple web pages 6 are classified into multiple page groups, which include a first page group 61 and a second page group 62. The first page group 61 includes the target page 6a and a set of web pages 6 belonging to a lower hierarchy than the target page 6a. The second page group 62 includes a set of web pages 6 belonging to a higher hierarchy than the first page group 61.

[0105] Furthermore, web pages 6 that belong to the same hierarchical level as target page 6a, such as web page 6 labeled "Second Product (Top)," may be classified into the second page group 62, the first page group 61, or a third page group that is different from both the first and second page groups 61 and 62. Below, as an example, we will describe the case in which web page 6 belonging to the same hierarchical level as target page 6a is classified into the first page group 61.

[0106] The aforementioned first identification information 31c includes information that can identify each web page 6 constituting the first and second page groups 61 and 62, as well as information that can identify the link source 71 to the website Ws (see Figure 5B). Here, "link source" includes general URLs such as various search sites (Search), URLs contained in emails (Mail), and URLs in SNS (Social Networking Service) (SNS).

[0107] Similarly, the aforementioned second identification information 31e includes information that can identify each web page 6 constituting the first and second page groups 61 and 62, as well as information that can identify the destination 72 linked from the website Ws (see Figure 5B). Here, "destination" includes a general URL, similar to the source link 71.

[0108] The following describes each process that constitutes the visualization method in order. For input and output of computer 1 as a visualization device, please refer to Figure 4 as appropriate.

[0109] <3. Details of the visualization method (First embodiment)> (3-1. Data Processing Process) Figure 7 is a flowchart illustrating the steps of the data processing process. Figure 8 is a diagram explaining the generation process of N-gram data 33. Figure 9 is a table explaining the categorized dwell time G3. When the control process proceeds to step S1 in Figure 3, the CPU 3 executes each step from step S11 in Figure 7.

[0110] In the data processing process, the CPU 3 generates and outputs N-gram data 33 based on the access log (access log data 31), associating the source page name G1 as the first identification information 31c, the destination page name G2 as the second identification information 31e, and the time spent on the source page P1 G3.

[0111] More generally, as in the second embodiment described later, the N-gram data 33 may be data that associates information indicating the source page P1 as first identification information 31c, information indicating the destination page P2 as second identification information 31e, and the time spent on the source page P1 G3.

[0112] Specifically, in step S11, the CPU 3 reads the access log data 31 from the storage unit 7. The configuration of the access log data 31 is as explained using Figure 6, and it is data exported from, for example, a commercial access analysis system, as needed.

[0113] In the following step S12, the CPU 3 calculates, based on the access log data 31, the time spent on the source page P1 G3 for each visitor ID 31b when transitioning from the source page P1 to the destination page P2.

[0114] Specifically, in step S12, CPU3 subtracts the first start time 31d from the second start time 31f for each visitor ID 31b. CPU3 then converts this subtracted value into a discrete categorical variable.

[0115] As an example, in this embodiment, if the subtracted value is less than 10 seconds, CPU3 converts the subtracted value into a first categorical variable called "(10S)". If the subtracted value is 10 seconds or more but less than 1 minute, CPU3 converts the subtracted value into a second categorical variable called "(1M)". If the subtracted value is 1 minute or more but less than 10 minutes, CPU3 converts the subtracted value into a third categorical variable called "(10M)". If the subtracted value is 10 minutes, CPU3 converts the subtracted value into a fourth categorical variable called "(30M)".

[0116] CPU3 considers the categorical variable calculated as described above as the dwell time G3 obtained for each visitor ID 31b. For the association between the continuous subtraction value and the categorical variable, please refer to Figure 9.

[0117] Note that categorization as in step S12 is not mandatory. Furthermore, the association between continuous subtraction values ​​and categorical variables can be changed as desired.

[0118] In the subsequent step S13, the CPU3 generates N-gram data 33 for each visitor ID 31b by associating the source page name G1 as first identification information 31c, the time spent on the page G3, and the destination page name G2 as second identification information 31e. This N-gram data 33 corresponds to a dataset in which 3-gram data consisting of three components, each composed of the source page name G1, the time spent on the page G3, and the destination page name G2, are arranged in order of visitor ID 31b.

[0119] In the subsequent step S14, the CPU 3 temporarily or continuously stores the N-gram data 33 generated in step S13 in the storage unit 7, and terminates the data processing process illustrated in Figure 7.

[0120] Once the data processing process is complete, CPU3 proceeds with the control process from step S1 to step S2 in Figure 7, and starts the graphing process.

[0121] Here, as illustrated in the upper part of Figure 8, we will explain the procedure for generating N-gram data 33 for transition patterns in the access log data 31 shown in Figure 6 where the visitor ID 31b is labeled "002" and "003".

[0122] As shown in the middle of Figure 8, for the transition pattern where visitor ID 31b is assigned "002", the subtraction value calculated in step S12 is "7 minutes". In this case, as explained using Figure 9, the stay time G3 in this transition pattern is "(10M)".

[0123] Similarly, as shown in the middle section of Figure 8, for the transition pattern where visitor ID 31b is assigned "003", the subtraction value calculated in step S12 is "14 seconds". In this case, as explained using Figure 9, the stay time G3 in this transition pattern is "(1M)".

[0124] As shown in the lower part of Figure 8, for the transition pattern where visitor ID 31b is assigned "002", the source page name G1 is "Introduction Video" and the time spent G3 is "(10M) The N-gram conversion is completed by the combination of "Features" which indicates the destination page name G2.

[0125] Similarly, as shown in the lower part of Figure 8, for the transition pattern where visitor ID 31b is "003", the source page name G1 is "Features" and the time spent G3 is "(1M) This, along with the "settings list" indicating the destination page name G2, is used to create an N-gram.

[0126] By performing this process for each visitor ID 31b, a large number of transition patterns are represented as N-grams, resulting in the generation of N-gram data 33.

[0127] (3-2. Graphing Process) Figure 10 is a flowchart illustrating the steps of the graphing process. Figure 11 is a diagram illustrating nodes Nd corresponding to each web page 6. Figure 12 is a flowchart illustrating the steps for setting the display of each node Nd. In addition, Figures 13A and 13B are diagrams to explain the display settings of each node Nd. Figure 14 is a flowchart illustrating the steps for setting the display of each edge Ed. Figures 15A and 15B are diagrams to explain the display settings of each edge Ed. Figure 16 is a diagram showing a partial excerpt of the directed graph structure Gs generated based on the N-gram data 33. When the control process proceeds to step S2 in Figure 3, the CPU 3 executes each step from step S21 in Figure 10.

[0128] In the graphing process, the CPU 3 determines and outputs a directed graph structure Gs based on the N-gram data 33 (see steps S22 and S26). This directed graph structure Gs consists of multiple nodes Nd and multiple edges Ed. Each node Nd contains a node corresponding to the source page name G1 and the destination page name G2, respectively. The edges Ed correspond to the dwell time G3 and connect both nodes Nd,Nd to indicate a transition from node Nd corresponding to source page name G1 to node Nd corresponding to destination page name G2.

[0129] More generally, as in the second embodiment described later, each node Nd may include nodes corresponding to information indicating the source page P1 as the first identification information 31c, and information indicating the destination page P2 as the second identification information 31e.

[0130] Furthermore, in the graphing process, the CPU 3 determines the display settings (display modes) for the nodes Nd and edges Ed that constitute the directed graph structure Gs based on the N-gram data 33 (see steps S24 and S26). The display settings for edges Ed are determined at least based on the dwell time G3. Note that the determination of the display settings may also be performed in the first display process (step S3) described later.

[0131] As will be explained in detail in steps S24 and S26 below, the CPU 3 according to this embodiment determines the display settings on the display screen Sc for at least one (both in this embodiment) of edge Ed and node Nd, based on at least one of the attribute information A which is composed of multiple pieces of information.

[0132] Here, attribute information A includes the time spent on each of the multiple web pages 6 (first time spent and second time spent), calculated based on the time spent G3, and the number of visits to each of the multiple web pages 6 (number of accesses) (see Figures 13A, 13B, 15A, and 15B).

[0133] The display settings determined in the graphing process include at least one of the display color, display width, and line type of edge Ed, and at least one of the display color, display size, and contour of node Nd (see Figures 13A, 13B, 15A, and 15B). These display settings are the same in the second embodiment described later.

[0134] Specifically, in step S21, the CPU 3 reads N-gram data 33 and hierarchical structure data 35 from the memory unit 7. The hierarchical structure data 35 may be, for example, an HTML file showing the sitemap of the website Ws.

[0135] In the subsequent step S22, the CPU3 sets information identifying multiple web pages 6 that make up the website Ws into nodes Nd of the directed graph structure Gs. This information may be the page name of each web page 6, similar to the first identification information 31c and the second identification information 31e.

[0136] Here, the web page 6 selected as node Nd includes the aforementioned source page P1 and destination page P2. Therefore, the node Nd selected in step S32 will include node Nd corresponding to source page name G1 and node Nd corresponding to destination page name G2.

[0137] In the following step S23, the CPU3 classifies each node Nd into a first node group Ng1 and a second node group Ng2 based on the hierarchical structure data 35. As illustrated in Figure 11, the first node group Ng1 represents a set of nodes Nd corresponding to each web page 6 belonging to the first page group 61. As illustrated in the same figure, the second node group Ng2 represents a set of nodes Nd corresponding to each web page 6 belonging to the second page group 62.

[0138] Now, returning to Figure 5A, among the multiple web pages 6 that make up the first page group 61, web pages 6 that belong to a hierarchy at least one level (one level in this embodiment) lower than the target page 6a, such as "Settings List" and "Features," are designated as the first type of subordinate page 6b.

[0139] As can be seen from the comparison between Figure 5A and Figure 11, the first node group Ng1 according to this embodiment is composed of a node Nd corresponding to the target page 6a labeled "First Product (Top)" and a node Nd corresponding to a web page 6 belonging to the first subpage 6b, such as "Settings List".

[0140] Furthermore, among the multiple web pages 6 that make up the first page group 61, web pages 6 such as "setting a" and "setting b" that belong to an even lower hierarchy than the "settings list" which is a first-type subordinate page 6b, and which can be accessed from the "settings list," are designated as second-type subordinate pages 6c.

[0141] As shown in Figure 11, in the first display process described later, the CPU 3 according to this embodiment visualizes the first subpage 6b and the second subpage 6c using the same node Nd or overlapping nodes Nd. In this embodiment, visualization is performed using the former, the same node Nd.

[0142] Returning to Figure 5A, among the multiple web pages 6 that make up the second page group 62, the web page 6 that belongs to a hierarchy at least one level (one level in this embodiment) higher than the target page 6a, such as "New Product Information," is designated as the parent page 6d.

[0143] In addition, separate from the web pages 6 belonging to the first page group 61, a third type of lower page 6e is defined as a web page 6 that belongs to a hierarchy at least one level (one level in this embodiment) lower than the higher page 6d and is accessible from the higher page 6d.

[0144] As shown in Figure 11, in the first display process described later, the CPU 3 according to this embodiment visualizes the upper page 6d and the third lower page 6e using the same node Nd or overlapping nodes Nd. In this embodiment, visualization is performed using the former, the same node Nd.

[0145] In addition, CPU3 performs processing based on the third node group Ng3, in addition to the first node group Ng1 and the second node group Ng2. The third node group Ng3 represents a set of nodes Nd corresponding to the aforementioned source link 71 and destination link 72. The third node group Ng3 is illustrated in Figure 18, which will be described later.

[0146] Then, in step S24, which follows step S23, the CPU 3 performs the display settings for each node Nd based on the N-gram data 33. Specifically, when the control process proceeds to step S24, the CPU 3 performs each process in order from step S241 in Figure 12.

[0147] First, in step S241, the CPU 3 counts the number of visits (accesses) to each web page 6 corresponding to node Nd. This number of visits can be calculated, for example, by counting the number of occurrences of the source page name G1 or destination page name G2 in the N-gram data 33 aggregated for each visitor ID 31b. For web pages 6 that do not appear in the N-gram data 33, the number of visits should be set to "0".

[0148] In the following step S242, the CPU3 sets the display size of each node Nd according to the number of visits obtained in step S241. Note that the display size set here may be the relative display size between nodes Nd in the display screen Scr described later.

[0149] As illustrated in Figure 13A, the CPU 3 in this embodiment increases the display size of node Nd as the number of visits increases. The CPU 3 also decreases the display size of node Nd as the number of visits decreases. The display size of each node Nd may be changed continuously or in stages (discretely).

[0150] In the following step S243, the CPU3 averages the dwell time G3 on the source page P1 corresponding to each node Nd for each browsing action, and outputs the average value as the first dwell time.

[0151] In other words, the first dwell time here is not the dwell time G3 of the source page P1 when transitioning to a specific destination page P2, as is the component of the N-gram data 33. The first dwell time here is the average dwell time G3 for all destination page P2 cases when transitioning to one or more destination pages P2, regardless of the destination from the source page P1.

[0152] Furthermore, the first dwell time here can be rephrased as the average value of all browsing behaviors. For example, if a specific source page P1 is viewed 10 times, CPU3 calculates the average of the 10 dwell times G3 and uses that calculated value as the first dwell time. As mentioned above, the 10 dwell times G3 referred to here are not for a specific destination page P2, but rather for 10 dwell times G3 when transitioning to any destination page P2.

[0153] In the subsequent step S244, the CPU3 sets the display color of each node Nd according to the first dwell time calculated in step S243, as illustrated in Figure 13B. The display color set here is the display color on the display screen Sc, which will be described later. Instead of the display color, the line type of the outline of each node Nd may be changed, or the shape of the outline of each node Nd may be changed.

[0154] In the subsequent step S245, the CPU 3 temporarily or continuously stores the display settings for each node Nd generated in steps S242 and S244 in the storage unit 7 as elements of the graph structure data 39 illustrated in Figure 2. The CPU 3 then terminates the flow illustrated in Figure 12 and proceeds the control process from step S24 in Figure 10 to step S25 in the same figure.

[0155] In step S25, the CPU 3 sets an edge Ed of the directed graph structure Gs based on the N-gram data 33. This edge Ed can be constructed from each of the 3-gram data that make up the N-gram data 33.

[0156] More specifically, CPU3 sets the source page name G1, which constitutes each 3-gram data, as the parent node and the destination page name G2 as the child node. It then sets a single arrow extending from the parent node and connecting to the child node as an edge Ed that constitutes the directed graph structure Gs. The display settings for this edge Ed can be configured to reflect the aforementioned dwell time G3.

[0157] Then, in step S26, which follows step S25, the CPU 3 performs the display settings for each edge Ed based on the N-gram data 33. Specifically, when the control process proceeds to step S26, the CPU 3 performs each process in order from step S261 in Figure 14.

[0158] First, in step S261, the CPU 3 counts the number of transitions from each source page P1 to each destination page P2 for each edge Ed. This count can be performed, for example, by counting the number of occurrences of combinations of source page name G1 and destination page name G2 that are to be counted, based on N-gram data 33.

[0159] CPU3 counts the number of occurrences of each combination of source page name G1 and destination page name G2 for each combination being counted, while changing the combinations being counted.

[0160] In the following step S262, the CPU3 sets the display width of each edge Ed according to the number of transitions obtained in step S261. The display width set here is the thickness of each edge Ed on the display screen Sc described later, and may be the relative thickness between edges Ed on the same screen Sc.

[0161] As illustrated in Figure 15A, the CPU 3 in this embodiment widens the display width of the corresponding edge Ed as the number of transitions increases. The CPU 3 also narrows the display width of the corresponding edge Ed as the number of transitions decreases. The display width may be changed continuously or in a stepwise (discrete) manner.

[0162] In the following step S263, the CPU3 averages the dwell time G3 in the source page P1 corresponding to each edge Ed across the edges Ed that connect the same node Nd, and outputs the average value as the second dwell time.

[0163] In other words, the second dwell time here is calculated by averaging the dwell time G3 for edges Ed that share a common source page name G1 and destination page name G2.

[0164] In the following step S264, the CPU3 sets the display color of each edge Ed according to the second dwell time calculated in step S263, as illustrated in Figure 15B. The display color set here is the display color on the display screen Sc, which will be described later. Instead of the display color, the line type of each edge Ed may be changed, or the shape of each edge Ed (for example, the tip shape) may be changed.

[0165] In the subsequent step S265, the CPU 3 temporarily or continuously stores the display settings for each edge Ed generated in steps S262 and S264 in the storage unit 7 as elements of the graph structure data 39 illustrated in Figure 2. The CPU 3 then terminates the flow illustrated in Figure 14 and the graphing process illustrated in Figure 10.

[0166] Once the graphing process is complete, CPU3 proceeds the control process from step S2 to step S3 in Figure 7, and starts the first display process.

[0167] Here, as illustrated in the upper part of Figure 16, the N-gram data 33 illustrated in Figure 8 will generate three nodes Nd and two edges Ed, as illustrated in the lower part of Figure 16.

[0168] (3-3. First Display Process) Figure 17 is a flowchart illustrating the steps of the first display process. Figure 18 is a diagram showing an example of the display of a directed graph structure Gs. Figure 19A is a diagram illustrating the expansion of node Nd related to the first lower page 6c. Figure 19B is a diagram illustrating the expansion of node Nd related to the upper page 6d. When the control process proceeds to step S3 in Figure 3, the CPU 3 executes each step from step S31 in Figure 17.

[0169] In the first display process, the CPU3 visualizes a set of nodes Nd representing a directed graph structure Gs on the display screen Sc, and also visualizes and displays a set of edges Ed connecting these nodes Nd so as to reflect the dwell time G3 (see step S32).

[0170] More specifically, as illustrated in Figure 18 below, CPU3 performs visualization related to step S32 on a two-dimensional virtual plane Sp2 that is displayed on the display screen Sc and corresponds to the data space Sp.

[0171] Furthermore, when visualizing the directed graph structure Gs, CPU3 displays the aforementioned first node group Ng1 and second node group Ng2 on the display screen Sc. At that time, CPU3 displays each node Nd constituting the second node group Ng2 on the display screen Sc so as to surround each node Nd constituting the first node group Ng1 (see step S32).

[0172] Specifically, in step S31, the CPU 3 reads graph structure data 39 from the memory unit 7. In the following step S32, the CPU 3 visualizes (displays) the directed graph structure Gs on the display screen Sc of the display 9.

[0173] Figure 18 shows a specific example of the directed graph structure Gs visualized by the process in step S32. This example corresponds to the application example to the website Ws exemplified in Figures 5A and 11, etc.

[0174] As shown in Figure 18, CPU3 displays the first node group Ng1, the second node group Ng2, the third node group Ng3, and the set of edges Ed on the display screen Sc.

[0175] More specifically, CPU3 arranges the first node group Ng1 in a circular pattern on the display screen Sc (see the dashed line C1 in Figure 18). Further details show that CPU3 displays multiple nodes Nd in a circular pattern on the display screen Sc as the first node group Ng1, including the node Nd corresponding to target page 6a and the node Nd corresponding to the first subpage 6b.

[0176] In this case, for web pages 6 in which a Type 2 subpage 6c is linked to a Type 1 subpage 6b labeled "Settings List," CPU3 visualizes the Type 1 subpage 6b and the Type 2 subpage 6c using the same or overlapping node Nd.

[0177] CPU3 also displays each node Nd that constitutes the second node group Ng2 on the display screen Sc, surrounding each node Nd that constitutes the first node group Ng1 and is arranged in a ring shape.

[0178] More specifically, CPU3 arranges the second node group Ng2 on the display screen Sc in a larger diameter ring than the first node group Ng1 (see the dashed line C2 in Figure 18). Further details show that CPU3 displays multiple nodes Nd, including the node Nd corresponding to the top site 6z and the node Nd corresponding to the higher-level page 6d, in a ring shape on the display screen Sc as the second node group Ng2.

[0179] Note that the dashed lines C1 and C2 in Figure 18 are merely imaginary lines to indicate the annular arrangement, and it is not essential to display them on display 9.

[0180] In this case, for web pages 6 that have a series of sub-pages 6e of type 3 below them, such as the top-level page 6d labeled "News," CPU3 visualizes the top-level page 6d and the sub-pages 6e of type 3 using the same or overlapping node Nd.

[0181] CPU3 also displays each node Nd constituting the third node group Ng3 on the display screen Sc, flanking each node Nd constituting the first node group Ng1 and the second node group Ng2.

[0182] More specifically, CPU3, as the third node group Ng3, places node Nd corresponding to link source 71 on one side of the display screen Sc (left side in the diagram), and node Nd corresponding to link destination 72 on the other side of the display screen Sc (right side in the diagram).

[0183] The CPU3 also visualizes and displays each edge Ed that constitutes the set of edges Ed on the display screen Sc, reflecting various information (including at least the dwell time G3) based on the N-gram data 33.

[0184] In more detail, CPU3 reflects the display settings described in Figures 13A, 13B, 15A, and 15B, as well as the flowcharts associated with these figures, in addition to the display settings of each edge Ed, and in the display settings of each node Nd that make up the first node group Ng1 and the second node group Ng2.

[0185] By configuring the settings in this way, the display width (thickness) and display color or line type of each edge E, and the display size and display color of each node Nd will be represented with the desired display settings, reflecting the first stay time, second stay time, number of visits, and number of transitions determined based on the N-gram data 33.

[0186] In addition, CPU3 visualizes transitions between Type 1 subpage 6b and Type 2 subpage 6c, which are displayed as the same node Nd, such as Type 1 subpage 6b labeled "Settings List," using a loop-shaped edge E2 that represents a self-transition.

[0187] Similarly, CPU3 visualizes transitions between the upper page 6d and the third lower page 6e, which are displayed as the same node Nd, such as the upper page 6d labeled "News," using a loop-shaped edge E2 that represents a self-transition.

[0188] In the following step S33, the CPU3 accepts a click operation on the loop-shaped edge E2 or the node Nd to which edge E2 is connected. If a click operation is accepted (step S33: YES), the CPU3 proceeds to step S34.

[0189] In step S34, the CPU3 expands the node Nd to which the clicked edge E2 is connected, or the clicked node Nd itself, into the first type lower page 6b and the second type lower page 6c, as illustrated in Figure 19A, or into the upper page 6d and the third type lower page 6e, as illustrated in Figure 19B.

[0190] More generally, when the CPU3 receives an operation input (including operations other than click operations) for an edge Ed representing a self-transition or for a node Nd to which said edge Ed is connected, it expands the node Nd into multiple nodes Nd and displays the multiple nodes Nd in a ring shape on the display screen Sc.

[0191] In this case, multiple nodes Nd may be a combination of a node Nd corresponding to a first-type subpage 6b and a node Nd corresponding to a second-type subpage 6c. Multiple nodes Nd may also be a combination of a node Nd corresponding to a top-level page 6d and a node Nd corresponding to a third-type subpage 6e.

[0192] (3-4. Second Display Process) Figure 20 is a flowchart illustrating the procedure of the second display process. When the control process proceeds to step S4 in Figure 3, the CPU 3 executes each step from step S41 in Figure 20.

[0193] The second display process according to this embodiment includes the CPU 3 generating a two-dimensional map Ma on the screen Scr such that it forms a scatter plot, with one of a plurality of nodes Nd and a user (visitor ID 31b) plotted on the screen Scr. The second display process further includes the CPU 3 calculating the density of each plot that makes up the scatter plot and displaying it superimposed as contour lines Lh on the two-dimensional map Ma.

[0194] Here, the 2D map Ma is a scatter plot of the aforementioned attribute information A, which includes, for example, the time spent at each of the multiple transition points P and the number of transitions to each of the multiple transition points P.

[0195] First, in step S41, the CPU 3 reads the graph structure data 39 and the configuration file 37 from the storage unit 7.

[0196] In the following step S42, the CPU 3 selects any two of the attribute information A1 and A2 determined based on the N-gram data 33. The attribute information A1 and A2 according to this embodiment include "first stay time," "second stay time," "number of visits," and "number of transitions," which characterize the display settings of node Nd and edge Ed respectively, and general numerical data that can be calculated based on the N-gram data 33. The attribute information A1 and A2 selected in step S42 may be pre-recorded in the configuration file 37, for example, or the user may select them each time. As an example, the case in which "first stay time" and "number of visits" are selected as the two attribute information A1 and A2 will be described below.

[0197] In the following step S43, the CPU3 associates the two attribute pieces A1 and A2 selected in step S42 with each node Nd as exemplified in Figure 11, etc. Depending on the attribute pieces A1 and A2 selected in step S42, the two attribute pieces A1 and A2 may also be associated with each visitor ID 31b as exemplified in Figure 6, etc. Below, we will explain, as an example, the case in which the two attribute pieces A1 and A2 are associated with each node Nd.

[0198] In the subsequent step S44, the CPU3 decomposes the node Nd or visitor ID 31b associated in step S43 into at least two populations. This decomposition may be performed, for example, in the time-series direction. This decomposition can be performed not only for each visitor ID 31b but also for each node Nd. For example, the CPU3 can decompose a node Nd corresponding to the same web page 6 into "past nodes" and "current nodes" based on the first start time 31d, etc. Below, as an example, we will mainly explain the case where each node Nd is decomposed into two populations along the time-series direction.

[0199] In the subsequent step S45, the CPU3 performs preparatory processing to generate a scatter plot of the node Nd or visitor ID 31b that was decomposed into two populations in step S44. This scatter plot is a two-dimensional map Ma with the two attribute information A1 and A2 selected in step S42 as the vertical axis and horizontal axis, respectively.

[0200] Specifically, as part of the preparatory process, CPU3 calculates the density (probability density) of the plots constituting each population and generates contour lines Lh that are superimposed on the 2D map Ma (see Figure 21). Any method capable of estimating the density of points can be used to calculate the density, including so-called kernel density estimation.

[0201] In the following step S46, the CPU 3 displays the two-dimensional map Ma and the contour lines Lh generated in step S45 on the display screen Sc of the display 9. The CPU 3 also displays a projection Ls1 of the contour lines Lh along the vertical axis of the two-dimensional map Ma, along the horizontal axis of the two-dimensional map Ma, on the display screen Sc. The CPU 3 also displays a projection Ls2 of the contour lines Lh along the horizontal axis of the two-dimensional map Ma, along the vertical axis of the two-dimensional map Ma.

[0202] Visualizations like the one shown in Figure 21 can provide analysts with an intuitive and quantitative understanding. For example, differences in the shape of contour lines Lh allow for an intuitive and quantitative grasp of the differences between two populations, enabling comparison between them.

[0203] Alternatively, the time series can be divided into finer time spans to display the changes in the 2D map Ma over time. In this case, the 2D map Ma, as shown in Figure 21, can be divided into four quadrants, and the changes in each quadrant over time can be visualized using line graphs or the like.

[0204] <4. Outline of the Visualization Method (Second Embodiment)> In the above embodiment, as an example of an access log, processing of access log data 31 having one factor that changes over time (visit logs to each web page 6) was illustrated. However, the objects of visualization in this disclosure are not limited to access log data 31 having one factor.

[0205] Hereinafter, as a second embodiment of this disclosure, an example of its application to time-series data (access log data 31) showing the user's access logs to each transition point P in a data space Sp having two or more factors that change according to the time series will be described.

[0206] Figure 22 is a corresponding diagram to Figure 3 illustrating the procedure for the user behavior visualization method according to the second embodiment. Figures 23A and 23B are diagrams illustrating the configuration of the access log data 31 according to the second embodiment.

[0207] As shown in Figure 22, the visualization method generally includes a pre-processing process (step T1), a data processing process (step T2), a graphing process (step T3), a first display process (step T4), a second display process (step T5), a first post-processing process (step T6), and a second post-processing process (step T7). Note that the second display process, the first post-processing process, and the second post-processing process are not mandatory.

[0208] Furthermore, the first and second post-processing processes may be included in the visualization method according to the first embodiment. In that case, the first post-processing process may be executed after the first display process in Figure 3, and the second post-processing process may be executed after the second display process in Figure 3.

[0209] Furthermore, the details of the data processing process, graphing process, first display process, and second display process in the second embodiment are substantially the same as those of the processes in the first embodiment. Details of these processes, including the visualization program 21, will be omitted below.

[0210] The visualization program 21 is configured to cause the CPU 3 of computer 1 to execute a pre-processing process, a first post-processing process, and a second post-processing process. Specifically, the CPU 3 executes the pre-processing process via the pre-processing program 218 prior to the execution of the data processing process, executes the first post-processing process via the first post-processing program 219A after the execution of the first display process, and executes the second post-processing process via the second post-processing program 219B after the execution of the second display process.

[0211] The visualization device is configured by the computer 1 when the CPU 3 executes the visualization program 21, which is the same as in the first embodiment.

[0212] The time-series data according to the second embodiment only needs to show the user's access logs to each transition point P in a data space Sp in which multiple transition points P can be defined, similar to the first embodiment.

[0213] As an example, the time-series data according to the second embodiment shows the user's access logs to each transition point P in a data space Sp having two or more factors that change over time. This time-series data is, for example, data indicating the user's location information or physical and mental state, and is stored in the SSD 7b as access log data 31, similar to the first embodiment.

[0214] When time series data having two factors is used, this time series data can be considered as two-dimensional data. In this case, as shown in Figure 23A, the first identification information 31c in the first embodiment becomes information indicating the two-dimensional coordinates of the transition source (two-factor information), and the second identification information 31e becomes information indicating the two-dimensional coordinates of the transition destination (two-factor information).

[0215] Here, when user location information is used in time-series data with two factors, the information indicating each two-dimensional coordinate becomes two-factor information consisting of "latitude" and "longitude," as shown in Figure 23A. However, it is not limited to latitude and longitude; any information indicating each user's location is acceptable.

[0216] In contrast, when mental and physical states are used in the time-series data, the information representing each two-dimensional coordinate becomes two-factor information representing the two-dimensional coordinate on an emotional circle model (for example, Russell's emotional circle model), as shown in Figure 23B. Not limited to the emotional circle model, any model that represents at least one of each user's emotions and physical condition may be used. Each user's physical condition includes, for example, their pulse rate and body temperature.

[0217] Furthermore, similar to the first embodiment, the first identification information 31c in the second embodiment is information that can identify the transition point P1 of the transition source in general, such as the location information of the transition source and the mental and physical state. Hereinafter, "the transition point P1 of the transition source" may be simply referred to as "the transition source P1". The first identification information 31c is a label for distinguishing the transition point P1 of the transition source. Hereinafter, this label may be referred to as "the transition source name G1".

[0218] Furthermore, the second identification information 31e in the second embodiment is information that can identify the destination transition point P2 in general, such as the location information of the transition source and the mental and physical state. Hereinafter, "the destination transition point P2" may be simply referred to as "destination P2". The second identification information 31e is a label for distinguishing the destination transition point P2. Hereinafter, this label may be referred to as "destination name G2".

[0219] Furthermore, the meanings of the user ID 31a, visitor ID 31b, first start time 31d, and second start time 31f that constitute the access log data 31 are the same as in the first embodiment.

[0220] The user behavior visualized by the visualization method includes the transition pattern between transition points P1 and P2 (hereinafter simply referred to as "transition pattern" or "transition behavior"). This transition pattern is visualized based on the source P1, the destination P2, and the time spent at source P1 G3. Here, the time spent G3 can be appropriately calculated by the CPU3 based on the first start time 31d and the second start time 31f mentioned above.

[0221] In the example shown in Figure 23B, "cheerful" and "relaxed" are each transition points P, and transitions on the emotional cycle model, such as the transition from "calm" as the source P1 to "attention" as the destination P2, become the transition patterns that are visualized.

[0222] As an alternative example, the time-series data according to the second embodiment may represent the user's access logs to each transition point in a data space Sp having three or more factors that change over time. In this case, the data space Sp associated with the time-series data can be considered as a multidimensional space of three or more dimensions.

[0223] In the aforementioned alternative example, the time-series data exemplified as access log data 31 may be vehicle data acquired via CAN (data relating to the vehicle each user is riding in), healthcare data of each user acquired via a wearable device, or various health checkup results.

[0224] Below, we will explain, in order, the pre-processing process, the first post-processing process, and the second post-processing process, which are among the processes that constitute the visualization method.

[0225] <5. Details of the visualization method (Second embodiment)> (5-1. Pre-treatment process: An example involving two factors) Figure 24 is a flowchart illustrating the steps of the preprocessing process for two factors. Figure 25 is a diagram illustrating a two-dimensional plane Spf corresponding to the data space Sp of the two factors. Figure 26 is a diagram illustrating index 41 in the second embodiment. Figures 27A and 27B are diagrams illustrating an example of the directed graph structure Gs in the second embodiment. In the preprocessing process, CPU3 executes each step in order from step T11 in Figure 24.

[0226] The preprocessing process is the process of converting access log data 31 with two or more factors into single-factor data. For example, the preprocessing process illustrated below is the process of converting two-factor information indicating the source P1 and two-factor information indicating the destination P2 into information each having one factor.

[0227] This preprocessing process involves the CPU3 treating the data space Sp as a two-dimensional plane with two factors as two-dimensional coordinates, and associating an index 41, which is represented as one-dimensional data, with each two-dimensional coordinate on the two-dimensional plane.

[0228] Specifically, in step T11 of Figure 24, the CPU 3 reads access log data 31 from SSD 7b. As illustrated in Figure 23A, this access log data 31 includes two-factor information indicating the source P1 and two-factor information indicating the destination P2.

[0229] In the subsequent step T12, the CPU3 considers the two-dimensional data space Sp defined by the two factors (two-factor information) as a two-dimensional plane Spf, where the two factors are two-dimensional coordinates, as illustrated in Figure 25. For example, if location information is used in time-series data, the location coordinates of each user will be defined on the two-dimensional plane Spf. The two-dimensional plane Spf is, for example, an image showing an overview of each user's location, such as image data 43 showing a map.

[0230] In the example shown, the vertical axis of the 2D plane Spf corresponds to the first factor (e.g., latitude), and the horizontal axis of the 2D plane Spf corresponds to the second factor (e.g., longitude). In this case, each transition point P exemplified in Figure 23A corresponds to each position coordinate on the 2D plane Spf.

[0231] In the same step T12, the CPU 3 associates an index 41, which is represented as one-dimensional data, with each two-dimensional coordinate on the two-dimensional plane Spf. For example, as illustrated in Figure 26, the CPU 3 divides the two-dimensional plane Spf into multiple two-dimensional regions and associates a one-dimensional index 41 with at least a portion of these multiple two-dimensional regions.

[0232] To illustrate further, if a two-dimensional plane Spf is divided into a grid of 5 rows and 5 columns, totaling 25 squares, each of the 25 squares corresponds to the aforementioned two-dimensional region. The CPU 3 associates an index 41 from "1" to "25" with each two-dimensional region. This allows the two-factor access log data 31 to be converted into one-factor data.

[0233] Alternatively, instead of dividing vertically and horizontally as described above, each point on the 2D plane Spf may be represented by parameters such as polar coordinates, and an index 41 that distinguishes each point may be associated with each 2D coordinate. Alternatively, instead of dividing vertically and horizontally as described above, a 1D index 41 may be associated only with locations where the probability of a user's presence is high. The same applies when mental and physical information or vehicle data is used instead of location information.

[0234] By associating a one-dimensional index 41, the access log data 31, and more specifically the first identification information 31c and the second identification information 31e of the access log data 31, are both unified into a single factor, similar to the specific example in Figure 6.

[0235] Then, in the control process following the preprocessing process shown in Figure 22, the CPU 3 classifies multiple transition points P based on index 41, thereby generating N-gram data 33 based on access log data 31, and generating a directed graph structure Gs based on the N-gram data 33.

[0236] In other words, from the data processing process (step T2) onward, the CPU3 uses a one-dimensional index 41 associated with the two-factor information indicating the source P1, and uses an index 41 associated with the two-factor information indicating the destination P2.

[0237] Specifically, in the description according to the first embodiment, the phrase "source P1 or source name G1" can be replaced with "index 41 associated with source P1 or source name G1," and the phrase "destination P2 or destination name G2" can be replaced with "index 41 associated with destination P2 or destination name G2." By doing so, the directed graph structure Gs can be visualized on the two-dimensional plane Spf as a virtual plane, as illustrated in Figure 27A.

[0238] The meaning of the display settings for edge Ed and node Nd in Figure 27A is the same as that of the embodiments illustrated using Figures 13A, 13B, 15A, and 15B.

[0239] Furthermore, if location information is used in the time-series data, the CPU 3 may superimpose the directed graph structure Gs onto the image data 43 showing the map mentioned above, as illustrated in Figure 27B.

[0240] (5-2. Pre-treatment process: An example of a case with three or more factors) Figure 28 is a flowchart showing an example of the preprocessing process procedure in the case of three or more factors. In the preprocessing process, CPU3 executes each step in order from step T101 in Figure 28.

[0241] The preprocessing process in this example is a process for converting information with three or more factors indicating the source P1 and information with three or more factors indicating the destination P2 into information with one factor each.

[0242] Specifically, in step T101 of Figure 28, CPU3 reads access log data 31 from SSD7b. Although not shown in the diagram, this access log data 31 is multi-factored into three or more factors, each containing information indicating the source P1 and information indicating the destination P2.

[0243] In the following steps T102 through T105, CPU3 selects two factors from three or more factors for both the source P1 and the destination P2. CPU3 then performs the same processing on the two selected factors as shown in Figure 24.

[0244] More specifically, in step T102, CPU3 sets one factor as the dependent variable and two factors as independent variables for both the source P1 and destination P2, from among three or more factors. Note that these settings are merely examples. CPU3 may also set one factor as the dependent variable and another factor as an independent variable, or it may set two factors as independent variables.

[0245] In the subsequent step T103, CPU3 performs a regression analysis (multiple regression analysis) based on the dependent and independent variables, and calculates the importance of the regression analysis, based on the settings made in step T102. The regression analysis is, for example, linear regression. Note that it is not limited to linear regression; nonlinear regression, such as the random forest method, may also be used. In the case of linear regression, the importance is, for example, the standardized regression coefficient corresponding to each independent variable. The standardized regression coefficient is the regression coefficient obtained when a regression analysis based on standardized independent variables is used. In the case of nonlinear regression, the importance is, for example, the random forest importance. The random forest importance is the contribution of each independent variable to the reduction of the Gini coefficient in a random forest model composed of multiple decision trees.

[0246] Furthermore, any index that allows for a global explanation in regression analysis can be used as the importance metric. For example, while the so-called SHAP value is used for "local explanations" to estimate the contribution of explanatory variables near a specific output, the absolute mean of the SHAP value may also be used as the importance metric that allows for a global explanation.

[0247] In the following step T104, CPU3 determines whether the regression analysis and importance calculation have been completed for all combinations of explanatory variables. If the determination is YES, CPU3 proceeds to step T105.

[0248] On the other hand, if the determination in step T104 is NO, CPU3 returns the control process to step T102. Upon returning from step T104, CPU3 changes the combination of explanatory variables in step T102.

[0249] In this way, by repeating the process from step T102 to step T104, CPU3 repeatedly performs regression analysis and importance calculations while changing the combination of at least two factors that make up the explanatory variables among the dependent and explanatory variables.

[0250] In the following step T105, CPU3 determines the combination of two factors that make up the explanatory variable based on their importance. Specifically, CPU3 selects multiple combinations of two explanatory variables, starting with the combination that has the highest importance.

[0251] In the subsequent step T106, CPU3 performs the same processing as in step T12, illustrated in Figure 24, for each combination determined in step T105. That is, CPU3 considers the two-factor data space Sp corresponding to the determined combination of two factors as a two-dimensional plane, and associates a one-dimensional index 41 with each two-dimensional coordinate on that two-dimensional plane.

[0252] Subsequently, in the control process following the preprocessing process shown in Figure 22, the CPU 3 classifies multiple transition points P based on index 41, thereby generating N-gram data 33 based on access log data 31, and generating a directed graph structure Gs based on the N-gram data 33.

[0253] In other words, from the data processing process (step T2) onward, the CPU3 uses a one-dimensional index 41 associated with the two-factor information indicating the source P1, and uses an index 41 associated with the two-factor information indicating the destination P2.

[0254] If multiple combinations of explanatory variables are selected, CPU3 may perform the following actions for each combination: generating N-gram data 33 and a directed graph structure Gs based on that N-gram data 33.

[0255] In addition, if two explanatory variables are set in step T102, CPU3 may calculate the correlation coefficient between the two explanatory variables during processing in step T105. Then, CPU3 may use only combinations of two factors for which the calculated correlation coefficient is below a predetermined threshold. By doing so, when the directed graph structure Gs is visualized on a two-dimensional plane, the bias in the distribution of nodes Nd on the two-dimensional plane can be suppressed as much as possible.

[0256] (5-3. Pre-processing process: Another example when there are three or more factors) Figure 29 is a flowchart illustrating an alternative example of the preprocessing process procedure for cases with three or more factors. Figure 30A is a diagram illustrating an alternative example of the preprocessing process procedure for cases with three or more factors. Figure 30B is a diagram illustrating an example of the display of a directed graph structure Gs for cases with three or more factors. In this alternative example, CPU3 executes each step in order from step T111 in Figure 29.

[0257] Another example of the preprocessing process is the same as the example shown in FIG. 28 in that it is a process for converting information of three or more factors indicating the source P1 and information of three or more factors indicating the destination P2 into information having one factor each.

[0258] Specifically, in step T111 of FIG. 29, the CPU 3 reads the access log data 31 from the SSD 7b. Although not shown, in this access log data 31, the information indicating the source P1 and the information indicating the destination P2 are each factorized into three or more factors.

[0259] In the subsequent step T112, the CPU 3 divides the access log data 31 into a plurality of clusters Cl in the time series direction for each of three or more factors (see FIG. 30A). In the case of the example in FIG. 30A, this division may be performed, for example, with respect to the first start time 31d, with respect to the second start time 31f, or based on the stay time G3 that can be obtained based on them.

[0260] In the subsequent step T113, the CPU 3 regards each of the plurality of clusters Cl as a plurality of transition points P. Specifically, the CPU 3 assigns an index 41 for distinguishing each cluster to each of the plurality of clusters Cl. This index 41 is one-dimensional data. Note that step T113 may be executed, for example, when the determination in step T114 described later is YES. In the case of the example in FIG. 30A, as illustrated in FIG. 30B, an index 41 indicating the name of each cluster Cl, such as "cluster A", "cluster B", and "cluster C", may be assigned.

[0261] That is, in the case of this alternative example, instead of the factorized first identification information 31c and second identification information 31e, an index 41 for distinguishing each cluster Cl divided based on the first start time 31d, the second start time 31f, etc. is used as each transition point P. Thereby, the access log data 31 as time series data can be regarded as information of one factor including the one-dimensional index 41 for distinguishing each cluster Cl.

[0262] In the subsequent step T114, the CPU 3 displays the clustering result on the display 9. This display may be executed, for example, by displaying the change over time of the access log data 31 on the display 9 in a manner that allows the cluster Cl to which it belongs to be visible.

[0263] In the subsequent step T115, the CPU 3 accepts the approval of the clustering result based on the user input via the reception unit 13. Specifically, in step T115, the CPU 3 determines whether to accept the clustering result based on the user input via the reception unit 13. If this determination is YES, the CPU 3 ends the control process illustrated in FIG. 29.

[0264] On the other hand, if the determination in step T115 is NO, the CPU 3 returns the control process to step T112. When returning from step T115, in step T112, the CPU 3 re-divides into a plurality of clusters Cl so as to perform clustering different from the previous time.

[0265] Thereafter, in the control process after the preprocessing process in FIG. 22, the CPU 3 classifies a plurality of transition points P based on the index 41, thereby generating the N-gram data 33 based on the access log data 31 and generating the directed graph structure Gs based on the N-gram data 33. For example, as shown in FIG. 30B, a directed graph structure Gs having each cluster Cl such as "cluster A", "cluster B", and "cluster C" as nodes Nd is generated in the data space Sp.

[0266] That is, after the data processing process (step T2), the CPU 3 uses the one-dimensional index 41 associated with the information instead of the two-factor information indicating the transition source P1, and uses the index 41 associated with the information instead of the two-factor information indicating the transition destination P2.

[0267] (5-4. First post-processing process) Figure 31 is a flowchart illustrating the steps of the first post-processing process. Figure 33 is a diagram showing an example of the difference between two directed graph structures Gs. In this first post-processing process, CPU3 executes each step in order, starting from step T61 in Figure 31.

[0268] The first post-processing process is based on the premise that a directed graph structure Gs has been generated in advance, and that, separately from that directed graph structure Gs, another directed graph structure Gs has been generated through a graphing process or the like.

[0269] The first post-processing process according to this embodiment includes the CPU 3 performing a notification based on the differences between a plurality of directed graph structures Gs (see, for example, step T64).

[0270] Specifically, in step T61 of Figure 31, CPU3 obtains a pre-generated directed graph structure Gs from SSD7b.

[0271] In the subsequent step T62, the CPU3 extracts the difference between the previously acquired directed graph structure Gs and another directed graph structure Gs generated through the graphing process, etc., and then indexes the extraction results.

[0272] More specifically, in step T62, CPU3 extracts the differences in the display settings of the directed graph structure Gs exemplified in Figures 13A, 13B, 15A, and 15B, and sets the magnitude of these differences as an index.

[0273] More specifically, in step T62, CPU3 calculates the number of edges Ed in the directed graph structure Gs, as well as the difference between the number of visits, the first stay time, the number of transitions, and the second stay time, as illustrated in Figures 13A, 13B, 15A, and 15B, and sets each calculated value as an indicator.

[0274] In the following step T63, the CPU 3 determines whether any of the indicators calculated in step T62 exceeds a threshold. This threshold is stored in the memory unit 7 beforehand. If the determination in step T63 is YES, the CPU 3 proceeds to step T64. If the determination in step T63 is NO, the CPU 3 skips the processing in step T64 and terminates the control process illustrated in Figure 31.

[0275] In step T64, CPU 3 notifies the user of computer 1 via display 9 that the indicator has exceeded a threshold (that the threshold has been exceeded). This notification includes, for example, notifying the breakdown of the indicators that have exceeded the threshold, and notifying the magnitude of the difference between the indicator and the threshold. If the determination in step T63 is YES, CPU 3 proceeds to step T64.

[0276] In addition, during the first post-processing process, instead of notifying the CPU3 of the comparison results between each indicator and the threshold, the CPU3 may display on the screen Sc the difference between the previously acquired directed graph structure Gs and another directed graph structure Gs generated through the graphing process or the like.

[0277] For example, consider the case where the difference between two directed graph structures Gs is the presence or absence of the dashed edge Ed in Figures 27A and 27B. In this case, CPU3 can display only the edge Ed that indicates the difference on the screen Sc, as illustrated in Figure 33.

[0278] (5-5. Second Post-Processing Process) Figure 32 is a flowchart illustrating the procedure of the second post-processing process. In this second post-processing process, CPU3 executes each step sequentially, starting from step T71 in Figure 32.

[0279] The second post - processing process is a process premised on the fact that the two - dimensional map Ma illustrated in FIG. 21 has been generated in advance, and that, separately from the two - dimensional map Ma, another two - dimensional map Ma has been newly generated through the second display process, and that supervised learning using the pre - generated two - dimensional map Ma as teacher data has been executed in advance.

[0280] The second post - processing process according to this embodiment includes the CPU3 determining the difference between a plurality of two - dimensional maps Ma (see, for example, step T73). In the case of the example in FIG. 32, this process is executed by determining the difference between the pre - generated two - dimensional map Ma and another two - dimensional map Ma based on the execution result of supervised learning using the pre - generated two - dimensional map Ma as teacher data.

[0281] Specifically, in step T71 of FIG. 32, the CPU3 reads from the SSD7b the execution result (learning result) of supervised learning using the pre - generated two - dimensional map Ma as teacher data. The supervised learning here may be SVM (Support Vector Machine) or AE (Auto Encoder).

[0282] In the subsequent step T72, the CPU3 determines the difference between the pre - generated two - dimensional map Ma and another newly - generated two - dimensional map Ma based on the learning result read in step T71 and the newly - generated another two - dimensional map Ma.

[0283] Specifically, in step T72, the CPU3 obtains the fitting accuracy of another newly - generated two - dimensional map Ma with respect to the pre - generated two - dimensional map Ma.

[0284] In the following step T73, the CPU 3 determines whether the fitting accuracy obtained in step T72 exceeds a threshold. This threshold is stored in the memory unit 7 beforehand. If the determination in step T73 is YES, the CPU 3 proceeds to step T74. If the determination in step T73 is NO, the CPU 3 skips the processing in step T74 and terminates the control process illustrated in Figure 32.

[0285] In step T74, CPU3 notifies the user of computer 1 via display 9 that the fitting exceeds a threshold (threshold exceeded). This notification includes, for example, the magnitude of the difference between the fitting accuracy and the threshold.

[0286] Furthermore, during the second post-processing process, CPU3 may, instead of processing based on prior supervised learning, determine the difference between a previously acquired 2D map Ma and another 2D map Ma newly generated through the second display process, etc., using unsupervised learning. For this unsupervised learning, for example, one-class SVM can be applied.

[0287] To illustrate further, in unsupervised learning, a 2D map Ma that has been acquired in advance and whose anomaly presence or absence is known, and a newly generated 2D map Ma whose anomaly presence or absence is unknown, are input to the aforementioned one-class SVM model. This allows the presence or absence of anomalies in the 2D map Ma whose anomaly presence or absence is unknown to be determined based on the 2D map Ma whose anomaly presence or absence is known.

[0288] <6. Significance of Visualization Methods> As described above, the CPU 3 generates N-gram data 33 of at least 3-grams, which associates a first identification information 31c that can identify web page 6, a second identification information 31e that can identify the destination web page 6, and the time spent on the source web page 6 G3 (see, for example, Figure 8).

[0289] By using this N-gram data 33, it is possible to naturally assign a parent node Nd corresponding to the first identification information 31c, a child node Nd corresponding to the second identification information 31e, and an edge Ed connecting the parent node Nd and the child node Nd. As a result, even in cases where the access log data 31 is a massive amount of data, or when it is assumed that visitors (viewers of the website Ws) perform complex transition behaviors on a website Ws, it is possible to reduce it to a simple directed graph structure Gs, as illustrated in Figure 18. Consequently, from the perspective of the visibility of the displayed content, the transition behavior of users (viewers, visitors) who visit the website Ws can be efficiently visualized.

[0290] Furthermore, as illustrated in Figures 8 and 15B, by including the dwell time G3 in the N-gram data 33, it becomes possible to determine the display settings for each edge Ed to reflect that dwell time G3. In addition, by using the web pages 6 visited by the visitor as child nodes Nd and parent nodes Nd instead of information that identifies individual users, the number of nodes Nd can be significantly reduced compared to a configuration in which individual visitors are used as nodes Nd. This reduces the load on computer 1. As a result, in terms of the processing speed of computer 1, the transition behavior of users visiting the website Ws can be visualized efficiently.

[0291] Furthermore, as illustrated by the dashed lines C1 and C2 in Figure 18, the CPU 3 displays each node Nd that constitutes the second node group Ng2, surrounding the first node group Ng1 related to the target page 6a and the web pages 6 belonging to its lower hierarchy.

[0292] This allows for a clear distinction between visitors who are interested in a specific target page 6a and related web pages 6, and visitors who are not interested in target page 6a, or who are interested in other web pages 6. As a result, the user navigation behavior of visitors to the website Ws can be efficiently visualized in terms of the visibility of the displayed content.

[0293] Furthermore, as illustrated by the dashed lines C1 and C2 in Figure 18, CPU3 arranges the first node group Ng1 and the second node group Ng2 in a circular pattern. This ensures that no more than three nodes Nd are located on the same straight line within the first node group Ng1. As a result, when transitioning between nodes Nd constituting the first node group Ng1, no other node Nd constituting the same first node group Ng1 is present between two nodes Nd, thus improving visibility.

[0294] Furthermore, as illustrated by the dashed line C1 in Figure 18, arranging the target page 6a and the first subpage 6b in a circular pattern makes it possible to clearly distinguish between visitors who are interested in those web pages 6 and visitors who are not interested in those web pages 6, or who are interested in other web pages 6. As a result, the user transition behavior of visitors to the website Ws can be efficiently visualized from the perspective of the visibility of the displayed content.

[0295] Generally, corporate websites, such as those of manufacturers, are thought to have multiple layers. In such cases, displaying all layers in a circular fashion would be inconvenient from the standpoint of ensuring readability.

[0296] In contrast, as illustrated in Figure 18 by node Nd labeled "Settings List," CPU3 visualizes the transition between the second subpage 6c and the first subpage 6b using a loop-shaped edge E2. This allows for visualization of even websites Ws with complex hierarchical structures without compromising readability.

[0297] Furthermore, as illustrated in Figure 19A, the CPU 3 expands node Nd, to which loop-shaped edges E2 are connected, in response to user input (click operation) on the display screen Sc. By expanding node Nd, the relationship between node Nd corresponding to the first type subpage 6b and node Nd corresponding to the second type subpage 6c can be visualized in detail. Moreover, by configuring the display to switch according to user input, it is possible to achieve both visibility when not expanded and detailed visualization when expanded.

[0298] Furthermore, as illustrated in Figure 18 with node Nd labeled "News," CPU3 visualizes the transition between the upper-level page 6d and the third-level lower-level page 6e using a loop-shaped edge E2. This allows for visualization of even websites Ws with complex hierarchical structures without compromising readability.

[0299] Furthermore, as illustrated in Figure 19B, the CPU 3 expands node Nd, which is labeled "News" in Figure 18, and node Nd to which a loop-shaped edge E2 is connected, in response to user input on the display screen. By expanding node Nd, the relationship between node Nd corresponding to a higher-level page and node Nd corresponding to a lower-level page of type 3 can be visualized in detail. Moreover, by configuring the display to switch according to user input, it is possible to achieve both visibility when not expanded and detailed visualization when expanded.

[0300] Furthermore, as illustrated in Figure 18, the node Nd corresponding to the source link 71 and the destination link 72 is displayed in a layout that sandwiches the first node group Ng1 and the second node group Ng2. This makes the transition between the source link 71 and the destination link 72 and the website Ws clearly visible, thereby improving readability.

[0301] Furthermore, as explained with reference to Figure 27A, CPU3 treats the two factors as two-dimensional coordinates and assigns an index 41, which is represented as one-dimensional data, to these two-dimensional coordinates. By distinguishing the transition point P based on the value of each index 41, even an access log with two factors, as illustrated in Figures 23A and 24B, can be converted into time-series data with a single factor. This makes it possible to apply the graphing process and the first display process described above.

[0302] Furthermore, as explained with reference to Figure 27A, CPU3 divides the two-dimensional plane Spf corresponding to the two-dimensional coordinates into multiple two-dimensional regions and assigns index 41 to at least a portion of them. In this way, even access logs having two factors, as illustrated in Figures 23A and 24B, can be reliably converted into one-dimensional data (one-dimensional time-series data), that is, one-factor time-series data.

[0303] Furthermore, as explained with reference to Figure 28, CPU3 selects two of the three or more factors, treats the two selected factors as two-dimensional coordinates, and then performs a conversion to single-factor time-series data as shown in Figure 27A. In this way, even access logs with three or more factors can be sequentially converted to two-factor time-series data, and then to single-factor time-series data. This makes it possible to apply the graphing process and the first display process described above.

[0304] Furthermore, as illustrated in step T105 of Figure 28, the CPU 3 utilizes the importance values ​​obtained during regression analysis to select two of the three or more factors. This regression analysis may be linear or nonlinear. In this way, even access logs with three or more factors can be sequentially converted into two-factor time series data, and then into one-factor time series data. This makes it possible to apply the graphing process and the first display process described above.

[0305] Furthermore, as explained with reference to Figures 29 and 30A, the CPU 3 divides an access log with three or more factors into multiple clusters Cl in the time-series direction. By distinguishing transition points P according to the classification to each cluster Cl, even an access log with three or more factors can be sequentially converted into two-factor time-series data, and then into one-factor time-series data. This makes it possible to apply the graphing process and the first display process described above.

[0306] Furthermore, as explained with reference to Figures 13A, 13B, 15A, and 15B, the CPU 3 determines the display settings for edges Ed, nodes Nd, etc., based on attribute information A that characterizes access to each transition point P, such as access to each web page 6 that constitutes the website Ws. In this way, the user's browsing behavior leading to each transition point P can be visualized while making use of the directed graph structure Gs. This contributes to ensuring visibility.

[0307] Furthermore, as explained with reference to Figure 31, the CPU 3 can, for example, use one of several directed graph structures Gs as a comparison target, such as a normal directed graph structure Gs or a model directed graph structure Gs. The CPU 3 can also detect and notify the presence or absence of anomalies in the other directed graph structure Gs by determining the difference between the comparison target and another directed graph structure Gs. This is advantageous in expanding the range of applications for directed graph structures Gs.

[0308] Furthermore, as explained with reference to Figures 31 and 33, CPU3 extracts differences between multiple directed graph structures Gs through display settings such as node Nd and edge Ed. This makes it possible to extract differences between multiple directed graph structures Gs in a highly interpretable manner.

[0309] Furthermore, as illustrated in Figures 23A and 23B, the visualization method relating to this disclosure is not limited to access logs for the website Ws, but can also be applied to data indicating the user's location information or physical and mental state.

[0310] In addition, by the CPU 3 displaying the two-dimensional map Ma illustrated in FIG. 21, the variations of the nodes Nd or the user (visiting ID 31b) regarding the attribute information A can be intuitively and quantitatively visualized.

[0311] Also, as described with reference to FIG. 32, for example, the CPU 3 sets any one of a plurality of two-dimensional maps as a comparison target such as the two-dimensional map Ma in a normal state and the two-dimensional map Ma to be used as a model. The CPU 3 can also discover and notify the presence or absence of abnormalities in another two-dimensional map Ma by determining the difference between that comparison target and another two-dimensional map Ma. This is advantageous in expanding the application range of the two-dimensional map Ma.

[0312] <7. Other Embodiments> In the above embodiment, as illustrated in FIGS. 13A, 13B, 15A, and 15B, it was configured to associate four pieces of attribute information A with the display settings of the edge Ed and the node Nd, but such an association is merely an example. The display width of the edge Ed may be changed based on the second stay time, or the display color of the node Nd may be changed based on the number of visits (number of accesses). The association between the attribute information A and the display settings can be appropriately changed through the setting file 37.

[0313] Also, as illustrated in FIG. 18, in the above embodiment, the website Ws of a specific "Manufacturer A" was exemplified, but the present disclosure is not limited to such a configuration. A plurality of nodes Nd corresponding to a plurality of manufacturers such as "Manufacturer A", "Manufacturer B", and "Manufacturer C" may be displayed on the display screen Sc. And when a click operation is performed on any one of the manufacturers, it may be configured to expand the directed graph structure Gs as shown in FIG. 18. In that case, the edges Ed to be visualized will also include edges Ed connecting different manufacturers.

[0314] Furthermore, with respect to Figures 19A and 19B, the second subpage 6c and the third subpage 6d may have a further hierarchical structure. In that case, a loop-shaped edge E2 will be connected to the second subpage 6c and the third subpage 6d to reflect that hierarchical structure.

[0315] In the above embodiment, an example was shown in which the visualization device is configured by a single computer 1, but this disclosure is not limited to that example. The visualization method, visualization device, and visualization program 21 according to this disclosure may be executed using multiple computers 1, for example, by having a first computer execute some of the processing and a second computer execute the remaining processing.

[0316] Furthermore, the computer 1 in this disclosure also includes parallel computers such as supercomputers and PC clusters. Each computer 1 may have multiple CPUs 3, and it is not necessary for all processing to be executed by the same CPU 3.

[0317] Furthermore, the screen on which the visualized information is displayed is not limited to the display screen Sc on the display 9 of computer 1. The directed graph structure Gs, etc., may be displayed on a screen prepared separately from computer 1. In other words, the "display unit" in this disclosure only needs to be connected to the CPU 3, and it is not necessary for it to be part of computer 1.

[0318] Industrial applicability As explained above, this disclosure is useful for visualizing access logs on websites where user behavior such as transitioning between pages is expected, such as manufacturers' websites, and therefore has potential for industrial use. [Explanation of Symbols]

[0319] 1. Computer (Visualization device) 1A Data Processing Method 1B Graphing method 1C 1st display means (visualization means) 1D 2nd display means 3 CPU (arithmetic unit) 7a RAM (storage unit) 7b SSD (storage unit) 9. Display (Display Unit) 13a Keyboard (Reception area) 13b Mouse (reception area) 18 Storage medium 21 Visualization Program 211 Data Processing Program 213 Graphing Program 215 First Display Program 217 Second Display Program 31. Access log data 31c 1st identification information 31e Second identification information 33 N-gram data G1 Name of the page from which the transition occurred (first identification information) G2 Destination page name (Second identification information) G3 Stay duration 31. Access log data (time-series data) 35 Hierarchical structure data 37 Configuration files 39 Graph Structure Data Ws website 6 web pages 6a Target page 61 Page 1 Group 62 Page 2 Group 6b Type 1 Subpage 6c Type 2 Subpage 6d Third-class subpage P transition point P1 Transition source page, Transition source P2 Destination page, destination Sc display screen (screen) Gs Directed Graph Structure Nd node Ng1 Node Group 1 Ng2 2nd Node Group Ed Edge E2 Loop-shaped edge A Attribute information Sp Data Space Sp2 Virtual Plane Spf 2D plane (virtual plane) Cr cluster 41 Index Ma 2D Map Lh contour line

Claims

1. A method for visualizing user behavior, which is performed by a computer equipped with a calculation unit and a storage unit, and a display unit that displays a screen, based on the user's time-series data, The aforementioned time-series data represents the user's access logs to each transition point in a data space where multiple transition points can be defined. The calculation unit generates N-gram data that associates a first identification information that can identify the source transition point, a second identification information that can identify the destination transition point, and the time spent at the source transition point, based on the access log. The calculation unit determines a directed graph structure based on the N-gram data, which includes nodes corresponding to the first identification information and the second identification information, and edges connecting the two nodes such that they correspond to the dwell time and indicate a transition from the node corresponding to the first identification information to the node corresponding to the second identification information. The calculation unit visualizes a set of nodes representing the directed graph structure on a two-dimensional virtual plane displayed on the screen and corresponding to the data space, and visualizes and displays a set of edges connecting the nodes in a manner that reflects the dwell time. Methods for visualizing user behavior.

2. In the method for visualizing user behavior described in claim 1, The aforementioned time-series data is a website access log that can be represented in a data space having one factor that changes according to the time series. The website has a hierarchical structure and each level includes one or more web pages as transition points. The aforementioned plurality of web pages include a first group of pages which includes a target page that indicates the object to be analyzed, and a set of web pages which belong to a lower hierarchy than the target page, and a second group of pages which includes a set of web pages which belong to a higher hierarchy than the first group of pages, If we define the set of nodes corresponding to each webpage belonging to the first group of pages as the first node group, and the set of nodes corresponding to each webpage belonging to the second group of pages as the second node group, The calculation unit, in visualizing the directed graph structure, displays the first group of nodes on the screen and displays the nodes constituting the second group of nodes so as to surround each node constituting the first group of nodes. Methods for visualizing user behavior.

3. In the method for visualizing user behavior described in claim 2, The calculation unit arranges the first group of nodes in a ring on the screen, The calculation unit arranges the second group of nodes on the screen in a ring shape with a larger diameter than the first group of nodes. A method for visualizing user behavior characterized by the following:

4. In the method for visualizing user behavior described in claim 3, If, among the aforementioned multiple web pages, a web page that belongs to a hierarchy at least one level lower than the target page is defined as a first-class subordinate page, The calculation unit displays a plurality of nodes in a circular pattern on the screen, which include a node corresponding to the target page and a node corresponding to the first sub-page, as the first node group. A method for visualizing user behavior characterized by the following:

5. In the method for visualizing user behavior described in claim 4, If, among the aforementioned plurality of web pages, a web page belonging to an even lower hierarchy than the first type of subpage and accessible from the first type of subpage is defined as a second type of subpage, The aforementioned arithmetic unit, The aforementioned first subpage and the aforementioned second subpage are visualized using the same node or nodes that overlap each other. The transition between the first subpage and the second subpage is visualized by a loop-shaped edge representing a self-transition. A method for visualizing user behavior characterized by the following:

6. In the method for visualizing user behavior described in claim 5, The aforementioned calculation unit is connected to a reception unit that receives user input. When the calculation unit receives an operation input for an edge representing the self-transition on the screen or a node to which the edge is connected, it expands the node into a plurality of nodes including a node corresponding to the first type of subpage and a node corresponding to the second type of subpage, and displays the plurality of nodes in a circular pattern on the screen. A method for visualizing user behavior characterized by the following:

7. In the method for visualizing user behavior described in claim 3, Of the aforementioned plurality of web pages, a web page belonging to the same hierarchy as the target page or at least one hierarchy level higher than the target page is defined as a higher-level page, and a web page belonging to a hierarchy at least one hierarchy level lower than the higher-level page, and accessible from the higher-level page, is defined as a third-type lower-level page, The aforementioned arithmetic unit, The web page names of the aforementioned higher-level page and the aforementioned third-level lower-level page are visualized by overlapping nodes or identical nodes. The transition between the aforementioned higher-level page and the aforementioned third-type lower-level page is visualized by a loop-shaped edge representing a self-transition. A method for visualizing user behavior characterized by the following:

8. In the method for visualizing user behavior described in claim 7, The aforementioned calculation unit is connected to a reception unit that receives user input. When the calculation unit receives an operation input for an edge representing the self-transition on the screen or a node to which such edge is connected, it expands the node into a plurality of nodes including a node corresponding to the higher-level page and a node corresponding to the third lower-level page, and displays the plurality of nodes in a circular pattern on the screen. A method for visualizing user behavior characterized by the following:

9. In the method for visualizing user behavior described in claim 2, The N-gram data includes, in the first identification information, information that can identify the source of the link to the website, and in the second identification information, information that can identify the destination of the link from the website. The calculation unit arranges on the screen the node corresponding to the link source and the node corresponding to the link destination, so as to sandwich the first group of nodes and the second group of nodes. A method for visualizing user behavior characterized by the following:

10. In the method for visualizing user behavior described in claim 1, The aforementioned time-series data represents the user's access logs to each transition point in the data space, which has two factors that change according to the time series. The calculation unit considers the data space as a two-dimensional plane with the two factors as two-dimensional coordinates, and associates an index, which is represented as one-dimensional data, with each two-dimensional coordinate on the two-dimensional plane. The calculation unit generates the N-gram data based on the access log by classifying the plurality of transition points based on the index. A method for visualizing user behavior characterized by the following:

11. In the method for visualizing user behavior described in claim 10, The calculation unit divides the two-dimensional plane into a plurality of two-dimensional regions and associates the index with at least a portion of the plurality of two-dimensional regions. A method for visualizing user behavior characterized by the following:

12. In the method for visualizing user behavior described in claim 1, The aforementioned time-series data represents the user's access logs to each transition point in the data space having three or more factors that change according to the time series. The calculation unit selects two factors from the three or more factors, The calculation unit replaces the data space with a two-dimensional plane in which the two factors are two-dimensional coordinates, and associates an index represented as one-dimensional data with each two-dimensional coordinate on the two-dimensional plane. The calculation unit generates the N-gram data based on the access log by classifying the plurality of transition points based on the index. A method for visualizing user behavior characterized by the following:

13. In the method for visualizing user behavior described in claim 12, The calculation unit sets one of the three or more factors as the dependent variable and two of the factors as independent variables, and performs a regression analysis based on the dependent variable and the independent variables, and calculates the importance in the regression analysis. The calculation unit repeatedly performs the regression analysis and the calculation of importance while changing the combination of at least two factors constituting the explanatory variables among the dependent variable and the explanatory variables. The calculation unit determines the combination of the two factors constituting the explanatory variable based on the level of importance, The calculation unit performs the association of the index based on the determined combination of the two factors. A method for visualizing user behavior characterized by the following:

14. In the method for visualizing user behavior described in claim 1, The aforementioned time-series data represents the user's access logs to each transition point in the data space having three or more factors that change according to the time series. The calculation unit divides the time-series data into multiple clusters in the time-series direction for each of the three or more factors. The calculation unit generates the N-gram data by considering the plurality of clusters as the plurality of transition points. A method for visualizing user behavior characterized by the following:

15. In the method for visualizing user behavior described in claim 1, The calculation unit determines the display settings on the screen for at least one of the edge and the node based on at least one of the attribute pieces of information, which includes the dwell time at each of the plurality of transition points and the number of transitions to each of the plurality of transition points. The aforementioned display settings are: The display color, display width, and line type of the edge, The node includes at least one of the display color, display size, and outline, A method for visualizing user behavior characterized by the following:

16. In the method for visualizing user behavior described in claim 15, The calculation unit acquires the pre-generated directed graph structure, The calculation unit performs a notification based on the differences between the multiple directed graph structures. A method for visualizing user behavior characterized by the following:

17. In the method for visualizing user behavior described in claim 16, The calculation unit extracts the differences in the display settings as differences between the multiple directed graph structures. A method for visualizing user behavior characterized by the following:

18. A method for visualizing user behavior according to any one of claims 10 to 17, The aforementioned time-series data represents the user's location information or physical and mental state. A method for visualizing user behavior characterized by the following:

19. In the method for visualizing user behavior described in claim 1, The calculation unit generates a two-dimensional map on the screen in which one of the multiple nodes and the user is plotted to form a scatter plot. The two-dimensional map is a scatter plot relating to attribute information, including the time spent at each of the plurality of transition points and the number of transitions to each of the plurality of transition points. The calculation unit calculates the density of each plot that makes up the scatter plot and displays it superimposed as contour lines on the two-dimensional map. A method for visualizing user behavior characterized by the following:

20. In the method for visualizing user behavior described in claim 19, The calculation unit determines the difference between the previously generated two-dimensional map and other two-dimensional maps based on the results of supervised learning using the previously generated two-dimensional map as training data. A method for visualizing user behavior characterized by the following:

21. A user behavior visualization device, which is operated by a computer equipped with a calculation unit and a storage unit, and a display unit that displays a screen, based on the user's time-series data, The aforementioned time-series data represents the user's access logs to each transition point in a data space where multiple transition points can be defined. A data processing means that generates N-gram data relating a first identification information that can identify the source transition point, a second identification information that can identify the destination transition point, and the time spent at the source transition point, based on the aforementioned access log. A graphing means that determines a directed graph structure based on the N-gram data, including nodes corresponding to the first identification information and the second identification information, and edges connecting the two nodes such that the dwell time corresponds to the transition from the node corresponding to the first identification information to the node corresponding to the second identification information, The system includes a visualization means that visualizes a set of nodes representing the directed graph structure on a two-dimensional virtual plane displayed on the screen and corresponding to the data space, and visualizes and displays a set of edges connecting the nodes in a manner that reflects the dwell time. A device for visualizing user behavior, characterized by the following features.

22. A user behavior visualization program, which is executed by a computer equipped with a calculation unit and a storage unit, and a display unit that displays a screen, based on the user's time-series data, The aforementioned time-series data represents the user's access logs to each transition point in a data space where multiple transition points can be defined. To the aforementioned computer, The calculation unit performs a process to generate N-gram data that associates a first identification information that can identify the source transition point, a second identification information that can identify the destination transition point, and the time spent at the source transition point, based on the access log. The calculation unit performs a process to determine a directed graph structure based on the N-gram data, which includes nodes corresponding to the first identification information and the second identification information, and edges connecting the two nodes such that the dwell time corresponds to the transition from the node corresponding to the first identification information to the node corresponding to the second identification information. The calculation unit performs the following processing: visualizes a set of nodes representing the directed graph structure on a two-dimensional virtual plane displayed on the screen and corresponding to the data space, and visualizes and displays a set of edges connecting the nodes in a manner that reflects the dwell time. A user behavior visualization program characterized by the following:

23. It stores the user behavior visualization program described in claim 22. A computer-readable storage medium characterized by the following features.