WO2022239222A1 - 特徴量算出装置、特徴量算出方法および特徴量算出プログラム - Google Patents
特徴量算出装置、特徴量算出方法および特徴量算出プログラム Download PDFInfo
- Publication number
- WO2022239222A1 WO2022239222A1 PCT/JP2021/018349 JP2021018349W WO2022239222A1 WO 2022239222 A1 WO2022239222 A1 WO 2022239222A1 JP 2021018349 W JP2021018349 W JP 2021018349W WO 2022239222 A1 WO2022239222 A1 WO 2022239222A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- nodes
- feature amount
- graph
- node
- feature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2134—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on separation criteria, e.g. independent component analysis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2137—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on criteria of topology preservation, e.g. multidimensional scaling or self-organising maps
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/29—Graphical models, e.g. Bayesian networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
Definitions
- the present invention relates to a feature amount calculation device, a feature amount calculation method, and a feature amount calculation program.
- botnets which are composed of computers hijacked by malicious programs.
- a feature amount of a graph in which IP hosts are nodes and end-to-end communication between IP hosts is edges is useful information for detecting the structure of a botnet.
- graph embedding that enables high-quality learning of graph feature values is known. For example, in graph embedding such as Deep Walk and Node2Vec, by learning feature vectors so that they are similar in a low-dimensional feature amount space for related nodes, they can be located several hops ahead on the graph. Relevant nodes can be extracted (see Non-Patent Document 1).
- the conventional technology has the problem that the amount of time and space computation increases depending on the number of nodes.
- the present invention has been made in view of the above, and it is an object of the present invention to reduce the amount of computation in time and space and calculate feature values from a graph representing a communication network.
- the feature amount calculation device includes a generation unit that generates a graph representing communication between nodes using communication information between nodes in a network; a selection unit that selects a node that satisfies a predetermined condition from among the nodes of the graph that have been selected; a calculation unit that calculates a feature amount in the graph for the selected node by a predetermined learning method; and an estimating unit for estimating a feature amount of a node other than the node by synthesizing feature amounts calculated for nodes that are sequentially adjacent in the graph.
- FIG. 1 is a schematic diagram illustrating a schematic configuration of a feature amount calculation device.
- FIG. 2 is a diagram for explaining processing of the feature amount calculation device.
- FIG. 3 is a diagram for explaining processing of the feature amount calculation device.
- FIG. 4 is a diagram for explaining processing of the feature amount calculation device.
- FIG. 5 is a flow chart showing a feature amount calculation processing procedure.
- FIG. 6 is a diagram illustrating a computer that executes a feature amount calculation program.
- FIG. 1 is a schematic diagram illustrating a schematic configuration of a feature amount calculation device.
- the feature amount calculation device 10 is implemented by a general-purpose computer such as a personal computer, and includes an input unit 11 , an output unit 12 , a communication control unit 13 , a storage unit 14 and a control unit 15 .
- the input unit 11 is implemented using input devices such as a keyboard and a mouse, and inputs various instruction information such as processing start to the control unit 15 in response to input operations by the operator.
- the output unit 12 is implemented by a display device such as a liquid crystal display, a printing device such as a printer, or the like.
- the communication control unit 13 is implemented by a NIC (Network Interface Card) or the like, and controls communication between an external device such as a server and the control unit 15 via a network.
- the communication control unit 13 controls communication between a management device or the like that collects and manages network communication information and the control unit 15 .
- the storage unit 14 is implemented by semiconductor memory devices such as RAM (Random Access Memory) and flash memory, or storage devices such as hard disks and optical disks.
- the storage unit 14 pre-stores a processing program for operating the feature amount calculation device 10, data used during execution of the processing program, or the like, or temporarily stores the processing each time.
- the storage unit 14 stores an estimation model and the like of the processing result of the estimation unit, which will be described later.
- the storage unit 14 may be configured to communicate with the control unit 15 via the communication control unit 13 .
- the control unit 15 is implemented using a CPU (Central Processing Unit) or the like, and executes a processing program stored in memory. Thereby, the control unit 15 functions as an acquisition unit 15a, a generation unit 15b, a selection unit 15c, a calculation unit 15d, and an estimation unit 15e, as illustrated in FIG. It should be noted that these functional units may be implemented in different hardware, respectively or partially. For example, the calculating unit 15d and the estimating unit 15e may be implemented in different hardware. Also, the control unit 15 may include other functional units.
- a CPU Central Processing Unit
- the acquisition unit 15a acquires the collected communication information of the nodes of the network. For example, the acquisition unit 15a obtains flow information and the like of an IP host to be processed in the feature amount calculation process described later from a management device or the like that collects and manages network communication information via the input unit 11 or the communication control unit 13. get.
- the acquisition unit 15a may cause the storage unit 14 to store the acquired data. Alternatively, the acquisition unit 15a may transfer these pieces of information to the generation unit 15b described below without storing them in the storage unit 14. FIG.
- the generation unit 15b generates a graph representing communication between nodes using communication information between nodes of the network. Specifically, the generation unit 15b uses the obtained flow information of the IP hosts to create a graph in which the IP hosts are nodes and communication between the IP hosts is edges. At that time, the generating unit 15b generates the graph by excluding nodes whose number of adjacent nodes is smaller than a predetermined threshold.
- the selection unit 15c selects nodes that satisfy a predetermined condition from among the nodes of the generated graph. For example, the selection unit 15c selects a predetermined number of nodes in descending order of the number of adjacent nodes.
- the selection unit 15c selects nodes given a predetermined color by a coloring algorithm that gives colors different from those of adjacent nodes to all nodes.
- FIG. 2 is a diagram for explaining the processing of the selection unit.
- the selection unit 15c uses, for example, the Greedy Coloring algorithm to add a color to each node so that the color is different from that of adjacent nodes.
- the colors are selected in descending order of the number of neighboring nodes, and different colors from neighboring nodes are given in a predetermined order, for example, red for nodes E and A, and blue for nodes B, C, and D.
- the selection unit 15c selects, for example, nodes given red (nodes A and E in the example of FIG. 2).
- the calculation unit 15d calculates the feature amount in the graph for the selected node by a predetermined learning method.
- FIG. 3 is a diagram for explaining the processing of the calculation unit.
- the calculation unit 15d generates, for example, a path (list) consisting of a plurality of nodes for each node by a random walk on the graph, and calculates feature values only for selected nodes on the path. Calculated by the Word2Vec algorithm that is also used in Deep Walk.
- the feature values ⁇ (A) and ⁇ (E) in the feature value space are calculated for the selected nodes A and E on the path.
- the calculation unit 15d calculates the feature amount of only the selected node by a predetermined learning method, without learning the feature amount of all nodes as in Deep Walk.
- the estimation unit 15e estimates the feature amount by synthesizing the calculated feature amounts of the nodes that are sequentially adjacent in the graph. It should be noted that the sequentially adjacent nodes include adjacent nodes of each node, secondary adjacent nodes adjacent to the adjacent nodes, and the like.
- FIG. 4 is a diagram for explaining the processing of the estimating unit.
- the estimating unit 15e for example, for a node other than the selected node, synthesizes the calculated feature amounts of all the selected nodes at the shortest distance from the node to obtain the feature amount. presume. Also, the estimating unit 15e estimates the feature amount of nodes other than the selected node by synthesizing the feature amount vectors of a plurality of nodes by means of an average or a Hadamard product.
- the estimating unit 15e calculates the feature amount ⁇ (B) of the unlearned node B other than the selected nodes A and E as the feature amount ⁇ (A) of the node A and the feature amount of the node E. It is calculated from the average Agg ( ⁇ (A), ⁇ (E)) with ⁇ (E).
- the estimation unit 15e calculates the feature amount ⁇ (G) of the unlearned node G as the average Agg( ⁇ (F)) of the feature amounts ⁇ (F) of the node F, which is all the nodes with the shortest distance, that is, the node It is estimated by the average Agg (Agg( ⁇ (E))) of the feature amount ⁇ (E) of the learned node E selected from the shortest distance of F.
- estimation unit 15e outputs the calculated feature amount and the estimated feature amount via the output unit 12.
- FIG. 5 is a flow chart showing a feature amount calculation processing procedure. The flowchart of FIG. 5 is started, for example, when an operation input instructing the start of the feature amount calculation process is performed.
- the generation unit 15b uses the communication information of the nodes of the network acquired by the acquisition unit 15a to generate a graph representing communication between nodes (step S1).
- the selection unit 15c selects nodes that satisfy a predetermined condition from among the nodes of the generated graph (step S2). For example, the selection unit 15c selects a predetermined number of nodes in descending order of the number of adjacent nodes. Alternatively, the selection unit 15c selects a node given a predetermined color by the Coloring algorithm.
- the calculation unit 15d calculates the feature amount in the graph for the selected node by a predetermined learning method (step S3).
- the estimating unit 15e estimates the feature amount of the unlearned node other than the selected node by synthesizing the calculated feature amount of the adjacent selected node in the graph (step S4).
- the estimating unit 15e estimates the feature amount of an unlearned node other than a selected node by synthesizing the calculated feature amounts of all selected nodes at the shortest distance from the unlearned node. At that time, the estimating unit 15e estimates the feature amount of the unlearned nodes other than the selected node by synthesizing the feature amount vectors of the plurality of nodes by means of an average or a Hadamard product.
- the estimation unit 15e outputs the calculated feature amount and the estimated feature amount via the output unit 12 (step S5). This completes a series of feature amount calculation processing.
- the generation unit 15b uses communication information between nodes of the network to generate a graph representing communication between nodes.
- a selection unit 15c selects a node that satisfies a predetermined condition from among the nodes of the generated graph.
- the calculation unit 15d calculates the feature amount in the graph for the selected node by a predetermined learning method.
- the estimation unit 15e estimates the feature amount by synthesizing the calculated feature amounts of the nodes that are sequentially adjacent in the graph.
- the feature quantity calculation device 10 reduces the amount of calculation by limiting calculations during learning to selected nodes. As a result, it is possible to reduce the amount of time and space calculations and to calculate the feature amount from the graph representing the communication network.
- the generation unit 15b generates a graph by excluding nodes whose number of adjacent nodes is smaller than a predetermined threshold. Thereby, the feature amount calculation device 10 can efficiently calculate the feature amount.
- the selection unit 15c selects a predetermined number of nodes in descending order of the number of adjacent nodes. Thereby, the feature amount calculation device 10 can efficiently calculate the feature amount.
- the selection unit 15c selects nodes given a predetermined color by a coloring algorithm that gives colors different from those of adjacent nodes to all nodes. Thereby, the feature amount calculation device 10 can efficiently calculate the feature amount.
- the estimating unit 15e estimates the feature amounts of nodes other than the selected node by synthesizing the calculated feature amounts of all the selected nodes at the shortest distance from the node. Thereby, the feature amount calculation device 10 can calculate the feature amount with high accuracy.
- the estimating unit 15e also estimates feature amounts of nodes other than the selected node by synthesizing feature amount vectors of a plurality of nodes by averaging or Hadamard product. Thereby, the feature amount calculation device 10 can efficiently calculate the feature amount.
- the feature quantity calculation device 10 can be implemented by installing a feature quantity calculation program for executing the feature quantity calculation process as package software or online software in a desired computer.
- the information processing apparatus can function as the feature amount calculation apparatus 10 by causing the information processing apparatus to execute the above feature amount calculation program.
- information processing devices include mobile communication terminals such as smartphones, mobile phones and PHS (Personal Handyphone Systems), and slate terminals such as PDAs (Personal Digital Assistants).
- the functions of the feature amount calculation device 10 may be implemented in a cloud server.
- FIG. 6 is a diagram showing an example of a computer that executes a feature amount calculation program.
- Computer 1000 includes, for example, memory 1010 , CPU 1020 , hard disk drive interface 1030 , disk drive interface 1040 , serial port interface 1050 , video adapter 1060 and network interface 1070 . These units are connected by a bus 1080 .
- the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012 .
- the ROM 1011 stores a boot program such as BIOS (Basic Input Output System).
- BIOS Basic Input Output System
- Hard disk drive interface 1030 is connected to hard disk drive 1031 .
- Disk drive interface 1040 is connected to disk drive 1041 .
- a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1041, for example.
- a mouse 1051 and a keyboard 1052 are connected to the serial port interface 1050, for example.
- a display 1061 is connected to the video adapter 1060 .
- the hard disk drive 1031 stores an OS 1091, application programs 1092, program modules 1093 and program data 1094, for example. Each piece of information described in the above embodiment is stored in the hard disk drive 1031 or the memory 1010, for example.
- the feature amount calculation program is stored in the hard disk drive 1031 as a program module 1093 in which commands to be executed by the computer 1000 are described, for example.
- the hard disk drive 1031 stores a program module 1093 that describes each process executed by the feature amount calculation apparatus 10 described in the above embodiment.
- Data used for information processing by the feature amount calculation program is stored as program data 1094 in the hard disk drive 1031, for example. Then, the CPU 1020 reads out the program module 1093 and the program data 1094 stored in the hard disk drive 1031 to the RAM 1012 as necessary, and executes each procedure described above.
- program modules 1093 and program data 1094 related to the feature amount calculation program are not limited to being stored in the hard disk drive 1031, but are stored in a removable storage medium, for example, and are stored by the CPU 1020 via the disk drive 1041 or the like. may be read.
- the program module 1093 and program data 1094 related to the feature amount calculation program are stored in another computer connected via a network such as LAN (Local Area Network) or WAN (Wide Area Network), and the network interface 1070 is may be read by CPU 1020 via a network such as LAN (Local Area Network) or WAN (Wide Area Network), and the network interface 1070 is may be read by CPU 1020 via a network such as LAN (Local Area Network) or WAN (Wide Area Network), and the network interface 1070 is may be read by CPU 1020 via a network such as LAN (Local Area Network) or WAN (Wide Area Network), and the network interface 1070 is may be read by CPU 1020 via a network such as LAN (Local
- REFERENCE SIGNS LIST 10 feature amount calculation device 11 input unit 12 output unit 13 communication control unit 14 storage unit 15 control unit 15a acquisition unit 15b generation unit 15c selection unit 15d calculation unit 15e estimation unit
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
生成部(15b)が、ネットワークのノード間の通信情報を用いて、ノード間の通信を表すグラフを生成する。選択部(15c)が、生成されたグラフのノードのうち、所定の条件を満たすノードを選択する。計算部(15d)が、選択されたノードについて、グラフでの特徴量を所定の学習方法により計算する。推定部(15e)が、選択されたノード以外のノードについて、グラフで順次隣接するノードの推定された特徴量を合成することにより、特徴量を推定する。
Description
本発明は、特徴量算出装置、特徴量算出方法および特徴量算出プログラムに関する。
従来、悪意のあるプログラムによって乗っ取られたコンピュータで構成されるボットネットと呼ばれるネットワークの構造を検知する技術が期待されている。IPホストをノードとし、IPホスト間のエンドツーエンド通信をエッジとするグラフの特徴量は、ボットネットの構造を検知するために有用な情報となる。
そこで、グラフの特徴量の質の高い学習が可能なgraph embeddingと呼ばれる技術が知られている。例えば、Deep WalkやNode2Vec等のgraph embeddingでは、関連性のあるノード同士に対して、低次元の特徴量空間上で類似するように、特徴ベクトルを学習することにより、グラフ上の数ホップ先の関連性のあるノードを抽出することができる(非特許文献1参照)。
Bryan Perozzi et al., "DeepWalk: Online Learning of Social Representations", KDD '14, Proceedings of the 20th ACM SIGKDD international conference on Knowledge discovery, 2014年
しかしながら、従来の技術では、ノード数に依存して、時間・空間計算量が増加するという問題がある。
本発明は、上記に鑑みてなされたものであって、時間・空間計算量を削減して通信ネットワークを表すグラフから特徴量を算出することを目的とする。
上述した課題を解決し、目的を達成するために、本発明に係る特徴量算出装置は、ネットワークのノード間の通信情報を用いて、ノード間の通信を表すグラフを生成する生成部と、生成された前記グラフのノードのうち、所定の条件を満たすノードを選択する選択部と、選択された前記ノードについて、前記グラフでの特徴量を所定の学習方法により計算する計算部と、選択された前記ノード以外のノードについて、前記グラフで順次隣接するノードの計算された特徴量を合成することにより、特徴量を推定する推定部と、を有することを特徴とする。
本発明によれば、時間・空間計算量を削減して通信ネットワークを表すグラフから特徴量を算出することが可能となる。
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
[特徴量算出装置の構成]
図1は、特徴量算出装置の概略構成を例示する模式図である。図1に例示するように、特徴量算出装置10は、パソコン等の汎用コンピュータで実現され、入力部11、出力部12、通信制御部13、記憶部14、および制御部15を備える。
図1は、特徴量算出装置の概略構成を例示する模式図である。図1に例示するように、特徴量算出装置10は、パソコン等の汎用コンピュータで実現され、入力部11、出力部12、通信制御部13、記憶部14、および制御部15を備える。
入力部11は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部15に対して処理開始などの各種指示情報を入力する。出力部12は、液晶ディスプレイなどの表示装置、プリンター等の印刷装置等によって実現される。
通信制御部13は、NIC(Network Interface Card)等で実現され、ネットワークを介したサーバ等の外部の装置と制御部15との通信を制御する。例えば、通信制御部13は、ネットワークの通信情報を収集し管理する管理装置等と制御部15との通信を制御する。
記憶部14は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部14には、特徴量算出装置10を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが予め記憶され、あるいは処理の都度一時的に記憶される。例えば、記憶部14は、後述する推定部の処理結果の推定モデル等を記憶する。なお、記憶部14は、通信制御部13を介して制御部15と通信する構成でもよい。
制御部15は、CPU(Central Processing Unit)等を用いて実現され、メモリに記憶された処理プログラムを実行する。これにより、制御部15は、図1に例示するように、取得部15a、生成部15b、選択部15c、計算部15dおよび推定部15eとして機能する。なお、これらの機能部は、それぞれあるいは一部が異なるハードウェアに実装されてもよい。例えば、計算部15dと推定部15eとは異なるハードウェアに実装されてもよい。また、制御部15は、その他の機能部を備えてもよい。
取得部15aは、収集されたネットワークのノードの通信情報を取得する。例えば、取得部15aは、後述する特徴量算出処理の処理対象のIPホストのフロー情報等を、入力部11あるいは通信制御部13を介して、ネットワークの通信情報を収集し管理する管理装置等から取得する。なお、取得部15aは、取得したデータを記憶部14に記憶させてもよい。あるいは、取得部15aは、これらの情報を記憶部14に記憶させずに、以下に説明する生成部15bに転送してもよい。
生成部15bは、ネットワークのノード間の通信情報を用いて、ノード間の通信を表すグラフを生成する。具体的には、生成部15bは、取得したIPホストのフロー情報を用いて、IPホストをノードとし、IPホスト間の通信をエッジとするグラフを作成する。その際に、生成部15bは、隣接するノードの数が所定の閾値より小さいノードを除外してグラフを生成する。
選択部15cは、生成されたグラフのノードのうち、所定の条件を満たすノードを選択する。例えば、選択部15cは、隣接するノードの数が多い順に所定数のノードを選択する。
あるいは、選択部15cは、すべてのノードに対して隣接ノードと異なる色を付与するColoringアルゴリズムにより所定の色が付与されたノードを選択する。ここで、図2は、選択部の処理を説明するための図である。図2に示すように、選択部15cは、例えば、Greedy Coloring algorithmを用いて、隣接ノードと異なる色になるように、各ノードに色を付加する。図2に示す例では、隣接ノード数の多い順に選択して、例えば、ノードEとノードAには赤、ノードB、C、Dには青というように、所定の順に隣接ノードと異なる色を付与する。そして、選択部15cは、例えば赤を付与したノード(図2の例ではノードA、E)を選択する。
計算部15dは、選択されたノードについて、グラフでの特徴量を所定の学習方法により計算する。ここで、図3は、計算部の処理を説明するための図である。図3に示すように、計算部15dは、例えば、グラフ上でrandom walkによってノードごとに複数のノードからなるパス(リスト)を生成し、パス上での選択されたノードについてのみ、特徴量をDeep Walkでも利用されるWord2Vecアルゴリズムによって計算する。
図3に示す例では、パス上の選択されたノードA、Eについて、特徴量空間での特徴量φ(A)、φ(E)を計算する。このように、計算部15dは、Deep Walkのように全ノードの特徴量を学習することなく、選択されたノードのみの特徴量を所定の学習方法により計算する。
推定部15eは、選択されたノード以外のノードについて、グラフで順次隣接するノードの計算された特徴量を合成することにより、特徴量を推定する。なお、順次隣接するノードとは、各ノードの隣接ノードと、当該隣接ノードに隣接する2次隣接ノード等を含むことを意味する。
ここで、図4は、推定部の処理を説明するための図である。図4に示すように、推定部15eは、例えば、選択されたノード以外のノードについて、該ノードから最短距離の全ての選択されたノードの計算された特徴量を合成することにより、特徴量を推定する。また、推定部15eは、複数のノードの特徴量ベクトルを平均またはアダマール積により合成することにより、選択されたノード以外のノードの特徴量を推定する。
図4に示す例では、推定部15eは、選択されたノードA、E以外の未学習のノードBの特徴量φ(B)を、ノードAの特徴量φ(A)とノードEの特徴量φ(E)との平均Agg(φ(A),φ(E))により算出している。また、推定部15eは、未学習のノードGの特徴量φ(G)を、最短距離の全ノードであるノードFの特徴量φ(F)の平均Agg(φ(F))、すなわち、ノードFの最短距離の選択された学習済のノードEの特徴量φ(E)の平均Agg(Agg(φ(E)))により推定している。
また、推定部15eは、出力部12を介して、計算された特徴量と、推定された特徴量とを出力する。
[特徴量算出処理]
次に、図5を参照して、本実施形態に係る特徴量算出装置10による特徴量算出処理について説明する。図5は、特徴量算出処理手順を示すフローチャートである。図5のフローチャートは、例えば、特徴量算出処理の開始を指示する操作入力があったタイミングで開始される。
次に、図5を参照して、本実施形態に係る特徴量算出装置10による特徴量算出処理について説明する。図5は、特徴量算出処理手順を示すフローチャートである。図5のフローチャートは、例えば、特徴量算出処理の開始を指示する操作入力があったタイミングで開始される。
まず、取得部15aが取得したネットワークのノードの通信情報を用いて、生成部15bがノード間の通信を表すグラフを生成する(ステップS1)。
次に、選択部15cが、生成されたグラフのノードのうち、所定の条件を満たすノードを選択する(ステップS2)。例えば、選択部15cは、隣接するノードの数が多い順に所定数のノードを選択する。あるいは、選択部15cは、Coloringアルゴリズムにより所定の色が付与されたノードを選択する。
また、計算部15dが、選択ノードについて、グラフでの特徴量を所定の学習方法により計算する(ステップS3)。
そして、推定部15eが、選択ノード以外の未学習ノードについて、グラフで隣接する選択ノードの計算された特徴量を合成することにより、特徴量を推定する(ステップS4)。
例えば、推定部15eは、選択ノード以外の未学習ノードについて、該未学習ノードから最短距離の全ての選択ノードの計算された特徴量を合成することにより、特徴量を推定する。その際に、推定部15eは、複数のノードの特徴量ベクトルを平均またはアダマール積により合成することにより、選択ノード以外の未学習ノードの特徴量を推定する。
また、推定部15eが、出力部12を介して、計算された特徴量と、推定された特徴量とを出力する(ステップS5)。これにより、一連の特徴量算出処理が終了する。
以上、説明したように、特徴量算出装置10において、生成部15bが、ネットワークのノード間の通信情報を用いて、ノード間の通信を表すグラフを生成する。選択部15cが、生成されたグラフのノードのうち、所定の条件を満たすノードを選択する。計算部15dが、選択されたノードについて、グラフでの特徴量を所定の学習方法により計算する。推定部15eが、選択されたノード以外のノードについて、グラフで順次隣接するノードの計算された特徴量を合成することにより、特徴量を推定する。
このように、特徴量算出装置10は、学習時の計算を選択ノードに限定して計算量を削減する。これにより、時間・空間計算量を削減して通信ネットワークを表すグラフから特徴量を算出することが可能となる。
また、生成部15bは、隣接するノードの数が所定の閾値より小さいノードを除外してグラフを生成する。これにより、特徴量算出装置10は、効率よく特徴量を算出することが可能となる。
また、選択部15cは、隣接するノードの数が多い順に所定数のノードを選択する。これにより、特徴量算出装置10は、効率よく特徴量を算出することが可能となる。
また、選択部15cは、すべてのノードに対して隣接ノードと異なる色を付与するColoringアルゴリズムにより所定の色が付与されたノードを選択する。これにより、特徴量算出装置10は、効率よく特徴量を算出することが可能となる。
また、推定部15eは、選択されたノード以外のノードについて、該ノードから最短距離の全ての選択されたノードの計算された特徴量を合成することにより、特徴量を推定する。これにより、特徴量算出装置10は、高精度に特徴量を算出することが可能となる。
また、推定部15eは、複数のノードの特徴量ベクトルを平均またはアダマール積により合成することにより、選択されたノード以外のノードの特徴量を推定する。これにより、特徴量算出装置10は、効率よく特徴量を算出することが可能となる。
[プログラム]
上記実施形態に係る特徴量算出装置10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、特徴量算出装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の特徴量算出処理を実行する特徴量算出プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の特徴量算出プログラムを情報処理装置に実行させることにより、情報処理装置を特徴量算出装置10として機能させることができる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。また、特徴量算出装置10の機能を、クラウドサーバに実装してもよい。
上記実施形態に係る特徴量算出装置10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、特徴量算出装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の特徴量算出処理を実行する特徴量算出プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の特徴量算出プログラムを情報処理装置に実行させることにより、情報処理装置を特徴量算出装置10として機能させることができる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。また、特徴量算出装置10の機能を、クラウドサーバに実装してもよい。
図6は、特徴量算出プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011およびRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1041に接続される。ディスクドライブ1041には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1051およびキーボード1052が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1061が接続される。
ここで、ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。上記実施形態で説明した各情報は、例えばハードディスクドライブ1031やメモリ1010に記憶される。
また、特徴量算出プログラムは、例えば、コンピュータ1000によって実行される指令が記述されたプログラムモジュール1093として、ハードディスクドライブ1031に記憶される。具体的には、上記実施形態で説明した特徴量算出装置10が実行する各処理が記述されたプログラムモジュール1093が、ハードディスクドライブ1031に記憶される。
また、特徴量算出プログラムによる情報処理に用いられるデータは、プログラムデータ1094として、例えば、ハードディスクドライブ1031に記憶される。そして、CPU1020が、ハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
なお、特徴量算出プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1041等を介してCPU1020によって読み出されてもよい。あるいは、特徴量算出プログラムに係るプログラムモジュール1093やプログラムデータ1094は、LAN(Local Area Network)やWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例および運用技術等は全て本発明の範疇に含まれる。
10 特徴量算出装置
11 入力部
12 出力部
13 通信制御部
14 記憶部
15 制御部
15a 取得部
15b 生成部
15c 選択部
15d 計算部
15e 推定部
11 入力部
12 出力部
13 通信制御部
14 記憶部
15 制御部
15a 取得部
15b 生成部
15c 選択部
15d 計算部
15e 推定部
Claims (8)
- ネットワークのノード間の通信情報を用いて、ノード間の通信を表すグラフを生成する生成部と、
生成された前記グラフのノードのうち、所定の条件を満たすノードを選択する選択部と、
選択された前記ノードについて、前記グラフでの特徴量を所定の学習方法により計算する計算部と、
選択された前記ノード以外のノードについて、前記グラフで順次隣接するノードの計算された特徴量を合成することにより、特徴量を推定する推定部と、
を有することを特徴とする特徴量算出装置。 - 前記生成部は、隣接するノードの数が所定の閾値より小さいノードを除外してグラフを生成することを特徴とする請求項1に記載の特徴量算出装置。
- 前記選択部は、隣接するノードの数が多い順に所定数のノードを選択することを特徴とする請求項1に記載の特徴量算出装置。
- 前記選択部は、すべてのノードに対して隣接ノードと異なる色を付与するColoringアルゴリズムにより所定の色が付与されたノードを選択することを特徴とする請求項1に記載の特徴量算出装置。
- 前記推定部は、選択された前記ノード以外のノードについて、該ノードから最短距離の全ての選択されたノードの計算された特徴量を合成することにより、特徴量を推定することを特徴とする請求項1に記載の特徴量算出装置。
- 前記推定部は、複数のノードの特徴量ベクトルを平均またはアダマール積により合成することにより、前記選択されたノード以外のノードの特徴量を推定することを特徴とする請求項1に記載の特徴量算出装置。
- 特徴量算出装置が実行する特徴量算出方法であって、
ネットワークのノード間の通信情報を用いて、ノード間の通信を表すグラフを生成する生成工程と、
生成された前記グラフのノードのうち、所定の条件を満たすノードを選択する選択工程と、
選択された前記ノードについて、前記グラフでの特徴量を所定の学習方法により計算する計算工程と、
選択された前記ノード以外のノードについて、前記グラフで相互に隣接するノードの計算された特徴量を合成することにより、特徴量を推定する推定工程と、
を含んだことを特徴とする特徴量算出方法。 - コンピュータに、
ネットワークのノード間の通信情報を用いて、ノード間の通信を表すグラフを生成する生成ステップと、
生成された前記グラフのノードのうち、所定の条件を満たすノードを選択する選択ステップと、
選択された前記ノードについて、前記グラフでの特徴量を所定の学習方法により計算する計算ステップと、
選択された前記ノード以外のノードについて、前記グラフで相互に隣接するノードの計算された特徴量を合成することにより、特徴量を推定する推定ステップと、
を実行させることを特徴とする特徴量算出プログラム。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023520712A JP7586304B2 (ja) | 2021-05-14 | 2021-05-14 | 特徴量算出装置、特徴量算出方法および特徴量算出プログラム |
| PCT/JP2021/018349 WO2022239222A1 (ja) | 2021-05-14 | 2021-05-14 | 特徴量算出装置、特徴量算出方法および特徴量算出プログラム |
| US18/290,033 US20240241922A1 (en) | 2021-05-14 | 2021-05-14 | Feature calculation device, feature calculation method, and feature calculation program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2021/018349 WO2022239222A1 (ja) | 2021-05-14 | 2021-05-14 | 特徴量算出装置、特徴量算出方法および特徴量算出プログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2022239222A1 true WO2022239222A1 (ja) | 2022-11-17 |
Family
ID=84028931
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2021/018349 Ceased WO2022239222A1 (ja) | 2021-05-14 | 2021-05-14 | 特徴量算出装置、特徴量算出方法および特徴量算出プログラム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20240241922A1 (ja) |
| JP (1) | JP7586304B2 (ja) |
| WO (1) | WO2022239222A1 (ja) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2016002132A1 (ja) * | 2014-06-30 | 2016-01-07 | 日本電気株式会社 | 特徴量表示システム、特徴量表示方法および特徴量表示プログラム |
-
2021
- 2021-05-14 WO PCT/JP2021/018349 patent/WO2022239222A1/ja not_active Ceased
- 2021-05-14 US US18/290,033 patent/US20240241922A1/en active Pending
- 2021-05-14 JP JP2023520712A patent/JP7586304B2/ja active Active
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2016002132A1 (ja) * | 2014-06-30 | 2016-01-07 | 日本電気株式会社 | 特徴量表示システム、特徴量表示方法および特徴量表示プログラム |
Non-Patent Citations (1)
| Title |
|---|
| HAMILTON WILLIAM L, YING REX, LESKOVEC JURE: "Representation Learning on Graphs: Methods and Applications", 10 April 2018 (2018-04-10), pages 1 - 24, XP055864307, Retrieved from the Internet <URL:https://arxiv.org/pdf/1709.05584.pdf> [retrieved on 20211122] * |
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2022239222A1 (ja) | 2022-11-17 |
| US20240241922A1 (en) | 2024-07-18 |
| JP7586304B2 (ja) | 2024-11-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11012520B2 (en) | Manage a network of microservices | |
| Luo et al. | An online algorithm for VNF service chain scaling in datacenters | |
| US9454395B2 (en) | Traffic-aware data center VM placement considering job dynamic and server heterogeneity | |
| Doan et al. | SAP: Subchain-aware NFV service placement in mobile edge cloud | |
| CN113708972A (zh) | 一种服务功能链部署方法、装置、电子设备及存储介质 | |
| US20200118027A1 (en) | Learning method, learning apparatus, and recording medium having stored therein learning program | |
| Soundararaj et al. | Task offloading scheme in Mobile Augmented Reality using hybrid Monte Carlo tree search (HMCTS) | |
| US20220237099A1 (en) | Service specifying method and non-transitory computer-readable medium | |
| CN111782385B (zh) | 用于处理任务的方法、电子设备和计算机程序产品 | |
| Shang et al. | Network congestion-aware online service function chain placement and load balancing | |
| CN112073237B (zh) | 一种云边架构中大规模目标网络构建方法 | |
| CN115955685A (zh) | 多智能体协同路由方法、设备及计算机存储介质 | |
| CN111049900B (zh) | 一种物联网流计算调度方法、装置和电子设备 | |
| Pham | Optimizing service function chaining migration with explicit dynamic path | |
| JP2018200524A (ja) | 分類装置、分類方法および分類プログラム | |
| JP7247628B2 (ja) | 作成装置、作成システム、作成方法および作成プログラム | |
| Yuan et al. | Virtual network function scheduling via multilayer encoding genetic algorithm with distributed bandwidth allocation | |
| JP7586304B2 (ja) | 特徴量算出装置、特徴量算出方法および特徴量算出プログラム | |
| WO2023238246A1 (ja) | 統合モデル生成方法、統合モデル生成装置および統合モデル生成プログラム | |
| JP2019016324A (ja) | 予測装置、予測方法および予測プログラム | |
| EP4654085A1 (en) | Dynamic reprovisioning of machine learning model layers | |
| JP7548422B2 (ja) | 特徴量算出装置、特徴量算出方法および特徴量算出プログラム | |
| JPWO2018135515A1 (ja) | 情報処理装置、ニューラルネットワークの設計方法及びプログラム | |
| CN114091686B (zh) | 数据处理方法、装置、电子设备和存储介质 | |
| Bairley et al. | Orchestrating network control functions via comprehensive trade-off exploration |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 2023520712 Country of ref document: JP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 18290033 Country of ref document: US |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 21941953 Country of ref document: EP Kind code of ref document: A1 |