(57)【要約】      （修正有）【課題】ＣＡＥ基盤で異常なトラフィックを探知する方法及び装置を提供する。【解決手段】ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法は、正常トラフィックによる文字列をイメージに変換する段階、変換したイメージをＣＡＥを利用して学習する段階、および、学習したＣＡＥにターゲットトラフィックを入力して異常トラフィックを探知する段階を含む。【選択図】図１４
2020102178.tif 000002
【特許請求の範囲】
【請求項１】
ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法であって、
正常トラフィックによる文字列をイメージに変換する段階；
変換したイメージをＣＡＥを利用して学習する段階；および
学習したＣＡＥにターゲットトラフィックを入力して異常トラフィックを探知する段階を含み、
前記異常トラフィックを探知する段階は、
前記ターゲットトラフィックをイメージに変換する段階；および
イメージに変換したターゲットトラフィックを前記学習したＣＡＥに入力して獲得した出力に対してＢＣＥ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｅｎｔｒｏｐｙ）またはＢＣＶ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｖａｒｅｎｔｒｏｐｙ）を評価する段階を含む、異常なトラフィックを探知する方法。
【請求項２】
前記イメージに変換する段階は、
前記正常トラフィックをＵＴＦ−８（Ｕｎｉｃｏｄｅ−Ｔｒａｎｓｆｏｒｍａｔｉｏｎ−Ｆｏｒｍａｔ−８）形式で獲得する段階；および
獲得した正常トラフィックによる文字列を１６進数に変換する段階を含む、請求項１に記載の異常なトラフィックを探知する方法。
【請求項３】
前記イメージに変換する段階は、
前記正常トラフィックによる文字列を逆順に変換する段階；
逆順に変換した文字列を構成する文字をベクトルに変換する段階；および
ベクトルに変換した文字列をイメージに変換する段階を含む、請求項１に記載の異常なトラフィックを探知する方法。
【請求項４】
前記ＣＡＥは、
Ｉｎｃｅｐｔｉｏｎ  Ｒｅｓｎｅｔ  Ｖ２基盤で構成されたオートエンコーダー（Ａｕｔｏｅｎｃｏｄｅｒ）である、請求項１に記載の異常なトラフィックを探知する方法。
【請求項５】
前記変換したイメージをＣＡＥを利用して学習する段階は、
前記ＢＣＥに基づいて定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含む、請求項１に記載の異常なトラフィックを探知する方法。
【請求項６】
2020102178.tif 000028
【数１】
2020102178.tif 000029
で定義される、請求項１に記載の異常なトラフィックを探知する方法。
【請求項７】
2020102178.tif 000030
【数２】
2020102178.tif 000031
で定義される、請求項１に記載の異常なトラフィックを探知する方法。
【請求項８】
前記変換したイメージをＣＡＥを利用して学習する段階は、
前記ＢＣＥによるｔｏｔａｌ  ＢＣＥと前記ＢＣＶによるｔｏｔａｌ  ＢＣＶを線形結合して定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含む、請求項１に記載の異常なトラフィックを探知する方法。
【請求項９】
前記費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）は、数式
【数３】
2020102178.tif 000032
で定義される、請求項８に記載の異常なトラフィックを探知する方法。
【請求項１０】
ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置であって、
少なくとも一つのプロセッサ（ｐｒｏｃｅｓｓｏｒ）；および
前記少なくとも一つのプロセッサが少なくとも一つの段階を遂行するように指示する命令語（ｉｓｎｔｒｕｃｔｉｏｎｓ）を保存するメモリ（ｍｅｍｏｒｙ）を含み、
前記少なくとも一つの段階は、
正常トラフィックによる文字列をイメージに変換する段階；
変換したイメージをＣＡＥを利用して学習する段階；および
学習したＣＡＥにターゲットトラフィックを入力して異常トラフィックを探知する段階を含み、
前記異常トラフィックを探知する段階は、
前記ターゲットトラフィックをイメージに変換する段階；および
イメージに変換したターゲットトラフィックを前記学習したＣＡＥに入力して獲得した出力に対してＢＣＥ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｅｎｔｒｏｐｙ）またはＢＣＶ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｖａｒｅｎｔｒｏｐｙ）を評価する段階を含む、異常なトラフィックを探知する装置。
【請求項１１】
前記イメージに変換する段階は、
前記正常トラフィックをＵＴＦ−８（Ｕｎｉｃｏｄｅ−Ｔｒａｎｓｆｏｒｍａｔｉｏｎ−Ｆｏｒｍａｔ−８）形式で獲得する段階；および
獲得した正常トラフィックによる文字列を１６進数に変換する段階を含む、請求項１０に記載の異常なトラフィックを探知する装置。
【請求項１２】
前記イメージに変換する段階は、
前記正常トラフィックによる文字列を逆順に変換する段階；
逆順に変換した文字列を構成する文字をベクトルに変換する段階；および
ベクトルに変換した文字列をイメージに変換する段階を含む、請求項１０に記載の異常なトラフィックを探知する装置。
【請求項１３】
前記ＣＡＥは、
Ｉｎｃｅｐｔｉｏｎ  Ｒｅｓｎｅｔ  Ｖ２基盤で構成されたオートエンコーダー（Ａｕｔｏｅｎｃｏｄｅｒ）である、請求項１０に記載の異常なトラフィックを探知する装置。
【請求項１４】
前記変換したイメージをＣＡＥを利用して学習する段階は、
前記ＢＣＥに基づいて定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含む、請求項１０に記載の異常なトラフィックを探知する装置。
【請求項１５】
2020102178.tif 000033
【数４】
2020102178.tif 000034
で定義される、請求項１０に記載の異常なトラフィックを探知する装置。
【請求項１６】
2020102178.tif 000035
【数５】
2020102178.tif 000036
で定義される、請求項１０に記載の異常なトラフィックを探知する装置。
【請求項１７】
前記変換したイメージをＣＡＥを利用して学習する段階は、
前記ＢＣＥによるｔｏｔａｌ  ＢＣＥと前記ＢＣＶによるｔｏｔａｌ  ＢＣＶを線形結合して定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含む、請求項１０に記載の異常なトラフィックを探知する装置。
【請求項１８】
前記費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）は、数式
【数６】
2020102178.tif 000037
で定義される、請求項１７に記載の異常なトラフィックを探知する装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＣＡＥ基盤で異常なトラフィックを探知する方法および装置に関するものであって、さらに詳細には、正常なトラフィックをコンボリューショナルオートエンコーダー（ＣＡＥ）で学習し、学習したコンボリューショナルオートエンコーダーにテスト対象トラフィックを入力して異常なトラフィックを探知する技術に関するものである。
【背景技術】
【０００２】
最近移動通信をはじめとする超高速通信が広く普及されるにつれて、サーバーとインターネット間のＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）基盤の通信トラフィックが急速に増加している。ここで、ＨＴＴＰはハイパーテキスト（ｈｙｐｅｒｔｅｘｔ）文書を交換するために使用される通信規約（ｐｒｏｔｏｃｏｌ）であり、ハイパーテキストは文書の間に特定キーワードを置いて文字や絵を相互に有機的に結合して連結させることによって、互いに異なる文書であっても一つの文書のように見せながら参照し易いようにする方式を意味する。
【０００３】
このようなＨＴＴＰ基盤の通信トラフィックの中には、一般的な使用者が使用するトラフィックだけでなく悪意ある目的を有した攻撃者によって過度に誘発される異常トラフィックが含まれている。このような異常トラフィックは、サーバー接続遅延やサーバー接続不可のように、一般の使用者に大きな不便を与えているため、異常トラフィックを探知するための努力が続いている。
【０００４】
既存の異常トラフィックを探知する手段は、パケットの数や大きさのように量的な変化をモニタリングして急激な変化がある時に異常トラフィックであると探知することが一般的であるが、異常トラフィックは必ずしもパケットの量や大きさで分別できるものではないため、正常トラフィックを異常トラフィックに誤って探知する問題が発生し得る。
【０００５】
一方、最近ではＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）を利用したイメージ認識技術に対する研究が盛んに行われており、このためイメージを認識する性能を向上させるための多様なネットワーク構造が提案されている。しかし、既存のＣＮＮ基盤イメージ認識技術は、イメージを入力データで入力を受けて学習するため。トラフィックの異常の有無を検出するのに不適合な問題がある。
【０００６】
したがって、従来のトラフィック分析方式から脱皮して人工神経網基盤でトラフィックを分析して異常トラフィックを探知できる方案が必要であるのが実情である。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前記のような問題点を解決するための本発明の目的は、ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法を提供することである。
【０００８】
前記のような問題点を解決するための本発明の他の目的は、ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置を提供することである。
【課題を解決するための手段】
【０００９】
前記目的を達成するための本発明の一側面は、ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法を提供する。
【００１０】
ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法は、正常トラフィックによる文字列をイメージに変換する段階、変換したイメージをＣＡＥを利用して学習する段階および学習したＣＡＥにターゲットトラフィックを入力して異常トラフィックを探知する段階を含むことができる。
【００１１】
前記異常トラフィックを探知する段階は、前記ターゲットトラフィックをイメージに変換する段階およびイメージに変換したターゲットトラフィックを前記学習したＣＡＥに入力して獲得した出力に対してＢＣＥ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｅｎｔｒｏｐｙ）またはＢＣＶ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｖａｒｅｎｔｒｏｐｙ）を評価する段階を含むことができる。
【００１２】
前記イメージに変換する段階は、前記正常トラフィックをＵＴＦ−８（Ｕｎｉｃｏｄｅ−Ｔｒａｎｓｆｏｒｍａｔｉｏｎ−Ｆｏｒｍａｔ−８）形式で獲得する段階および獲得した正常トラフィックによる文字列を１６進数に変換する段階を含むことができる。
【００１３】
前記イメージに変換する段階は、前記正常トラフィックによる文字列を逆順に変換する段階、逆順に変換した文字列を構成する文字をベクトルに変換する段階およびベクトルに変換した文字列をイメージに変換する段階を含むことができる。
【００１４】
前記ＣＡＥは、Ｉｎｃｅｐｔｉｏｎ  Ｒｅｓｎｅｔ  Ｖ２基盤で構成されたオートエンコーダー（Ａｕｔｏｅｎｃｏｄｅｒ）であり得る。
【００１５】
前記変換したイメージをＣＡＥを利用して学習する段階は、前記ＢＣＥに基づいて定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含むことができる。
【００１６】
2020102178.tif 000003
【００１７】
【数１】
2020102178.tif 000004
【００１８】
2020102178.tif 000005
【００１９】
【数２】
2020102178.tif 000006
【００２０】
前記変換したイメージをＣＡＥを利用して学習する段階は、前記ＢＣＥによるｔｏｔａｌ  ＢＣＥと前記ＢＣＶによるｔｏｔａｌ  ＢＣＶを線形結合して定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含むことができる。
【００２１】
前記費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）は、下記数式で定義され得る。
【００２２】
【数３】
2020102178.tif 000007
【００２３】
前記目的を達成するための本発明の他の側面は、ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置を提供する。
【００２４】
ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置は、少なくとも一つのプロセッサ（ｐｒｏｃｅｓｓｏｒ）および前記少なくとも一つのプロセッサが少なくとも一つの段階を遂行するように指示する命令語（ｉｓｎｔｒｕｃｔｉｏｎｓ）を保存するメモリ（ｍｅｍｏｒｙ）を含むことができる。
【００２５】
前記少なくとも一つの段階は、正常トラフィックによる文字列をイメージに変換する段階、変換したイメージをＣＡＥを利用して学習する段階および学習したＣＡＥにターゲットトラフィックを入力して異常トラフィックを探知する段階を含むことができる。
【００２６】
前記異常トラフィックを探知する段階は、前記ターゲットトラフィックをイメージに変換する段階およびイメージに変換したターゲットトラフィックを前記学習したＣＡＥに入力して獲得した出力に対してＢＣＥ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｅｎｔｒｏｐｙ）またはＢＣＶ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｖａｒｅｎｔｒｏｐｙ）を評価する段階を含むことができる。
【００２７】
前記イメージに変換する段階は、前記正常トラフィックをＵＴＦ−８（Ｕｎｉｃｏｄｅ−Ｔｒａｎｓｆｏｒｍａｔｉｏｎ−Ｆｏｒｍａｔ−８）形式で獲得する段階および獲得した正常トラフィックによる文字列を１６進数に変換する段階を含むことができる。
【００２８】
前記イメージに変換する段階は、前記正常トラフィックによる文字列を逆順に変換する段階、逆順に変換した文字列を構成する文字をベクトルに変換する段階およびベクトルに変換した文字列をイメージに変換する段階を含むことができる。
【００２９】
前記ＣＡＥは、Ｉｎｃｅｐｔｉｏｎ  Ｒｅｓｎｅｔ  Ｖ２基盤で構成されたオートエンコーダー（Ａｕｔｏｅｎｃｏｄｅｒ）であり得る。
【００３０】
前記変換したイメージをＣＡＥを利用して学習する段階は、前記ＢＣＥに基づいて定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含むことができる。
【００３１】
2020102178.tif 000008
【００３２】
【数４】
2020102178.tif 000009
【００３３】
2020102178.tif 000010
【００３４】
【数５】
2020102178.tif 000011
【００３５】
前記変換したイメージをＣＡＥを利用して学習する段階は、前記ＢＣＥによるｔｏｔａｌ  ＢＣＥと前記ＢＣＶによるｔｏｔａｌ  ＢＣＶを線形結合して定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含むことができる。
【００３６】
前記費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）は、下記数式で定義され得る。
【００３７】
【数６】
2020102178.tif 000012
【発明の効果】
【００３８】
前記のような本発明に係るＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法および装置を利用する場合には、異常トラフィックの分散とエントロピー特性を反映して正確に異常トラフィックを探知することができる。
【００３９】
また、文字列基盤のトラフィックをイメージ基盤のオートエンコーダーを適用して分析することによって、異常トラフィックを感知することができる。
【図面の簡単な説明】
【００４０】
【図１】本発明の一実施例に係るＣＡＥ基盤で異常なトラフィックを探知する方法および装置の概念を説明するための例示図。
【図２】本発明の一実施例に係る文字列をイメージに変換する方法を説明するための概念図。
【図３】本発明の一実施例に係る文字列をイメージに変換する方法に対する例示図。
【図４】本発明の一実施例に係るＣＡＥの基盤となるインセプション−レジデュアルネットワーク−ｖ２を説明する概念図。
【図５】本発明の一実施例に係るＣＡＥの構成を説明する概念図。
【図６】本発明の一実施例に係るＣＡＥでエンコーダーの構造を説明する概念図。
【図７】本発明の一実施例に係るＣＡＥでエンコーダーの構造に対応するデコーダーの構造を説明する概念図。
【図８】本発明の一実施例に係るＣＡＥでステム（ｓｔｅｍ）段階を説明する概念図。
【図９】本発明の一実施例に係るＣＡＥでＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階を説明する概念図。
【図１０】本発明の一実施例に係るＣＡＥでＲｅｄｕｃｔｉｏｎ−Ａ段階を説明する概念図。
【図１１】本発明の一実施例に係るＣＡＥでＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階を説明する概念図。
【図１２】本発明の一実施例に係るＣＡＥでＲｅｄｕｃｔｉｏｎ−Ｂ段階を説明する概念図。
【図１３】本発明の一実施例に係るＣＡＥでＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階を説明する概念図。
【図１４】本発明の一実施例に係るＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法に対するフローチャート。
【図１５】本発明の一実施例に係るＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置に従う構成図。
【図１６】本発明の一実施例に係るＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法および装置に対する実験結果を示したグラフ。
【図１７】本発明の一実施例に係るＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法および装置に対する実験結果を示したグラフ。
【図１８】本発明の一実施例に係るＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法および装置に対する実験結果を示したグラフ。
【発明を実施するための形態】
【００４１】
本発明は多様な変更を加えることができ、多様な実施例を有することができるところ、特定の実施例を図面に例示して詳細な説明に詳細に説明する。しかし、これは本発明を特定の実施形態に対して限定しようとするものではなく、本発明の思想および技術範囲に含まれるすべての変更、均等物乃至代替物を含むものと理解されるべきである。各図面の説明において、類似する参照符号を類似する構成要素に付した。
【００４２】
第１、第２、Ａ、Ｂなどの用語は、多様な構成要素の説明に使用され得るが、前記構成要素は前記用語によって限定されるものではない。前記用語は一つの構成要素を他の構成要素から区別する目的でのみ使用される。例えば、本発明の権利範囲を逸脱することなく第１構成要素は第２構成要素と命名され得、同様に第２構成要素も第１構成要素と命名され得る。および／またはという用語は複数の関連した記載された項目の組み合わせまたは複数の関連した記載された項目のいずれかの項目を含む。
【００４３】
ある構成要素が他の構成要素に「連結されて」あるとか「接続されて」あると言及された時には、その他の構成要素に直接的に連結されているかまたは接続されていてもよいが、中間に他の構成要素が存在してもよいと理解されるべきである。反面、ある構成要素が他の構成要素に「直接連結されて」あるとか「直接接続されて」あると言及された時には、中間に他の構成要素が存在しないものと理解されるべきである。
【００４４】
本出願で使用した用語は単に特定の実施例を説明するために使用されたものであって、本発明を限定しようとする意図ではない。単数の表現は文脈上明白に異なることを意味しない限り、複数の表現を含む。本出願で、「含む」または「有する」等の用語は、明細書上に記載された特徴、数字、段階、動作、構成要素、部品またはこれらを組み合わせたものが存在することを指定しようとするものであって、一つまたはそれ以上の他の特徴や数字、段階、動作、構成要素、部品またはこれらを組み合わせたものなどの存在または付加の可能性をあらかじめ排除しないものと理解されるべきである。
【００４５】
異なって定義されない限り、技術的または科学的な用語を含んで、ここで使用されるすべての用語は、本発明が属する技術分野で通常の知識を有する者によって一般的に理解されるものと同じ意味を有している。一般的に使用される辞書に定義されているような用語は、関連技術の文脈上有する意味と一致する意味を有すると解釈されるべきであり、本出願で明白に定義しない限り、理想的または過度に形式的な意味と解釈されない。
【００４６】
一般的にトラフィックとは、ウェブサイトに訪問する人々がやり取りするデータの量を意味するウェブトラフィック（ｗｅｂ  ｔｒａｆｆｉｃ）を意味し得、インターネットを経由するデータの流れを意味するインターネットトラフィック（ｉｎｔｅｒｎｅｔ  ｔｒａｆｆｉｃ）を意味し得る。また、トラフィックはＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を利用するインターネットトラフィックを意味し得る。ここで、ＨＴＴＰはステートレス（ｓｔａｔｅｌｅｓｓ）プロトコル（ｐｒｏｔｏｃｏｌ）であり得、ステートレスプロトコルはＨＴＴＰサーバーが多重要請期間の間各使用者に対する情報または状態を保有することを要求しなくてもよい。
【００４７】
また、ＨＴＴＰセッションとは、一連のネットワーク要請および応答のトランザクション（ｔｒａｎｓａｃｔｉｏｎ）を意味し得る。例えば、ＨＴＴＰクライアントはサーバーの特定ポートにＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）連結を設定して要請を開始することができ、該当ポートで受信待機するＨＴＴＰサーバーはクライアントの要請メッセージを待つことができ、要請を受けるとサーバーは「ＨＴＴＰ／１．１  ２００  ＯＫ」のような状態表示列と自らのメッセージを送ることができる。このメッセージの本文は一般的に要請された資源であり得るが、エラーメッセージまたはその他の情報が返還され得、ここで、ＨＴＴＰクライアントの要請およびサーバーの応答がＨＴＴＰセッションを意味し得る。
【００４８】
本発明でＨＴＴＰトラフィックはＨＴＴＰセッションでＨＴＴＰクライアントとＨＴＴＰサーバーがやり取りしたメッセージであって、文字列の形態を有し得る。以下ではＨＴＴＰトラフィックを前提にして説明するが、ＨＴＴＰトラフィック以外にも文字列で表現される通信メッセージはすべて適用され得るものと解釈されるべきである。
【００４９】
以下、本発明に係る好ましい実施例を添付された図面を参照して詳細に説明する。
【００５０】
図１は、本発明の一実施例に係るＣＡＥ基盤で異常なトラフィックを探知する方法および装置の概念を説明するための例示図である。
【００５１】
有無線通信過程でやり取りできるメッセージは文字列で表現され得る。この時、本発明の一実施例では通信過程でやり取りするメッセージによる文字列をイメージに変換し、イメージ学習基盤のＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ａｕｔｏｅｎｃｏｄｅｒ）を利用して学習することによって異常トラフィックを探知する方法を提案する。
【００５２】
図１を参照すると、本発明の一実施例では通信メッセージによる文字列をイメージに変換して入力イメージ（Ｉｎｐｕｔ  Ｉｍａｇｅ）として使用し、入力イメージがＣＡＥが入力されるとＣＡＥは入力イメージを学習して出力イメージと入力イメージの間の差が小さくなれるように畳み込み層の係数を選定することができる。
【００５３】
一方、ＣＡＥはエンコーダー（Ｅｎｃｏｄｅｒ）とデコーダー（Ｄｅｃｏｄｅｒ）を含むコンボリューショナル神経網（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）のコンボリューショナルオートエンコーダー（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ａｕｔｏｅｎｃｏｄｅｒ）と呼称され得る。ここで、エンコーダーはＣＡＥを構成する多数の階層のうち、入力データが圧縮されて隠れ層（ｈｉｄｄｅｎ  ｌａｙｅｒｓ）を形成する過程（エンコーディング過程）を遂行する階層で構成され得、デコーダーはエンコーダーの反対の過程であって、隠れ層で出力データを生成する過程を遂行する階層で構成され得る。
【００５４】
具体的にエンコーダーは、畳み込み層（ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｌａｙｅｒ）とプーリング層（ｐｏｏｉｎｇ  ｌａｙｅｒ）を含むことができ、デコーダーはアッププーリング層（ｕｐｐｏｏｌｉｎｇ  ｌａｙｅｒ）およびトランスポーズド畳み込み層（ｔｒａｎｓｐｏｓｅｄ  ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｌａｙｅｒ）を含むことができる。この時、エンコーダーとデコーダーは互いに全結合層（ｆｕｌｌｙ  ｃｏｎｎｅｃｔｅｄ  ｌａｙｅｒ）で連結され得る。
【００５５】
畳み込み層は入力映像をフィルターと合成積（または畳み込み）して特徴（または特徴マップと呼称）を抽出する階層であり得る。合成積を遂行する間隔値をストライド（ｓｔｒｉｄｅ）と呼称し得るが、ストライド値により異なる大きさの特徴マップが抽出され得る。
【００５６】
プーリング層は抽出された特徴マップに対してサブサンプリング（ｓｕｂｓａｍｐｌｉｎｇ）またはプーリング（ｐｏｏｌｉｎｇ）を遂行して特徴マップを代表する特徴を選定する階層であって、特徴マップの一定の領域に対して最も大きい値を抽出するマックスプーリング（ｍａｘ  ｐｏｏｌｉｎｇ）、平均値を抽出するアベレージプーリング（ａｖｅｒａｇｅ  ｐｏｏｌｉｎｇ）等が遂行され得る。
【００５７】
全結合層（ｆｕｌｌｙ  ｃｏｎｎｅｃｔｅｄ  ｌａｙｅｒ）は完全接続階層であって、以前の層のすべてのアクティベーションと連結されている階層であり得る。
【００５８】
トランスポーズド畳み込み層（ｔｒａｎｓｐｏｓｅｄ  ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｌａｙｅｒ）はエンコーダーで遂行された畳み込み層の反対の過程を遂行する階層であり得、アッププーリング層はプーリング層の反対の過程を遂行する階層であり得る。
【００５９】
このような正常なトラフィックに対する文字列を変換したイメージを学習したＣＡＥに、学習に使用されていない類型のイメージを入力すると、非常に歪んだ出力イメージを獲得するようになる。したがって、学習していない異常なトラフィックに対する文字列を入力イメージに変換してＣＡＥを通じて出力すると、非常に歪んだイメージが出力されるという点を通じて異常なトラフィックを判断することが容易である。
【００６０】
図２は、本発明の一実施例に係る文字列をイメージに変換する方法を説明するための概念図である。図３は、本発明の一実施例に係る文字列をイメージに変換する方法に対する例示図である。
【００６１】
図２を参照すると、本発明の一実施例ではトラフィックに対する文字列を構成する個別文字を一つのベクトル（ｘ０、ｘ１、ｘ２、ｘ３、ｘ４、ｘ５）で表現し、複数のベクトルを集めて（または複数のベクトルを行列で表現して）一つの２進数のイメージ形態で表現することができる。
【００６２】
2020102178.tif 000013
【００６３】
2020102178.tif 000014
【００６４】
さらに他の例示として、図３を参照すると、トラフィックによる文字列が「ｃｂｃｆｇａ」であるものを例にして、イメージに文字列を変換する過程を説明することができる。まず、文字列で構成されているトラフィックデータを文章の最後の文字から逆順に、ｏｎｅ−ｈｏｔ  ｖｅｃｔｏｒに変換することができる。ここで、ｏｎｅ−ｈｏｔ  ｖｅｃｔｏｒは、一つの次元値が１であり、残りのすべての次元値が０であるベクトルを意味し得る。この時、変換され得る文字の集合を｛ａ、ｂ、ｃ、ｄ、ｅ、ｆ｝に設定し、一つのイメージに変換可能な文字列の長さ（ベクトルの長さに該当）を７に設定すると、文字列の最も後にあった文字「ａ」によるベクトル（ｘ０）は最初に文字が位置しているので、［１、０、０、０、０、０、０］と表現され得る。また、文字列に含まれた「ｂ」は逆順に構成（ａｇｆｃｂｃ）する時に後から２番目（または前から５番目）に位置しているので、５番目の要素値が１であるベクトル［０、０、０、０、１、０、０］で表現することができる。また、文字列に含まれた「ｃ」は逆順に構成（ａｇｆｃｂｃ）する時に前から４番目と６番目に位置しているので、４番目と６番目の要素が１であるベクトル［０、０、０、１、０、１、０］で表現することができる。一方、ベクトルの長さを７に仮定したため、文字列の長さ６より大きい。したがって、ベクトルの最後の要素は該当する文字がないため、「０」に定められ得る。同様な方式で文字「ａ」から文字「ｆ」まで表現する場合、それぞれの文字に該当するベクトルが一つのチャネル（またはイメージの横線）を構成してすべて６チャネルを有し、ベクトルの長さが７であるため、６Ｘ７の大きさを有する１次元（ｏｎｅ  ｄｉｍｅｎｓｉｏｎ）イメージで表現（６Ｘ１Ｘ７）することができる。この時、イメージの各ピクセルはベクトルの要素値が１であれば黒色（ｂｌａｃｋ）、０であれば白色（ｗｈｉｔｅ）で表現され得る。
【００６５】
一方、イメージに変換する時に許容可能な文字の個数をどのように処理するかが問題となり得る。例えば次のように許容可能な文字を構成することができる。
【００６６】
2020102178.tif 000015
【００６７】
しかし、前記の場合、英語の大文字は小文字に変換して表現しなければならず、含まれない文字はないもの（ｂｌａｎｋ）として処理され得る。多様な文字の入力を許容するために本発明の一実施例によると、トラフィックに対する文字列をＵＴＦ−８形式でエンコーディングして入力を受け、入力された値を１６進数の単位に変換することができる。１６進数では一つの値を次の文字列だけで表現することができる。
【００６８】
2020102178.tif 000016
【００６９】
ＵＴＦ−８によって変換されるアルファベット一つは、１６進数２個で表現され得、したがって、１６進数一つを表現する文字列のみ許容可能な文字列で構成してもすべての入力文字を表現することができる。
【００７０】
図４は、本発明の一実施例に係るＣＡＥの基盤となるインセプション−レジデュアルネットワーク−ｖ２を説明する概念図である。
【００７１】
本発明の一実施例に係るＣＡＥは、インセプション−レジデュアルネットワーク−ｖ２（Ｉｎｃｅｐｔｉｏｎ−ＲｅｓＮｅｔ−Ｖ２）に基づいて構成され得る。この時、図４を参照すると、インセプション−レジデュアルネットワーク−ｖ２は入力データをエンコーディングするために、Ｓｔｅｍ、５個のＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ、Ｒｅｄｕｃｔｉｏｎ−Ａ、１０個のＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ、Ｒｅｄｕｃｔｉｏｎ−Ｂ、５個のＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ、Ａｖｅｒａｇｅ  Ｐｏｏｌｉｎｇ、ＤｒｏｐｏｕｔおよびＳｏｆｔｍａｘの段階を含むことができ、演算量を減らしてより多くの層（ｌａｙｅｒ）を有することができるインセプションネットワーク（ｉｎｃｅｐｔｉｏｎ  ｎｅｔｗｏｒｋ）の特性と、ネットワークが深くなって訓練が不可なｖａｎｉｓｈｉｎｇ  ｇｒａｄｉｅｎｔ  ｐｒｏｂｌｅｍを解決するために、下位層の出力を減らし上位層の出力を下位層に足すレジデュアルネットワーク（ｒｅｓｉｄｕａｌ  ｎｅｔｗｏｒｋ）の特性を組み合わせたネットワークであり得る。
【００７２】
インセプション−レジデュアルネットワーク−ｖ２は、２９９ｘ２９９の大きさを有するＲＧＢ３個のチャネルで構成されたイメージ、すなわち２９９ｘ２９９ｘ３の大きさの入力データを受信して１０００の大きさ（または１００個のクラス数）の圧縮データを生成することができ、図４で各階層に表示されたデータは（高さＸ幅Ｘチャネル数）を有するイメージまたはデータの個数で表現され得る。
【００７３】
その他にインセプション−レジデュアルネットワーク−ｖ２については、Ｃｈｒｉｓｔｉａｎ  ＳｚｅｇｅｄｙのＩｎｃｅｐｔｉｏｎ−ｖ４、ｉｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ  ａｎｄ  ｔｈｅ  ｉｍｐａｃｔ  ｏｆ  ｒｅｓｉｄｕａｌ  ｃｏｎｎｅｃｔｉｏｎｓ  ｏｎ  ｌｅａｒｎｉｎｇ（２０１６）を参照することができる。
【００７４】
本発明の一実施例に係るＣＡＥは前述したインセプション−レジデュアルネットワーク−ｖ２に基づいて変形されたオートエンコーダーであって、以下で詳述する。
【００７５】
図５は、本発明の一実施例に係るＣＡＥの構成を説明する概念図である。
【００７６】
図５を参照すると、本発明の一実施例に係るＣＡＥは、インセプション−レジデュアルネットワーク−ｖ２基盤のエンコーディング段階および対応するデコーディング段階を含むことができる。この時、エンコーディング段階を遂行するエンコーダーは図４でのインセプション−レジデュアルネットワーク−ｖ２の入力からアベレージプーリング層までの階層で構成され得、デコーダーはエンコーダーの逆過程を遂行する階層で構成され得る。
【００７７】
この時、ＣＡＥは入力イメージを出力データと比較して誤差が減少するようにパラメーターまたは加重値を調整することができる。パラメーターまたは加重値は、５個のＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ、１０個のＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂおよび５個のＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階で調整され得、それぞれスケーリング（ｓｃａｌｉｎｇ）を通じて調整され得る。
【００７８】
本発明の図面を含んだ明細書で別途の説明がない場合、Ｆは基本フレーム  サイズであって、１２８を意味し得、Ｖは有効な畳み込み（ｖａｌｉｄ  ｃｏｎｖｏｌｕｔｉｏｎ）または有効なマックスプーリング（ｖａｌｉｄ  ｍａｘ  ｐｏｏｌｉｎｇ）を意味し得、ストライド（ｓｔｒｉｄｅ）は畳み込みまたはマックスプーリングを遂行する間隔を意味し得、ｌｉｎｅａｒは活性関数（ａｃｔｉｖａｔｉｏｎ  ｆｕｎｃｔｉｏｎ）なしに全体畳み込み（ｆｕｌｌ  ｃｏｎｖｏｌｕｔｉｏｎ）を遂行することを意味し得る。Ｃｏｎｖ．は畳み込みを意味し得、Ｃｏｎｖ．Ｔｒａｎｓ．は畳み込みの逆を意味し得る。ＭａｘＰｏｏｌはマックスプーリングを意味し得、ＭａｘＵｎＰｏｏｌはマックスプーリングの逆を意味し得る。ＡｘＢ  Ｃｏｎｖ．はＡｘＢの大きさを参照して畳み込みを遂行することを意味し得、ＡｘＢ  ＭａｘＰｏｏｌはＡｘＢの大きさを参照してマックスプーリングを遂行することを意味し得る。前述した記号の説明は本発明の明細書で継続して同じ意味で使用され得る。
【００７９】
図６は、本発明の一実施例に係るＣＡＥでエンコーダーの構造を説明する概念図である。
【００８０】
具体的には、図６はエンコーディング段階の合算、分配およびスケーリングを説明するものであって、図６の（ａ）を参照すると、本発明の一実施例に係るＣＡＥのエンコーディング段階で、Ｆｉｌｔｅｒ  Ｃｏｎｃａｔは各モジュールの出力データを合算することができ、シグマ（ｓｉｇｍａ）記号を使用して表してもよい。換言すると、Ｆｉｌｔｅｒ  Ｃｏｎｃａｔの出力データＸは、各モジュールの出力データＸ１、Ｘ２、…、ＸＮを合算したものと表すことができる。図６の（ｂ）を参照すると、本発明に係るＣＡＥのエンコーディング段階で、分配は出力データを同じ出力データに分配するものと表すことができる。また、図６の（ｃ）を参照すると、本発明のＣＡＥでスケーリング（ｓｃａｌｉｎｇ）は各モジュールの出力データにａ１、ａ２、…、ａＮを積算した値を合算するものであって、ここで、ａ１、ａ２、…、ａＮはエンコーディング部分のパラメーターまたは加重値を意味し得、ａ１、ａ２、…、ａＮを調整して学習を進行させることができる。
【００８１】
図７は、本発明の一実施例に係るＣＡＥでエンコーダーの構造に対応するデコーダーの構造を説明する概念図である。
【００８２】
具体的には、図７はデコーディング段階の分配、平均およびスケーリングを説明するものであって、図７の（ａ）を参照すると、本発明の一実施例に係るＣＡＥのデコーディング段階で、Ｆｉｌｔｅｒ  Ｓｐｌｉｔは上位モジュールの出力データを分けて各モジュールに分配することができ、各モジュールに分配された出力データの和が上位段階の出力データと同じであり得る。Ｆｉｌｔｅｒ  Ｓｐｌｉｔはエンコーディング段階でのように、シグマ記号を使用して示すこともできる。換言すると、Ｆｉｌｔｅｒ  Ｓｐｌｉｔの上位段階の出力データＸは、各モジュールに分配された出力データＸ１、Ｘ２、…、ＸＮを合算したもので表すことができる。図７の（ｂ）を参照すると、本発明に係るＣＡＥのデコーディング段階でＭｅａｎは、各上位モジュールの出力データに対する平均を算出することができる。また、図７の（ｃ）を参照すると、本発明のＣＡＥでスケーリング（ｓｃａｌｉｎｇ）は上位モジュールの出力データを分配して各分配された出力データにｂ１、ｂ２、…、ｂＮをそれぞれ積算したものであって、ここで、ｂ１、ｂ２、…、ｂＮはデコーディング部分のパラメーターまたは加重値を意味し得、ｂ１、ｂ２、…、ｂＮを調整して学習をシンクさせることができる。
【００８３】
図８は、本発明の一実施例に係るＣＡＥでステム（ｓｔｅｍ）段階を説明する概念図である。
【００８４】
図８を参照すると、本発明の一実施例に係るＣＡＥのｓｔｅｍ段階は，図５のエンコーダー（ｅｎｃｏｄｅｒ）とデコーダー（ｄｅｃｏｄｅｒ）でそれぞれ遂行され得る。換言すると、図５のエンコーダーでは図８のエンコーダーｓｔｅｍ段階が遂行され得、図５のデコーダーでは図８のデコーダーｓｔｅｍ段階が遂行され得る。エンコーダーのｓｔｅｍ段階は入力データを順次１ｘ３  Ｃｏｎｖ．（ｓｔｒｉｄｅ  ２）、１ｘ３  Ｃｏｎｖ．および１ｘ３  Ｃｏｎｖ．を遂行することができ、最後の１ｘ３  Ｃｏｎｖ．の出力データを分配して１ｘ３  ＭａｘＰｏｏｌ（ｓｔｒｉｄｅ  ２）および１ｘ３  Ｃｏｎｖ．（ｓｔｒｄｅ  ２）を遂行することができ、分配して遂行した出力データを再び合算し、再び分配して一方では１ｘ１  Ｃｏｎｖ．および１ｘ３  ｃｏｎｖ．を順次遂行することができ、他の一方では１ｘ１  Ｃｏｎｖ．、１ｘ１  Ｃｏｎｖ．、１ｘ７  Ｃｏｎｖ．および１ｘ３  Ｃｏｎｖ．を順次遂行できる。分配して遂行した出力データを再び合算し、再び分配して１ｘ３  Ｃｏｎｖ．および１ｘ３  ＭａｘＰｏｏｌ（ｓｔｒｉｄｅ  ２）を遂行することができ、分配して遂行した出力データを再び合算することができる。また、本発明に係るＣＡＥのｓｔｅｍ段階は、前述したｓｔｅｍ段階だけでなく通常のインセプション−レジデュアルネットワーク−ｖ２のｓｔｅｍ段階と同一に遂行され得るが、これに限定されない。デコーダーのｓｔｅｍ段階はエンコーディング段階のｓｔｅｍ段階と逆に遂行され得る。
【００８５】
図９は、本発明の一実施例に係るＣＡＥでＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階を説明する概念図である。
【００８６】
図９を参照すると、本発明の一実施例に係るＣＡＥのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階は、図５のエンコーダー（ｅｎｃｏｄｅｒ）とデコーダー（ｄｅｃｏｄｅｒ）でそれぞれ遂行され得る。換言すると、図５のエンコーダーでは図９のエンコーダーＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階が遂行され得、図５のデコーダーでは図９のデコーダーＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階が遂行され得る。エンコーダーのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階は入力データを４個に分配することができ、最初は１ｘ１  Ｃｏｎｖ．、１ｘ３  Ｃｏｎｖ．および１ｘ３  Ｃｏｎｖ．を順次遂行することができ、２番目は１ｘ１  Ｃｏｎｖ．および１ｘ３  Ｃｏｎｖ．を順次遂行することができ、３番目は１ｘ１  Ｃｏｎｖ．を遂行できる。最初、２番目および３番目は合算されて１ｘ１  Ｃｏｎｖ．（ｌｉｎｅａｒ）およびスケーリングされ得。スケーリングされた出力データと４個に分配された入力データのうち、いかなる過程も遂行していない入力データを合算することができる。また、本発明に係るＣＡＥのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階は、前述したＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階だけでなく通常のインセプション−レジデュアルネットワーク−ｖ２のＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階と同様に遂行され得るが、これに限定されない。デコーダーのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階はエンコーダーのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階と逆に遂行され得る。
【００８７】
本発明の一実施例に係るＣＡＥはＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ａ段階のスケーリングの大きさａ、ｂおよびｃを調整することができ、調整を通じて学習を進行させることができる。
【００８８】
図１０は、本発明の一実施例に係るＣＡＥでＲｅｄｕｃｔｉｏｎ−Ａ段階を説明する概念図である。
【００８９】
図１０を参照すると、本発明の一実施例に係るＣＡＥのＲｅｄｕｃｔｉｏｎ−Ａ段階は、図５のエンコーダー（ｅｎｃｏｄｅｒ）とデコーダー（ｄｅｃｏｄｅｒ）でそれぞれ遂行され得る。換言すると、図５のエンコーダーでは図１０のエンコーダーＲｅｄｕｃｔｉｏｎ−Ａ段階が遂行され得、図５のデコーダーでは図１０のデコーダーＲｅｄｕｃｔｉｏｎ−Ａ段階が遂行され得る。エンコーダーのＲｅｄｕｃｔｉｏｎ−Ａ段階は入力データを３個に分配することができ、最初は１ｘ１  Ｃｏｎｖ．、１ｘ３  Ｃｏｎｖ．および１ｘ３  Ｃｏｎｖ．（ｓｔｒｉｄｅ  ２）を順次遂行することができ、２番目は１ｘ３  Ｃｏｎｖ．（ｓｔｒｉｄｅ  ２）を遂行することができ、３番目は１ｘ３  ＭａｘＰｏｏｌ（ｓｔｒｄｅ  ２）を遂行できる。また、分配して遂行された出力データをすべて合算してＲｅｄｕｃｔｉｏｎ−Ａ段階の出力データを生成することができる。本発明に係るＣＡＥのＲｅｄｕｃｔｉｏｎ−Ａ段階は、前述したＲｅｄｕｃｔｉｏｎ−Ａ段階だけでなく通常のインセプション−レジデュアルネットワーク−ｖ２のＲｅｄｕｃｔｉｏｎ−Ａ段階と同一に遂行され得るが、これに限定されない。デコーダーのＲｅｄｕｃｔｉｏｎ−Ａ段階はエンコーダーのＲｅｄｕｃｔｉｏｎ−Ａ段階と逆に遂行され得る。
【００９０】
図１１は、本発明の一実施例に係るＣＡＥでＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階を説明する概念図である。
【００９１】
図１１を参照すると、本発明の一実施例に係るＣＡＥのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階は、図５のエンコーダー（ｅｎｃｏｄｅｒ）とデコーダー（ｄｅｃｏｄｅｒ）でそれぞれ遂行され得る。換言すると、図５のエンコーダーでは図１１のエンコーダーＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階が遂行され得、図５のデコーダーでは図１１のデコーダーＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階が遂行され得る。エンコーダーのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階は入力データを３個に分配することができ、最初は１ｘ１  Ｃｏｎｖ．、１ｘ７  Ｃｏｎｖ．および１ｘ１  Ｃｏｎｖ．を順次遂行することができ、２番目は１ｘ１  Ｃｏｎｖ．を遂行できる。最初および２番目は合算されて１ｘ１  Ｃｏｎｖ．（ｌｉｎｅａｒ）およびスケーリングされ得、スケーリングされた出力データと３個に分配された入力データのうち、いかなる過程も遂行していない入力データを合算することができる。また、本発明に係るＣＡＥのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階は、前述したＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階だけでなく通常のインセプション−レジデュアルネットワーク−ｖ２のＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階と同一に遂行され得るが、これに限定されない。デコーダーのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階はエンコーダーのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階と逆に遂行され得る。
【００９２】
本発明の一実施例に係るＣＡＥはＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｂ段階のスケーリングの大きさａ、ｂおよびｃを調整することができ、調整を通じて学習を進行させることができる。
【００９３】
図１２は、本発明の一実施例に係るＣＡＥでＲｅｄｕｃｔｉｏｎ−Ｂ段階を説明する概念図である。
【００９４】
図１２を参照すると、本発明の一実施例に係るＣＡＥのＲｅｄｕｃｔｉｏｎ−Ｂ段階は、図５のエンコーダー（ｅｎｃｏｄｅｒ）とデコーダー（ｄｅｃｏｄｅｒ）でそれぞれ遂行され得る。換言すると、図５のエンコーダーでは図１２のエンコーダーＲｅｄｕｃｔｉｏｎ−Ｂ段階が遂行され得、図５のデコーダーでは図１２のデコーダーＲｅｄｕｃｔｉｏｎ−Ｂ段階が遂行され得る。エンコーダーのＲｅｄｕｃｔｉｏｎ−Ｂ段階は入力データを４個に分配することができ、最初は１ｘ１  Ｃｏｎｖ．、１ｘ３  Ｃｏｎｖ．および１ｘ３  Ｃｏｎｖ．（ｓｔｒｉｄｅ  ２）を順次遂行することができ、２番目は１ｘ３  Ｃｏｎｖ．および１ｘ３  Ｃｏｎｖ．（ｓｔｒｉｄｅ  ２）を遂行することができ、３番目は１ｘ１  Ｃｏｎｖ．および１ｘ３  Ｃｏｎｖ．（ｓｔｒｉｄｅ  ２）を遂行することができ、４番目は１ｘ３  ＭａｘＰｏｏｌ（ｓｔｒｄｅ  ２）を遂行できる。また、分配して遂行された出力データをすべて合算してＲｅｄｕｃｔｉｏｎ−Ｂ段階の出力データを生成することができる。本発明に係るＣＡＥのＲｅｄｕｃｔｉｏｎ−Ｂ段階は、前述したＲｅｄｕｃｔｉｏｎ−Ｂ段階だけでなく通常のインセプション−レジデュアルネットワーク−ｖ２のＲｅｄｕｃｔｉｏｎ−Ｂ段階と同一に遂行され得るが、これに限定されない。デコーダーのＲｅｄｕｃｔｉｏｎ−Ｂ段階はエンコーダーのＲｅｄｕｃｔｉｏｎ−Ｂ段階と逆に遂行され得る。
【００９５】
図１３は、本発明の一実施例に係るＣＡＥでＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階を説明する概念図である。
【００９６】
図１３を参照すると、本発明の一実施例に係るＣＡＥのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階は、図５のエンコーダー（ｅｎｃｏｄｅｒ）とデコーダー（ｄｅｃｏｄｅｒ）でそれぞれ遂行され得る。換言すると、図５のエンコーダーでは図１３のエンコーダーＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階が遂行され得、図５のデコーダーでは図１３のデコーダーＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階が遂行され得る。エンコーダーのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階は入力データを３個に分配することができ、最初は１ｘ１  Ｃｏｎｖ．、１ｘ３  Ｃｏｎｖ．および１ｘ１  Ｃｏｎｖ．を順次遂行することができ、２番目は１ｘ１  Ｃｏｎｖ．を遂行できる。最初および２番目は合算されて１ｘ１  Ｃｏｎｖ．（ｌｉｎｅａｒ）およびスケーリングされ得。スケーリングされた出力データと３個に分配された入力データのうち、いかなる過程も遂行していない入力データを合算することができる。また、本発明に係るＣＡＥのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階は、前述したＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階だけでなく通常のインセプション−レジデュアルネットワーク−ｖ２のＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階と同一に遂行され得るが、これに限定されない。デコーダーのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階はエンコーダーのＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階と逆に遂行され得る。
【００９７】
本発明の一実施例に係るＣＡＥはＩｎｃｅｐｔｉｏｎ−ｒｅｓｎｅｔ−Ｃ段階のスケーリングの大きさａ、ｂおよびｃを調整することができ、調整を通じて学習を進行させることができる。
【００９８】
図１４は、本発明の一実施例に係るＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法に対するフローチャートである。
【００９９】
図１４を参照すると、正常トラフィックによる文字列をイメージに変換する段階Ｓ１００、変換したイメージをＣＡＥを利用して学習する段階Ｓ１１０および学習したＣＡＥにターゲットトラフィックを入力して異常トラフィックを探知する段階Ｓ１２０を含むことができる。
【０１００】
前記イメージに変換する段階Ｓ１００は、前記正常トラフィックをＵＴＦ−８（Ｕｎｉｃｏｄｅ−Ｔｒａｎｓｆｏｒｍａｔｉｏｎ−Ｆｏｒｍａｔ−８）形式で獲得する段階および獲得した正常トラフィックによる文字列を１６進数に変換する段階を含むことができる。
【０１０１】
前記イメージに変換する段階Ｓ１００は、前記正常トラフィックによる文字列を逆順に変換する段階、逆順に変換した文字列を構成する文字をベクトルに変換する段階およびベクトルに変換した文字列をイメージに変換する段階を含むことができる。
【０１０２】
その他に前記イメージに変換する段階Ｓ１００は図１〜図３に係る説明を参照することができる。
【０１０３】
前記ＣＡＥは、Ｉｎｃｅｐｔｉｏｎ  Ｒｅｓｎｅｔ  Ｖ２基盤で構成されたオートエンコーダー（Ａｕｔｏｅｎｃｏｄｅｒ）であり得る。さらに詳細には、ＣＡＥは図４〜図１３に係る説明を参照することができる。
【０１０４】
前記異常トラフィックを探知する段階Ｓ１２０は、前記ターゲットトラフィックをイメージに変換する段階およびイメージに変換したターゲットトラフィックを前記学習したＣＡＥに入力して獲得した出力に対してＢＣＥ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｅｎｔｒｏｐｙ）またはＢＣＶ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｖａｒｅｎｔｒｏｐｙ）を評価する段階を含むことができる。
【０１０５】
前記ＢＣＥは、下記の数式１で定義され得る。
【０１０６】
【数７】
2020102178.tif 000017
【０１０７】
2020102178.tif 000018
【０１０８】
一般的に文字基盤のイメージ変換において、各チャネル（それぞれの文字）は殆ど０を要素として有するベクトルに変換されるので、非常に少ない数の１を有する。したがって、正常なトラフィックに対してＢＣＥを算出すると、出力イメージを構成するピクセル値の殆どは０に近い値を有することができる。
【０１０９】
したがって、本発明の一実施例によると、前記数式１によるｎ番目のサンプルのＢＣＥ値を算出し、算出したＢＣＥ値をしきい値（ｔｈｒｅｓｈｏｌｄ  ｖａｌｕｅ）と比較して異常トラフィックであるかどうかを決定することができる。具体的には、算出したＢＣＥ値がしきい値より大きい場合には入力されたターゲットトラフィックを異常トラフィックとして探知することができる。
【０１１０】
この時、ＢＣＥを評価して異常トラフィックを探知するためには、ＢＣＥ基盤で定義される費用関数を使用してＣＡＥを学習することが必要となり得る。
【０１１１】
ＢＣＥ基盤で定義される費用関数は下記の数式２の通りである。
【０１１２】
【数８】
2020102178.tif 000019
【０１１３】
数式２を参照すると、数式２による費用関数は、学習されるデータサンプルの数をＮと定義する時、データサンプルＮ個に対してそれぞれ数式１を算出して足してＮで割ることによって、ｔｏｔａｌ  ＢＣＥを算出したものと解釈され得る。
【０１１４】
したがって、前記変換したイメージをＣＡＥを利用して学習する段階は、前記ＢＣＥによって定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含むことができる。
【０１１５】
一方、異常トラフィックの探知に使用する数式１を再び参照すると、出力ピクセル値に対してｌｏｇを取った後に平均したものであって、異常トラフィックは多様な値を有するという特性を十分に反映できない問題が存在し得る。この時、分散は平均を基準として値がどれほど広く分布しているかを測定する統計値であるので、分散を活用すれば検出性能が向上する可能性が高い。
【０１１６】
具体的には、本発明で提案する分散を基準として異常トラフィックを探知する場合による評価関数を前記ＢＣＶ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｖａｌｅｎｔｒｏｐｙ）と呼称することができ、この時、探知しようとするｎ番目のデータサンプルに対するＢＣＶは下記の数式３のように定義され得る。
【０１１７】
【数９】
2020102178.tif 000020
数式３でＢＣＥｎは数式１による算出値を意味し得、その他の変数は数式１と２による説明を参照することができる。
【０１１８】
本発明の一実施例で提案するＢＣＶを利用する場合、数式１のようにピクセル値にｌｏｇを取った後に分散値を算出するため、異常トラフィックが多様な値を有するという特性を十分に反映することができるようになる。
【０１１９】
一方、数式３による評価関数を使用して異常トラフィックを探知する場合、ＣＡＥの学習に使用する費用関数は数式３によるＢＣＶを反映する必要がある。
【０１２０】
具体的には、前記ＢＣＥに対するｔｏｔａｌ  ＢＣＥと前記ＢＣＶに対するｔｏｔａｌ  ＢＣＶを線形結合して定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含むことができる。この時、ＢＣＥとＢＣＶを活用した費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）は下記の数式４の通りである。
【０１２１】
【数１０】
2020102178.tif 000021
【０１２２】
前記数式４でｔｏｔａｌ  ＢＣＥは数式２を参照することができ、α、βは正の定数であり、ｔｏｔａｌ  ＢＣＶは下記の数式５のように定義され得る。
【０１２３】
【数１１】
2020102178.tif 000022
【０１２４】
数式５を参照すると、ｔｏｔａｌ  ＢＣＶは数式３によるＢＣＶをデータサンプルＮ個に対して遂行して足し、Ｎで割った値と定義され得る。
【０１２５】
図１５は、本発明の一実施例に係るＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置に従う構成図である。
【０１２６】
図１５を参照すると、ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置１００は、少なくとも一つのプロセッサ（ｐｒｏｃｅｓｓｏｒ、１１０）および前記少なくとも一つのプロセッサ１１０が少なくとも一つの段階を遂行するように指示する命令語（ｉｓｎｔｒｕｃｔｉｏｎｓ）を保存するメモリ（ｍｅｍｏｒｙ、１２０）を含むことができる。
【０１２７】
ここで、少なくとも一つのプロセッサ１１０は中央処理装置（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ、ＣＰＵ）、グラフィック処理装置（ｇｒａｐｈｉｃｓ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ、ＧＰＵ）、または本発明の実施例に係る方法が遂行される専用のプロセッサを意味し得る。メモリ１２０および保存装置１６０のそれぞれは、揮発性保存媒体および不揮発性保存媒体のうち少なくとも一つで構成され得る。例えば、メモリ１２０は読み込み専用メモリ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ、ＲＯＭ）およびランダムアクセスメモリ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ、ＲＡＭ）のうち少なくとも一つで構成され得る。
【０１２８】
また、ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置１００は、無線ネットワークを通じて通信を遂行する送受信装置（ｔｒａｎｓｃｅｉｖｅｒ）１３０を含むことができる。また、ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置１００は、入力インタフェース装置１４０、出力インタフェース装置１５０、保存装置１６０等をさらに含むことができる。ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置１００に含まれたそれぞれの構成要素は、バス（ｂｕｓ）１７０により連結されて通信を遂行できる。
【０１２９】
前記少なくとも一つの段階は、正常トラフィックによる文字列をイメージに変換する段階、変換したイメージをＣＡＥを利用して学習する段階および学習したＣＡＥにターゲットトラフィックを入力して異常トラフィックを探知する段階を含むことができる。
【０１３０】
前記異常トラフィックを探知する段階は、前記ターゲットトラフィックをイメージに変換する段階およびイメージに変換したターゲットトラフィックを前記学習したＣＡＥに入力して獲得した出力に対してＢＣＥ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｅｎｔｒｏｐｙ）またはＢＣＶ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｖａｒｅｎｔｒｏｐｙ）を評価する段階を含むことができる。
【０１３１】
前記イメージに変換する段階は、前記正常トラフィックをＵＴＦ−８（Ｕｎｉｃｏｄｅ−Ｔｒａｎｓｆｏｒｍａｔｉｏｎ−Ｆｏｒｍａｔ−８）形式で獲得する段階および獲得した正常トラフィックによる文字列を１６進数に変換する段階を含むことができる。
【０１３２】
前記イメージに変換する段階は、前記正常トラフィックによる文字列を逆順に変換する段階、逆順に変換した文字列を構成する文字をベクトルに変換する段階およびベクトルに変換した文字列をイメージに変換する段階を含むことができる。
【０１３３】
前記ＣＡＥは、Ｉｎｃｅｐｔｉｏｎ  Ｒｅｓｎｅｔ  Ｖ２基盤で構成されたオートエンコーダー（Ａｕｔｏｅｎｃｏｄｅｒ）であり得る。
【０１３４】
前記変換したイメージをＣＡＥを利用して学習する段階は、前記ＢＣＥに基づいて定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含むことができる。
【０１３５】
2020102178.tif 000023
【０１３６】
【数１２】
2020102178.tif 000024
【０１３７】
2020102178.tif 000025
【０１３８】
【数１３】
2020102178.tif 000026
【０１３９】
前記変換したイメージをＣＡＥを利用して学習する段階は、前記ＢＣＥによるｔｏｔａｌ  ＢＣＥと前記ＢＣＶによるｔｏｔａｌ  ＢＣＶを線形結合して定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含むことができる。
【０１４０】
前記費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）は、下記数式で定義され得る。
【０１４１】
【数１４】
2020102178.tif 000027
【０１４２】
ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置１００は、例えば、通信可能なデスクトップコンピュータ（ｄｅｓｋｔｏｐ  ｃｏｍｐｕｔｅｒ）、ラップトップコンピュータ（ｌａｐｔｏｐ  ｃｏｍｐｕｔｅｒ）、ノートパソコン（ｎｏｔｅｂｏｏｋ）、スマートフォン（ｓｍａｒｔ  ｐｈｏｎｅ）、タブレットＰＣ（ｔａｂｌｅｔ  ＰＣ）、モバイルフォン（ｍｏｂｉｌｅ  ｐｈｏｎｅ）、スマートウォッチ（ｓｍａｒｔ  ｗａｔｃｈ）、スマートグラス（ｓｍａｒｔ  ｇｌａｓｓ）、ｅ−ｂｏｏｋリーダー、ＰＭＰ（ｐｏｒｔａｂｌｅ  ｍｕｌｔｉｍｅｄｉａ  ｐｌａｙｅｒ）、携帯用ゲーム機、ナビゲーション（ｎａｖｉｇａｔｉｏｎ）装置、デジタルカメラ（ｄｉｇｉｔａｌ  ｃａｍｅｒａ）、ＤＭＢ（ｄｉｇｉｔａｌ  ｍｕｌｔｉｍｅｄｉａ  ｂｒｏａｄｃａｓｔｉｎｇ）再生機、デジタル音声録音機（ｄｉｇｉｔａｌ  ａｕｄｉｏ  ｒｅｃｏｒｄｅｒ）、デジタル音声再生機（ｄｉｇｉｔａｌ  ａｕｄｉｏ  ｐｌａｙｅｒ）、デジタル動映像録画機（ｄｉｇｉｔａｌ  ｖｉｄｅｏ  ｒｅｃｏｒｄｅｒ）、デジタル動映像再生機（ｄｉｇｉｔａｌ  ｖｉｄｅｏ  ｐｌａｙｅｒ）、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等であり得る。
【０１４３】
図１６〜図１８は、本発明の一実施例に係るＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法および装置に対する実験結果を示したグラフである。
【０１４４】
実験のための条件として、２０１４年２／３分期にＷＡＰＰＬＥが攻撃として探知したデータのうち、正常要請（ｒｅｑｕｅｓｔ）と判定した約６６万件を正常トラフィックに対する学習データとして使用した。ここで使用した学習データを本発明の一実施例に係るＣＡＥに対する比較社の学習データとして使用してＣＡＥを学習した。
【０１４５】
また、学習に使用されていない２０１４年２／３分期の約２１万件に対するデータをターゲットトラフィックに対するデータとして使用した。ここで、ターゲットトラフィックには約１６万５千件の正常トラフィックと４万８千件の異常トラフィックが含まれている。
【０１４６】
各要請メッセージに対してイメージに変換したデータに対する異常トラフィック探知結果を分析したし、この時、費用関数の係数αは０、βは１として適用した。
【０１４７】
図１６を参照すると、正常データ（ｎｏｒｍａｌ）と異常データ（ａｎｏｍａｌｏｕｓ）に対してＢＣＥとＢＣＶを使用した時に平均（ｍｅａｎ）と標準偏差（ＳＴＤ）に対するｅｍｐｉｒｉｃａｌ  ＣＤＦ（実証的累積分布関数）を算出した結果グラフを確認することができる。
【０１４８】
図１７を参照すると、全体のサンプルデータを一回り学習したものを１ｅｐｏｃｈとした時、ｅｐｏｃｈの数が累積されるにつれて誤って判断する比率（ｆａｌｓｅ  ｐｏｓｉｔｉｖｅ  ｒａｔｅ、ＦＰＲ）が減少するのを確認することができる。この時、正しく判断する比率（Ｔｒｕｅ  ｐｏｓｉｔｉｖｅ  ｒａｔｅ、ＴＰＲ）は０．９９である。
【０１４９】
図１８を参照すると、ＢＣＥとＢＣＶのそれぞれに対して全体のデータサンプルの学習によるＡｒｅａ  Ｕｎｄｅｒ  Ｃｕｒｖｅ（ＡＵＣ）性能を図示したグラフを確認することができる。学習データが多いほど検出性能が向上することを確認することができる。
【０１５０】
本発明に係る方法は、多様なコンピュータ手段を通じて遂行され得るプログラム命令の形態で具現されてコンピュータ読み込み可能媒体に記録され得る。コンピュータ読み込み可能媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含むことができる。コンピュータ読み込み可能媒体に記録されるプログラム命令は、本発明のために特別に設計されて構成されたものであるかコンピュータソフトウェア当業者に公知とされていて使用可能なものであってもよい。
【０１５１】
コンピュータ読み込み可能媒体の例には、ロム（ＲＯＭ）、ラム（ＲＡＭ）、フラッシュメモリ（ｆｌａｓｈ  ｍｅｍｏｒｙ）等のように、プログラム命令を保存し、遂行するように特別に構成されたハードウェア装置が含まれ得る。プログラム命令の例には、コンパイラ（ｃｏｍｐｉｌｅｒ）により作られるような機械語コードだけでなく、インタープリタ（ｉｎｔｅｒｐｒｅｔｅｒ）等を使用してコンピュータによって実行され得る高級言語コードを含むことができる。前述したハードウェア装置は本発明の動作を遂行するために、少なくとも一つのソフトウェアモジュールとして作動するように構成され得、その逆も同様である。
【０１５２】
また、前述した方法または装置はその構成や機能の全部または一部が結合されて具現されるか、分離されて具現され得る。
【０１５３】
前記では本発明の好ましい実施例を参照して説明したが、該当技術分野の熟練した当業者は、下記の特許請求の範囲に記載された本発明の思想および領域から逸脱しない範囲内で、本発明を多様に修正および変更できることが理解できるはずである。
【図１】
2020102178.tif 000038
【図２】
2020102178.tif 000039
【図３】
2020102178.tif 000040
【図４】
2020102178.tif 000041
【図５】
2020102178.tif 000042
【図６】
2020102178.tif 000043
【図７】
2020102178.tif 000044
【図８】
2020102178.tif 000045
【図９】
2020102178.tif 000046
【図１０】
2020102178.tif 000047
【図１１】
2020102178.tif 000048
【図１２】
2020102178.tif 000049
【図１３】
2020102178.tif 000050
【図１４】
2020102178.tif 000051
【図１５】
2020102178.tif 000052
【図１６】
2020102178.tif 000053
【図１７】
2020102178.tif 000054
【図１８】
2020102178.tif 000055
【手続補正書】
【提出日】令和2年5月12日(2020.5.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する方法であって、
正常トラフィックによる文字列をイメージに変換する段階；
変換したイメージをＣＡＥを利用して学習する段階；および
学習したＣＡＥにターゲットトラフィックを入力して異常トラフィックを探知する段階を含み、
前記異常トラフィックを探知する段階は、
前記ターゲットトラフィックをイメージに変換する段階；および
イメージに変換したターゲットトラフィックを前記学習したＣＡＥに入力して獲得した出力に対してＢＣＥ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｅｎｔｒｏｐｙ）またはＢＣＶ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｖａｒｅｎｔｒｏｐｙ）を評価する段階を含み、
前記変換したイメージをＣＡＥを利用して学習する段階は、
前記ＢＣＥによるｔｏｔａｌ  ＢＣＥと前記ＢＣＶによるｔｏｔａｌ  ＢＣＶを線形結合して定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含む、異常なトラフィックを探知する方法。
【請求項２】
前記イメージに変換する段階は、
前記正常トラフィックをＵＴＦ−８（Ｕｎｉｃｏｄｅ−Ｔｒａｎｓｆｏｒｍａｔｉｏｎ−Ｆｏｒｍａｔ−８）形式で獲得する段階；および
獲得した正常トラフィックによる文字列を１６進数に変換する段階を含む、請求項１に記載の異常なトラフィックを探知する方法。
【請求項３】
前記イメージに変換する段階は、
前記正常トラフィックによる文字列を逆順に変換する段階；
逆順に変換した文字列を構成する文字をベクトルに変換する段階；および
ベクトルに変換した文字列をイメージに変換する段階を含む、請求項１に記載の異常なトラフィックを探知する方法。
【請求項４】
前記ＣＡＥは、
Ｉｎｃｅｐｔｉｏｎ  Ｒｅｓｎｅｔ  Ｖ２基盤で構成されたオートエンコーダー（Ａｕｔｏｅｎｃｏｄｅｒ）である、請求項１に記載の異常なトラフィックを探知する方法。
【請求項５】
前記変換したイメージをＣＡＥを利用して学習する段階は、
前記ＢＣＥに基づいて定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含む、請求項１に記載の異常なトラフィックを探知する方法。
【請求項６】
2020102178.tif 000056
【数１】
2020102178.tif 000057
で定義される、請求項１に記載の異常なトラフィックを探知する方法。
【請求項７】
2020102178.tif 000058
【数２】
2020102178.tif 000059
で定義される、請求項１に記載の異常なトラフィックを探知する方法。
【請求項８】
前記費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）は、数式
【数３】
2020102178.tif 000060
で定義される、請求項１に記載の異常なトラフィックを探知する方法。
【請求項９】
ＣＡＥ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ＡｕｔｏＥｎｃｏｄｅｒ）基盤で異常なトラフィックを探知する装置であって、
少なくとも一つのプロセッサ（ｐｒｏｃｅｓｓｏｒ）；および
前記少なくとも一つのプロセッサが少なくとも一つの段階を遂行するように指示する命令語（ｉｓｎｔｒｕｃｔｉｏｎｓ）を保存するメモリ（ｍｅｍｏｒｙ）を含み、
前記少なくとも一つの段階は、
正常トラフィックによる文字列をイメージに変換する段階；
変換したイメージをＣＡＥを利用して学習する段階；および
学習したＣＡＥにターゲットトラフィックを入力して異常トラフィックを探知する段階を含み、
前記異常トラフィックを探知する段階は、
前記ターゲットトラフィックをイメージに変換する段階；および
イメージに変換したターゲットトラフィックを前記学習したＣＡＥに入力して獲得した出力に対してＢＣＥ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｅｎｔｒｏｐｙ）またはＢＣＶ（Ｂｉｎａｒｙ  Ｃｒｏｓｓ  Ｖａｒｅｎｔｒｏｐｙ）を評価する段階を含み、
前記変換したイメージをＣＡＥを利用して学習する段階は、
前記ＢＣＥによるｔｏｔａｌ  ＢＣＥと前記ＢＣＶによるｔｏｔａｌ  ＢＣＶを線形結合して定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含む、異常なトラフィックを探知する装置。
【請求項１０】
前記イメージに変換する段階は、
前記正常トラフィックをＵＴＦ−８（Ｕｎｉｃｏｄｅ−Ｔｒａｎｓｆｏｒｍａｔｉｏｎ−Ｆｏｒｍａｔ−８）形式で獲得する段階；および
獲得した正常トラフィックによる文字列を１６進数に変換する段階を含む、請求項９に記載の異常なトラフィックを探知する装置。
【請求項１１】
前記イメージに変換する段階は、
前記正常トラフィックによる文字列を逆順に変換する段階；
逆順に変換した文字列を構成する文字をベクトルに変換する段階；および
ベクトルに変換した文字列をイメージに変換する段階を含む、請求項９に記載の異常なトラフィックを探知する装置。
【請求項１２】
前記ＣＡＥは、
Ｉｎｃｅｐｔｉｏｎ  Ｒｅｓｎｅｔ  Ｖ２基盤で構成されたオートエンコーダー（Ａｕｔｏｅｎｃｏｄｅｒ）である、請求項９に記載の異常なトラフィックを探知する装置。
【請求項１３】
前記変換したイメージをＣＡＥを利用して学習する段階は、
前記ＢＣＥに基づいて定義される費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）を最小化するように、前記ＣＡＥのパラメーターを決定する段階を含む、請求項９に記載の異常なトラフィックを探知する装置。
【請求項１４】
2020102178.tif 000061
【数４】
2020102178.tif 000062
で定義される、請求項９に記載の異常なトラフィックを探知する装置。
【請求項１５】
2020102178.tif 000063
【数５】
2020102178.tif 000064
で定義される、請求項９に記載の異常なトラフィックを探知する装置。
【請求項１６】
前記費用関数（Ｃｏｓｔ  ｆｕｎｃｔｉｏｎ）は、数式
【数６】
2020102178.tif 000065
で定義される、請求項９に記載の異常なトラフィックを探知する装置。
【外国語明細書】
2020102178000001.pdf