JP7287474B2 - デバイス識別装置、デバイス識別方法およびデバイス識別プログラム - Google Patents

デバイス識別装置、デバイス識別方法およびデバイス識別プログラム Download PDF

Info

Publication number
JP7287474B2
JP7287474B2 JP2021541771A JP2021541771A JP7287474B2 JP 7287474 B2 JP7287474 B2 JP 7287474B2 JP 2021541771 A JP2021541771 A JP 2021541771A JP 2021541771 A JP2021541771 A JP 2021541771A JP 7287474 B2 JP7287474 B2 JP 7287474B2
Authority
JP
Japan
Prior art keywords
label
data
learning
new
similarity
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.)
Active
Application number
JP2021541771A
Other languages
English (en)
Other versions
JPWO2021038639A1 (ja
Inventor
博史 野口
操 片岡
卓万 磯田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2021038639A1 publication Critical patent/JPWO2021038639A1/ja
Application granted granted Critical
Publication of JP7287474B2 publication Critical patent/JP7287474B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3041Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is an input/output interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/70ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、ネットワークに接続されるデバイスを識別する、デバイス識別装置、デバイス識別方法およびデバイス識別プログラムに関する。
今日、IoT(Internet of Things)が急速に拡大を続けており、多種多様かつ膨大な数のデバイスがネットワークに接続されつつある。2020年には500億台のデバイスがインターネットに接続されるという予測があり、今後、家庭や工場、街頭など様々な環境にますます多くのデバイスが設置されることが予想される。そして、ネットワークに接続されるデバイスは、カメラや温度計といったセンサや、スマートフォンなどの小型コンピュータ、スピーカやディスプレイといったアクチュエータなど様々な種類があり、計算処理能力やプロトコルが多種多様である。各環境のデバイスの管理者には、このような多種多様かつ膨大なデバイスを適切かつ安全に使用できるように、各デバイスの性質や状態を正確に把握して管理することが求められている。
IoTデバイスの管理に有力な情報として、デバイスの「種別」と「機種」がある。ここで、デバイスの種別とは、カメラ、スピーカ、プリンタ、スマートフォン、パソコンといった機能に対応する大まかな分類を指す。機種とは、A社製の型番xxのように表現可能な、製品を具体的に特定できる情報である。ネットワーク接続されているデバイスについて、これらの情報を管理者が把握できることは、デバイスの資産管理やサービス活用に関して大きな利点がある。よって、ネットワークに接続するだけで管理者にこれらの情報を自動的に表示できることが求められている。
ネットワーク接続されるデバイスに関して、通信情報を用いてデバイスを識別する手法が開示されている(非特許文献1参照)。非特許文献1に記載の技術は、ネットワーク内のデバイスが送受信する通信情報から特徴量を抽出し、過去に同様の手順により収集した蓄積データとの類似度を算出することで、最終的に同一のデバイスを特定するものである。蓄積データは、一定時間内のトラヒック量の平均や増減傾向などをデバイスの種類や機種の単位で収集したものであり、デバイスの識別処理を行うよりも前に、即ち、事前に収集されていることが前提となる。非特許文献1に記載の技術では、識別対象デバイスの通信情報の特徴量と、各デバイスの蓄積データとから求めた類似度のうち、最も類似度が高いものについて、その値が一定の閾値(新種判定閾値)を下回る場合に、事前に蓄積したデータがない新種のデバイスであると判断している。
HIROFUMI NOGUCHI , MISAO KATAOKA, AND YOJI YAMATO,"Device Identification Based on Communication Analysis for the Internet of Things,"IEEE Access,Volume 7,2019,P.52903-52912
上記非特許文献1に記載の技術である新種デバイスの判定手法について、機械学習を適用した上で自動化するためには、以下に示す改善すべき課題が2つある。なお、本発明は、新種デバイスの判定に機械学習を適用することにより、従来技術よりも高精度の分類を行うことを目指している。
1つ目の課題は、識別対象と蓄積データの類似度の算出に機械学習を適用する際に顕在化する課題である。非特許文献1に記載の技術では、類似度が絶対量で表されることが前提であり、例えば、蓄積データとして、Aデバイス、Bデバイス、Cデバイスの特徴量が事前に収集されていた場合には、識別対象との類似性は、それぞれ10、80、90といった数値で算出される必要がある。一方で、機械学習の一つである教師有り学習のソフトウェアを用いる分類処理では、候補ラベル(この例では、Aデバイス、Bデバイス、Cデバイス)に分類される確度(確かさの度合い)の総和が100%となる相対的な量が算出される。例えば、3つの候補に対してそれぞれ10%、40%、50%といった値になる。つまり、このような値は、その集団の中での優劣は付くものの、絶対的な量としてどの程度類似しているのかを判断することはできない。したがって、単に機械学習を適用するだけでは、新種判定閾値で新種を判定することができなくなってしまう。
2つ目の課題は、新種判定閾値の事前設定に関する課題である。ネットワーク環境内にどの程度類似するデバイスがあるのかに依存して、適切な新種判定閾値は異なる。例えば、識別対象が実際には新種デバイスであったとしても、同一種類のデバイスが環境内に数多く存在する場合には、既存のものとの類似度が高く算出されるため、正しく新種を判断するには新種判定閾値を高く設定する必要がある。一方で、新種判定閾値が高過ぎると、同一デバイスを正しく判断できなくなってしまう。なぜなら、パケット長などの通信情報には振れ幅があるため、同一デバイスから取得した特徴量でも全く同じにはならないからである。どのようなデバイスが接続されるのか分からない状況において、適切な閾値を自動的に設定することは困難である。
このような点に鑑みて本発明がなされたのであり、本発明は、ネットワークに接続されるデバイスの種類若しくは機種、または、新種であるか否かを機械学習により高精度に判定可能とすることを課題とする。
本発明に係るデバイス識別装置は、ネットワークに接続される既存のデバイスを示す既存デバイスについての通信情報を機種または種類単位で取得するとともに、識別対象となるデバイスを示す識別対象デバイスについての通信情報を取得する通信情報収集部と、前記既存デバイスの通信情報を所定の時間間隔で特徴量化し、前記機種または前記種類を識別するラベルを付して特徴量データを生成して第1の学習データとし、前記識別対象デバイスの通信情報を所定の時間間隔で特徴量化し、ダミーラベルを付して特徴量データを生成して第2の学習データとするともに、当該識別対象デバイスの通信情報をさらに取得して所定の時間間隔で特徴量化して特徴量データを生成し、当該生成した特徴量データを識別用データとする特徴量生成部と、前記ラベルが付された第1の学習データ、および、前記ダミーラベルが付された第2の学習データを学習器に学習させ、学習済の当該学習器に前記識別用データを入力して、前記識別対象デバイスの特徴量データを、ダミーラベルを含む各ラベルに分類する機械学習部と、各ラベルに分類された特徴量データの数と、ダミーラベルに分類された特徴量データの数とに基づき、前記識別対象デバイスの機種または種類と各ラベルで示される機種または種類との類似度を計算する類似度計算部と、各ラベルの前記類似度について、所定の新種判定閾値以上の類似度となるラベルがあるか否かを判定し、前記所定の新種判定閾値以上の類似度のラベルがある場合に、前記識別対象デバイスが当該ラベルで示される機種または種類の既存デバイスであると識別し、前記所定の新種判定閾値以上の類似度のラベルがない場合に、前記識別対象デバイスが、既存のラベルで示される機種または種類とは異なる新種のデバイスであると識別するデバイス識別部と、を備えることを特徴とする。
本発明によれば、ネットワークに接続されるデバイスの種類若しくは機種、または、新種であるか否かを機械学習により高精度に判定することができる。
本実施形態に係るデバイス識別装置の構成を示すブロック図である。 本実施形態に係るデバイス識別装置(機械学習部)による、識別対象デバイスの特徴量データを、各ラベル(ダミーラベルを含む)に分類する処理を説明する図である。 本実施形態に係るデバイス識別装置(類似度計算部)による、ラベル(機種)ごとの類似度の計算を説明する図である。 本実施形態に係るデバイス識別装置(新種判定閾値算出部)による、新種判定閾値の設定(新種判定閾値設定可能範囲)について説明する図である。 本実施形態に係るデバイス識別装置(新種判定閾値算出部)による、新種判定閾値の設定の課題について説明する図である。 本実施形態に係るデバイス識別装置(新種判定閾値算出部)による、新種判定閾値の計算の具体例を説明する図である。 本実施形態に係るデバイス識別装置(新種判定閾値算出部)による、新種判定閾値の計算の具体例を説明する図である。 本実施形態に係るデバイス識別装置(新種判定閾値算出部)による、新種判定閾値の計算の具体例を説明する図である。 本実施形態に係るデバイス識別装置が実行するデバイス識別処理の流れを示すフローチャートである。 本実施形態に係るデバイス識別装置が実行する新種判定閾値の算出処理の流れを示すフローチャート(1)である。 本実施形態に係るデバイス識別装置が実行する新種判定閾値の算出処理の流れを示すフローチャート(2)である。 本実施形態に係るデバイス識別装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
次に、本発明を実施するための形態(以下、「本実施形態」と称する。)について説明する。
図1は、本実施形態に係るデバイス識別装置1の構成を示すブロック図である。
デバイス識別装置1は、ネットワークを介して通信接続される各デバイス等の通信情報を取得し、識別対象となるデバイスについて、新種(既存のデバイスの機種(または種別)にはない新たな機種(または種別))のデバイスか否かを判定する。
デバイス識別装置1は、新種のデバイスか否かの判定を、<1>機械学習を利用した、識別対象となるデバイスの類似度の計算、<2>新種判定閾値の自動設定、を行うことにより実現する。なお、以下に説明する本実施形態においては、主に、デバイス識別装置1が、識別対象のデバイスの「機種」を判定するものとして説明する。しかしながら、デバイス識別装置1は、識別対象デバイスの「種別」も同様の手法により判定することができる。
デバイス識別装置1は、デバイスの類似度の計算において、識別対象となるデバイスの通信情報の特徴量データ(詳細は後記)に、それまで蓄積した機種の通信情報の特徴量データに付した各ラベルとは異なる新規のラベル(ダミーラベル)を付して、学習用データとして学習器に学習させる。そして、デバイス識別装置1は、各ラベルに分類された特徴量数(特徴量データの数)をダミーラベルに分類された特徴量数で割った値を百分率で表したものをデバイスの類似度とする。また、デバイス識別装置1は、識別対象となるデバイスに対応する学習用データが存在する場合と、存在しない場合の2つの条件で類似度を算出し、この算出した2つの条件での類似度から新種判定閾値を算出する(詳細は後記)。
このようにすることにより、デバイス識別装置1は、各デバイスの通信情報に基づき、新種デバイスを識別するための新種判定閾値を自動的に算出する。そして、デバイス識別装置1は、識別対象となるデバイスの通信情報とすでに蓄積されたデバイスの通信情報とに基づき算出された類似度の値について、新種判定閾値と比較することにより、その識別対象となるデバイスが新種デバイスか否かを判定することができる。
次に、図1を参照して、デバイス識別装置1の機能について具体的に説明する。
デバイス識別装置1は、制御部10、入出力部11、記憶部12を備えるコンピュータにより実現される。
入出力部11は、情報の送受信を行うための通信インタフェース、および、タッチパネルやキーボード等の入力装置や、モニタ等の出力装置との間で情報の送受信を行うための入出力インタフェースからなる。
記憶部12は、フラッシュメモリやハードディスク、RAM(Random Access Memory)等により構成される。このデバイス識別装置1の記憶部12には、各デバイスの通信情報から抽出された特徴量の情報が、機種(または種別)ごとにラベルを付して蓄積データDB(DataBase)120に記憶される。
また、制御部10は、図1に示すように、通信情報収集部101と、特徴量生成部102と、機械学習部103と、類似度計算部104と、デバイス識別部105と、新種判定閾値算出部106とを含んで構成される。
通信情報収集部101は、各デバイスの機種単位での通信情報を取得する。ここで、通信情報は、例えば、ネットワーク内で各デバイスが送受信するパケットのパケット長や、宛て先ポート番号、ヘッダのウィンドウサイズ等の情報を、所定時間(例えば、10分間)で収集した情報である。なお、通信情報収集部101は、各デバイスの種別単位での通信情報を取得する場合も、機種単位と同様の情報(例えば、パケット長や、宛て先ポート番号、ウィンドウサイズ等)を取得する。
通信情報収集部101は、この通信情報を、各デバイスから直接取得してもよいし、各デバイスを管理するネットワーク管理装置(図示省略)等から取得するようにしてもよい。
また、通信情報収集部101は、ネットワークに識別対象のデバイス(以下、「識別対象デバイス」と称することがある。)が接続されると、その識別対象デバイスが送受信する通信情報を所定時間(例えば、10分間)収集する。なお、通信情報収集部101は、この識別対象デバイスの通信情報の収集を、学習用データの収集のためと、識別用データの収集のために行う。
なお、通信情報収集部101は、ネットワークに識別対象デバイスが接続された旨の情報を、例えば、ネットワーク管理装置等から取得する。また、通信情報収集部101は、識別対象デバイスの通信情報を、学習用と識別用として時間を別々にし2回に分けて取得してもよいし、学習用と識別用とを連続して取得し、分割するようにしてもよい。
特徴量生成部102は、既存(すでの識別済み)のデバイスの通信情報を取得して以下の処理を行う。
特徴量生成部102は、所定時間(例えば、10分)において取得した各デバイスの機種単位の通信情報を、所定の時間間隔(所定の周期である、例えば、60秒周期)で特徴量化(例えば、平均値を算出)し、ラベルを付して特徴量データ(特徴量化された通信情報)を生成する。そして、特徴量生成部102は、ラベルを付した特徴量データを、記憶部12内の蓄積データDB120に学習用データ(第1の学習用データ)として記憶する。ここで、ラベルは、機種(または種別)を識別する情報であり、例えば、機種A,機種B,機種Cがラベル(既存ラベル)として付される。
なお、この特徴量生成部102による上記の処理は、識別対象デバイスの通信情報を処理する前に事前に行うものである。
また、特徴量生成部102は、識別対象デバイスの通信情報を取得して以下の処理を行う。
特徴量生成部102は、所定時間(例えば、10分)の識別対象デバイスの通信情報を取得すると、所定の時間間隔(例えば、60秒周期)で特徴量化し、ダミーラベルを付して特徴量データを生成する。そして、特徴量生成部102は、ダミーラベルを付した特徴量データを、記憶部12内の蓄積データDB120に学習用データ(第2の学習用データ)として記憶する。
また、特徴量生成部102は、さらに所定時間(例えば、10分)の識別対象デバイスの通信情報を取得すると、所定の時間間隔(例えば、60秒周期)で特徴量化して特徴量データを生成する。そして、特徴量生成部102は、その特徴量データを記憶部12に識別用データとして記憶する。
機械学習部103は、学習器3(機械学習アルゴリズム)を備える。機械学習アルゴリズムは、例えば、ニューラルネットワークや、ロジスティック回帰、SVM(サポートベクターマシン)等を用いることができる。
そして、機械学習部103は、各デバイスのラベル(機種)が付された学習用データ(特徴量データ)を、学習器3に学習させる。また、機械学習部103は、ダミーラベルが付された識別対象デバイスの特徴量データを学習用データとして、学習器3に学習させる。
また、機械学習部103は、識別対象デバイスの通信情報を特徴量化した、識別対象の特徴量データ(識別用データ)を学習器3に入力し、その特徴量データを各ラベル(ダミーラベルを含む)に分類する。
このようにすることで、図2に示すように、識別対象デバイスの特徴量データ(識別用データ)が、ラベル「機種A」、ラベル「機種B」、ラベル「機種C」、若しくは、ダミーラベルに分類される。
図1に戻り、類似度計算部104は、機械学習部103により、各ラベルに分類された特徴量データの数に基づき、ダミーラベル以外のラベル(既存ラベル)それぞれに分類された特徴量データの数を、ダミーラベルに分類された特徴量データの数で割った値を、百分率で表したものをデバイスの類似度として計算する。
例えば、図3に示すように、ダミーラベルに分類された特徴量データの数が「6」であり、機種Aに分類された特徴量データの数が「1」、機種Bに分類された特徴量データの数が「0」、機種Cに分類された特徴量データの数が「5」の場合においては、各ラベルで示される機種の類似度は次のように計算される。
ラベル「機種A」の類似度・・・ 1/6×100=17%
ラベル「機種B」の類似度・・・ 0/6×100= 0%
ラベル「機種C」の類似度・・・ 5/6×100=83%
このようにすることで、識別対象デバイスに対応する機種の学習用データが既に存在する場合には、理論的にはダミーラベルと該当する既存デバイスのラベル(機種)に半数ずつの特徴量データが分類され、結果として類似度は100%に近くなる。一方、識別対象デバイスに対応する機種の学習用データが存在しない場合には、ほぼすべての特徴量データ(識別用データ)がダミーラベルに分類され、最も類似するデバイスに対応するラベル(機種)の類似度においても、非常に小さい値となる。
図1に戻り、デバイス識別部105は、後記する新種判定閾値算出部106が算出した新種判定閾値を用いて、類似度計算部104が計算した各ラベルの類似度の値の中で、新種判定閾値以上の類似度を示すラベル(機種)があるか否かを判定する。そして、デバイス識別部105は、新種判定閾値以上のラベル(機種)があった場合には、識別対象デバイスを、当該機種のデバイス(既存デバイスの機種と同じ機種)であると判定する。
一方、デバイス識別部105は、新種判定閾値以上の類似度を示す機種がなかった場合には、ダミーラベルを付した識別対象デバイスを新種のデバイス(例えば、「機種D」)であると判定する。
なお、デバイス識別部105は、識別対象デバイスが新種のデバイスであると判定した場合、その旨の情報を新種判定閾値算出部106に出力する。これにより、新種判定閾値算出部106は、再度、新種判定閾値の算出処理を実行し、新種判定閾値を更新する。
新種判定閾値算出部106は、デバイス識別部105が、識別対象デバイスを新種のデバイスであると判定した際に、新種判定閾値の算出処理を実行し、新種判定閾値を算出して更新する。
この新種判定閾値は、識別対象デバイスが、学習用の蓄積データ(学習用データ)がない新種(新しい機種)であるのか、既に学習用データがある既存機種であるのかを判定するために設ける類似度に対する閾値である。以下、新種判定閾値算出部106による、新種判定閾値の算出手法について説明する。
なお、事前に任意の数(機種数、例えば、機種A,機種B,機種C)のデバイスから、所定時間(例えば、10分)に送受信された通信情報を、通信情報収集部101が収集するものとする。そして、特徴量生成部102は、その機種単位の通信情報を、所定の時間間隔(所定の周期である、例えば、60秒周期)で特徴量化(例えば、平均値を算出)して特徴量データを生成し、ラベル(例えば、機種A,機種B,機種C)を付して、記憶部12に記憶する。
例えば、特徴量生成部102は、デバイスごとに10分間通信キャプチャされたデータ(通信情報)を通信情報収集部101から取得し、そのデータ(通信情報)を60秒周期で特徴量化して、1つのデバイス(機種)当たり10個の特徴量データを生成する。
なお、新種判定閾値算出部106は、新たに各機種の特徴量データを生成するのではなく、蓄積データDB120に記憶されている各機種の特徴量データを新種判定閾値の算出処理に用いてもよい。
上記の状態において、新種判定閾値算出部106は、各機種単位の特徴量データを、学習用データと試験用データとに分割する。分割の割合は任意であるが、一般的な機械学習においては、学習用データ8割、試験用データ2割のように設定することが多い。
次に、新種判定閾値算出部106は、すべてのラベル(機種)の学習用データを用いて、機械学習部103(学習器3)による学習を行う。そして、上記した類似度算出処理と同様の手順により、各ラベル(機種)のデバイスについての類似度を算出する。
具体的には、新種判定閾値算出部106は、1つのラベル(機種)を選択し、その機種の試験用データを2つに分割する。分割の割合は任意であるが、例えば、半分ずつに分割する。新種判定閾値算出部106は、分割した試験用データの一方に、ダミーラベルを付して、学習器3に学習させる。そして、新種判定閾値算出部106は、残りの試験データを学習器3に入力し、その試験用データを各ラベル(ダミーラベルを含む)に分類する。
続いて、類似度計算部104の処理と同様に、新種判定閾値算出部106は、各ラベルに分類された特徴量データの数に基づき、その特徴量データの数を、ダミーラベルに分類された特徴量データの数で割った値を、百分率で表したものをデバイスの類似度として計算する。
そして、新種判定閾値算出部106は、正しい(選択した)ラベル(機種)の類似度を、「学習用データがあるときのデバイスの類似度」として抽出する。新種判定閾値算出部106は、この処理を、すべての機種それぞれを選択して行い、学習用データがあるときの正しいラベル(機種)の類似度を抽出する。
次に、新種判定閾値算出部106は、すべての学習用データの中から、任意に選択した1つのラベルに属する学習用データを除いた上で、学習器3による学習を行う。そして、新種判定閾値算出部106は、上記した類似度算出処理と同様の手順で、各機種のデバイスについての類似度を算出する。
具体的には、新種判定閾値算出部106は、選択した1つのラベルについて、そのラベル(機種)の試験用データを2つに分割する。分割の割合は任意であるが、例えば、半分ずつに分割する。新種判定閾値算出部106は、分割した試験用データの一方に、ダミーラベルを付して、学習器3に学習させる。そして、新種判定閾値算出部106は、残りの試験データを学習器3に入力し、その試験用データを各ラベル(ダミーラベルを含む)に分類する。
続いて、類似度計算部104と同様に、新種判定閾値算出部106は、各ラベルに分類された特徴量データの数に基づき、その特徴量データの数を、ダミーラベルに分類された特徴量データの数で割った値を、百分率で表したものをデバイスの類似度として計算する。
そして、新種判定閾値算出部106は、学習用データがないときの各ラベルの類似度のうち、最も類似するラベルの類似度を抽出する。新種判定閾値算出部106は、同様の処理を他のすべてのラベルについても行い、「学習用データがないときの最も類似するデバイスの類似度」を抽出する。
新種判定閾値算出部106は、以上の処理で抽出した機種ごとの「学習用データがあるときのデバイスの類似度」と、「学習用データがないときの最も類似するデバイスの類似度」との間に収まるように、新種判定閾値を設定する(図4参照)。なお、図4において、記号「◇」は、学習用データがあるときの正しいラベルとの類似度(後記する「p」)である。また、記号「△」は、学習用データがないときの最も類似するデバイスの類似度(後記する「q」)である。図4に示すように、機種A,機種B,機種Cのすべてにおいて、「学習用データがあるときのデバイスの類似度」(◇)と、「学習用データがないときの最も類似するデバイスの類似度」(△)との間に収まる範囲が理想的には、新種判定閾値設定可能範囲となる。
具体的な新種判定閾値の算出は、例えば、学習用データがあるときのデバイスの類似度と、学習用データがないときの最も類似するデバイスの類似度との中間値を、後記する式(1)および式(2)の新種判定閾値算定式を満たすようにして算出する。
これは、実際の新種デバイスにおいても、同様の類似度の傾向があるという保証ができないことから、新種判定と既存判定の両サイドにマージンを広くとった方が、つまり、中間値とした方が、これらの要素を吸収できるからである。
Figure 0007287474000001
ここで、x:新種判定閾値、p:学習用データがあるときに正しいラベルとの類似度、q:学習用データがないときの最も類似するデバイスの類似度、n:ラベル数、である。また、式(2)は、F(x)が最小となるxを算出することを意味する。
また、算出される類似度は、機種ごとに異なるため、すべての機種において、条件を満たす新種判定閾値を設定できない場合がある(図5参照)。つまり、図4では、すべての機種において共通の新種判定閾値設定可能範囲を設けることができている。一方、図5に示す例では、機種Bと機種Cにおいて、設定可能範囲が重ならないため、単純には新種判定閾値を設定することができない。
このような場合でも、新種判定閾値算出部106は、式(1)および式(2)を用いた上記のような手法により新種判定閾値を設定することで、なるべく多くの機種で正しい識別を行うことができる新種判定閾値を算出することができる。
図6~図8は、上記式(1)および式(2)により、新種判定閾値算出部106が新種判定閾値を算出する処理を、概念的に説明するための図である。
ここでは、機種Aの学習用データがあるときの正しいラベルとの類似度(p)が「90(%)」、機種Aの学習用データがないときの最も類似するデバイスの類似度(q)が「10(%)」とする。また、機種Bの学習用データがあるときの正しいラベルとの類似度(p)が「70(%)」、機種Bの学習用データがないときの最も類似するデバイスの類似度(q)が「50(%)」とする。また、機種Cの学習用データがあるときの正しいラベルとの類似度(p)が「30(%)」、機種Cの学習用データがないときの最も類似するデバイスの類似度(q)が「15(%)」とする。
図6に示す新種判定閾値x=40の場合、式(1)の(|(pi-x)-(x-qi)|)に対し、各機種について計算すると以下のようになる。
機種A:(|(90-40)-(40-10)|)= 20
機種B:(|(70-40)-(40-50)|)= 40
機種C:(|(30-40)-(40-15)|) = 35
よって、F(x) = 20 + 40 + 35 = 95 となる。
同様に、図7は、新種判定閾値x=50の場合であり、F(x)=75となる。また、図8は、新種判定閾値x=30の場合であり、F(x)=115となる。
新種判定閾値算出部106は、F(x)が最小となる新種判定閾値xを、このようにして探索することにより求めることができる。
なお、上記したように、新種判定閾値算出部106は、デバイス識別部105が識別対象デバイスについて新種判定閾値に基づき新種デバイスであると判定すると、当該デバイスを既存デバイスに追加して同様の処理(新種判定閾値の算出処理)を行い、新種判定閾値を更新する。
<処理の流れ>
次に、デバイス識別装置1が実行する処理の流れについて説明する。
≪デバイス識別処理≫
図9は、本実施形態に係るデバイス識別装置1が実行するデバイス識別処理の流れを示すフローチャートである。デバイス識別装置1は、機械学習を利用して、識別対象となるデバイスの特徴量と既存デバイスに対応する機種の特徴量とに基づき類似度を計算し、新種判定閾値と比較することにより、識別対象デバイスが既存の機種と同じ機種のデバイスであるのか、新種のデバイスであるのかを判定する。以下、具体的に説明する。
まず、デバイス識別装置1の通信情報収集部101は、各デバイスの機種単位で通信情報を取得する(ステップS1)。通信情報収集部101は、所定時間(例えば、10分間)分の各デバイスの通信情報を機種単位で取得する。
続いて、特徴量生成部102は、通信情報収集部101が収集した各デバイスの機種単位の通信情報を、所定の時間間隔(例えば、60秒周期)で特徴量化し、そのデバイスの機種(例えば、機種A,機種B,機種C)のラベルを付して特徴量データ(学習用データ)を生成する(ステップS2)。そして、特徴量生成部102は、ラベルを付した特徴量データを、記憶部12内の蓄積データDB120に学習用データ(第1の学習用データ)として記憶する。
なお、ステップS1,S2は、識別対象デバイスの通信情報を取得する前に予め行っておく。
次に、通信情報収集部101は、ネットワークに識別対象デバイスが接続されたこと等を契機として、その識別対象デバイスが送受信する通信情報を所定時間(例えば、10分間)収集する(ステップS3)。
続いて、特徴量生成部102は、識別対象デバイスの通信情報を、所定の時間間隔(例えば、60秒周期)で特徴量化し、ダミーラベルを付して特徴量データ(学習用データ)を生成する(ステップS4)。そして、特徴量生成部102は、ダミーラベルを付した特徴量データを、記憶部12内の蓄積データDB120に学習用データ(第2の学習用データ)として記憶する。
次に、通信情報収集部101は、さらに、その識別対象デバイスが送受信する通信情報を所定時間(例えば、10分間)収集する(ステップS5)。
そして、特徴量生成部102は、識別対象デバイスの通信情報を、所定の時間間隔(例えば、60秒周期)で特徴量化し、識別対象の特徴量データ(識別用データ)を生成する(ステップS6)。そして、特徴量生成部102は、生成した特徴量データを、記憶部12に識別用データとして記憶する。
続いて、機械学習部103は、特徴量生成部102が生成した、既存の機種(機種A,機種B,機種C)のラベルおよびダミーラベルが付された特徴量データである学習用データを学習器3に入力し学習させる(ステップS7)。つまり、学習器3に、特徴量データとそれに付されたラベルとを入力データとして入力することにより、特徴量データが入力された際に、正しいラベルにその特徴量データが分類されるように、学習器3のパラメータを調整する学習を行う。
そして、機械学習部103は、識別対象デバイスの通信情報を特徴量化した、識別対象の特徴量データ(識別用データ)を、学習器3に入力し、その識別用データを各ラベル(ダミーラベルを含む)に分類する(ステップS8)。
次に、類似度計算部104は、各ラベル(ダミーラベルを含む)に分類された特徴量データの数に基づき、識別対象デバイスの機種(ラベル)と各デバイスの機種(ラベル)との類似度を計算する(ステップS9)。
具体的には、類似度計算部104は、ダミーラベル以外のラベル(既存ラベル)それぞれに分類された特徴量データの数を、ダミーラベルに分類された特徴量データの数で割った値を百分率で表したものをデバイス(機種)の類似度として計算する。
続いて、デバイス識別部105は、後記する図10および図11に示す新種判定閾値算出処理により、新種判定閾値算出部106が算出した新種判定閾値を用いて、識別対象デバイスが新種デバイスであるのか否かの判定を行う。具体的には、デバイス識別部105は、類似度計算部104が計算した各ラベルの類似度を示す値の中で、新種判定閾値以上の類似度を示すラベル(機種)があるか否かを判定する(ステップS10)。
そして、デバイス識別部105は、新種判定閾値以上のラベル(機種)があった場合には(ステップS10→Yes)、そのラベルで示される機種を、識別対象デバイスの機種であると判定する。つまり、デバイス識別部105は、識別対象デバイスが、既存デバイスと同じ機種であると判定する(ステップS11)。
一方、デバイス識別部105は、新種判定閾値以上の類似度を示すラベル(機種)がなかった場合には(ステップS10→No)、ダミーラベルを付した識別対象デバイスを新種のデバイスと判定する(ステップS12)。
そして、デバイス識別部105は、識別対象デバイスを新種のデバイスであると判定した旨の情報を、新種判定閾値算出部106に出力し(ステップS13)、処理を終える。
これにより、新種判定閾値算出部106は、新種のデバイスであると判定した識別対象デバイスを、例えば、機種Dとして既存デバイスに加えて、再度、新種判定閾値の算出処理を実行し、新種判定閾値を更新する。
このようにすることにより、デバイス識別装置1は、デバイスの通信情報から生成した特徴量データを用いて、機械学習によりラベルを判定するため、より高精度に特徴量データの該当ラベルを分類することができる。また、デバイス識別装置1は、ネットワークに接続された識別対象デバイスについて、既存の機種(または種類)のデバイスであるか、新種のデバイスであるかを、分類される各ラベル間の相対的な量ではなく、学習器3により分類された特徴量データの数に基づき計算される絶対的な量である類似度を用いて判定することができる。
≪新種判定閾値の算出処理≫
次に、デバイス識別装置1の新種判定閾値算出部106による、新種判定閾値の算出処理について説明する。
図10および図11は、本実施形態に係るデバイス識別装置1が実行する新種判定閾値の算出処理の流れを示すフローチャートである。
なお、この新種判定閾値算出部106による新種判定閾値の算出処理は、図9のステップS13において、デバイス識別部105から、識別対象デバイスを新種のデバイスであると判定した旨の情報を取得したことを契機として、開始される。
まず、デバイス識別装置1の新種判定閾値算出部106は、通信情報収集部101を介して、各デバイスの機種単位で通信情報を取得する(ステップS20)。新種判定閾値算出部106は、所定時間(例えば、10分間)分の各デバイスの通信情報を機種単位で取得する。なお、ここでは、図9のデバイス識別処理において、新種のデバイスであると判定された識別対象デバイスは、例えば機種Dとして既存デバイスに加えられた状態で、各デバイスの通信情報が取得される。
続いて、新種判定閾値算出部106は、特徴量生成部102を介して、収集した各デバイスの機種単位の通信情報を、所定の時間間隔(例えば、60秒周期)で特徴量化し、そのデバイスの機種(例えば、機種A,機種B,機種C,機種D)のラベルを付して特徴量データを生成する(ステップS21)。そして、新種判定閾値算出部106は、特徴量生成部102を介して、ラベルを付した特徴量データを、記憶部12に記憶する。
次に、新種判定閾値算出部106は、各機種の特徴量データを、学習用データと試験用データとに分割する(ステップS22)。例えば、新種判定閾値算出部106は、学習用データ8割、試験用データ2割として特徴量データを分割する。
次に、新種判定閾値算出部106は、ラベル(機種)を一つ選択する(ステップS23)。なお、ここで選択されたラベルを「ラベルi」とする。そして、新種判定閾値算出部106は、上記した類似度算出処理と同様の手順により、当該ラベルiの試験用データを用いて、当該ラベルiと他のラベル(機種)との類似度を算出する。
具体的には、まず、新種判定閾値算出部106は、ラベルが付されたすべての機種(機種A,機種B,機種C,機種D)の学習用データを、学習器3に入力し学習させる(ステップS24)。
次に、新種判定閾値算出部106は、選択されたラベルiの試験用データを2つに分割し、分割した一方の試験用データ(特徴量データ)に、ダミーラベルを付して、学習器3に入力して学習させる(ステップS25)。
続いて、新種判定閾値算出部106は、分割した他方の試験用データ(特徴量データ)を、学習器3に入力し、その試験用データを各ラベル(ダミーラベルを含む)に分類する(ステップS26)。
そして、新種判定閾値算出部106は、各ラベルに分類された特徴量データの数それぞれについて、ダミーラベルに分類された特徴量データの数で割った値を、百分率で表したものを、デバイスの類似度として算出する。そして、新種判定閾値算出部106は、選択したラベルiの類似度を、「学習用データがあるときのデバイスの類似度」として抽出する(ステップS27)。
図11に進み、新種判定閾値算出部106は、すべての学習用データの中から、選択したラベルiの学習用データを除いた上で、他のラベルの学習用データを学習器3に入力し学習させる(ステップS28)。
そして、新種判定閾値算出部106は、選択したラベルiの試験用データを2つに分割し、分割した一方の試験用データ(特徴量データ)に、ダミーラベルを付して、学習器3に入力して学習させる(ステップS29)。
続いて、新種判定閾値算出部106は、分割した他方の試験用データ(特徴量データ)を、学習器3に入力し、その試験用データを各ラベル(ダミーラベルを含む)に分類する(ステップS30)。
そして、新種判定閾値算出部106は、各ラベルに分類された特徴量データの数それぞれについて、ダミーラベルに分類された特徴量データの数で割った値を、百分率で表したものを、デバイスの類似度として算出する。そして、新種判定閾値算出部106は、各ラベルの類似度のうち、最も類似するラベルの類似度を、「学習用データがないときの最も類似するデバイスの類似度」として抽出する(ステップS31)。
続いて、新種判定閾値算出部106は、まだ選択されていないラベルがあるか否かを判定する(ステップS32)。そして、まだ選択されていないラベルがある場合には(ステップS32→Yes)、図10のステップS23に戻り処理を続ける。
一方、すべてのラベルが選択済みの場合には(ステップS32→No)、次のステップS33に進む。
ステップS33において、新種判定閾値算出部106は、抽出した機種ごとの「学習用データがあるときのデバイスの類似度」と、「学習用データがないときの最も類似するデバイスの類似度」を用いて、上記した式(1)および式(2)の新種判定閾値算定式を満たす新種判定閾値を算出し、処理を終える。
このようにすることで、本実施形態に係るデバイス識別装置1は、各デバイスの通信情報の特徴量に基づき、新種デバイスを識別するための新種判定閾値を自動的に算出する。そして、デバイス識別装置1は、識別対象となるデバイスの特徴量と事前に蓄積されたデバイスそれぞれの特徴量とに基づき算出された類似度の値を用いて、新種判定閾値と比較することにより、その識別対象となるデバイスが新種デバイスか否かを判定することができる。
<ハードウェア構成>
本実施形態に係るデバイス識別装置1は、例えば図12に示すような構成のコンピュータ900によって実現される。
図12は、本実施形態に係るデバイス識別装置1の機能を実現するコンピュータ900の一例を示すハードウェア構成図である。コンピュータ900は、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM(Random Access Memory)903、HDD(Hard Disk Drive)904、入出力I/F(Interface)905、通信I/F906およびメディアI/F907を有する。
CPU901は、ROM902またはHDD904に記憶されたプログラムに基づき作動し、図1の制御部10による制御を行う。ROM902は、コンピュータ900の起動時にCPU901により実行されるブートプログラムや、コンピュータ900のハードウェアに係るプログラム等を記憶する。
CPU901は、入出力I/F905を介して、マウスやキーボード等の入力装置910、および、ディスプレイやプリンタ等の出力装置911を制御する。CPU901は、入出力I/F905を介して、入力装置910からデータを取得するともに、生成したデータを出力装置911へ出力する。
HDD904は、CPU901により実行されるプログラム(デバイス識別プログラム)および当該プログラムによって使用されるデータ等を記憶する。通信I/F906は、通信網(例えば、ネットワーク5)を介して図示せぬ他の装置(例えば、ネットワーク管理装置など)からデータを受信してCPU901へ出力し、また、CPU901が生成したデータを、通信網を介して他の装置へ送信する。
メディアI/F907は、記録媒体912に格納されたプログラム(デバイス識別プログラム)またはデータを読み取り、RAM903を介してCPU901へ出力する。CPU901は、目的の処理に係るプログラムを、メディアI/F907を介して記録媒体912からRAM903上にロードし、ロードしたプログラムを実行する。記録媒体912は、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto Optical disk)等の光磁気記録媒体、磁気記録媒体、導体メモリテープ媒体又は半導体メモリ等である。
例えば、コンピュータ900が実施形態に係るデバイス識別装置1として機能する場合、コンピュータ900のCPU901は、RAM903上にロードされたプログラムを実行することにより、デバイス識別装置1の機能を実現する。また、HDD904には、RAM903内のデータが記憶される。CPU901は、目的の処理に係るプログラムを記録媒体912から読み取って実行する。この他、CPU901は、他の装置から通信網(ネットワーク5)を介して目的の処理に係るプログラムを読み込んでもよい。
<効果>
以下、デバイス識別装置の効果について説明する。
本発明に係るデバイス識別装置1は、ネットワークに接続される既存のデバイスを示す既存デバイスについての通信情報を機種または種類単位で取得するとともに、識別対象となるデバイスを示す識別対象デバイスについての通信情報を取得する通信情報収集部101と、既存デバイスの通信情報を所定の時間間隔で特徴量化し、機種または種類を識別するラベルを付して特徴量データを生成して第1の学習データとし、識別対象デバイスの通信情報を所定の時間間隔で特徴量化し、ダミーラベルを付して特徴量データを生成して第2の学習データとするともに、当該識別対象デバイスの通信情報をさらに取得して所定の時間間隔で特徴量化して特徴量データを生成し、当該生成した特徴量データを識別用データとする特徴量生成部102と、ラベルが付された第1の学習データ、および、ダミーラベルが付された第2の学習データを学習器3に学習させ、学習済の当該学習器3に識別用データを入力して、識別対象デバイスの特徴量データを、ダミーラベルを含む各ラベルに分類する機械学習部103と、各ラベルに分類された特徴量データの数と、ダミーラベルに分類された特徴量データの数とに基づき、識別対象デバイスの機種または種類と各ラベルで示される機種または種類との類似度を計算する類似度計算部104と、各ラベルの類似度について、所定の新種判定閾値以上の類似度となるラベルがあるか否かを判定し、所定の新種判定閾値以上の類似度のラベルがある場合に、識別対象デバイスが当該ラベルで示される機種または種類の既存デバイスであると識別し、所定の新種判定閾値以上の類似度のラベルがない場合に、識別対象デバイスが、既存のラベルで示される機種または種類とは異なる新種のデバイスであると識別するデバイス識別部105と、を備えることを特徴とする。
このようにすることで、デバイス識別装置1は、ネットワークに接続された識別対象のデバイスについて、既存の機種または種類のデバイスであるか、新種のデバイスであるかを、機械学習により高精度に判定することが可能となる。
また、デバイス識別装置1は、所定の新種判定閾値を算出する新種判定閾値算出部106をさらに備え、新種判定閾値算出部106は、既存デバイスの通信情報を所定の時間間隔で特徴量化しラベルを付して特徴量データを生成し、生成したラベルが付された特徴量データそれぞれを、学習用データと試験用データに分割し、任意のラベルを1つ選択し、選択したラベルの試験用データをさらに2つに分割し、2つに分割した一方の試験用データにダミーラベルを付し、当該ダミーラベルが付された試験用データと各ラベルにおいて分割した学習用データとを学習器に学習させ、学習済の当該学習器に2つに分割した他方の試験用データを入力して、選択したラベルの試験用データを、ダミーラベルを含む各ラベルに分類し、選択したラベルの類似度を算出して、学習用データがあるときのデバイスの類似度として抽出する処理を、各ラベルについて行い、任意のラベルを1つ選択し、選択したラベルの試験用データをさらに2つに分割し、2つに分割した一方の試験用データにダミーラベルを付し、当該ダミーラベルが付された試験用データと各ラベルにおいて分割した学習用データのうち選択したラベルの学習データを除いた学習データとを学習器に学習させ、学習済の当該学習器に2つに分割した他方の試験用データを入力して、選択したラベルの試験用データを、ダミーラベルを含み選択したラベルを除いた各ラベルに分類し、当該各ラベルの類似度を算出して、算出した類似度のうち最も値が高いラベルを、学習用データがないときの最も類似するデバイスの類似度として抽出する処理を、各ラベルについて行い、各ラベルにおいて、学習用データがあるときのデバイスの類似度と、学習用データがないときの最も類似するデバイスの類似度と中間値となるように、新種判定閾値を算出することを特徴とする。
このようにすることで、デバイス識別装置1は、ネットワークの既存デバイスの通信情報に基づき、各ラベルにおいて、学習用データあるときのデバイスの類似度と、学習用データがないときの最も類似するデバイスの類似度の中間値となるように、より適切な新種判定閾値を設定することができる。
また、デバイス識別装置1において、デバイス識別部105は、識別対象デバイスが、新種のデバイスであると識別した際に、その旨の情報を新種判定閾値算出部106に出力し、新種判定閾値算出部106は、新種のデバイスの通信情報を、既存デバイスの通信情報に加えて新種判定閾値の算出処理を行い、新種判定閾値を更新することを特徴とする。
これにより、デバイス識別装置1は、識別対象デバイスが新種のデバイスであると識別した際に、その新種のデバイスを既存デバイスに加えて新種判定閾値の算出処理を実行することができる。よって、デバイス識別装置1は、適切な新種判定閾値を自動的に設定することが可能となる。
1 デバイス識別装置
3 学習器
10 制御部
11 入出力部
12 記憶部
101 通信情報収集部
102 特徴量生成部
103 機械学習部
104 類似度計算部
105 デバイス識別部
106 新種判定閾値算出部
120 蓄積データDB

Claims (7)

  1. ネットワークに接続される既存のデバイスを示す既存デバイスについての通信情報を機種または種類単位で取得するとともに、識別対象となるデバイスを示す識別対象デバイスについての通信情報を取得する通信情報収集部と、
    前記既存デバイスの通信情報を所定の時間間隔で特徴量化し、前記機種または前記種類を識別するラベルを付して特徴量データを生成して第1の学習データとし、
    前記識別対象デバイスの通信情報を所定の時間間隔で特徴量化し、ダミーラベルを付して特徴量データを生成して第2の学習データとするともに、当該識別対象デバイスの通信情報をさらに取得して所定の時間間隔で特徴量化して特徴量データを生成し、当該生成した特徴量データを識別用データとする特徴量生成部と、
    前記ラベルが付された第1の学習データ、および、前記ダミーラベルが付された第2の学習データを学習器に学習させ、学習済の当該学習器に前記識別用データを入力して、前記識別対象デバイスの特徴量データを、ダミーラベルを含む各ラベルに分類する機械学習部と、
    各ラベルに分類された特徴量データの数と、ダミーラベルに分類された特徴量データの数とに基づき、前記識別対象デバイスの機種または種類と各ラベルで示される機種または種類との類似度を計算する類似度計算部と、
    各ラベルの前記類似度について、所定の新種判定閾値以上の類似度となるラベルがあるか否かを判定し、前記所定の新種判定閾値以上の類似度のラベルがある場合に、前記識別対象デバイスが当該ラベルで示される機種または種類の既存デバイスであると識別し、前記所定の新種判定閾値以上の類似度のラベルがない場合に、前記識別対象デバイスが、既存のラベルで示される機種または種類とは異なる新種のデバイスであると識別するデバイス識別部と、
    を備えることを特徴とするデバイス識別装置。
  2. 前記所定の新種判定閾値を算出する新種判定閾値算出部をさらに備え、
    前記新種判定閾値算出部は、
    前記既存デバイスの通信情報を所定の時間間隔で特徴量化し前記ラベルを付して特徴量データを生成し、生成した前記ラベルが付された特徴量データそれぞれを、学習用データと試験用データに分割し、
    任意のラベルを1つ選択し、選択したラベルの試験用データをさらに2つに分割し、2つに分割した一方の試験用データにダミーラベルを付し、当該ダミーラベルが付された試験用データと各ラベルにおいて前記分割した学習用データとを学習器に学習させ、学習済の当該学習器に2つに分割した他方の試験用データを入力して、前記選択したラベルの試験用データを、前記ダミーラベルを含む各ラベルに分類し、前記選択したラベルの類似度を算出して、学習用データがあるときのデバイスの類似度として抽出する処理を、各ラベルについて行い、
    任意のラベルを1つ選択し、選択したラベルの試験用データをさらに2つに分割し、2つに分割した一方の試験用データにダミーラベルを付し、当該ダミーラベルが付された試験用データと各ラベルにおいて前記分割した学習用データのうち前記選択したラベルの学習データを除いた学習データとを学習器に学習させ、学習済の当該学習器に2つに分割した他方の試験用データを入力して、前記選択したラベルの試験用データを、前記ダミーラベルを含み前記選択したラベルを除いた各ラベルに分類し、当該各ラベルの類似度を算出して、算出した類似度のうち最も値が高いラベルを、学習用データがないときの最も類似するデバイスの類似度として抽出する処理を、各ラベルについて行い、
    各ラベルにおいて、前記学習用データがあるときのデバイスの類似度と、前記学習用データがないときの最も類似するデバイスの類似度と中間値となるように、前記新種判定閾値を算出すること
    を特徴とする請求項1に記載のデバイス識別装置。
  3. 前記デバイス識別部は、前記識別対象デバイスが、前記新種のデバイスであると識別した際に、その旨の情報を前記新種判定閾値算出部に出力し、
    前記新種判定閾値算出部は、前記新種のデバイスの通信情報を、前記既存デバイスの通信情報に加えて前記新種判定閾値の算出処理を行い、前記新種判定閾値を更新すること
    を特徴とする請求項2に記載のデバイス識別装置。
  4. ネットワークに接続されるデバイスを識別するデバイス識別装置のデバイス識別方法であって、
    前記デバイス識別装置は、
    前記ネットワークに接続される既存のデバイスを示す既存デバイスについての通信情報を機種または種類単位で取得するとともに、識別対象となるデバイスを示す識別対象デバイスについての通信情報を取得するステップと、
    前記既存デバイスの通信情報を所定の時間間隔で特徴量化し、前記機種または前記種類を識別するラベルを付して特徴量データを生成して第1の学習データとし、
    前記識別対象デバイスの通信情報を所定の時間間隔で特徴量化し、ダミーラベルを付して特徴量データを生成して第2の学習データとするともに、当該識別対象デバイスの通信情報をさらに取得して所定の時間間隔で特徴量化して特徴量データを生成し、当該生成した特徴量データを識別用データとするステップと、
    前記ラベルが付された第1の学習データ、および、前記ダミーラベルが付された第2の学習データを学習器に学習させ、学習済の当該学習器に前記識別用データを入力して、前記識別対象デバイスの特徴量データを、ダミーラベルを含む各ラベルに分類するステップと、
    各ラベルに分類された特徴量データの数と、ダミーラベルに分類された特徴量データの数とに基づき、前記識別対象デバイスの機種または種類と各ラベルで示される機種または種類との類似度を計算するステップと、
    各ラベルの前記類似度について、所定の新種判定閾値以上の類似度となるラベルがあるか否かを判定し、前記所定の新種判定閾値以上の類似度のラベルがある場合に、前記識別対象デバイスが当該ラベルで示される機種または種類の既存デバイスであると識別し、前記所定の新種判定閾値以上の類似度のラベルがない場合に、前記識別対象デバイスが、既存のラベルで示される機種または種類とは異なる新種のデバイスであると識別するステップと、
    を実行することを特徴とするデバイス識別方法。
  5. 前記デバイス識別装置は、さらに、
    前記既存デバイスの通信情報を所定の時間間隔で特徴量化し前記ラベルを付して特徴量データを生成し、生成した前記ラベルが付された特徴量データそれぞれを、学習用データと試験用データに分割し、
    任意のラベルを1つ選択し、選択したラベルの試験用データをさらに2つに分割し、2つに分割した一方の試験用データにダミーラベルを付し、当該ダミーラベルが付された試験用データと各ラベルにおいて前記分割した学習用データとを学習器に学習させ、学習済の当該学習器に2つに分割した他方の試験用データを入力して、前記選択したラベルの試験用データを、前記ダミーラベルを含む各ラベルに分類し、前記選択したラベルの類似度を算出して、学習用データがあるときのデバイスの類似度として抽出する処理を、各ラベルについて行い、
    任意のラベルを1つ選択し、選択したラベルの試験用データをさらに2つに分割し、2つに分割した一方の試験用データにダミーラベルを付し、当該ダミーラベルが付された試験用データと各ラベルにおいて前記分割した学習用データのうち前記選択したラベルの学習データを除いた学習データとを学習器に学習させ、学習済の当該学習器に2つに分割した他方の試験用データを入力して、前記選択したラベルの試験用データを、前記ダミーラベルを含み前記選択したラベルを除いた各ラベルに分類し、当該各ラベルの類似度を算出して、算出した類似度のうち最も値が高いラベルを、学習用データがないときの最も類似するデバイスの類似度として抽出する処理を、各ラベルについて行い、
    各ラベルにおいて、前記学習用データがあるときのデバイスの類似度と、前記学習用データがないときの最も類似するデバイスの類似度と中間値となるように、前記新種判定閾値を算出するステップ、
    を実行することを特徴とする請求項4に記載のデバイス識別方法。
  6. 前記デバイス識別装置は、前記識別対象デバイスが、前記新種のデバイスであると識別した際に、前記新種のデバイスの通信情報を、前記既存デバイスの通信情報に加えて前記新種判定閾値の算出処理を行い、前記新種判定閾値を更新するステップ、
    を実行することを特徴とする請求項5に記載のデバイス識別方法。
  7. 請求項4ないし請求項6のいずれか1項に記載のデバイス識別方法を、コンピュータに実行させるためのデバイス識別プログラム。
JP2021541771A 2019-08-23 2019-08-23 デバイス識別装置、デバイス識別方法およびデバイス識別プログラム Active JP7287474B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/033116 WO2021038639A1 (ja) 2019-08-23 2019-08-23 デバイス識別装置、デバイス識別方法およびデバイス識別プログラム

Publications (2)

Publication Number Publication Date
JPWO2021038639A1 JPWO2021038639A1 (ja) 2021-03-04
JP7287474B2 true JP7287474B2 (ja) 2023-06-06

Family

ID=74685014

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021541771A Active JP7287474B2 (ja) 2019-08-23 2019-08-23 デバイス識別装置、デバイス識別方法およびデバイス識別プログラム

Country Status (3)

Country Link
US (1) US11847187B2 (ja)
JP (1) JP7287474B2 (ja)
WO (1) WO2021038639A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11770302B2 (en) * 2022-02-01 2023-09-26 Microsoft Technology Licensing, Llc Assignments of IoT device types
CN116257760B (zh) * 2023-05-11 2023-08-11 浪潮电子信息产业股份有限公司 一种数据划分方法、系统、设备及计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007122362A (ja) 2005-10-27 2007-05-17 Toyota Motor Corp ニューラルネットワークを用いた状態推定方法及びニューラルネットワークを用いた状態推定装置
JP2017151838A (ja) 2016-02-26 2017-08-31 トヨタ自動車株式会社 話題推定学習装置及び話題推定学習方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6907436B2 (en) * 2000-10-27 2005-06-14 Arizona Board Of Regents, Acting For And On Behalf Of Arizona State University Method for classifying data using clustering and classification algorithm supervised
WO2015155896A1 (ja) * 2014-04-11 2015-10-15 株式会社 日立製作所 サポートベクトルマシン学習システムおよびサポートベクトルマシン学習方法
US9753968B1 (en) * 2016-03-06 2017-09-05 SparkBeyond Ltd. Systems and methods for detection of anomalous entities

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007122362A (ja) 2005-10-27 2007-05-17 Toyota Motor Corp ニューラルネットワークを用いた状態推定方法及びニューラルネットワークを用いた状態推定装置
JP2017151838A (ja) 2016-02-26 2017-08-31 トヨタ自動車株式会社 話題推定学習装置及び話題推定学習方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
NOGUCHI, Hirofumi ほか,Device Identification Based on Communication Analysis for the Internet of Things,IEEE Access[online],IEEE,2019年04月16日,[retrieved on 2019.09.19], Vol.7,pp.52903-52912,ISSN 2169-3536, Retrieved from the Internet: <URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&a
畑田充弘 ほか,実行時の通信挙動を用いたマルウェアの分類と未知検体検出への応用,コンピュータセキュリティシンポジウム2016 論文集,日本,一般社団法人 情報処理学会,2016年10月04日,情報処理学会シンポジウムシリーズVol.2016,No.2, pp.647-654,ISSN 1882-0840
野口博史 ほか,通信の類似性分析にもとづくIoTデバイス識別手法,電子情報通信学会技術研究報告,日本,電子情報通信学会,2018年07月04日,Vol.118, No.123,pp.45-50(RCC2018-32),ISSN 0913-5685

Also Published As

Publication number Publication date
US20220276954A1 (en) 2022-09-01
WO2021038639A1 (ja) 2021-03-04
JPWO2021038639A1 (ja) 2021-03-04
US11847187B2 (en) 2023-12-19

Similar Documents

Publication Publication Date Title
De Winter et al. Combining temporal aspects of dynamic networks with node2vec for a more efficient dynamic link prediction
JP7127120B2 (ja) ビデオ分類の方法、情報処理の方法及びサーバー、並びにコンピュータ可読記憶媒体及びコンピュータプログラム
WO2020087974A1 (zh) 生成模型的方法和装置
US9462313B1 (en) Prediction of media selection consumption using analysis of user behavior
US10592666B2 (en) Detecting anomalous entities
WO2020087979A1 (zh) 生成模型的方法和装置
WO2019184640A1 (zh) 一种指标确定方法及其相关设备
JP7287474B2 (ja) デバイス識別装置、デバイス識別方法およびデバイス識別プログラム
JP6691094B2 (ja) 学習装置、検知システム、学習方法及び学習プログラム
CN109214374A (zh) 视频分类方法、装置、服务器及计算机可读存储介质
CN111783810B (zh) 用于确定用户的属性信息的方法和装置
CN113037577B (zh) 网络流量预测方法、装置和计算机可读存储介质
US11677770B2 (en) Data retrieval for anomaly detection
JP7342942B2 (ja) 方法、デバイス、及びコンピュータプログラム製品
CN117041017B (zh) 数据中心的智能运维管理方法及系统
CN111159241B (zh) 一种点击转化预估方法及装置
US10969964B2 (en) Method, device, and computer program product for parallel data transmission using machine learning to determine number of concurrencies and data slice size
JP2012186667A (ja) ネットワーク障害検出装置、ネットワーク障害検出装置のネットワーク障害検出方法およびネットワーク障害検出プログラム
CN116049379A (zh) 知识推荐方法、装置、电子设备和存储介质
CN111083469A (zh) 一种视频质量确定方法、装置、电子设备及可读存储介质
Paramasivam et al. Cor-ENTC: correlation with ensembled approach for network traffic classification using SDN technology for future networks
Khokhar et al. On active sampling of controlled experiments for qoe modeling
JP7173234B2 (ja) 情報処理に用いられる方法、装置、デバイス及び記憶媒体
CN111835541B (zh) 一种流量识别模型老化检测方法、装置、设备及系统
JP2019106120A (ja) プロセススケジューリング装置、プロセス実行装置およびプロセススケジューリング方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221025

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221223

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230425

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230508

R150 Certificate of patent or registration of utility model

Ref document number: 7287474

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150