Information processing system and information processing method

The information processing system addresses the limitation of conventional supply chain analysis by assigning additional data to nodes, enabling accurate and efficient route selection in supply chains.

JP2025167324AActive Publication Date: 2025-11-07FRONTEO INC
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2024071829
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-25
Publication Date
2025-11-07
Estimated Expiration
2044-04-25

AI Technical Summary

Technical Problem

Conventional methods for analyzing supply chains do not account for additional information assigned to network nodes, limiting the ability to determine high-priority routes.

Method used

An information processing system and method that assigns additional data to nodes in an entity network, allowing for the calculation of feature amounts and selection of preferred routes based on these data.

Benefits of technology

Enables the identification of high-priority routes in supply chains by considering node characteristics, enhancing route selection accuracy and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025167324000001_ABST
    Figure 2025167324000001_ABST
Patent Text Reader

Abstract

To provide an information processing system and an information processing method for appropriately selecting a high-priority route within a target network.SOLUTION: An information processing system includes a network acquisition part that acquires an entity network, where multiple nodes respectively corresponding to multiple entities are connected at edges indicating transactional or control relationships and a route selection part that selects a high-priority route from multiple routes included in the entity network, where each of the multiple nodes included in the entity network is assigned additional data representing the characteristics of the node. The route selection part calculates the feature amount for each of the multiple routes based on the additional data and selects the priority route based on the calculated feature amount.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing system, an information processing method, and the like. [Background technology]

[0002] Various methods for analyzing networks such as supply chains have been known. A supply chain refers to a series of processes from the procurement of raw materials and parts for a product to manufacturing, inventory management, delivery, sales, and consumption. For example, Patent Document 1 discloses an information processing system that analyzes a subnetwork that includes at least one of an upstream subnetwork and a downstream subnetwork of a company of interest in a supply chain and displays the results. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent No. 7034447 Summary of the Invention [Problem to be solved by the invention]

[0004] Conventionally, there are known methods for analyzing routes, such as determining choke points based on the network structure (connection relationships between nodes). However, the conventional methods do not disclose a method for determining high-priority routes based on additional information assigned to network nodes.

[0005] According to some aspects of the present disclosure, it is possible to provide an information processing system, an information processing method, and the like that appropriately select a route with a high priority in a target network. [Means for solving the problem]

[0006] One aspect of the present disclosure relates to an information processing system that includes a network acquisition unit that acquires an entity network in which a plurality of nodes corresponding to a plurality of entities are connected by edges that indicate trading relationships or dominance relationships, and a route selection unit that selects a preferred route with a high priority from a plurality of routes included in the entity network, wherein each of the plurality of nodes included in the entity network is assigned additional data that represents characteristics of the node, and the route selection unit determines a feature amount for each of the plurality of routes based on the additional data, and selects the preferred route based on the determined feature amount.

[0007] Another aspect of the present disclosure relates to an information processing method, in which an information processing device acquires an entity network in which a plurality of nodes corresponding to a plurality of entities are connected by edges indicating business relationships or dominance relationships, and each of the plurality of nodes included in the entity network is assigned additional data indicating characteristics of the node, and based on the additional data, calculates a feature amount for each of a plurality of routes included in the entity network, and selects a preferred route with a high priority from the plurality of routes based on the calculated feature amount. [Brief explanation of the drawings]

[0008] [Figure 1] 1 illustrates an example of the configuration of a system including an information processing system according to an embodiment. [Figure 2] FIG. 2 is a functional block diagram showing a detailed configuration example of the server system. [Figure 3] FIG. 2 is a functional block diagram showing a detailed configuration example of a terminal device. [Figure 4] 3 is a flowchart showing an outline of processing executed in the information processing system. [Figure 5A] 10 is a diagram illustrating an example of the structure of data acquired based on public information. [Figure 5B] 10 is a diagram illustrating an example of the structure of data acquired based on public information. [Figure 5C]FIG. 1 illustrates an example of a portion of a trading network obtained based on public information. [Figure 6] FIG. 1 is a schematic diagram illustrating a trading network. [Figure 7] 10 is a flowchart illustrating a process of determining a vector expression. [Figure 8] 10 is a flowchart illustrating an extraction process of an upstream sub-transaction network. [Figure 9A] FIG. 1 illustrates an example of a portion of a sub-trading network. [Figure 9B] FIG. 1 illustrates an example of a portion of a sub-trading network. [Figure 10] FIG. 1 illustrates an example of a sub-transaction network. [Figure 11A] 10 is a flowchart illustrating a process for obtaining a vector representation of a node. [Figure 11B] 10 is a flowchart illustrating a process for obtaining a vector representation of a node. [Figure 12A] FIG. 10 is a diagram illustrating the flow rate in a sub-trading network. [Figure 12B] FIG. 10 illustrates an example of topological flow rates in a sub-trading network. [Figure 13] 1 is an example of a complex vector corresponding to a given node. [Figure 14] FIG. 10 illustrates an example of topological flow rates in a sub-trading network. [Figure 15] 10 is a flowchart illustrating a supply chain network extraction process. [Figure 16] 10 is a flowchart illustrating a process of selecting a preferred route. [Figure 17] This is an example of a supply chain network. [Figure 18] This is an example of a supply chain network with loops removed. [Figure 19] 10 is an example of a route weight. [Figure 20A] 10 is an example of a tag transition pattern weight. [Figure 20B] 10 is an example of a tag transition pattern weight. [Figure 21] 10 is an example of updated tag transition pattern weights. [Figure 22] 10 is an example of a sorting result based on tag transition pattern weights. [Figure 23A] 10 is an example of a candidate route that is a candidate for a preferred route. [Figure 23B] FIG. 10 is a diagram illustrating a process for selecting a preferred route. [Figure 24] This is an example of a preferred path in a supply chain network. [Figure 25] Another example of a supply chain network. [Figure 26A] 10 is an example of updated tag transition pattern weights. [Figure 26B] 10 is an example of a candidate route that is a candidate for a preferred route. [Figure 26C] FIG. 10 is a diagram illustrating a process for selecting a preferred route. [Figure 27] This is an example of a sub-network. [Figure 28A] 10 is an example of updated tag transition pattern weights. [Figure 28B] 10 is an example of a candidate route that is a candidate for a preferred route. [Figure 28C] FIG. 10 is a diagram illustrating a process for selecting a preferred route. [Figure 29] 10 is another flowchart illustrating the process of selecting a preferred route. [Figure 30] Another example of a supply chain network. [Figure 31] This is an example of text associated with each node (company). [Figure 32] FIG. 10 is a diagram illustrating a difference vector. [Figure 33] 10 is an example of the dot product of a first difference vector and a second difference vector. [Figure 34] This is an example of feature quantities (inner products) of each edge in a supply chain network. [Figure 35] 10 is an example of a feature of a route. DETAILED DESCRIPTION OF THE INVENTION

[0009] Hereinafter, the present embodiment will be described with reference to the drawings. In the drawings, identical or equivalent elements are designated by the same reference numerals, and duplicate explanations will be omitted. Note that the present embodiment described below does not unduly limit the content described in the claims. Furthermore, not all of the configurations described in the present embodiment are necessarily essential components of the present disclosure.

[0010] 1. System configuration example Fig. 1 shows an example of the configuration of a system including an information processing system 10 according to an embodiment. The system according to this embodiment includes a server system 100 and a terminal device 200. However, the configuration of a system including the information processing system 10 is not necessarily limited to that shown in Fig. 1, and various modifications are possible, such as omitting some components or adding other components. For example, while Fig. 1 shows two terminal devices 200, terminal device 200-1 and terminal device 200-2, the number of terminal devices 200 is not limited to this.

[0011] The information processing system 10 of this embodiment corresponds to, for example, a server system 100. However, the method of this embodiment is not limited to this, and the processing of the information processing system 10 described in this specification may be executed by distributed processing using the server system 100 and another device. For example, the information processing system 10 of this embodiment may be realized by distributed processing between the server system 100 and a terminal device 200. Hereinafter, this specification will describe an example in which the information processing system 10 is the server system 100.

[0012] The server system 100 may be a single server or may be configured to include multiple servers. For example, the server system 100 may be configured to include a database server and an application server. The database server stores various data including a first network 121 (described later) and complex vectors. The application server executes the processes described later using Figures 4, 7, 8, 11A, 11B, 15, 16, 29, etc. The multiple servers here may be physical servers or virtual servers. If a virtual server is used, the virtual server may be provided on a single physical server or may be distributed across multiple physical servers. As described above, the specific configuration of the server system 100 in this embodiment can be modified in various ways.

[0013] The server system 100 communicates with terminal device 200-1 and terminal device 200-2 via, for example, a network. Hereinafter, when there is no need to distinguish between multiple terminal devices, they will be simply referred to as terminal device 200. The network here is, for example, a public communication network such as the Internet, but may also be a LAN (Local Area Network) or the like.

[0014] The terminal device 200 is a device used by a user who uses the information processing system 10. The terminal device 200 may be a PC (Personal Computer), a mobile terminal device such as a smartphone, or another device having the functions described in this specification.

[0015] The information processing system 10 of this embodiment is an Open Source Intelligence (OSINT) system that uses, for example, public information to collect and analyze data related to a target. The public information here includes various types of information that are widely available and legally available. For example, the public information may include securities reports, input-output tables, official government announcements, news reports about countries and companies, and supply chain databases. The public information may also include various types of information transmitted and received via social networking services (SNS). For example, SNSs include services that allow users to post text or images, and the public information in this embodiment may include the text or images, or the results of natural language processing or image processing performed on them.

[0016] The server system 100 generates nodes containing various attributes based on public information. Each node represents a given entity. Here, the entity is, for example, a company, but may also include other organizations such as public institutions or individuals. The attributes assigned to a node are determined based on the public information and include various information such as the entity's name, nationality, business field, industrial classification, client, and trade item. For example, a tag is assigned to the node as metadata, and the tag includes attribute values ​​for the various attributes described above. If the node representing the entity is a company, attributes related to the company are assigned to the node. The attributes may include sales, number of employees, shareholders and investment ratio, board members, and so on. In this embodiment, at least the industrial classification may be assigned to the node. The industrial classification classifies types of industries according to their characteristics. For example, an industrial classification code may be used as the industrial classification. The industrial classification code classifies industries into several categories and assigns a code such as "01" to each classification result. The industrial classification code is, for example, the North American Industry Classification System (NAICS), but other classification codes such as the International Standard Industrial Classification or the Japanese Standard Industrial Classification may also be used.

[0017] When a given node has a relationship with another node, the given node is connected to the other node by a directed edge. For example, suppose a given company provides (sells) a traded product to another company. In this case, the node corresponding to the other company is connected to the node corresponding to the given company by an edge with an attribute that represents a product buying / selling relationship (distribution relationship). The edge here is an edge with a direction from the influencing party to the receiving party, for example, an edge with a direction from the seller of a product to the buyer. In other words, the edge represents a trade relationship that associates a product provider company with a recipient company. Furthermore, the attribute assigned to an edge is not limited to the product, and can include various information such as the originating company, the destination company, the product, the price, and the transaction (quantity). Note that product information is not a required attribute assigned to an edge and can be omitted. The same applies to other information such as the originating company; this information may be assigned to the edge as an attribute or may be omitted.

[0018] In the method of this embodiment, the server system 100 acquires an entity network (first network), which is a network in which multiple nodes representing multiple entities are connected by multiple edges indicating business relationships or dominance relationships. Because the edges have directions, the entity network is a directed graph. The server system 100 performs an analysis based on the entity network and performs processing to present the analysis results. For example, the terminal device 200 is a device used by a user who uses a service provided by the OSINT system. For example, the user uses the terminal device 200 to request some kind of analysis from the server system 100, which is an information processing system 10. The server system 100 performs an analysis based on the entity network and transmits the analysis results to the terminal device 200.

[0019] When an entity network represents business relationships between companies, there are two types of paths within the entity network: (A) a chain of transactions involving various items actually related to the company's products as parts or materials (upstream) and / or a chain of transactions involving the company's products (downstream), and (B) a chain of transactions involving multiple transactions not directly related to the company. Therefore, in this embodiment, an entity network representing business relationships obtained based on public information is referred to as a transaction network, and a portion of the entity network relating to the actual transactions of a given company is referred to as a supply chain network. In other words, a transaction network is a network that includes both (A) and (B), and a supply chain network related to a given company is a network that is estimated to include (A) but not (B). The server system 100 may perform a process to extract a supply chain network from the transaction network.

[0020] However, the networks to be processed in this embodiment are not limited to trading networks and supply chain networks. For example, the entity network may be a network representing control relationships between entities. More specifically, the entity network may be a holding network representing control relationships between companies based on shares.

[0021] Fig. 2 is a functional block diagram showing a detailed configuration example of server system 100. For example, as shown in Fig. 2, server system 100 includes a processing unit 110, a storage unit 120, and a communication unit 130. However, the configuration of server system 100 is not limited to the example in Fig. 2, and various modifications are possible, such as omitting some components or adding other components.

[0022] The processing unit 110 of this embodiment is configured by the following hardware. The hardware can include at least one of a circuit for processing digital signals and a circuit for processing analog signals. For example, the hardware can be configured by one or more circuit devices or one or more circuit elements mounted on a circuit board. The one or more circuit devices are, for example, an integrated circuit (IC), a field-programmable gate array (FPGA), etc. The one or more circuit elements are, for example, a resistor, a capacitor, etc.

[0023] The processing unit 110 may also be implemented by the following processor. The server system 100 of this embodiment includes a memory that stores information and a processor that operates based on the information stored in the memory. The information may be, for example, a program and various data. The program may include a program that causes the server system 100 to execute the processes described herein. The processor includes hardware. Various processors can be used as the processor, such as a central processing unit (CPU), a graphics processing unit (GPU), or a digital signal processor (DSP). The memory may be a semiconductor memory such as a static random access memory (SRAM), a dynamic random access memory (DRAM), or a flash memory, or may be a register, a magnetic storage device such as a hard disk drive (HDD), or an optical storage device such as an optical disk drive. For example, the memory stores computer-readable instructions, and the processor executes the instructions to implement the functions of the processing unit 110. The instruction here may be an instruction from an instruction set that constitutes a program, or an instruction that instructs the hardware circuitry of the processor to operate.

[0024] The processing unit 110 includes, for example, a network acquisition unit 111, a vector acquisition unit 112, a matrix acquisition unit 113, a network extraction unit 114, and a path selection unit 115. However, the processing unit 110 does not need to include all of the components shown in Fig. 2. For example, the processing unit 110 may acquire a holding network as the entity network. In this case, components related to the extraction of the second network 122 (specifically, a supply chain network), such as the vector acquisition unit 112, the matrix acquisition unit 113, and the network extraction unit 114, may be omitted.

[0025] The network acquisition unit 111 acquires a first network 121 in which a plurality of nodes corresponding to a plurality of entities are connected by edges indicating business relationships or dominance relationships. For example, the network acquisition unit 111 may create an entity network based on public information and use the created entity network as the first network 121. The public information includes business relationship information that associates product provider companies with product recipient companies, or dominance relationship information that indicates stock ownership ratios, etc. The network acquisition unit 111 stores the created first network 121 in the storage unit 120. However, the creation of the first network 121 may be performed in a system different from the information processing system 10 according to this embodiment. In this case, the network acquisition unit 111 may perform a process of acquiring the creation result from the different system.

[0026] The network acquisition unit 111 may acquire, as the first network 121, a network to which multiple nodes corresponding to multiple companies are connected based on business relationships between the companies, for example, as described below using Figures 5A to 5C.

[0027] The vector acquisition unit 112 obtains a vector expression (complex vector) of each node included in the first network 121. Specifically, when one of the plurality of nodes is set as a vector calculation node, a complex number having a phase according to the distance to the vector calculation node and an absolute value according to the flow rate toward or from the vector calculation node is assigned to each of the plurality of nodes, thereby obtaining a complex vector that expresses the relationship between the vector calculation node and other nodes. A method for obtaining a vector expression will be described later with reference to FIGS. 7 to 14, etc. The vector acquisition unit 112 stores the obtained complex vector of each node in the storage unit 120.

[0028] The matrix acquisition unit 113 obtains a complex correlation matrix C based on the complex vector of each node obtained by the vector acquisition unit 112. The matrix acquisition unit 113 also performs eigenvalue decomposition of the complex correlation matrix C to obtain eigenvalues ​​and eigenvectors.

[0029] The network extraction unit 114 extracts a second network 122, which is a part of the first network 121, based on the complex vectors representing each of the multiple nodes. Specifically, the network extraction unit 114 may extract, as the second network 122, a supply chain network representing the substantial trading relationships of a given company from the transaction network (first network 121) based on the eigenvectors.

[0030] The route selection unit 115 selects a preferred route with a high priority from multiple routes included in the entity network. The entity network here is, for example, the second network 122, which is a supply chain network. However, the entity network from which the preferred route is selected may be the second network 122 other than the supply chain network, or the first network 121.

[0031] The storage unit 120 is a work area for the processing unit 110 and stores various pieces of information. The storage unit 120 can be realized by various types of memory, and the memory may be a semiconductor memory such as an SRAM, a DRAM, a ROM, or a flash memory, a register, a magnetic storage device such as a hard disk drive, or an optical storage device such as an optical disk drive.

[0032] The storage unit 120 stores, for example, a first network 121 acquired by the network acquisition unit 111. The storage unit 120 also stores a second network 122 extracted by the network extraction unit 114. The storage unit 120 may also store publicly available information, such as securities reports and input-output tables, as information representing business relationships and control relationships. For example, the storage unit 120 stores tag data 123 and a regulated company list 124. The tag data 123 is information related to tags, such as a set of attribute values ​​(candidate tag values) for a given attribute. The tag data 123 may be, for example, an industrial classification code. However, the tag may include various information such as a country, a company ID, and an entity category, and the tag data may include information related to these tags. The regulated company list 124 is, for example, information identifying problematic companies from an ESG perspective. The storage unit 120 can also store various other information related to the processing of this embodiment.

[0033] The communication unit 130 is an interface for performing communication via a network, and includes, for example, an antenna, an RF (radio frequency) circuit, and a baseband circuit. The communication unit 130 may operate under the control of the processing unit 110, or may include a processor for communication control that is different from the processing unit 110. The communication unit 130 is an interface for performing communication in accordance with, for example, TCP / IP (Transmission Control Protocol / Internet Protocol). However, the specific communication method can be modified in various ways.

[0034] 3 is a block diagram showing a detailed configuration example of the terminal device 200. The terminal device 200 includes a processing unit 210, a storage unit 220, a communication unit 230, a display unit 240, and an operation unit 250.

[0035] The processing unit 210 is configured by hardware including at least one of a circuit for processing digital signals and a circuit for processing analog signals. The processing unit 210 may also be realized by a processor. Various types of processors, such as a CPU, a GPU, or a DSP, can be used as the processor. The processor executes instructions stored in the memory of the terminal device 200, thereby realizing the functions of the processing unit 210 as processing.

[0036] The storage unit 220 is a work area for the processing unit 210, and is realized by various types of memory such as SRAM, DRAM, and ROM.

[0037] The communication unit 230 is an interface for performing communication via a network, and includes, for example, an antenna, an RF circuit, and a baseband circuit. The communication unit 230 performs communication with the server system 100 via, for example, the network.

[0038] The display unit 240 is an interface that displays various information and may be a liquid crystal display, an organic EL display, or any other type of display. The operation unit 250 is an interface that accepts operation inputs by a user. The operation unit 250 may be, for example, buttons or the like provided on the terminal device 200. The display unit 240 and the operation unit 250 may also be a touch panel that is integrally configured.

[0039] As described above, the information processing system 10 according to this embodiment includes a network acquisition unit 111 and a route selection unit 115. Each of the multiple nodes included in the entity network is assigned additional data that represents the characteristics of the node. The route selection unit 115 may calculate a feature value for each of the multiple routes based on the additional data, and select a preferred route based on the calculated feature value. In this manner, a route with a high priority on the network can be appropriately selected based on the additional data assigned to the node. For example, if the entity network is a supply chain network, it is possible to select a route with a high importance (a transaction flow with a high importance) in a supply chain between two companies. The information processing system 10, for example, performs a process of displaying the selected preferred route on the display unit 240 of the terminal device 200.

[0040] Here, the additional data assigned to the node may be a tag representing an industry classification, a country, etc. When the additional data is a tag, the feature amounts are the weight of each path on the network (path weight) and the weight of a tag transition pattern (tag transition pattern weight) that represents how the tag transitions along multiple nodes included in the path.

[0041] As will be described later with reference to Figures 19 and 21, route weights and tag transition pattern weights can be calculated by simple calculations, and the likelihood of excessive increases in the amount of calculations is low even when the scale of the network increases. Therefore, according to the method of this embodiment, it is possible to calculate a preferred route between two nodes in a network over a wide range of the target network (in a narrow sense, the entire network). Furthermore, in this embodiment, once the route and tag transition pattern weights are calculated, it is easy to recalculate the feature values ​​of each route even when a subnetwork is targeted. For example, with the method of this embodiment, even when the two nodes that are the endpoints of a route are switched, the preferred route can be reselected quickly. Processing targeting a subnetwork will be described later with reference to Figures 27 to 28C.

[0042] Furthermore, in the method of this embodiment, once the route weights are calculated, the tag transition pattern weights are determined, making it possible to determine a preferred route. Therefore, the method of this embodiment is not limited to processing networks such as trade networks and supply chain networks, and can be extended to various networks in which route weights (weights at the end nodes of a route) can be calculated.

[0043] Alternatively, the additional data assigned to a node may be a vector (embedding vector) calculated from text that represents the characteristics of the node, as will be described later. When the additional data is an embedding vector, the feature amount is calculated from the inner product of a first difference vector, which is the difference between the embedding vectors of two endpoint nodes, and a second difference vector, which is the difference between the embedding vectors of two adjacent nodes. Specific examples will be described later using Figures 29 to 35.

[0044] As described above, in this embodiment, an entity network may be acquired based on public information. In this case, the types of attributes assigned to nodes may vary, and it is possible that only the industrial classification code or text representing characteristics may be acquired. Therefore, by implementing both processing based on tag transition patterns corresponding to the industrial classification as described above and processing based on embedded vectors obtained from the text, and using these processes in a mutually complementary manner, it becomes possible to appropriately determine a preferred network path based on the acquired attributes.

[0045] Furthermore, some or all of the processing performed by the information processing system 10 of the present embodiment may be realized by a program. The processing performed by the information processing system 10 is, in a narrow sense, processing performed by the processing unit 110 of the server system 100, but may also include processing executed by the processing unit 210 of the terminal device 200.

[0046] The program according to this embodiment can be stored in, for example, a non-transitory information storage medium (information storage device), which is a medium readable by a computer. The information storage medium can be realized by, for example, an optical disc, a memory card, a HDD, or a semiconductor memory. The semiconductor memory is, for example, a ROM. The processing unit 110 and the like perform various processes of this embodiment based on the program stored in the information storage medium. In other words, the information storage medium stores a program for causing a computer to function as the processing unit 110 and the like. A computer is a device equipped with an input device, a processing unit, a storage unit, and an output unit. Specifically, the program according to this embodiment is a program for causing a computer to execute each step described below using FIG. 4 and the like.

[0047] The technique of this embodiment can also be applied to an information processing method including the following steps. The information processing method includes the steps of: an information processing device acquiring an entity network in which multiple nodes corresponding to multiple entities are connected by edges indicating trading relationships or dominance relationships; determining a feature amount for each of multiple routes included in the entity network based on additional data; and selecting a preferred route with a high priority from the multiple routes based on the determined feature amount. As described above, the additional data is data that is assigned to each of the multiple nodes included in the entity network and represents the characteristics of the node.

[0048] 2. Processing Details The processing of this embodiment will be described in detail below. In the following, an example will be described in which the first network 121 is a trading network in which multiple nodes corresponding to multiple companies are connected by edges indicating trading relationships, and the second network 122 is a supply chain network representing the supply chain of the company of interest. In this way, it is possible to determine a route with a high priority in the supply chain network of the company of interest. However, the entity network according to this embodiment is not limited to a supply chain network. Furthermore, extraction of the second network 122 is not essential, and the first network 121 may be used as a network from which a priority route is selected.

[0049] 2.1 Overall flow FIG. 4 is a flowchart outlining the processing executed in the information processing system 10 of this embodiment.

[0050] First, in step S101, network acquisition unit 111 acquires a transaction network, which is first network 121. Network acquisition unit 111 stores the transaction network in storage unit 120.

[0051] In step S102, the vector acquisition unit 112 obtains a vector representation for each of the multiple nodes included in the transaction network. The vector acquisition unit 112 stores the obtained vector representation in the storage unit 120. Note that the vector representation here is a vector that represents the network structure, i.e., how each node is connected to other nodes, and is different from an embedded vector (described later using Figures 29 to 35), which is an example of additional data.

[0052] In step S103, the matrix acquisition unit 113 determines the complex correlation matrix C based on the vector representation. In step S104, the matrix acquisition unit 113 performs eigenvalue decomposition of the complex correlation matrix C to obtain eigenvalues ​​and eigenvectors. The matrix acquisition unit 113 stores at least the eigenvectors in the storage unit 120.

[0053] In step S105, the network extraction unit 114 extracts a supply chain network, which is the second network 122, from the transaction network based on the eigenvectors. For example, the network extraction unit 114 may extract a supply chain network of a company, which is an entity of interest.

[0054] In step S106, the route selection unit 115 selects a priority route from among the routes included in the supply chain network extracted in step S105.

[0055] The processing of each step will be described in detail below.

[0056] 2.2 Acquiring a trading network The process of acquiring a trading network corresponding to step S101 in Fig. 4 will now be described. The network acquisition unit 111 may generate a trading network based on publicly available information. Publicly available information includes, for example, securities reports and news releases.

[0057] The network acquisition unit 111 identifies various information about each of the many companies, such as the company's name, nationality, business field, business partners and business items, etc. The network acquisition unit 111 may also identify the number of employees, shareholders and their investment ratios, board members, etc. of each company based on public information.

[0058] The network acquisition unit 111 may also acquire reputation information indicating the reputation of each company based on public information. For example, reputation information is information indicating whether a target company has issues from the perspective of ESG (Environment, Social, and Governance) or has a history of being sanctioned. For example, reputation information may be information indicating whether a company has violated export regulations, handled conflict minerals, engaged in slave labor, or engaged in illegal logging. Public information may also be documents issued by government or other institutions, and reputation information may be information indicating whether a company is subject to trade restrictions in a specific country or the like. As described above, public information may also include information related to social media, and the reputation information here may be information determined based on the social media. For example, the network acquisition unit 111 may acquire reputation information based on information posted by official accounts of companies or the like on social media. The social media information used in the method of this embodiment is not limited to information posted by official accounts. For example, if a certain number of users on social media post a given company name along with words such as "conflict minerals," "slave labor," or "illegal logging," negative reputation information may be associated with the company.

[0059] 5A and 5B show examples of the structure of data acquired based on public information. As shown in Fig. 5A, the network acquisition unit 111 acquires information in which the company name, industry classification, reputation, and nationality are associated with each company included in the public information.

[0060] The company name is, for example, text data indicating the name of the target company. The industry classification is information indicating the business field of the target company. As mentioned above, the reputation is information indicating whether the target company has problems from an ESG perspective. The nationality is information indicating the country to which the target company belongs.

[0061] While FIG. 5A illustrates the industrial classification as text, the information representing the industrial classification may be an industrial classification code. For example, in the Japan Standard Industrial Classification, the code "231" is assigned to the non-ferrous metal primary smelting and refining industry, and a code such as "2813" is assigned to the semiconductor device manufacturing industry. As mentioned above, the industrial classification may be based on other classifications, such as NAICS. For ease of explanation, the following description assumes that the industrial classification is text representing the classification name. However, the classification name in the following processing can be replaced with the industrial classification code. Furthermore, the storage unit 120 may include tag data 123, as shown in FIG. 2. The tag data 123 is, for example, information associating classification names with classification codes in NAICS. The processing unit 110 may perform a conversion process between classification names and classification codes based on the tag data 123.

[0062] 5B, the network acquisition unit 111 acquires information representing transactions between companies based on the public information. For example, the transaction relationship information included in the public information is the information shown in FIG. 5B or information in a form that can identify the information shown in FIG. 5B. The information representing transactions between companies is, for example, information that associates information identifying a selling company, information identifying a sold company, and information identifying a product being traded.

[0063] Based on this information, the network acquisition unit 111 creates a transaction network, which is a directed graph with companies as nodes and transaction relationships as edges.

[0064] FIG. 5C is a diagram illustrating a portion of a transaction network generated based on the transaction relationships shown in FIG. 5B. As shown in FIG. 5B, company C1 sells product P1 to company C10. In this case, the network acquisition unit 111 adds an edge from C1 to C10 between the node representing company C1 and the node representing company C10. As shown in FIG. 5A, the node representing company C1 is associated with information such as the company name "C1," as well as industry classification, reputation, and nationality. The same is true for the node representing company C10. Furthermore, the edge from C1 to C10 is associated with the traded product P1. Note that the network acquisition unit 111 may acquire information such as transaction volume and transaction price based on public information, and associate this information with the edge.

[0065] 5B, assume that there is a relationship in which company C10 sells product P2 to company C5. In this case, the network acquisition unit 111 adds an edge from company C10 to company C5 between the node representing company C10 and the node representing company C5. The information shown in FIG. 5A is associated with each node, and information about the traded product, etc. is associated with the edge.

[0066] As mentioned above, in a transaction network, which is a directed graph, the side that provides (sells) something is referred to as the "upstream side," and the side that receives (buys) something is referred to as the "downstream side." The definitions of upstream and downstream also apply to supply chain networks, which will be described later.

[0067] In this context, the trade network is, in a narrow sense, a network that includes nodes corresponding to all companies included in the public information to be processed. Therefore, the trade network is a network that includes a very large number of nodes, and the number of nodes may be several thousand or more. However, various modifications to the trade network configuration method are possible, such as excluding some companies included in the public information.

[0068] FIG. 6 is a diagram showing an overview of a trade network. As shown in FIG. 6, the trade network is a directed graph in which multiple nodes are connected by edges that represent trade relationships. Note that in FIG. 6, for ease of explanation, the shape of the nodes is changed depending on whether they are manufacturing plants, distribution centers, etc. As described above, information such as the name and industrial classification of the company corresponding to each node is acquired, so it is possible to perform processing such as changing the display mode depending on the industrial classification. However, in the method of this embodiment, controlling the shape of the nodes is not essential.

[0069] 5A and 5B are examples of data structures related to a trading network, and the specific data structure is not limited to these. For example, although FIGS. 5A and 5B show examples using table data such as a relational database, data with other structures may also be used. Even when table data is used, the number of tables is not limited to two, and the tables may be consolidated into one, or may be divided into three or more tables for management. Some of the items shown in FIGS. 5A and 5B may be omitted, or other items may be added. For example, the network acquisition unit 111 acquires information indicating company names, industry classification codes, and trading direction, and other information may be omitted.

[0070] 2.3 Calculating Vector Representations 2.3.1 Extracting the trading network for vector calculation nodes Fig. 7 is a flowchart illustrating the complex vector determination process in step S102 of Fig. 4. When this process starts, first, the vector acquisition unit 112 selects one of the multiple nodes included in the transaction network as a vector calculation node.

[0071] In step S202, the vector acquisition unit 112 extracts a sub-transaction network related to the vector calculation node. The sub-transaction network refers to a part of the transaction network that includes the vector calculation node.

[0072] In step S203, the vector acquisition unit 112 obtains a vector expression of the vector calculation node based on the sub-transaction network extracted in step S202. The vector here is a complex vector whose elements are complex numbers having magnitude and phase, as will be described later with reference to FIG.

[0073] In step S204, the vector acquisition unit 112 determines whether vector expressions of all nodes included in the transaction network have been calculated. If there is a node for which a vector expression has not been calculated (step S204: No), the process returns to step S201 and continues. For example, the vector acquisition unit 112 selects a node for which a complex vector has not been calculated as a vector calculation node and calculates the vector expression of the vector calculation node.

[0074] If the vector expressions of all nodes have been calculated (step S204: Yes), the vector acquisition unit 112 ends the processing shown in FIG.

[0075] FIG. 8 is a flowchart illustrating the sub-transaction network extraction process corresponding to step S202 in FIG.

[0076] In step S301, the vector acquisition unit 112 determines a specific company that will be used as a basis for extracting a sub-transaction network. For example, the specific company here may be the company that corresponds to the vector calculation node selected in step S202 of FIG. 7. For example, as shown in steps S201 to S204 of FIG. 7, multiple nodes included in the transaction network are sequentially selected as vector calculation nodes. Hereinafter, the specific company will also be referred to as company A.

[0077] In step S302, the vector acquisition unit 112 selects all companies X that are adjacent to company A corresponding to the vector calculation node and sell something to company A, and defines this set as S1(A).

[0078] FIG. 9A is a diagram illustrating S1(A). For example, FIG. 9A is a diagram extracting a portion of a transaction network that includes company A. In the example of FIG. 9A, the node representing company X1 is directly connected to the node representing company A by an edge leading from X1 to A. In other words, X1 is determined to be an element of S1(A) because it is adjacent to company A and sells something to company A. Similarly, X2 and X3 are also adjacent to company A and sell something to company A, so they are determined to be elements of S1(A). In this case, S1(A) is a set consisting of three elements, (X1, X2, X3).

[0079] In step S303, the vector acquisition unit 112 initializes a variable i for search to 1, and sets S i+1(A) to an empty set. Here, since i is initialized to 1, S i+1(A) becomes S2(A). Therefore, here, the vector acquisition unit 112 sets S2(A) to an empty set.

[0080] In step S304, the vector acquisition unit 112 adds to S1+1(A) all companies Y that are adjacent to X and sell products to X for each element X in S1(A). When the processing of step S304 is performed for the first time for a given company A, i=1. Therefore, in this case, the vector acquisition unit 112 adds to S2(A) all companies Y that are adjacent to X and sell products to X for each element X in S1(A).

[0081] FIG. 9B is a diagram illustrating S2(A). In this example, S1(A) is a set consisting of three elements, (X1, X2, X3), as described above with reference to FIG. 9A. The vector acquisition unit 112 first identifies company Y, which is adjacent to X1 and sells products to X1. Here, two companies, X4 and X5, satisfy the condition, so these two companies are added to S2(A). Next, the vector acquisition unit 112 identifies company Y, which is adjacent to X2 and sells products to X2. Here, two companies, X5 and X6, satisfy the condition. Since X5 has already been added to S2(A), X6 is added to S2(A). Next, the vector acquisition unit 112 identifies company Y, which is adjacent to X3 and sells products to X3. Here, three companies, X7, X8, and X9, satisfy the condition, so these three companies are added to S2(A). As a result, in step S304, for example, as shown in FIG. 9B, a set consisting of six elements (X4, X5, X6, X7, X8, X9) is generated as S2(A).

[0082] In step S305, the vector acquisition unit 112 determines whether S i+1(A) is an empty set. In the example of FIG. 9B, S2(A) contains six elements, and therefore is determined to be not an empty set (step S305: No). In this case, in step S306, the vector acquisition unit 112 increments the variable i and initializes S i+1(A) to an empty set. Then, the process returns to step S304. For example, after obtaining S2(A) as shown in FIG. 9B, the vector acquisition unit 112 initializes S3(A) to an empty set in step S306, and then returns to the process of step S304.

[0083] In this case, in step S304, the vector acquisition unit 112 identifies company Y that is adjacent to each element X in S2(A) and sells products to X, and adds company Y to S3(A). For example, the vector acquisition unit 112 identifies a company that is adjacent to X4 and sells products to X4, and adds the identified company to S3(A). The same applies to X5 to X9, and the vector acquisition unit 112 adds companies that are adjacent to each company and sell products to S3(A).

[0084] If S3(A) is not an empty set, the result of the determination in step S305 is No, and the process returns to step S304, where the process of finding S4(A) is executed. The process thereafter is similar, and the processes from step S304 to S306 are repeated until Si+1(A) becomes an empty set.

[0085] In step S305, if Si+1(A) is an empty set, it means that no elements that satisfy the conditions were found by the processing in step S304. In other words, it means that there are no companies further upstream than company X, which is an element of Si(A).

[0086] Therefore, in this case (step S305: Yes), in step S307, the vector acquisition unit 112 sets S as the union of S1(A), S2(A), . . . , Si(A).

[0087] In step S308, the vector acquisition unit 112 outputs a directed graph including nodes corresponding to company A and all companies included in S as a sub-transaction network. The sub-transaction network here is a sub-network representing companies upstream from company A corresponding to the vector calculation node, and is therefore also referred to as an upstream sub-transaction network.

[0088] Figure 10 is an example of an upstream sub-transaction network. As shown in Figure 10, the upstream sub-transaction network is a directed graph consisting of nodes representing companies that are directly or indirectly connected to Company A. This makes it possible to appropriately extract the part of the transaction network that is related to a desired company. The upstream sub-transaction network is information that can identify the connection relationship with Company A, and is therefore useful information for expressing the characteristics of Company A as a complex vector.

[0089] When calculating Si+1(A) in step S304, the vector acquisition unit 112 may identify company Y based on the condition that "company Y is adjacent to element X of Si(A) and sells something to X" as well as the condition that "company Y is not included in the union of {A}, S1(A), ..., and Si(A)."

[0090] For example, consider the case where there is a cycle of Xa←Xb←Xc←Xa for three companies Xa, Xb, and Xc, where Xa is an element of Si-2(A), Xb is an element of Si-1(A), and Xc is an element of Si(A). "Xa←Xb" indicates that Xb is adjacent to Xa and sells something to Xa. In this case, Xa is already an element of Si-2(A), but because it is adjacent to Xc and sells something to Xc, it can become an element of Si+1(A). In other words, taking cycles into consideration could complicate the processing by the vector acquisition unit 112. In this regard, by adding the condition "not included in the union of {A}, S1(A), ..., and Si(A)," Xa is excluded from the elements of Si+1(A), thereby simplifying the processing.

[0091] Furthermore, in step S305 of FIG. 8, the vector acquisition unit 112 may determine whether i≧k in addition to determining whether S i+1(A) is an empty set. Here, k is a value that determines the number of stages from which sub-transaction networks are extracted. For example, k is a value of approximately 3, but a different value may be set. If at least one of the first condition that S i+1(A) is an empty set and the second condition that i≧k is satisfied, the vector acquisition unit 112 may determine No in step S305 and terminate further search. In this way, the number of upstream stages of the sub-transaction network for obtaining a vector expression can be limited to k. Therefore, companies that are far from the company corresponding to the vector calculation node can be excluded from processing, thereby reducing the processing load. More specifically, since the number of elements whose value is 0 in the vector expression described below can be increased, the calculation load in processing using complex vectors (e.g., similarity calculation and eigenvalue decomposition of the complex correlation matrix C) can be reduced.

[0092] The above describes an upstream sub-transaction network consisting of upstream companies with Company A as the base. However, the sub-transaction network is not limited to the upstream sub-transaction network, and may include a downstream sub-transaction network. The downstream side is similar to that shown in Figure 8, except that the search direction changes, and so a description thereof will be omitted. For example, the vector acquisition unit 112 extracts sub-transaction networks of a vector calculation node within the range of k stages upstream and k stages downstream of the vector calculation node.

[0093] 2.3.2 Vector representation calculation Next, a process for obtaining a vector expression of a vector calculation node based on a sub-transaction network will be described. In the method of this embodiment, the vector acquisition unit 112 obtains a complex vector representing a vector calculation node by assigning, to each node included in the sub-transaction network of the vector calculation node, a phase corresponding to the distance to the vector calculation node and a complex number having an absolute value corresponding to the flow rate toward or from the vector calculation node. Note that the flow rate in this embodiment represents the amount of something flowing through a directed graph. The graph in this embodiment is a directed graph directed from an upstream company to a downstream company, and the flow rate represents the degree of influence that the upstream company has on the downstream company. The flow rate in this embodiment may be information determined based on the connection relationship of nodes in the directed graph, as will be described later with reference to FIG. 12A. Furthermore, the flow rate may reflect, for example, the specific amount of products (including materials, raw materials, manufacturing equipment, etc.) supplied from an upstream company to a downstream company.

[0094] According to the method of this embodiment, in addition to expressing the magnitude of the flow in a transaction network (or, more narrowly, a sub-transaction network within it), which is a directed graph, using absolute values, it is also possible to express the distance between nodes using topology. This makes it possible to achieve vector representations that accurately reflect the structure of the sub-transaction network (local graph) that includes the vector calculation node. More specifically, it is possible to use, as the vector representation of a node, information that reflects in detail the companies with which the node is connected upstream and downstream.

[0095] 11A and 11B are flowcharts for explaining the process of obtaining a vector expression of a vector calculation node corresponding to step S203 in FIG. 7. First, in step S401, the vector acquisition unit 112 executes initialization processing for the upstream node. In the following, the upstream node of the vector calculation node ns is set to x, and the phase-added flow rate of the upstream node x is set to F + The vector acquisition unit 112 calculates F for all upstream nodes x that are included in the transaction network and that are located upstream of the vector calculation node ns. + (Δθ, x) is initialized to 0. The vector acquisition unit 112 also initializes F + (Δθ,ns) is set to 1. Also, the set of nodes m stages upstream from the vector calculation node is called N m + The node 0 steps away from the vector calculation node ns is the vector calculation node itself, so N0 + ={ns}. Furthermore, the vector acquisition unit 112 initializes m to 1.

[0096] In step S402, the vector acquisition unit 112 determines whether m>k and N m + =φ is satisfied. Here, k is the same as the k mentioned above in the process of extracting a sub-transaction network, and is a number representing the upper limit of the number of stages in the search range. φ represents an empty set.

[0097] m≦k and N m + If ≠φ (step S402: No), in step S403, the vector acquisition unit 112 m + For all nodes x included in F, use the following formula (1) + Update (Δθ,x).

[0098]

number

[0099] A specific example will be explained using Figures 12A and 12B. Figures 12A and 12B show an example of a transaction network with a total number of nodes n = 14. Here, consider the case where node 8 is selected as the vector calculation node. Note that the transaction network here is small-scale, and the transaction network and the sub-transaction networks three levels above and below node 8 are identical, so in the following explanation, no distinction will be made between the transaction network and the sub-transaction networks.

[0100] FIG. 12A is a diagram showing the flow rate when focusing on node 8 in the trading network. In this case, the nodes one stage upstream from node 8 are node 3 and node 4. In other words, there are two edges flowing into node 8 from one stage upstream of node 8: an edge connecting node 3 and node 8, and an edge connecting node 4 and node 8. Therefore, if the flow rate flowing into node 8 is 1, that flow rate will be distributed to the two edges at a given ratio.

[0101] For example, if the distribution ratio is equal, the flow rate from node 3 to node 8 will be 1 / 2, and the flow rate from node 4 to node 8 will be 1 / 2. Naturally, if there are N edges (N is an integer of 2 or greater) flowing into node 8 from one stage upstream of node 8, the flow rate corresponding to each edge will be 1 / N. Below, an example in which the distribution ratio is equal will be described. However, if the trading volume of a specific product or the like is associated with an edge, the distribution ratio may be set based on that trading volume or the like.

[0102] Once the distribution ratio is determined, the calculation of the above formula (1) is carried out. For example, F + When calculating (Δθ,3), the first term on the right side is F before updating + (Δθ,3) is the initial value itself, so it is 0. Also, N0 + Since only node 8 is m-1 + All nodes y connected to x in F are node 8. The distribution ratio of the edge connecting node 3 and node 8 is 1 / 2 as mentioned above. + Since (Δθ, y) is the phase-dependent flow rate of node 8, which is the vector calculation node, it is set to 1 as set in step S401. + (Δθ,3) is updated as follows: Similarly, F + (Δθ,4) is updated as follows: F + (Δθ,3)=0+e iΔθ ×(1 / 2)×1=0.5e iΔθ F + (Δθ,4)=0+e iΔθ ×(1 / 2)×1=0.5e iΔθ

[0103] FIG. 12B is a diagram illustrating the phase-assigned flow rates of each node when node 8 is the vector calculation node in a transaction network similar to that of FIG. 12A. As mentioned above, the phase-assigned flow rates of nodes 3 and 4 are both 0.5e iΔθ This becomes:

[0104] In the next step S404, the vector acquisition unit 112 increments m, and returns to step S402 to perform the process. For example, in the second processing of step S402, m is set to 2, so it is determined whether 2>k and N2 + A determination is made as to whether is an empty set.

[0105] For example, when k=3, 2>k is not satisfied. In the example of Figures 12A and 12B, there are two nodes two stages upstream from node 8: node 1, which is adjacent to node 3 one stage upstream and adjacent to node 4 one stage upstream, and node 2, which is adjacent to node 4 one stage upstream. That is, N2 + is a set of node 1 and node 2, and is not an empty set. Therefore, in this example, the vector acquisition unit 112 determines No in step S402 and executes the process of step S403.

[0106] In this case, N2 + The update process for the phased flow rate is executed for nodes 1 and 2 included in node 3. As shown in FIG. 12A, node 1 is the only node that is one stage upstream from node 3. In other words, the only edge that flows into node 3 from one stage upstream of node 3 is the edge connecting node 1 and node 3. Therefore, the flow rate at node 3 is entirely attributable to node 1, so the distribution ratio is 1.

[0107] Additionally, there are two nodes one step upstream from node 4: node 1 and node 2. In other words, there are two edges flowing into node 4 from one step upstream of node 4: the edge connecting node 1 and node 4, and the edge connecting node 2 and node 4. Therefore, half of the flow rate at node 4 is due to node 1, and the remaining half is due to node 2, so the distribution ratio is 1 / 2 for each.

[0108] Once the distribution ratio is determined, the calculation of the above formula (1) is carried out. For example, F + When calculating (Δθ,1), the first term on the right side is F before updating + (Δθ,1) is the initial value itself, so it is 0. Also, N1 + are node 3 and node 4, both of which are connected to node 1, so "N m-1 + The two nodes that connect to x in the graph are node 3 and node 4. The distribution ratio of the edge connecting node 1 and node 3 is 1, and the topological flow rate F + (Δθ,3) is 0.5e as mentioned above.iΔθ The distribution ratio of the edge connecting node 1 and node 4 is 1 / 2, and the topological flow rate F + (Δθ,4) is 0.5e as mentioned above. iΔθ Therefore, F + (Δθ,1) is updated as follows: F + (Δθ,1)=0+e iΔθ ×{1×0.5e iΔθ +1 / 2×0.5e iΔθ} =0.75e 2iΔθ

[0109] Also F + When calculating (Δθ,2), the first term on the right side is F before updating + (Δθ,2) is the initial value itself, so it is 0. Also, N1 + are node 3 and node 4, and only node 4 is connected to node 2, so "N m-1 + All nodes y connected to x in the graph are included in node 4. The distribution ratio of the edge connecting node 2 and node 4 is 1 / 2, and the topological flow rate F + (Δθ,4) is 0.5e as mentioned above. iΔθ Therefore, F + (Δθ,2) is updated as follows: F + (Δθ,2)=0+e iΔθ ×{1 / 2×0.5e iΔθ}=0.25e 2iΔθ

[0110] As can be seen from the above explanation, as the number of stages from the vector calculation node increases, e iΔθ That is, in the method of this embodiment, the phase of a node that is m stages upstream from the vector calculation node is mΔθ.

[0111] In the next step S404, the vector acquisition unit 112 increments m, and returns to step S402 to perform the process. For example, in the third processing of step S402, m=3 is set, so it is determined whether 3>k and N3 + A determination is made as to whether is an empty set.

[0112] In the example of the transaction network of Figures 12A and 12B, there are no nodes upstream of node 1 and no nodes upstream of node 2, so N3 + Therefore, the answer in step S402 is Yes, and the process proceeds to the downstream process shown in FIG. 11B. N3 + is not an empty set and k≧3, the result of step S402 is No, so N3 + That is, in the method of this embodiment, the process of updating the phase-associated flow rate is repeated one stage at a time toward the upstream side until at least one of the following conditions is met: the process for k stages on the upstream side is completed, and there is no node further upstream.

[0113] When the upstream process is completed, in step S405 of Fig. 11B, the vector acquisition unit 112 executes initialization process for the downstream node. In the following, the downstream node of the vector calculation node ns is set to x, and the phase-added flow rate of the downstream node x is set to F - (Δθ, x). The vector acquisition unit 112 calculates F for all downstream nodes x that are included in the transaction network and located downstream of the vector calculation node ns. - (Δθ, x) is initialized to 0. The vector acquisition unit 112 also initializes F - (Δθ,ns) is set to 1. Also, the set of nodes m stages downstream from the vector calculation node is called N m - The node 0 steps away from the vector calculation node ns is the vector calculation node itself, so N0 - ={ns}. Furthermore, the vector acquisition unit 112 initializes m to 1.

[0114] In step S406, the vector acquisition unit 112 determines whether m>k and N m - In other words, the downstream side is also processed in the same way as the upstream side, until the processing for k stages is completed or until the condition that no nodes exist further downstream is satisfied.

[0115] If the processing for k stages has not been completed and there is a node on the downstream side (step S406: No), in step S407, the vector acquisition unit 112 m - For all nodes x included in F, use the following formula (2) - Update (Δθ,x).

[0116]

number

[0117] In the example of FIG. 12A, the nodes one stage downstream from node 8, which is the vector calculation node, are node 11 and node 12. In other words, there are two edges flowing out from node 8 to the node one stage downstream of node 8: an edge connecting node 8 and node 11, and an edge connecting node 8 and node 12. Therefore, if the flow rate flowing out from node 8 is 1, this flow rate will be distributed to the two edges at a given ratio. If the distribution ratio is equal, the flow rate from node 8 to node 11 will be 1 / 2, and the flow rate from node 8 to node 12 will be 1 / 2.

[0118] Once the distribution ratio is determined, the calculation of the above formula (2) is carried out. For example, F - When calculating (Δθ,11), the first term on the right side is F before updating - (Δθ, 11) is the initial value itself, so it is 0. Also, N0 - Since only node 8 is m-1 -All nodes y connected to x in F are node 8. The distribution ratio of the edge connecting node 8 and node 11 is 1 / 2 as mentioned above. - Since (Δθ, y) is the phase-dependent flow rate of node 8, which is the vector calculation node, it is set to 1 as set in step S405. - (Δθ,11) is updated as follows: Similarly, F - (Δθ,12) is updated as follows: F - (Δθ,11)=0+e -iΔθ ×(1 / 2)×1=0.5e -iΔθ F - (Δθ,12)=0+e -iΔθ ×(1 / 2)×1=0.5e -iΔθ

[0119] In the next step S408, the vector acquisition unit 112 increments m, and returns to step S406 to perform the process. For example, in the second processing of step S406, m is set to 2, so it is determined whether 2>k and N2 - A determination is made as to whether is an empty set.

[0120] In the example of Figures 12A and 12B, N2 - The processing for nodes 13 and 14 included in F is performed. - (Δθ,13) and F - (Δθ, 14) is updated. The details of the process are the same as those in the example described above, so the explanation will be omitted. Note that e -iΔθ That is, in the method of this embodiment, the phase of a node that is m stages downstream from the vector calculation node is −mΔθ.

[0121] If at least one of the conditions that processing for k stages is completed downstream and that there is no node further downstream is satisfied (step S406: Yes), in step S409, the vector acquisition unit 112 determines the vector representation of the vector calculation node based on the phase-attached flow rate calculated for each node.

[0122] Specifically, the vector acquisition unit 112 sets an n-dimensional complex vector in which the phased flow rates are arranged in a predetermined order for all n nodes included in the transaction network as the vector representation of the vector calculation node.

[0123] FIG. 13 is a diagram showing a vector representation in the example described above with reference to FIGS. 12A and 12B. As described above, since the trading network here includes 14 nodes, the vector obtained is a 14-dimensional complex vector. For example, the 14-dimensional complex vector is a vector in which the phased flow rates of nodes 1 to 14 are arranged in this order. However, the order of the multiple nodes included in the trading network is not limited to this, and various modifications are possible.

[0124] As described above, nodes 1 to 4 and nodes 11 to 14 are connected to node 8, which is a vector calculation node, so the phased flow rates are updated. Therefore, the first to fourth and 11th to 14th elements are complex numbers other than 0. On the other hand, nodes 5 to 7 and nodes 9 to 10 are not subject to updating, so the phased flow rates remain at their initial value of 0. Therefore, the fifth to seventh and ninth to tenth elements are 0. The eighth element is 1 because it is the phased flow rate of node 8 itself.

[0125] According to the method of this embodiment, it is possible to use a vector representation that takes into account not only the flow rate itself but also the number of stages from the vector calculation node. In the example of FIG. 13, since the phase of the first element of the complex vector is 2Δθ, the complex vector can hold information that node 1 is two stages upstream from the vector calculation node. Similarly, since the phase of the third element is Δθ, the complex vector can hold information that node 3 is one stage upstream from the vector calculation node. By using the complex vector that holds this information in subsequent processing, information including the number of stages is reflected in the processing, making it possible to improve processing accuracy.

[0126] When processing up to k stages up and down, the phases of the complex numbers that are the elements are Δθ, 2Δθ, 3Δθ, . . ., kΔθ on the upstream side, and -Δθ, -2Δθ, -3Δθ, . . ., -kΔθ on the downstream side. To clarify the relationship between phase and number of stages, it is desirable that these phases do not overlap with each other. For example, if Δθ=π / 2 is set when k=3, e 2iΔθ =e -2iΔθ = -1, it becomes difficult to distinguish, for example, between a distance of two stages upstream and a distance of two stages downstream. Therefore, in this embodiment, Δθ may be set to a value based on k. For example, Δθ is a positive real number that satisfies (k + 1) × Δθ = π.

[0127] Fig. 14 is a diagram illustrating a part of a transaction network with a different structure. In Fig. 14, consider a case where node 1 is selected as a vector calculation node and the phase-associated flow rates of nodes 2 to 5 are calculated.

[0128] Here, node 5 is directly connected to node 1, so N1 + Specifically, the topological flow rate F + (Δθ,5) is N1 + is updated as follows by processing the target: F + (Δθ,5)=0+e iΔθ ×(1 / 3)×1=(1 / 3)eiΔθ

[0129] Node 5 is also N1 + Since it is a node one level upstream from node 2 included in N2 + Specifically, the topological flow rate F + (Δθ,5) is N2 + The process for node 2 updates the flow rate F + (Δθ,2) is (1 / 3)e iΔθ is. F + (Δθ,5)=(1 / 3)e iΔθ +e iΔθ ×(1 / 2)×(1 / 3)e iΔθ =(1 / 3)e iΔθ +(1 / 6)e 2iΔθ

[0130] Furthermore, node 5 is N2 + Since it is a node one level upstream from node 4 included in + Specifically, the topological flow rate F + (Δθ,5) is N3 + The process is updated as follows: + (Δθ,4) is (1 / 6)e 2iΔθ is. F + (Δθ,5)=(1 / 3)e iΔθ +(1 / 6)e 2iΔθ +e iΔθ ×(1 / 2)×(1 / 6)e 2iΔθ =(1 / 3)e iΔθ +(1 / 6)e 2iΔθ +(1 / 12)e 3iΔθ

[0131] As described above, in the method of this embodiment, even if there is a network structure in which multiple paths with different distances (number of stages) exist as paths from the vector calculation node to the target node, it is possible to express the network structure using the flow rate with a phase of the target node. For example, in the above example, F + Since (Δθ,5) contains three terms with phases Δθ, 2Δθ, and 3Δθ, the structure of the sub-trading network shown in Figure 14 is appropriately reflected in the vector representation.

[0132] The complex vector of each node in the trading network may be used to calculate the similarity between the nodes. For example, the processing unit 110 may include a similarity calculation unit (not shown) that calculates the similarity S between node i and node j based on the following formula (3): j * x j It represents the complex conjugate vector obtained by taking the conjugate complex number for each element of x. i and x j represents the Hermitian dot product of |x i | and |x j | are x i and x j represents the magnitude (norm) of the function. R{} represents the real part.

[0133]

number

[0134] In this way, for example, it becomes possible to extend the cosine similarity used to calculate the similarity between vectors to complex numbers. Specifically, as described above, it becomes possible to make a determination using the distance (phase difference) between nodes, which makes it possible to improve the accuracy of similarity calculation.

[0135] 2.4 Complex correlation matrix and eigenvalue decomposition The complex vector of this embodiment may be used in a process of extracting a supply chain network from a transaction network. Specifically, first, as shown in step S103 of Fig. 4, the matrix acquisition unit 113 determines a complex correlation matrix C based on the complex vector, and then performs eigenvalue decomposition of the complex correlation matrix C as shown in step S104.

[0136] First, the matrix acquisition unit 113 acquires the complex vector representation of each of the first to n-th nodes included in the transaction network. Hereinafter, the complex vector corresponding to the i-th node (i is an integer satisfying 1≦i≦n) is denoted by x i For example, the vector acquisition unit 112 performs the processes shown in FIGS. 11A and 11B using the first to n-th nodes as vector calculation nodes to obtain complex vectors x1 to x n Find x1~x n are stored in the storage unit 120. n are n-dimensional complex vectors, e.g., column vectors.

[0137] Next, the matrix acquisition unit 113 calculates x1 to x n For example, the matrix acquisition unit 113 arranges x1 to x n The matrix X=[x1,x2,...,x n ] is obtained and normalized so that the absolute value of each component becomes 1. Then, the matrix obtaining unit 113 newly sets the normalized matrix as the matrix X. As described above, in this embodiment, n The process of "obtaining matrix X by arranging x1~x" is simply n The processing is not limited to arranging the images, but may include other processing such as normalization (which may be pre-processing before arranging the images, or post-processing after arranging the images).

[0138] The matrix X is a square matrix with n rows and n columns. The matrix acquisition unit 113 obtains a matrix (complex conjugate transpose) X by taking the complex conjugate of each element of the matrix X and transposing it. * Find the matrix X *is also a square matrix with n rows and n columns. The order of the n nodes included in the transaction network is the same as the order used to find the complex vector representation.

[0139] Then, the matrix acquisition unit 113 calculates C=XX * The complex correlation matrix C is calculated using the formula: The complex correlation matrix C is also a square matrix with n rows and n columns. Each element of C corresponds to the Hermitian inner product of two complex vectors, and therefore is information corresponding to the similarity shown in equation (3) above. Therefore, C can be used as the complex correlation matrix C that represents the correlation between the first to nth nodes in the trading network.

[0140] Next, the matrix acquisition unit 113 performs eigenvalue decomposition of the complex correlation matrix C. Specifically ... -1 The complex correlation matrix C is decomposed into a matrix V whose column vectors are eigenvectors and a diagonal matrix Λ whose diagonal components are eigenvalues. Hereinafter, the m eigenvalues ​​are expressed as e1 to e m and the m eigenvectors corresponding to each eigenvalue are denoted as v1 to v m Here, m is an integer that satisfies m≦n. Note that eigenvalue decomposition is a well-known technique, so a detailed explanation will be omitted.

[0141] In addition, x1~x n We have explained an example where x1~x is expressed as a vertical vector. n may be expressed as a row vector. In this case, for example, the matrix acquisition unit 113 may n The matrix obtained by vertically arranging these and normalizing the absolute value to 1 is defined as X. Furthermore, the matrix acquisition unit 113 calculates C=X * The complex correlation matrix C may be calculated using X. As described above, the matrix acquisition unit 113 of this embodiment performs the process of calculating the complex correlation matrix C from a plurality of complex vectors that represent the nodes of the trading network, and the process of performing eigenvalue decomposition of the complex correlation matrix C, and the specific process can be modified in various ways.

[0142] 2.5 Acquiring a Supply Chain Network Next, the supply chain network extraction process corresponding to step S105 in FIG. 4 will be described.

[0143] The network extraction unit 114 extracts a group of supply chain networks based on the transaction network and the complex vector, and selects a portion of the group of supply chain networks that includes a reference node corresponding to the entity of interest as a supply chain network to be subjected to the priority path selection process. In this way, it is possible not only to extract an important portion of the transaction network as a supply chain network, but also to perform processing that identifies specific nodes (companies). As a result, it is possible to appropriately reduce the amount of information used to select the priority path.

[0144] Hereinafter, the process of extracting a group of supply chain networks without limiting the companies (nodes) will be referred to as the first extraction process, and the process of extracting a supply chain network from a group of supply chain networks with limited companies, etc. will be referred to as the second extraction process.

[0145] 2.5.1 Acquiring supply chain networks 15 is a flowchart illustrating the first extraction process by the network extraction unit 114. First, in step S501, the network extraction unit 114 extracts m eigenvectors v1 to v m Among them, v j Here, j is an integer between 1 and m, and the initial value is j=1, for example.

[0146] where v j is a vector obtained by eigenvalue decomposition of the n-by-n complex correlation matrix C, so it is a vertical vector containing n elements. For example, the eigenvector v j is expressed as the following equation (4). In order to simplify the expression, the eigenvector v j The transposed representation of

[0147]

number

[0148] where eigenvector v j The first element of represents information about node 1 in the trading network. That is, the absolute value (flow rate) of node 1 is r j1 and the phase (distance from the reference node) is p j1 The eigenvector v j The same is true for the second to nth elements of , which respectively represent the flow rate and phase of nodes 2 to n. In other words, one eigenvector is information that identifies the relationship (network structure) between n nodes included in the transaction network. Considering that the eigenvectors are found from the complex correlation matrix C, the network structure represented by the eigenvectors is considered to represent the main network structure in the transaction network. Therefore, the network extraction unit 114 of this embodiment performs a first extraction process to extract a supply chain network group from the transaction network based on the eigenvectors.

[0149] In step S502, the network extraction unit 114 extracts edges E1 to E2 included in the transaction network. L (L is an integer of 2 or more that represents the total number of edges) l Here, l is an integer between 1 and L, and for example, the initial value is l=1.

[0150] In step S503, the network extraction unit 114 extracts the edge E l Upstream node c of (l,s) and downstream node c (l,t) For example, identify the edge E l is an attribute of the upstream node c (l,s) and downstream node c (l,t) The network extraction unit 114 performs the process of step S503 by referring to the attribute value.

[0151] In step S504, the network extraction unit 114 extracts the eigenvector v j Based on the upstream node c (l,s) The absolute value of rj(l,s) and phase p j(l,s) Specifically, the network extraction unit 114 determines the upstream node c (l,s) Identify the node number among nodes 1 to n included in the transaction network, and calculate the eigenvector v j The absolute value r is calculated by reading the corresponding element out of n elements of j(l,s) and phase p j(l,s) For example, determine the upstream c (l,s) If corresponds to node 1, then r j(l,s) =r j1 and p j(l,s) =p j1 is.

[0152] In step S505, the network extraction unit 114 extracts the eigenvector v j Based on the downstream node c (l,t) The absolute value of r j(l,t) and phase p j(l,t) The specific process is determined by the upstream node c (l,s) This is the same as in the case of

[0153] Then, the network extraction unit 114 extracts the eigenvector v j The upstream node c is represented by the absolute value of the element of (l,s) and downstream node c (l,t) The first step is to determine the magnitude of the flow rate, and the eigenvector v j The upstream node c is represented by the topology of the elements of (l,s) and downstream node c (l,t) A supply chain network is extracted by performing a second determination of the distance between the first and second determinations. However, both the first and second determinations are not essential, and either one may be omitted.

[0154] In this way, the eigenvector v j Edge E l Specifically, the importance of the upstream node c (l,s) and downstream node c (l,t)If both of the flows are large enough, the edge E connecting the two nodes l is estimated to be an important edge in the transaction network. j The phase obtained from the eigenvector v j The upstream node c in the network structure represented by (l,s) and downstream node c (l,t) It represents the main connection relations (distance, number of stages) of the eigenvectors. In other words, the connection relations specified by the phase of the eigenvectors and the edge E l If the connection relationship in is close, then the edge E l The importance of is high, and if it is far, the edge E l As described above, by using the flow rate and phase, it can be determined that the importance of edge E l It becomes possible to appropriately perform judgment regarding the above.

[0155] In step S506, the network extraction unit 114 performs a first determination based on the flow rate. Specifically, the network extraction unit 114 determines whether the upstream node c (l,s) The absolute value of r j(l,s) is greater than a given threshold δ and the downstream node c (l,t) The absolute value of r j(l,t) Determine whether is greater than a given threshold δ.

[0156] r j(l,s) and r j(l,t) If both of these are greater than δ (step S506: Yes), in step S507, the network extraction unit 114 performs a second determination based on the phase (distance). (l,s) Phase p j(l,s) from downstream node c (l,t) Phase p j(l,t) and determine whether the resulting value is greater than (1-ε) and less than (1+ε), where ε is a given threshold.

[0157] The 1 in (1+ε) and (1-ε) is a value that represents the distance between two adjacent nodes. As mentioned above, in a transaction network, the upstream node c(l,s) and downstream node c (l,t) Edge E l are two nodes directly connected by an edge E, and the distance between the nodes is 1. l is an important edge in the trading network, then the eigenvector v j In the network structure represented by (l,s) and downstream node c (l,t) Edge E l directly connected by an edge corresponding to eigenvector v j It is estimated that the distance between nodes calculated from is close to 1. On the other hand, the edge E l is not an important edge in the trading network, the eigenvector v j In the network structure represented by (l,s) and downstream node c (l,t) is not connected in the first place, or edge E l It is estimated that the distance between nodes will be a value different from 1 because the nodes are connected by edges different from the above.

[0158] Therefore, in step S507, the network extraction unit 114 extracts the eigenvector v j The upstream node c determined from (l,s) and downstream node c (l,t) and the distance between two adjacent nodes (specifically, 1). l It becomes possible to appropriately determine the importance of

[0159] If at least one of the flow rates is equal to or less than the threshold value δ (step S506: No), or if the absolute value of the difference between the distance and 1 is equal to or greater than ε (step S507: No), the edge E l Therefore, in step S508, the network extraction unit 114 determines that the importance of E l The process is then carried out to exclude these from the supply chain network to be extracted.

[0160] On the other hand, if both of the flow rates are greater than the threshold δ (step S506: Yes) and the absolute value of the difference between the distance and 1 is smaller than ε (step S507: Yes), edge E l are left as edges that make up the supply chain network.

[0161] That's it for Edge E l In step S509, the network extraction unit 114 extracts all edges E1 to E2 included in the transaction network. L It is determined whether the processing has been completed.

[0162] If there are any unprocessed edges (step S509: No), in step S510, the network extraction unit 114 updates the variable l, and then returns to step S502. For example, after processing edge E1, the network extraction unit 114 increments l to update it to l=2, and performs the processes of steps S502 to S509 described above on edge E2.

[0163] If the process for all edges has been completed (step S509: Yes), in step S511, the network extraction unit 114 extracts edges E1 to E L The network formed by the edges that were not excluded in the process of step S508 is added to the supply chain network group. The network added here is a partial network of the transaction network. Note that edges E1 to E L The network formed by the edges that are not excluded in the process of step S508 does not necessarily become a graph in which all nodes are connected, but may be divided into several networks. In this case, the network extraction unit 114 performs a process of adding each divided network to the supply chain network group.

[0164] By the processing of steps S501 to S511, the eigenvector v jNext, in step S512, the network extraction unit 114 extracts all the eigenvectors v1 to v2 obtained by the eigenvalue decomposition. m It is determined whether the processing has been completed.

[0165] If there are unprocessed eigenvectors (step S512: No), in step S513, the network extraction unit 114 updates the variable j, and then returns to step S501. For example, after processing the eigenvector v1, the network extraction unit 114 increments j to update it to j=2, and executes the processing of steps S502 to S513 described above for the eigenvector v2. Note that when the eigenvector to be processed is updated, the processing result of step S508 is also initialized, and the edges E1 to E L The process of step S502 is started again from the state where none of the above has been deleted.

[0166] When the process for all eigenvectors has been completed (step S512: Yes), the network extraction unit 114 ends the first extraction process for extracting a supply chain network group. That is, the supply chain network group is a set of eigenvectors v1 to v m is a set of partial networks obtained for each of the

[0167] 2.5.2 Supply Chain Network Selection Next, the network extraction unit 114 performs a second extraction process to extract a supply chain network related to a specific company from the group of supply chain networks. For example, the network extraction unit 114 extracts a supply chain network including a node corresponding to a given company from the group of supply chain networks obtained by the first extraction process shown in FIG. 15. Here, the given company may be input using the operation unit 250 of the terminal device 200. For example, a user of the terminal device 200 performs an operation to select a company of interest that requires some kind of analysis, such as the company itself, a competitor, or a company that is scheduled to be acquired. The network extraction unit 114 identifies a node corresponding to the selected company and performs the second extraction process by extracting a network including the identified node from each network included in the group of supply chain networks.

[0168] The network extraction unit 114 may also narrow down the supply chain networks based on other conditions. For example, the network extraction unit 114 may select a supply chain network related to a specific product of a company of interest. In this case, the network extraction unit 114 may determine whether or not tags attached to edges in the supply chain networks include information representing the selected product.

[0169] 2.6 Determining Preferred Routes Next, the processing of the route selection unit 115 will be described. Note that, as described above, an example will be considered in which the information processing system 10 includes the network extraction unit 114 that extracts the second network 122 from the first network 121. In this case, the route selection unit 115 may obtain a preferred route from the second network 122. By targeting the second network 122, it is possible to select a preferred route targeting a highly important part of the first network 121. If the second network 122 is a supply chain network, it is possible to obtain a transaction route that is highly important in the essential transaction relationship of the entity of interest.

[0170] 2.6.1 Processing flow Nodes in the entity network according to this embodiment may be assigned tags containing one or more of a plurality of tag values ​​as additional data. The path selection unit 115 may then calculate, as feature quantities, path weights that represent the weights of each of a plurality of paths and tag transition pattern weights that are weights of tag transition patterns that represent how tag values ​​transition when nodes transition along the paths, and select a preferred path based on the path weights and tag transition pattern weights. In this way, a preferred path can be selected taking into consideration both the path weights that reflect the connection relationships between nodes and the tag transition pattern weights that reflect the transition of tag values.

[0171] The tag according to this embodiment may be information representing at least one of an industrial classification and a country. For example, if the tag value represents an industrial classification, the tag transition pattern is information representing how the industrial classification changes along the route connecting companies. In this case, by using the tag transition pattern weight, it becomes possible to identify important routes (major transaction routes) from the perspective of the relationships between companies belonging to certain industrial classifications.

[0172] Furthermore, when tag values ​​represent countries, the tag transition pattern weights can be used to determine which countries' companies have relationships with each other. As a result, it becomes possible to select a preferred route, for example, taking into account the relationships between countries. For example, if a route that includes companies in a specific country is selected as the preferred route in the supply chain network of a certain product, it can be determined that there is a high possibility of a high degree of dependence on that specific country.

[0173] Fig. 16 is a flowchart illustrating the process of selecting a preferred route in step S106 of Fig. 4. First, in step S601, the route selection unit 115 calculates a route weight, which is a feature representing the weight of each of the multiple routes included in the second network 122.

[0174] In step S602, the path selection unit 115 determines, for each of the multiple paths, a tag transition pattern that indicates how tag values, which are additional data assigned to nodes, change along the path, and sets the path weight of the path as a tag transition pattern weight that indicates the weight of the tag transition pattern corresponding to the path being processed.

[0175] In step S603, the path selection unit 115 selects one tag transition pattern and determines whether the selected tag transition pattern overlaps with tag transition patterns of other paths. If the tag transition pattern overlaps with other paths (step S603: Yes), in step S604, the path selection unit 115 updates the tag transition pattern weight by calculating the sum of the tag transition pattern weights calculated for each path. If the tag transition patterns do not overlap (step S603: No), the processing of step S604 is omitted. That is, for tag transition patterns that do not overlap with other paths, the weight set in step S602 is used as the tag transition pattern weight.

[0176] In step S605, the path selection unit 115 determines whether all tag transition patterns have been processed. If there are unprocessed tag transition patterns remaining (step S605: No), the path selection unit 115 returns to step S603 and continues processing.

[0177] If all tag transition patterns have been processed (step S605: Yes), in step S606, the path selection unit 115 selects a priority path based on the path weight and the tag transition pattern weight. The processing of each step will be described in detail below using a specific example.

[0178] 2.6.2 Route Weight First, the calculation process of the route weight shown in step S601 of Fig. 16 will be described. The route selection unit 115 may calculate the route weight for each of the multiple routes included in the entity network based on the trading relationship or dominance relationship between the nodes on the route. In this way, it becomes possible to calculate the route weight based on the specific configuration of the entity network.

[0179] FIG. 17 is an example of a supply chain network that is the second network 122 from which a priority path is selected. Here, a simple supply chain network including 11 nodes, node A to node K, is described. In FIG. 17, tags assigned to each node are illustrated enclosed in {}. a to i are examples of tag values ​​(attribute values) included in the tags, and here, each alphabet represents one industrial classification. For example, node A is associated with industrial classification a. Also, since one company may engage in multiple businesses, one node may be associated with multiple industrial classifications. For example, node B is associated with industrial classifications b and c. The same is true for nodes C to K, each of which is assigned a tag including one or more industrial classifications.

[0180] In the supply chain network shown in Figure 17, if the direction of the arrows is traced in reverse order, there is a path A → B → D → I. Hereinafter, paths connecting multiple nodes will be expressed simply as a list of the letters representing the nodes. For example, the path ABDI represents the path that traces nodes A, B, D, and I in that order. In the supply chain network of Figure 17, there is an edge going from node B to node I, so if the path is traced in reverse order, there is a path IB. Therefore, the supply chain network contains an infinite loop of ABDIBDIB...

[0181] In this way, when a loop is included in the second network 122, the loop may be resolved before the route selection unit 115 performs the process of selecting a preferred route. For example, the information processing system 10 may include a network update unit (not shown in FIG. 2) that updates the second network 122 by resolving the loop included in the second network 122. The network update unit is included in the processing unit 110 of the server system 100, for example. Specifically, the network update unit considers the route up to the route ABDI immediately before the loop, and deletes the edge between node I and node B that constitutes the loop. In this way, the calculation load in selecting a preferred route can be reduced. When focusing on the flow of goods, it is known that loops that appear in supply chain networks do not need to be considered essential parts (e.g., Kichikawa, Y., Iyetomi, H., Iino, T. et al. Community structure based on circular flow in a large-scale transaction network. Appl Netw Sci 4, 92 (2019). https: / / doi.org / 10.1007 / s41109-019-0202-8). Therefore, it is possible to carry out appropriate processing even if the loop is eliminated.

[0182] Figure 18 is a diagram in which the weights of each edge are added after eliminating the loops in the supply chain network of Figure 17. For example, in the supply chain network of Figure 18, node A is the downstream end, and nodes I, J, and K are the upstream ends.

[0183] Here, there is one route from node A to node I: ABDI. There are five routes from node A to node J: ABDJ, ABEJ, ABFJ, ABGJ, and ACGJ. There are four routes from node A to node K: ABFK, ABGK, ACGK, and ACHK. These are the 10 routes in the supply chain network shown in Figure 18.

[0184] The route selection unit 115 calculates a route weight for each of these multiple routes. Figure 19 is a diagram showing an example of a case where route weights are calculated based on the structure of the supply chain network, i.e., the flow rate. For example, if the flow rate at node A is 1, then node A is connected to two nodes: node B and node C. If the flow rates are divided equally, the flow rate at node B will be 0.5, which is half of node A's flow rate of 1. Similarly, the flow rate at node C will also be 0.5.

[0185] In addition, four nodes, Node D to Node G, are connected to Node B. Therefore, the flow rate of 0.5 for Node B is distributed to these four nodes. Therefore, the flow rate of each node is 0.5 × (1 / 4) = 0.125.

[0186] Also, node D is connected to two nodes, node I and node J. Therefore, the flow rate of node D, 0.125, is distributed to these two nodes. Therefore, the weight (flow rate) at the terminal node I along the node transition of route ABDI is 0.125 × (1 / 2) = 0.0625. The route selection unit 115 sets the weight at the terminal node of the route as the weight of the route. Similarly, the weight of the terminal node J of route ABDJ is 0.0625, so the weight of route ABDJ is also 0.0625.

[0187] The same applies to other routes. For example, since only node J is connected to node E, the weight of route ABEJ is 0.125, which is the same as the flow rate at node E.

[0188] Two nodes, node J and node K, are connected to node F. Therefore, the weight of route ABFJ and the weight of route ABFK are 1 / 2 of the flow rate of node F, and are therefore 0.0625.

[0189] Node G is connected to two nodes, node J and node K. Therefore, the weights of routes ABGJ and ABGK are 0.0625, as they are half the flow rate of node G when passing through node B. Also, the weights of routes ACGJ and ACGK are 0.125, as they are half the flow rate of node G when passing through node C.

[0190] Only node K is connected to node H. Therefore, the weight of path ACHK is the same as the flow rate of node H, which is 0.25.

[0191] Although the above describes an example in which the flow rate is divided equally according to the number of edges connected to a node, this is not limiting. For example, the distribution ratio may differ for each edge depending on the specific trading volume, etc. In this case, it will be readily apparent to those skilled in the art that the path weight can be calculated based on the weight of the corresponding edge. Furthermore, if the entity network is a network representing a control relationship based on stocks, etc., the weight of each edge may be determined according to the shareholding ratio.

[0192] 2.6.3 Tag transition pattern weight The tag transition pattern weight calculation process shown in steps S602-S605 of FIG. 16 will be described. The path selection unit 115 may determine a tag transition pattern corresponding to each of multiple paths included in the entity network based on the tag values ​​of the nodes on the path, and set a path weight as the tag transition pattern weight of the determined tag transition pattern (step S602). If the tag transition patterns of two or more of the multiple paths overlap, the path selection unit 115 updates the tag transition pattern weight by calculating the sum of the tag transition pattern weights determined for each of the two or more paths (steps S603-S605). For example, when considering the transition of tags representing industrial classifications as described above, there may be cases where the same transition pattern occurs in the industrial classification even if different companies appear on the path. For example, nodes B and C in FIG. 18 are assigned tag b, which represents the same industrial classification. Therefore, when processing industrial classifications, there may be cases where it is not necessary to distinguish between nodes B and C. The method of this embodiment enables appropriate weight setting that takes into account cases where industrial classification transitions (tag transition patterns in a broader sense) overlap even though the paths are different. The specific details will be explained below.

[0193] In the supply chain network of Figure 18, considering the route ABDI, node A is associated with a tag value representing the industry classification, node B is associated with tag values ​​b and c, node D is associated with tag values ​​d and e, and node I is associated with tag value h.

[0194] That is, there are four possible tag transition patterns that indicate how tag values ​​change along route ABDI: abdh, abeh, acdh, and aceh. Note that abdh represents a tag transition pattern in which a, b, d, and h appear in this order as tag values ​​assigned to each node when transitioning through four nodes. The same applies to other examples. Therefore, the route selection unit 115 sets a route weight of 0.0625 for route ABDI as the tag transition pattern weight for each of the four tag transition patterns abdh, abeh, acdh, and aceh.

[0195] The same is true for the other paths, and the number of types of tag transition patterns for each path is 4 for path ABDJ, 4 for path ABEJ, 2 for path ABFJ, 2 for path ABFK, 2 for path ABGJ, 2 for path ABGK, 2 for path ACGJ, 2 for path ACGK, and 2 for path ACHK. The path selection unit 115 sets the corresponding path weights as tag transition pattern weights for the 26 tag transition patterns obtained from the 10 paths.

[0196] FIG. 20A is a diagram showing an example of tag transition pattern weights assigned to each tag transition pattern by the above processing. As described above, there are four tag transition patterns corresponding to path ABDI: abdh, abeh, acdh, and aceh, and each of these is set to the same path weight of path ABDI, 0.0625 (#1-#4 in FIG. 20A). There are four tag transition patterns corresponding to path ABDJ: abdi, abei, acdi, and acei, and each of these is set to the same path weight of path ABDJ, 0.0625 (#5-#8 in FIG. 20A). The same applies to the other paths, and the results are as shown in FIG. 20A. The above corresponds to the processing of step S602 in FIG. 16.

[0197] Next, as shown in steps S603-S605, if tag transition patterns overlap on multiple routes, the route selection unit 115 updates the tag transition pattern weight by calculating the sum of the weights for the overlapping tag transition patterns.

[0198] Figure 20B shows an example of sorting the table of the 26 tag transition patterns and their tag transition pattern weights described above using Figure 20A based on the tag transition patterns. Note that new numbers #1 to #26 have been assigned in association with the sorting.

[0199] For example, the tag transition pattern abci shown in #1 appears only on the path ABEJ and does not appear on any other paths (step S603: No). Therefore, the path selection unit 115 sets the tag transition pattern weight of tag transition pattern abci to 0.125, which is calculated from the path weight of the path ABEJ.

[0200] Additionally, tag transition pattern abdh shown in #2 appears only on route ABDI and does not appear on any other routes (step S603: No). Therefore, route selection unit 115 sets 0.0625, which is calculated from the route weight of route ABDI, as the tag transition pattern weight of tag transition pattern abdh.

[0201] In contrast, as shown in #3 and #4, tag transition pattern abdi appears in both paths ABDJ and ABEJ. A tag transition pattern weight of 0.0625 is assigned to tag transition pattern abdi corresponding to path ABDJ, and a tag transition pattern weight of 0.125 is assigned to tag transition pattern abdi corresponding to path ABEJ. In this case, the path selection unit 115 updates the tag transition pattern weight by calculating the sum of the two tag transition pattern weights (step S604). In this example, the tag transition pattern weight of tag transition pattern abdi is updated to 0.0625 + 0.125 = 0.1875 as a result of the update process.

[0202] Similarly, for other tag transition patterns, the path selection unit 115 performs processing to update the tag transition pattern weight by calculating the sum of the tag transition pattern weights calculated in FIG. 20A for the overlapping tag transition patterns.

[0203] Fig. 21 is a diagram showing an example of updated tag transition pattern weights. Fig. 21 shows the relationship between tag transition patterns, tag transition pattern weights, and one or more paths corresponding to the tag transition patterns. As shown in Fig. 21, the weights of overlapping tag transition patterns are unified to one, and tag transition pattern weights are calculated for each of the 15 mutually non-overlapping tag transition patterns.

[0204] 2.6.4 Preferred Route Selection The priority route selection process shown in step S606 of Fig. 16 will now be described. The route selection unit 115 may select one or more candidate routes from among multiple routes that have the largest tag transition pattern weight along the route, and select the route determined to have a relatively large route weight as the priority route. According to the method of this embodiment, both the tag transition pattern weight and the route weight are taken into consideration, making it possible to select the priority route with high accuracy.

[0205] 22 is a diagram in which the 15 types of data shown in FIG. 21 are sorted in descending order based on the magnitude of the tag transition pattern weight. The route selection unit 115 selects the tag transition pattern with the largest tag transition pattern weight. In the example of FIG. 22, the tag transition pattern weight of abfi is the largest at 0.375. Four routes, ABGJ, ABGK, ACGJ, and ACGK, are associated with the tag transition pattern abfi. Therefore, the route selection unit 115 selects these four routes as candidate routes for the priority route.

[0206] Fig. 23A is a diagram showing information on four routes selected as candidate routes. Fig. 23 illustrates information on routes (node ​​transitions), tag transition patterns, tag transition pattern weights, and route weights. As described above with reference to Fig. 20A, multiple tag transition patterns may correspond to one route, but in this case, the candidate routes are selected based on tag transition pattern abfi, so only the information on tag transition pattern abfi is associated as the tag transition pattern and tag transition pattern weight.

[0207] Figure 23B is a diagram in which the four sets of data shown in Figure 23A are sorted in descending order based on the magnitude of the route weight. Here, the route weight of routes ACGJ and ACGK is 0.125, and the route weight of routes ABGJ and ABGK is 0.0625. Therefore, route selection unit 115 selects routes ACGJ and ACGK, which have relatively large route weights, as priority routes. Figure 24 is a diagram showing the priority routes in this case on a network.

[0208] Note that the preferred path here may be information that includes both node transition information (path in the narrow sense) and tag transition information (tag transition pattern). For example, as shown in #21 and #22 in FIG. 20A, path ACGJ corresponds to tag transition patterns abfi and adfi. Among them, abfi, which has a large tag transition pattern weight value, has high importance. That is, in path ACGJ, node C belongs to both the industrial classification corresponding to tag value b and the industrial classification corresponding to tag value d, but path ACGJ has high priority when node C functions as a company in the industrial classification corresponding to tag value b. Conversely, when node C functions as a company in the industrial classification corresponding to tag value d, even if there is a business relationship in which nodes A, C, G, and J are connected in this order, the importance of that business relationship is considered to be relatively low. Therefore, when outputting a preferred path to the terminal device 200, the information processing system 10 of this embodiment may output a tag transition pattern in addition to node transition information (path in the narrow sense, e.g., FIG. 24).

[0209] The above description deals with the process of first selecting candidate routes based on tag transition pattern weights and then comparing the route weights of the selected candidate routes. However, the process in this embodiment is not limited to this, and tag transition pattern weights and route weights may be used in combination in other ways. For example, the route selection unit 115 may select, as candidate routes, routes whose tag transition pattern weights are equal to or greater than a predetermined threshold (or equal to or greater than a predetermined top percentage of the total). In this case, the number of routes selected as candidate routes increases, enabling processing that takes tag transition pattern weights and route weights into consideration in a balanced manner. Alternatively, the route selection unit 115 may calculate a feature value using a given function that uses the tag transition pattern weight and route weight as arguments, and select the route with the largest value of the feature value as the priority route. The function used here is, for example, a function that calculates a weighted average, but other functions may also be used. Various modifications are possible to the specific example of processing that uses tag transition pattern weights and route weights.

[0210] 2.6.5 Other Network Examples Fig. 25 is a diagram showing another example of a supply chain network. The network shown in Fig. 25 is similar to the supply chain network described above with reference to Fig. 18, except that the tag assigned to node K has been changed to j.

[0211] 26A to 26C are diagrams showing the results of processing performed according to the flow described above using Fig. 16 for the network shown in Fig. 25. Fig. 26A is a diagram similar to Fig. 22 showing the tag transition pattern weights obtained when the processing of steps S601 to S605 is completed, sorted in descending order based on the magnitude of the tag transition pattern weights. In this example, the weights of tag transition patterns abgj and adgj are 0.25, which is the maximum.

[0212] Fig. 26B is a diagram showing candidate routes selected based on tag transition pattern weights, and corresponds to Fig. 23A. Fig. 26C is a diagram explaining the process of selecting a preferred route from the candidate routes, and corresponds to Fig. 23B.

[0213] In the process for the network in Fig. 25, route ACHK is selected as the candidate route corresponding to both tag transition patterns abgj and adgj (Fig. 26B), and since the route weights of both are equal, route ACHK is selected as the preferred route (Fig. 26C). As can be seen from this example, in the method of this embodiment, multiple tag transition patterns may be set as preferred routes within a single route.

[0214] For example, as described above, the preferred path in this embodiment may include both node transition information and tag transition patterns. In the examples of FIGS. 25 to 26C, only one node transition (path in the narrow sense), path ACHK, is the preferred path, but two tag transition patterns, abgj and adgj, are associated with this preferred path. By outputting tag transition pattern information to the terminal device 200, it becomes possible to make the user recognize that, for example, a company corresponding to node C is a company of high importance both when it functions as a company in the industrial classification corresponding to tag value b and when it functions as a company in the industrial classification corresponding to tag value d.

[0215] 2.6.6 Subnetworks The above describes an example in which a supply chain network with node A corresponding to an entity of interest at one end is the processing target (FIG. 18). In the above example, the other end of the supply chain network is not limited; for example, all of the upstream nodes, nodes I, J, and K, are included in the processing target. However, in network analysis, it is considered that there is a desire to analyze the relationship between two entities. For example, to analyze the transaction relationship between one's own company and a specific company (such as a rival company or a company with high transaction risk), it is useful to determine the preferred route between one's own company and the specific company. Therefore, the route selection unit 115 may accept a selection input of two entities and perform processing to determine the preferred route connecting the two entities.

[0216] FIG. 27 is an example of a subnetwork of the supply chain network shown in FIG. 18. Here, an example is considered in which nodes A and J are selected. Therefore, the subnetwork in FIG. 27 is constructed by extracting edges and nodes that are directly or indirectly connected to nodes A and J from the supply chain network shown in FIG. 18. Note that the process of extracting a part of a network as a subnetwork is well known, so a detailed description thereof will be omitted.

[0217] In this case, since the sub-network is a part of the supply chain network, the path selection unit 115 can reuse the results of processing executed for the entire supply chain network. Specifically, the path selection unit 115 extracts a necessary portion of the data (for example, the table shown in FIG. 22) acquired by performing the processing of steps S601-S605 in FIG. 16 for the supply chain network shown in FIG. 18, and uses this portion in processing for the sub-network in FIG. 27.

[0218] Fig. 28A is a diagram showing the results of sorting tag transition patterns in descending order based on the magnitude of the tag transition pattern weight, and is a diagram in which only items related to the subnetwork shown in Fig. 27 are extracted from the data shown in Fig. 22. In the example of Fig. 27, one end of the subnetwork is node J, so path selection unit 115 executes processing to extract only items whose fourth element in the node transition (path in the narrow sense) is J. In this case, as shown in Fig. 28A, the weight of tag transition pattern abfi is 0.375, which is the maximum.

[0219] Fig. 28B is a diagram showing candidate routes selected based on the tag transition pattern weight. Fig. 28C is a diagram explaining the process of selecting a preferred route from the candidate routes. As shown in Fig. 28B, ABGJ and ACGJ are selected as candidate routes corresponding to tag transition pattern abfi. Then, as shown in Fig. 28C, of ​​routes ABGJ and ACGJ, route ACGJ, which has a relatively large route weight, is selected as the preferred route.

[0220] As described above, the method of this embodiment can appropriately select a preferred route even when targeting a subnetwork. Therefore, it is possible to select a preferred route connecting, for example, two specified entities. In this case, if processing is performed for the entire network as described above, the processing results can be reused for processing the subnetwork. Therefore, even if the subnetwork to be extracted changes, it is possible to quickly select a preferred route. For example, although the above example shows the determination of a preferred route between node A and node J, it is possible to quickly select a preferred route even if the node to be processed changes to another node.

[0221] 2.6.7 Other tag examples The above describes an example in which the tag value represents an industrial classification (industrial classifications b to j). However, the tag in this embodiment is not limited to information representing one type of attribute, and may be information combining multiple attributes. In this case, information combining the attribute value of the first attribute and the attribute value of the second attribute is assigned as the tag value to each node in the first network 121 and the second network 122.

[0222] The tag here may be information that specifies a combination of an industry classification and a country, for example. For example, each node may be assigned a tag value N1 to Nx (x is an integer equal to or greater than 2) that represents the country. For example, if the entity corresponding to node A is a company of industry classification a that belongs to country N1, node A is assigned a tag value of (a:N1) that represents the combination of N1 and a. If the entity corresponding to node B is a company of industry classification b that belongs to country N1, and also a company of industry classification c that belongs to country N1, node B is assigned tag values ​​of (b:N1) and (c:N1). Similarly, for other nodes, one tag value is expressed by a combination of industry classification and country.

[0223] In this way, even when a tag value is a combination of multiple attribute values, the route selection unit 115 can calculate route weights in the same manner as described above. Furthermore, the process of calculating tag transition patterns and the process of calculating tag transition pattern weights remain unchanged, except that a tag transition pattern is a set of tag values ​​expressed by a combination of an industry classification and a country. Therefore, the route selection unit 115 can determine a preferred route using the same process as described above with reference to Figures 16 to 28C.

[0224] 3. Modification of additional data In the above, an example has been described in which the additional data assigned to a node is a tag, and the path weight and the tag transition pattern weight are calculated as feature quantities. However, the additional data and the feature quantities calculated from the additional data are not limited to this.

[0225] For example, an embedding vector corresponding to text that represents the characteristics of a node may be added to the node as additional data. The path selection unit 115 may then select a preferred path by calculating features based on the embedding vector. This makes it possible to appropriately evaluate the relationship between nodes using linguistic information, namely, text. 3.1 Processing flow Fig. 29 is a flowchart illustrating an example of the route selection process shown in step S106 in Fig. 4, which process uses an embedding vector. First, in step S701, the route selection unit 115 acquires an embedding vector associated with each node.

[0226] 30 shows an example of a network to be processed (for example, a supply chain network). Here, a simple network including six nodes, node 1 to node 6, is considered.

[0227] FIG. 31 illustrates the relationship between the company, text (company profile), and embedding vector corresponding to each node. For example, node 1 corresponds to a company named "X New Energy," and its company profile is associated with the text "Manufacturer, seller, and research and development of basic materials for the solar power generation industry, such as high-purity polysilicon." The company profile is text that describes the characteristics of the company. Node 1 is also associated with an embedding vector V1, which is a vectorized version of the company profile. In the field of natural language processing, embedding refers to the process of converting words or phrases into mathematically manageable information by positioning them in a vector space. In this embodiment, the embedding vector is a vector obtained by converting the target text into mathematical information. Various specific techniques for converting text into mathematical information are known, and since these can be widely applied in this embodiment, detailed description will be omitted.

[0228] The information shown in FIG. 31 is acquired, for example, when the network acquisition unit 111 acquires the entity network. The information processing system 10 may acquire a company profile using publicly available information such as a company's website or a securities report. As described above, once the company profile is acquired, the embedding vector can be determined by a known method. The same applies to the information corresponding to nodes 2-6. In step S701 of FIG. 29, for example, the route selection unit 115 performs processing to acquire embedding vectors V1-V6 from the table data of FIG. 31 stored in the storage unit 120.

[0229] In step S702, when a first node included in the entity network and a second node connected to the first node via a node different from the first node are selected, the path selection unit 115 calculates a first difference vector that represents the difference between the first embedding vector that is the embedding vector assigned to the first node and the second embedding vector that is the embedding vector assigned to the second node. As will be described later, the first difference vector is used to calculate the feature amount.

[0230] Specifically, the first node and the second node are nodes for which a preferred route is to be determined. In other words, when the first node and the second node are selected, the route selection unit 115 performs a process of selecting a preferred route having these two nodes as end points. Note that this selection may be performed by the user of the terminal device 200, or may be performed automatically by the route selection unit 115. For example, in the network shown in FIG. 30, the first node may be node 1, which is the upstream node, and the second node may be node 6, which is the downstream node. According to the method of this embodiment, it is possible to express the relationship between the nodes at both ends for which a preferred route is to be determined, using a first differential vector. The first differential vector may be considered as information representing the general relationship (macro relationship) between node 1 and node 6.

[0231] In step S703, the route selection unit 115 calculates a second difference vector representing the difference between the embedding vector assigned to the node on one end of the edge and the embedding vector assigned to the node on the other end of the edge for each of the multiple edges included in the subnetwork having the first node as one end point and the second node as the other end point.

[0232] Here, the edge connecting node X and node Y is denoted as EXY. In the example of FIG. 30, the multiple edges included in the subnetwork connecting the first node and the second node are eight: E12, E15, E23, E24, E25, E36, E46, and E56. The path selection unit 115 calculates a second difference vector for each of these eight edges. This makes it possible to express the relationship between adjacent nodes existing between the first node and the second node using the second difference vector. The second difference vector may be considered as information representing the local relationship (micro relationship) between adjacent nodes.

[0233] FIG. 32 is a diagram illustrating the definition of a difference vector. For example, a difference vector may be a vector whose positive direction is from the upstream side to the downstream side of the network. In this case, the difference vector between node 1 and node 6 (first difference vector) is vector V61 obtained by subtracting the embedding vector V1 of node 1 from the embedding vector V6 of node 6. Similarly, the difference vector between node 1 and node 2 (second difference vector) is vector V21 obtained by subtracting the embedding vector V1 of node 1 from the embedding vector V2 of node 2. The same applies to the other difference vectors.

[0234] In step S704, the path selection unit 115 calculates the dot product of the first difference vector and the second difference vector as an edge feature for each of the multiple edges included in the subnetwork connecting the first node and the second node. Specifically, among the difference vectors shown in FIG. 32, the dot product of the second difference vectors V21, V51, V32, V42, V52, V63, V64, and V65 and the first difference vector V61 is calculated. In this way, it is possible to evaluate the degree of correlation between the macro relationship between node 1 and node 6 and the micro relationship between adjacent nodes as the value of the dot product. It is considered that the larger the dot product value, the higher the degree of correlation between the macro relationship and the micro relationship.

[0235] FIG. 33 is a diagram showing an example of the dot product of a first differential vector and a second differential vector. In this example, the dot product of the first differential vector V61 and the second differential vector V21 is 0.55, which is relatively large. That is, in the network of FIG. 30, the relationship between node 1 and node 2, which are the two adjacent nodes corresponding to V21, is considered to have a high degree of agreement with the macro relationship between node 1 and node 6. Similarly, the dot product values ​​of V51, V63, V64, and V65 are large, and the relationship between the two corresponding nodes is highly consistent with the macro relationship. On the other hand, the dot product values ​​of V32, V42, and V52 are relatively small, and therefore the relationship between the two corresponding nodes is considered to have a low degree of agreement with the macro relationship.

[0236] In step S705, the route selection unit 115 calculates the route feature amount for each of the multiple routes connecting the first node and the second node based on the edge feature amount (inner product) of the edges included in the route.

[0237] FIG. 34 is a diagram showing edge features (inner products) on a network. There are four possible paths connecting node 1 and node 6: paths 1236, 1246, 1256, and 156. Since path 1236 passes through three edges, E12, E23, and E36, the feature of path 1236 is determined based on the values ​​of the three inner products, 0.55, 0.06, and 0.56. The same applies to other paths. In this way, it becomes possible to determine the feature of each path from the degree of agreement between multiple micro relationships and macro relationships along the path.

[0238] Specifically, the path selection unit 115 may select, for each of a plurality of paths connecting the first node and the second node, the minimum value of the edge feature values ​​of the edges included in the path as the path feature value. FIG. 35 is a diagram illustrating the path feature values ​​in this case. In path 1236, the edge feature value of edge E23, 0.06, is the minimum, and this value is set as the feature value of path 1236. Similarly, in path 1246, the edge feature value of edge E24, 0.06, is the minimum. In path 1256, the edge feature value of edge E25, 0.01, is the minimum. In path 156, the edge feature value of edge E56, 0.56, is the minimum.

[0239] In step S706, the route selection unit 115 may select, from among the multiple routes, the route with the largest feature amount as the preferred route connecting the first node and the second node. As is clear from FIG. 35, in the above example, the feature amount of route 156 is the largest, so the route selection unit 115 selects route 156 as the preferred route between node 1 and node 6. In this way, routes including edges with a low degree of agreement with macro relationships are more likely to be excluded from the preferred route. In other words, the route that is considered to have the least discrepancy between macro relationships and micro relationships is selected as the preferred route. However, the method for calculating route features from edge features is not limited to this, and various modifications are possible, such as using the average value of edge features as the route feature amount.

[0240] Although the present embodiment has been described in detail above, those skilled in the art will readily understand that many modifications are possible without substantially departing from the novel features and advantages of the present embodiment. Therefore, all such modifications are intended to be included within the scope of the present disclosure. For example, a term described at least once in the specification or drawings with a different term having a broader or equivalent meaning may be replaced with that different term anywhere in the specification or drawings. Furthermore, all combinations of the present embodiment and modifications are also intended to be included within the scope of the present disclosure. Furthermore, the configurations and operations of the information processing system, server system, terminal device, etc. are not limited to those described in the present embodiment, and various modifications are possible. [Explanation of symbols]

[0241] 10...information processing system, 100...server system, 110...processing unit, 111...network acquisition unit, 112...vector acquisition unit, 113...matrix acquisition unit, 114...network extraction unit, 115...route selection unit, 120...storage unit, 121...first network, 122...second network, 123...tag data, 124...regulated company list, 130...communication unit, 200, 200-1, 200-2...terminal device, 210...processing unit, 220...storage unit, 230...communication unit, 240...display unit, 250...operation unit

Claims

1. a network acquisition unit that acquires an entity network in which a plurality of nodes corresponding to a plurality of entities are connected by edges that indicate trading relationships or dominance relationships; a route selection unit that selects a preferred route with a high priority from a plurality of routes included in the entity network; Including, Each of the plurality of nodes included in the entity network is assigned additional data that represents a characteristic of the node; The route selection unit An information processing system that calculates a feature amount for each of the plurality of routes based on the additional data, and selects the priority route based on the calculated feature amount.

2. In claim 1, a tag including one or more of a plurality of tag values ​​is assigned to the node as the additional data; The route selection unit a path weight representing a weight of each of the plurality of paths and a tag transition pattern weight representing a weight of a tag transition pattern representing how the tag value transitions when transitioning through the nodes along the path, are calculated as the feature quantities; An information processing system that selects the priority route based on the route weight and the tag transition pattern weight.

3. In claim 2, The route selection unit selecting one or more candidate routes from the plurality of routes along which the tag transition pattern weight is greatest; An information processing system that selects, from among the candidate routes, the route that is determined to have a relatively large route weight as the preferred route.

4. In claim 2 or 3, The route selection unit An information processing system that calculates the route weight for each of the plurality of routes included in the entity network based on the trading relationships or the dominance relationships among nodes on the route.

5. In claim 4, The route selection unit for each of the plurality of routes included in the entity network, determining the tag transition pattern corresponding to the route based on the tag values ​​of the nodes on the route, and setting the route weight as the tag transition pattern weight of the determined tag transition pattern; An information processing system that, when the tag transition patterns overlap for two or more of the multiple routes, updates the tag transition pattern weights by calculating the sum of the tag transition pattern weights calculated for each of the two or more routes.

6. In claim 2 or 3, An information processing system in which the tag is information that represents at least one of an industry classification and a country.

7. In claim 1, An embedding vector corresponding to text representing a characteristic of the node is assigned to the node as the additional data; The route selection unit An information processing system that selects the priority route by determining the feature amount based on the embedding vector.

8. In claim 7, When a first node included in the entity network and a second node connected to the first node via a node different from the first node are selected, The route selection unit An information processing system that calculates the feature based on a first difference vector that represents the difference between a first embedding vector, which is the embedding vector assigned to the first node, and a second embedding vector, which is the embedding vector assigned to the second node.

9. In claim 8, The route selection unit For each of a plurality of edges included in a subnetwork having the first node as one end point and the second node as the other end point, calculating a second difference vector representing a difference between the embedding vector assigned to the node on one end side of the edge and the embedding vector assigned to the node on the other end side of the edge; calculating an inner product of the first difference vector and the second difference vector as an edge feature amount; An information processing system that calculates the feature amount of each of the plurality of paths connecting the first node and the second node based on the edge feature amount of an edge included in the path.

10. In claim 9, The route selection unit selecting, for each of the plurality of paths connecting the first node and the second node, a minimum value of the edge feature amounts of the edges included in the path as the feature amount of the path; an information processing system that selects, from the plurality of routes, the route with the largest feature amount as the priority route connecting the first node and the second node.

11. The information processing device Obtain an entity network in which a plurality of nodes corresponding to a plurality of entities are connected by edges indicating trading relationships or dominance relationships; Each of the plurality of nodes included in the entity network is assigned additional data that indicates a characteristic of the node, and a feature amount is calculated for each of the plurality of paths included in the entity network based on the additional data; selecting a preferred route with a high priority from the plurality of routes based on the obtained feature amount; Information processing methods.

Citation Information

Patent Citations

  • Information processing system and information processing method

    JP2022160906A

  • Information processing system and information processing method

    JP2023001815A

  • Information processing system, information processing method and program

    JP2023050018A

  • Information processing system and information processing method

    JP2023175558A

  • Information processing system and information processing method

    JP2024047979A