JP6608981B2 - 異常セッション感知方法 - Google Patents

異常セッション感知方法 Download PDF

Info

Publication number
JP6608981B2
JP6608981B2 JP2018041354A JP2018041354A JP6608981B2 JP 6608981 B2 JP6608981 B2 JP 6608981B2 JP 2018041354 A JP2018041354 A JP 2018041354A JP 2018041354 A JP2018041354 A JP 2018041354A JP 6608981 B2 JP6608981 B2 JP 6608981B2
Authority
JP
Japan
Prior art keywords
neural network
lstm
expression vector
session
gru
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
JP2018041354A
Other languages
English (en)
Other versions
JP2019061647A (ja
Inventor
サンギュ シム
ドクス キム
ソクウ リ
スンヨン パク
Original Assignee
ペンタ・セキュリティ・システムズ・インコーポレーテッド
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 ペンタ・セキュリティ・システムズ・インコーポレーテッド filed Critical ペンタ・セキュリティ・システムズ・インコーポレーテッド
Publication of JP2019061647A publication Critical patent/JP2019061647A/ja
Application granted granted Critical
Publication of JP6608981B2 publication Critical patent/JP6608981B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2263Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions

Description

本発明はサーバーの異常セッションを感知する方法に関するもので、コンボリューショナルニューラルネットワークおよびLSTMニューラルネットワークを利用して異常セッションを感知する方法に関するものである。
一般的に、サーバーがクライアントにサービスを提供する間、クライアントはサーバーに要請メッセージ(ex. http reqeust)を伝送し、サーバーは要請に応答して応答メッセージ(ex. http response)を生成する。サービス提供過程で発生した要請メッセージと応答メッセージを時間順に整列したものをセッション(ex. http session)と言うことができる。
もし、サーバーの動作にエラーが発生したり、攻撃者が他の使用者のログイン情報を奪取して接続するようになると、要請メッセージと応答メッセージの配列特徴が通常とは異なるようになり、正常なセッションとは異なる特徴を有する異常セッションが発生する。サービスエラーを迅速に復元するためには、セッションをモニタリングして異常セッションを感知できる技術が要求される。その一方、自動的にデータの特徴を抽出してカテゴリー化する技術としてマシンラーニングが脚光を浴びている。
マシンラーニング(machine learning;機械学習)とは、人工知能(Artificial Intelligence:AI)の一種であって、データを基盤としてコンピュータが自ら学習した内容に基づいて、回帰、分類、群集化などの予測作業を行うことをいう。
ディープラーニング(deep learning)は人の考え方をコンピュータに教える機械学習の一分野であり、多様な非線形変換技法の組み合わせを通じて高い水準の抽象化(abstractions、多量のデータや複雑な資料の中から核心的な内容または機能を要約する作業)を試みる機械学習(machine learning)アルゴリズムの集合と定義することができる。
ディープラーニングの構造は、人工ニューラルネットワーク(ANN、artificial neural networks)に基づいて設計された概念である。人工ニューラルネットワークは、仮想のニューロンを数学的にモデリングした後にシミュレーションして、人間の脳のような学習能力を持たせようとするアルゴリズムであって、主にパターン認識に多く用いられる。ディープラーニングで利用する人工ニューラルネットワークモデルは、線形フィッテイング(linear fitting)と非線形変換(nonlinear transformation or activation)を繰り返して積み上げた構造を有する。ディープラーニングで用いるニューラルネットワークモデルは、ディープニューラルネットワーク(Deep Neural Network、DNN)、コンボリューショナルニューラルネットワーク(Convolutional Neural Network、CNN)、リカレントニューラルネットワーク(Recurrent Neural Network、RNN)、制限ボルツマンマシン(Restricted Boltzmann Machine、RBM)、ディープ信頼ニューラルネットワーク(Deep Belief Network、DBN)、ディープQ−ネットワーク(Deep Q−Networks)等が挙げられる。
本発明は、人工ニューラルネットワークを利用して異常セッションを感知する方法を提供することにその目的がある。
一側面において、サーバーがクライアントから受信する要請メッセージと、前記サーバーが生成する応答メッセージを含むセッションの異常可否を感知する方法において、前記セッションに含まれたメッセージのうち少なくとも一部を行列形態のデータに変換する段階;コンボリューショナルニューラルネットワークを利用して前記行列形態のデータを前記行列よりも小さい次元の表現(representation)ベクトルに変換する段階;および前記メッセージから獲得された表現ベクトルを、前記メッセージの発生順に沿って羅列することによって第1表現ベクトルシーケンスを構成し、LSTMニューラルネットワークを利用して前記第1表現ベクトルシーケンスを分析することによって、前記セッションの異常可否を判断する段階;を含む異常セッション感知方法が開示される。
前記メッセージのうち少なくとも一部を行列形態のデータに変換する段階は、前記メッセージのそれぞれに含まれた文字をワンホットベクトル(one−hot vector)に変換することによって、前記メッセージのそれぞれを行列形態のデータに変換することができる。
前記LSTMニューラルネットワークは、複数のLSTMレイヤーを含むLSTMエンコーダおよび前記LSTMエンコーダと対称的な構造を有するLSTMデコーダを含むことができる。
前記LSTMエンコーダは、前記第1表現ベクトルシーケンスに含まれた表現ベクトルの入力を順に受け、あらかじめ定められた大きさの隠れベクトルを出力し、前記LSTMデコーダは、前記隠れベクトルの入力を受けて前記第1表現ベクトルシーケンスに対応する第2表現ベクトルシーケンスを出力することができる。
前記セッションが正常であるか異常であるかを判断する段階は、前記第1表現ベクトルシーケンスと前記第2表現ベクトルシーケンスとの間の差に基づいて、前記セッションが正常であるか異常であるかを判断することができる。
前記LSTMデコーダは、前記第1表現ベクトルシーケンスに含まれる表現ベクトルのそれぞれに対応する推定ベクトルを逆順に出力することによって、前記第2表現ベクトルシーケンスを出力することができる。
前記LSTMニューラルネットワークは、前記第1表現ベクトルシーケンスに含まれた表現ベクトルの入力を順に受け、入力を受けた表現ベクトルから次の順番の表現ベクトルに対する推定ベクトルを出力することができる。
前記セッションの異常可否を判断する段階は、前記LSTMニューラルネットワークが出力した推定ベクトルと前記LSTMニューラルネットワークが入力を受ける表現ベクトルとの間の差から、前記セッションの異常可否を判断することができる。
前記異常セッション感知方法は、前記コンボリューショナルニューラルネットワークおよび前記LSTMニューラルネットワークをトレーニング(training)する段階をさらに含むことができる。
前記異常セッション感知方法は、訓練データを前記コンボリューショナルニューラルネットワークに入力し、前記コンボリューショナルニューラルネットワークの出力を、前記コンボリューショナルニューラルネットワークに対称的な構造を有する対称ニューラルネットワークに入力させ、前記対称ニューラルネットワークの出力と前記訓練データとの間の差に基づいて前記コンボリューショナルニューラルネットワークで使用する加重値パラメーターを更新することによって、前記コンボリューショナルニューラルネットワークをトレーニングすることができる。
前記LSTMニューラルネットワークは、複数のLSTMレイヤーを含むLSTMエンコーダおよび前記LSTMエンコーダと対称的な構造を有するLSTMデコーダを含み、前記異常セッション感知方法は、訓練データを前記LSTMエンコーダに入力し、前記LSTMエンコーダから出力される隠れベクトルおよび前記訓練データを前記LSTMデコーダに入力し、前記LSTMデコーダの出力と前記訓練データとの間の差に基づいて前記LSTMエンコーダおよび前記LSTMデコーダで使用する加重値パラメーターを更新することによって、前記LSTMニューラルネットワークをトレーニングすることができる。
他の側面において、前記セッションに含まれたメッセージのうち少なくとも一部を行列形態のデータに変換する段階;コンボリューショナルニューラルネットワークを利用して前記行列形態のデータを前記行列よりも小さい次元の表現ベクトルに変換する段階;および前記メッセージから獲得された表現ベクトルを、前記メッセージの発生順に沿って羅列することによって第1表現ベクトルシーケンスを構成し、GRUニューラルネットワークを利用して前記第1表現ベクトルシーケンスを分析することによって、前記セッションの異常可否を判断する段階;を含む異常セッション感知方法が開示される。
前記GRUニューラルネットワークは、複数のGRUレイヤーを含むGRUエンコーダおよび前記GRUエンコーダと対称的な構造を有するGRUデコーダを含むことができる。
前記GRUエンコーダは、前記第1表現ベクトルシーケンスに含まれた表現ベクトルの入力を順に受け、あらかじめ定められた大きさの隠れ(hidden)ベクトルを出力し、前記GRUデコーダは、前記隠れベクトルの入力を受けて前記第1表現ベクトルシーケンスに対応する第2表現ベクトルシーケンスを出力することができる。
前記セッションが正常であるか異常であるかを判断する段階は、前記第1表現ベクトルシーケンスと前記第2表現ベクトルシーケンスとの間の差に基づいて前記セッションが正常であるか異常であるかを判断することができる。
前記GRUデコーダは、前記第1表現ベクトルシーケンスに含まれる表現ベクトルのそれぞれに対応する推定ベクトルを逆順に出力することによって、前記第2表現ベクトルシーケンスを出力することができる。
前記GRUニューラルネットワークは、前記第1表現ベクトルシーケンスに含まれた表現ベクトルの入力を順に受け、入力を受けた表現ベクトルから次の順番の表現ベクトルに対する予測値を出力することができる。
前記セッションの異常可否を判断する段階は、前記GRUニューラルネットワークが出力した予測値と前記GRUニューラルネットワークが入力を受ける表現ベクトルとの間の差から、前記セッションの異常可否を判断することができる。
開示された実施例によると、コンボリューショナルニューラルネットワークを利用してセッションに含まれたメッセージを低い次元の表現ベクトルに変換することができる。また、LSTMまたはGRUニューラルネットワークを利用してセッションに含まれた表現ベクトルシーケンスを分析し、これからセッションの異常可否を判断することができる。実施例によると、受動的な作業が介入されることなく人工ニューラルネットワークを利用してセッションの異常可否を容易に判断することができる。
例示的な実施例に係る装置を示したブロック図。 本発明の例示的な実施例に係る装置で遂行される異常セッション感知方法を示したフローチャート。 セッションの一例を示した概念図。 プロセッサがメッセージの文字列を行列形態のデータに変換することを例示的に示した概念図。 コンボリューショナルニューラルネットワークを例示的に示した概念図。 コンボリューション演算を例示的に示した概念図。 プロセッサが図6に示したイメージからコンボリューションイメージを抽出したことを示した概念図。 図5に示したコンボリューションおよびプーリングレイヤーの動作を示した概念図。 LSTMニューラルネットワークを例示的に示した概念図。 LSTMレイヤーの構成を例示的に示した概念図。 LSTMエンコーダ動作方式を示した概念図。 LSTMデコーダの動作方式を示した概念図。 LSTMニューラルネットワークが直ちに推定ベクトルを出力する例を示した概念図。 GRUニューラルネットワークを例示的に示した概念図。 GRUレイヤーの構成を例示的に示した概念図。 本発明の例示的な実施例に係る装置100で遂行される異常セッション感知方法の変形例を示したフローチャート。 コンボリューショナルニューラルネットワークのトレーニング過程を示した概念図。
本発明は多様な変更を加えることができ、多様な実施例を有することができるところ、特定の実施例を図面に例示し、詳細な説明に詳細に説明する。しかし、これは本発明を特定の実施形態に限定するためのものではなく、本発明の思想および技術範囲に含まれるすべての変更、均等物ないし代替物を含むものと理解されるべきである。各図面の説明において、類似の参照符号は類似の構成要素に付与した。
第1、第2、A、Bなどの用語は多様な構成要素の説明に使われ得るが、前記構成要素は前記用語によって限定されてはならない。前記用語は一つの構成要素を別の構成要素から区別する目的でのみ使われる。例えば、本発明の権利範囲を逸脱することなく、かつ第1構成要素は第2構成要素と命名され得、同様に第2構成要素も第1構成要素と命名され得る。「および/または」という用語は、複数の関連して記載された項目の組み合わせまたは複数の関連して記載された項目中のいずれかの項目を含む。
ある構成要素が別の構成要素に「連結されて」いるとか「接続されて」いると言及された時には、その他の構成要素に直接的に連結されているかまたは接続されていることもあり得るが、中間に他の構成要素が存在することもあり得ると理解されるべきである。反面、ある構成要素が他の構成要素に「直接連結されて」いるとか「直接接続されて」いると言及された時には、中間に他の構成要素が存在しないものと理解されるべきである。
本出願で使った用語は単に特定の実施例を説明するために使われたものであって、本発明を限定しようとする意図ではない。単数の表現は文脈上明白に異なることを意味しない限り、複数の表現を含む。本出願において、「含む」または「有する」などの用語は、明細書上に記載された特徴、数字、段階、動作、構成要素、部品またはこれらを組み合わせたものが存在することを指定するためのものであり、一つまたはそれ以上の別の特徴や数字、段階、動作、構成要素、部品またはこれらを組み合わせたものなどの存在または付加の可能性をあらかじめ排除しないものと理解されるべきである。
別途に定義されない限り、技術的又は科学的な用語を含んでここで使われるすべての用語は、本発明が属する技術分野で通常の知識を有する者によって一般に理解されることと同じ意味を有している。一般に使われる辞書に定義されているような用語は、関連技術の文脈上有する意味と一致する意味を有するものと解釈されるべきであり、本出願で明白に定義しない限り、理想的又は過度に形式的な意味に解釈されない。
以下、本発明に係る好ましい実施例を添付図面を参照して詳細に説明する。
図1は、例示的な実施例に係る装置100を示したブロック図である。
図1の装置100は、サービスを提供するサーバーであってもよく、サーバーと連結されてサーバーのセッションを分析する他の装置であってもよい。
図1を参照すると、例示的な実施例に係る装置100は、少なくとも一つのプロセッサ110、メモリ120および保存装置125等を含むことができる。
プロセッサ110は、メモリ120および/または保存装置125に保存されたプログラム命令(program command)を遂行することができる。プロセッサ110は、中央処理装置(central processing unit;CPU)、グラフィック処理装置(graphics processing unit;GPU)または本発明に係る方法が遂行される専用のプロセッサを意味し得る。メモリ120と保存装置160は、揮発性保存媒体および/または不揮発性保存媒体で構成され得る。例えば、メモリ120は、読み取り専用メモリ(read only memory;ROM)および/またはランダムアクセスメモリ(random access memory;RAM)で構成され得る。
メモリ120は、プロセッサ110を介して実行される少なくとも一つの命令を保存していてもよい。
メモリ120に保存された命令は、プロセッサ110の機械学習によってアップデートされ得る。プロセッサ110は機械学習によってメモリに保存された命令を変更することができる。プロセッサ110が遂行する機械学習は、指導学習方式または非指導学習方式によって行われ得る。しかし、実施例はこれに制限されるものではない。例えば、機械学習は強化学習などの他の方式によって行われてもよい。
図2は、本発明の例示的な実施例に係る装置100で遂行される異常セッション感知方法を示したフローチャートである。
図2を参照すると、S110段階で、プロセッサ110はセッションを構成することができる。プロセッサ110は、クライアントがサーバーに伝送した要請メッセージとサーバーが生成した応答メッセージからセッションを構成することができる。要請メッセージは、http requestを含むことができる。応答メッセージは、http responseを含むことができる。セッションは、http sessionを含むことができる。プロセッサ110は要請メッセージおよび応答メッセージを、生成時点に沿って順に羅列してセッションを構成することができる。
図3は、セッションの一例を示した概念図である。
図3を参照すると、プロセッサ110は要請メッセージおよび応答メッセージを生成時点に沿って順に羅列することによって、セッションを構成することができる。プロセッサ110は要請メッセージおよび応答メッセージのそれぞれに識別子を付与することもできる。プロセッサ110は後述する過程でセッションの特徴を分析することによって、セッションの異常可否を判断することができる。プロセッサ110はセッションの特徴を分析することによって、異常なパターンで要請メッセージと応答メッセージが羅列されたセッションを異常セッションと判断することができる。
再び図2を参照すると、S130段階で、プロセッサ110はセッションに含まれたメッセージのうち少なくとも一部を抽出することができる。例えば、プロセッサ110は、セッションに含まれた要請メッセージおよび応答メッセージのすべてを抽出することができる。他の例として、プロセッサ110はセッションに含まれた要請メッセージのみを抽出することができる。さらに他の例として、プロセッサ110はセッションに含まれた応答メッセージのみを抽出することもできる。
プロセッサ110は抽出したメッセージのそれぞれを行列形態のデータに変換することができる。プロセッサ110はメッセージのそれぞれに含まれた文字をワンホットベクトル(one−hot vector)に変換することができる。
図4は、プロセッサ110がメッセージの文字列を行列形態のデータに変換することを例示的に示した概念図である。
図4を参照すると、プロセッサ110はメッセージに含まれた文字列の最後の文字から逆順で文字のそれぞれをワンホットベクトル(one−hot vector)に変換することができる。プロセッサ110は文字のそれぞれをワンホットベクトルに変換することによって、メッセージの文字列を行列に変換することができる。
ワンホットベクトルは一つの成分のみが1であり、残りの成分は0であるか、すべての成分が0であり得る。ワンホットベクトルで「1」値を有する成分の位置は、ワンホットベクトルが示す文字の種類によって変わり得る。例えば、図4に示した通り、アルファベットのC、F、B、Dのそれぞれに対応するone−hot vectorは、互いに異なる位置の成分が「1」値を有し得る。図4に示した点字のイメージは例示的なものに過ぎず、実施例はこれに制限されるものではない。例えば、ワンホットベクトルの大きさは、図4に示したものよりも大きくてもよい。one−hot vectorは、テキスト集合テキスト合計「abcdefghijklmnopqrstuvwxyz0123456789−、;.!?:”ウォン”/ウォンウォン|_@#$%^&*〜′+−=<>()[]{}」を表現することができる。あるいは多様な文字に対応するために、入力される文字列をUTF−8コードに変換した後、再び16進数の変換を経て「0123456789abcdef」で表現することができる。例えば、このような変化を経た英文字1字は2字の16進数で表現される。
one−hot vectorにおいて、「1」成分の位置はone−hot vectorが示す文字の順序により変わり得る。
文字の種類が総F(0)(ex. 69個(英文字26、数字0−9、new line、33個の特殊文字)の場合、プロセッサ110はそれぞれのメッセージをF(0)×L(0)大きさの行列に変換することができる。もし、メッセージの長さがL(0)より小さければ、不足する表現ベクトルはいずれも0表現ベクトルに変換することができる。他の例として、メッセージの長さがL(0)よりも大きければ、L(0)個の文字のみをワンホットベクトルに変換することができる。
再び図3を参照すると、S140段階で、プロセッサ110はコンボリューショナルニューラルネットワーク(Convolutional neural network)を利用して、行列データを低い次元の表現ベクトルでマッピングすることができる。プロセッサ110はコンボリューショナルニューラルネットワークを利用して、行列データの特性が反映された表現ベクトルを出力することができる。出力された表現ベクトルの次元は、行列データの次元よりも低くてもよい。以下ではコンボリューショナルニューラルネットワークについて説明する。
図5はコンボリューショナルニューラルネットワークを例示的に示した概念図である。
図5を参照すると、コンボリューショナルニューラルネットワークは、少なくとも一つのコンボリューションおよびプーリングレイヤー(convolution & pooling layer)と、少なくとも一つの全体連結レイヤー(fully connected layer)を含むことができる。図5では一つのレイヤーでコンボリューション動作およびプーリング動作が行われる例を示したが、実施例はこれに制限されるものではない。例えば、コンボリューション動作が遂行されるレイヤーとプーリング動作が遂行されるレイヤーが互いに分離されていてもよい。また、コンボリューショナルニューラルネットワークはプーリング動作を遂行しなくてもよい。
コンボリューショナルニューラルネットワークは入力を受けたデータの特徴を抽出し、入力を受けたデータよりもスケールが小さい出力データを生成して出力することができる。コンボリューショナルニューラルネットワークはイメージまたは行列形態のデータの入力を受けることができる。
コンボリューションおよびプーリングレイヤーは行列データの入力を受け、入力を受けた行列データに対してコンボリューション演算を遂行することができる。
図6は、コンボリューション演算を例示的に示した概念図である。
図6を参照すると、プロセッサ110は、カーネルFIを利用して入力イメージOIに対するコンボリューション演算を遂行することができる。カーネルFIは、イメージOIのピクセルの個数よりも小さい大きさの行列であり得る。例示的に、フィルタカーネルFIの(1、1)成分は0であり得る。したがって、コンボリューションを計算する時、カーネルFIの(1、1)成分に対応するイメージOIのピクセルに対して0を乗算してもよい。他の例として、カーネルFIの(2、1)成分は1である。したがって、コンボリューションを計算する時、カーネルFIの(2、1)成分に対応するイメージOIのピクセルに対して1を乗算してもよい。
プロセッサ110はイメージOI上でカーネルFIの位置を変更しながら、イメージOIに対するコンボリューション演算を遂行することができる。そして、プロセッサ110は計算されたコンボリューション値からコンボリューションイメージを出力することができる。
図7は、プロセッサ110が図6に示したイメージOIからコンボリューションイメージを抽出したことを示した概念図である。
図7に示したフィルタカーネルFIが、イメージOI上で動くことができる場合の数が(10−3+1)×(10−3+1)=8×8個であるため、プロセッサ110は8×8個のコンボリューション値を計算することができる。そして、8×8個のコンボリューション値から図6に示したような8×8ピクセルの大きさのコンボリューションイメージを抽出することができる。コンボリューションイメージCIのピクセルの個数は、原本イメージOIよりも小さくなるようになる。プロセッサ110は、カーネルFIを利用することによって、原本イメージの特性が反映されたコンボリューションイメージを抽出することができる。プロセッサ110は、カーネルFIを利用して入力されたイメージOIよりも大きさが小さく、入力されたイメージOIの特性を反映するコンボリューションイメージCIを出力することができる。コンボリューション演算はコンボリューションレイヤーまたはコンボリューションおよびプーリングレイヤーで遂行され得る。
図8は、図5に示したコンボリューションおよびプーリングレイヤーの動作を示した概念図である。
図8では便宜上、コンボリューショナルニューラルネットワークの最初のコンボリューションおよびプーリングレイヤー(Convolution and pooling layer 1)での動作を例示的に示した。図8を参照すると、入力レイヤーはF(0)×L(0)大きさの行列データの入力を受けることができる。入力レイヤーはm×r大きさを有するn個のコンボリューションフィルターを利用してコンボリューション演算を遂行することができる。入力レイヤーはコンボリューション演算を通じてn個の特徴マップ(feature map)を出力することができる。特徴マップのそれぞれの次元はF(0)×L(0)よりも小さくてもよい。
コンボリューションおよびプーリングレイヤー(layer 1)は、コンボリューション演算によって出力された特徴マップのそれぞれに対してプーリング演算を遂行することによって、特徴マップの大きさを減らすことができる。プーリング演算は、特徴マップで隣接したピクセルをマージ(merge)して一つの代表値を獲得する演算であり得る。コンボリューションおよびプーリングレイヤーでプーリング演算によって特徴マップの大きさが減少され得る。
代表値は多様な方法で獲得され得る。例えば、プロセッサ110は特徴マップで互いに隣接したp×q個のピクセルの値のうち最大値を代表値として決定することができる。他の例として、プロセッサ110は特徴マップで互いに隣接したp×q個のピクセルの値の平均値を代表値として決定することができる。
再び図5を参照すると、N個のコンボリューションおよびプーリングレイヤーでコンボリューション演算とプーリング演算が遂行され得る。コンボリューション演算およびプーリング演算が遂行されることによって特徴マップの大きさはますます減少され得る。最後のコンボリューションおよびプーリングレイヤー(Layer N)でM(Nc)×L(Nc)の大きさを有する特徴マップF(Nc)個が出力され得る。最後のコンボリューションおよびプーリングレイヤー(Layer N)で出力される特徴マップは次のように表現され得る。
最後のコンボリューションおよびプーリングレイヤー(Layer N)で出力される特徴マップは、最初の全体連結レイヤー(Layer N+1)に入力され得る。最初の全体連結レイヤーは、入力を受けた特徴マップを1×F(Nc)(Nc)(Nc)(≡∧(Nc))の大きさを有する1次元の表現ベクトルa(Nc)(t) for 0≦t≦∧(Nc)−1に変換することができる。
最初の全体連結レイヤーは、変換した1次元の表現ベクトルに対してウェイト(weight)行列を乗算することができる。例示的に、最初の全体連結レイヤーが遂行する演算は数学式7のように示すことができる。
数学式1でW(Nc+1)(t、u)は、最初の全体連結レイヤーで利用するウェイト行列を意味する。a(Nc+1)(t)は最初の全体連結レイヤーで出力される表現ベクトルを意味する。a(Nc+1)(t)は1次元の表現ベクトルであり得る。∧(Nc+1)は最初の全体連結レイヤーで出力される表現ベクトルa(Nc+1)(t)の大きさを意味する。
数学式1を参照すると、最初の全体連結レイヤーは、∧(Nc)大きさの表現ベクトルからウェイト行列を利用して∧(Nc+1)の大きさの表現ベクトルを出力することができる。
図5を参照すると、コンボリューショナルニューラルネットワークは、N個の全体連結レイヤーを含むことができる。数学式1を一般化して、l番目の全体連結レイヤーで遂行される演算は数学式2のように示すことができる。
数学式2において、a(l)(t)はl番目の全体連結レイヤーの出力表現ベクトルを意味する。W(l)(t,u)はl番目の全体連結レイヤーで利用するウェイト行列を意味する。φ(l)はl番目の全体連結レイヤーで利用する活性化関数を意味する。a(l-1)(u)はl−1番目の全体連結レイヤーの出力表現ベクトルであって、l番目の全体連結レイヤーに対する入力表現ベクトルであり得る。
出力レイヤー(Output layer)は最後の全体連結レイヤーの出力表現ベクトルa(NC+NF)(t)の入力を受けることができる。出力レイヤーは数学式3のように表現ベクトル演算を遂行することができる。
数学式3において、z(NC+NF+1)(t)は出力レイヤーで出力される表現ベクトルを意味する。Cは出力表現ベクトルz(NC+NF+1)(t)のクラス(class)の個数を意味する。
出力レイヤーは、数学式3で獲得した出力表現ベクトルz(NC+NF+1)(t)のそれぞれのクラスに対する最終出力値を計算することができる。出力レイヤーは、活性化関数を利用して最終出力表現ベクトルを計算することができる。出力レイヤーの最終出力値の計算過程は数学式4のように示すことができる。
数学式4において、φ(NC+NF+1)は出力レイヤーで利用される活性化関数を意味する。φ(NC+NF+1)はシグモイド関数、ハイパータンジェント関数および整流線形ユニットのうち少なくとも一つであり得る。数学式4を参照すると、出力レイヤーは出力表現ベクトルz(NC+NF+1)(t)に対する最終出力表現ベクトル^γ(t)を計算することができる。
他の例として、最終出力レイヤーはソフトマックス(soft max)関数を利用して最終出力値を計算することもできる。出力レイヤーの最終出力表現ベクトル計算過程は数学式5のように示すこともできる。
数学式5を参照すると、最終出力レイヤーは出力表現ベクトルのクラス値に対する指数関数を利用して最終出力値を計算することができる。
数学式3〜5において、0≦t≦C−1であるので、コンボリューショナルニューラルネットワークはC×1の大きさの表現ベクトルを出力することができる。すなわち、コンボリューショナルニューラルネットワークはF(0)×L(0)の大きさの行列データの入力を受けてC×1の大きさの表現ベクトルを出力することができる。
コンボリューショナルニューラルネットワークは非指導学習方式によってもトレーニングされ得る。コンボリューショナルニューラルネットワークのトレーニング方式は図17を参照した説明において後述する。
再び図2を参照すると、S150段階で、プロセッサ110はセッションに対応する第1表現ベクトルシーケンスを生成することができる。プロセッサ110は、コンボリューショナルニューラルネットワークを利用してセッションで抽出したメッセージのそれぞれから獲得した表現ベクトルを利用して、第1表現ベクトルシーケンスを生成することができる。例えば、プロセッサ110はメッセージの生成順に沿って表現ベクトルを順に羅列して表現ベクトルシーケンスを生成することができる。第1表現ベクトルシーケンスは例示的に下記のように表現され得る。
はセッションのt番目のメッセージ(要請メッセージまたは応答メッセージ)から生成された表現ベクトルを意味し得る。
S160段階で、プロセッサ110は第1表現ベクトルシーケンスを分析することによって、セッションの異常可否を判断することができる。プロセッサ110は、LSTM(Long short term memory)ニューラルネットワークを利用して第1表現ベクトルシーケンスを分析することができる。LSTMニューラルネットワークは、情報を保存するセル状態(Cell state)の選択的な更新を通じてRNN(Recurrent Neural Network)の長期依存性を回避することができる。以下では、LSTMニューラルネットワークについて説明する。
図9は、LSTMニューラルネットワークを例示的に示した概念図である。
図10は、LSTMレイヤーの構成を例示的に示した概念図である。
図10を参照すると、LSTMレイヤーは忘れゲート(forget gate)810、入力ゲート(input gate)850、出力ゲート(output gate)860を含むことができる。図10でボックスの中央のラインはレイヤーのセル(cell)状態を示すラインである。
数学式6において、σはシグモイド(sigmoid)関数を意味する。bはバイアス(bias)を意味する。Wxfはxに対する加重値を意味し、Whfはht−1に対する加重値を意味し、Wcfはct−1に対する加重値を意味する。
入力ゲート850は、セル状態にどのような新しい情報を反映するかを決定することができる。入力ゲート850は数学式7を利用して、セル状態に反映する新しい情報iを計算することができる。
数学式7において、σはシグモイド(sigmoid)関数を意味する。bはバイアス(bias)を意味する。Wxiはxに対する加重値を意味し、Whiはht−1に対する加重値を意味し、Wciはct−1に対する加重値を意味する。
入力ゲート850は、新しいセル状態Cに対する候補値を計算することができる。入力ゲート850は数学式8を利用して、候補値を計算することができる。
数学式8において、bはバイアス(bias)を意味する。Wxcはxに対する加重値を意味し、Whcはht−1に対する加重値を意味する。
セルラインは、f、iを利用して新しいセル状態cを計算することができる。例示的に、cは数学式9により計算され得る。
数学式8を参照すると、数学式9は数学式10のように示すことができる。
出力ゲート860は、セル状態cを利用して出力値を計算することができる。例示的に、出力ゲート860は数学式11により出力値を計算することができる。
数学式11において、σはシグモイド(sigmoid)関数を意味する。bはバイアス(bias)を意味する。Wxoはxに対する加重値を意味し、Whoはht−1に対する加重値を意味し、Wcoはcに対する加重値を意味する。
LSTMレイヤーは、出力値oおよび新しいセル状態cを利用して表現ベクトルxに対する隠れベクトルhを計算することができる。例示的に、hは数学式12により計算され得る。
LSTMニューラルネットワークは、LSTMエンコーダ(encoder)およびLSTMエンコーダに対称的な構造を有するLSTMデコーダ(decoder)を含むことができる。LSTMエンコーダは、第1表現ベクトルシーケンスの入力を受けることができる。LSTMエンコーダは、第1表現ベクトルシーケンスの入力を受けてあらかじめ定められた大きさの隠れベクトルを出力することができる。LSTMデコーダは、LSTMエンコーダから出力された隠れベクトルの入力を受けることができる。LSTMデコーダは、LSTMエンコーダで使用された加重値行列とバイアス値をそのまま使用することができる。LSTMデコーダは、第1表現ベクトルシーケンスに対応する第2表現ベクトルシーケンスを出力することができる。LSTMデコーダは、第2表現ベクトルシーケンスは第1表現ベクトルシーケンスに含まれた表現ベクトルに対応する推定ベクトルを含むことができる。LSTMデコーダは、推定ベクトルを逆順に出力することができる。すなわち、LSTMデコーダは、第1表現ベクトルシーケンスの表現ベクトルの逆順に推定ベクトルを出力することができる。
図11はLSTMエンコーダ動作方式を示した概念図である。
数学式13において、Sはセッションで抽出したメッセージ(要請メッセージまたは応答メッセージ)の個数を意味する。xはt番目のメッセージから出力された表現ベクトルであり、^xはLSTMデコーダが出力したxに対する推定ベクトルである。プロセッサ110は、第1表現ベクトルシーケンスと第2表現ベクトルシーケンスとの間の差があらかじめ定められた基準値δよりも小さいかの可否を判断することができる。もし、第1表現ベクトルシーケンスと第2表現ベクトルシーケンスとの間の差が基準値δよりも大きければ、プロセッサ110はセッションが異常であると判断することができる。
前述した説明では、LSTMニューラルネットワークがLSTMエンコーダおよびLSTMデコーダを含む例について説明した。しかし、実施例はこれに制限されるものではない。例えば、LSTMニューラルネットワークは直ちに推定ベクトルを出力することもできる。
図13は、LSTMニューラルネットワークが直ちに推定ベクトルを出力する例を示した概念図である。
前述した説明では、プロセッサ110がLSTMニューラルネットワークを利用してセッションの異常可否を判断する例について説明した。しかし、実施例はこれに制限されるものではない。例えば、プロセッサ110はS160段階で、GRUニューラルネットワークを利用してセッションの異常可否を判断することもできる。
図14は、GRUニューラルネットワークを例示的に示した概念図である。
図15は、GRUレイヤーの構成を例示的に示した概念図である。
図15を参照すると、GRUレイヤーはリセットゲートrおよびアップデートゲートzを含むことができる。リセットゲートrは新しい入力を以前のメモリとどのように合わせるかを決定することができる。アップデートゲートzは、以前のメモリをどの程度反映するかを決定することができる。LSTMレイヤーとは異なり、GRUレイヤーではセル状態と出力とが区分されないこともある。
例示的に、リセットゲートrは数学式15を利用してリセットパラメーターrを計算することができる。
数学式15において、σはシグモイド(sigmoid)関数を意味する。Uはxに対する加重値を意味し、Wはst−1に対する加重値を意味する。
例示的に、アップデートゲートzは、数学式16を利用してアップデートパラメーターzを計算することができる。
数学式16において、σはシグモイド(sigmoid)関数を意味する。Uはxに対する加重値を意味し、Wはst−1に対する加重値を意味する。
GRUレイヤーは新しい隠れベクトルに対する推定値hを数学式17により計算することができる。
数学式17において、σはシグモイド(sigmoid)関数を意味する。Uはxに対する加重値を意味し、Wはst−1およびrの積st−1 orに対する加重値を意味する。
GRUレイヤーは、数学式17で計算したhを利用してxに対する隠れベクトルsを計算することができる。例えば、GRUレイヤーは数学式18を利用してxに対する隠れベクトルsを計算することができる。
GRUニューラルネットワークは、レイヤーのそれぞれの構成上の差を除いては、LSTMニューラルネットワークと類似に動作することができる。例えば、図11〜図13に示したLSTMニューラルネットワークの実施例がGRUニューラルネットワークにも類似に適用され得る。GRUニューラルネットワークの場合、それぞれのレイヤーの動作が図15に示したように動作することの他に、LSTMニューラルネットワークと類似する原理で動作することができる。
プロセッサ110は、数学式13を利用して第1表現ベクトルシーケンスと第2表現ベクトルシーケンスを比較することによって、セッションの異常可否を判断することができる。
図16は、本発明の例示的な実施例に係る装置100で遂行される異常セッション感知方法の変形例を示したフローチャートである。
図16の実施例の説明において、図2と重複する内容は省略する。
図16を参照すると、S100段階で、プロセッサ110はコンボリューショナルニューラルネットワークおよびLSTM(またはGRU)ニューラルネットワークをトレーニングさせることができる。
例示的に、プロセッサ110は非指導学習方式でコンボリューショナルニューラルネットワークをトレーニングすることができる。他の例として、メッセージとメッセージにラベルリングされた出力表現ベクトルを含む訓練データが存在する場合、プロセッサ110は指導学習方式でコンボリューショナルニューラルネットワークをトレーニングすることもできる。
非指導学習の場合、プロセッサ110はコンボリューショナルニューラルネットワークに対して対称的構造を有する対称ニューラルネットワークをコンボリューショナルニューラルネットワークに連結することができる。プロセッサ110はコンボリューショナルニューラルネットワークの出力を対称ニューラルネットワークに入力させることができる。
図17は、コンボリューショナルニューラルネットワークのトレーニング過程を示した概念図である。
図17を参照すると、プロセッサ110はコンボリューショナルニューラルネットワークの出力を対称ニューラルネットワークに入力させることができる。対称ニューラルネットワークは、前記コンボリューショナルニューラルネットワークの全体連結レイヤーに対応する逆方向全体連結レイヤー(backward fully connected layer)と、前記コンボリューショナルニューラルネットワークのコンボリューションレイヤーおよびプーリングレイヤーに対応するテコンボリューションレイヤーおよびアンプーリングレイヤーを含むことができる。対称ニューラルネットワークの具体的な動作についての説明は韓国特許出願(10−2015−183898)で代替する。
プロセッサ110は、対称ニューラルネットワークの出力とコンボリューショナルニューラルネットワークに入力される入力との間の差に基づいて、コンボリューショナルニューラルネットワークの加重値パラメーターを更新することができる。例えば、プロセッサ110は、対称ニューラルネットワークの出力とコンボリューショナルニューラルネットワークに入力される入力との間の再構成エラー(reconstruction error)および平均二乗エラー(mean squared error)のうち少なくとも一つに基づいて、費用関数を決定することができる。プロセッサ110は、前述した方式によって決定された費用関数を最小化する方向に加重値パラメーターを更新することができる。
例示的に、プロセッサ110は非指導学習方式でLSTM(GRU)ニューラルネットワークをトレーニングすることができる。
LSTM(GRU)ニューラルネットワークがLSTM(GRU)エンコーダおよびLSTM(GRU)デコーダを含む場合、プロセッサ110はLSTM(GRU)エンコーダに入力される表現ベクトルらとLSTM(GRU)デコーダで出力される表現ベクトルとを比較することによって、費用関数を計算することができる。例えば、プロセッサ110は数学式19を利用して費用関数を計算することができる。
プロセッサ110は、数学式19に示した費用関数J(θ)を最小化する方向にθに含まれた加重値パラメーターを更新することができる。
以上、図1〜図17と数学式1〜数学式19を参照して本発明の実施例に係る異常セッション感知方法について説明した。前述した実施例によると、コンボリューショナルニューラルネットワークを利用してセッションに含まれたメッセージを低い次元の表現ベクトルに変換することができる。また、LSTMまたはGRUニューラルネットワークを利用してセッションに含まれた表現ベクトルシーケンスを分析し、これからセッションの異常可否を判断することができる。実施例によると、受動的な作業が介入されることなく人工ニューラルネットワークを利用してセッションの異常可否を容易に判断することができる。
本発明の実施例に係る肩幅測定方法の動作は、コンピュータ読み取り可能記録媒体にコンピュータ読み取り可能プログラムまたはコードとして具現することが可能である。コンピュータ読み取り可能記録媒体はコンピュータシステムによって読み込まれ得るデータが保存されるすべての種類の記録装置を含む。また、コンピュータ読み取り可能記録媒体は、ネットワークに連結されたコンピュータシステムに分散されて分散方式でコンピュータ読み取り可能プログラムまたはコードが保存され実行され得る。
また、コンピュータ読み取り可能記録媒体は、ロム(rom)、ラム(ram)、フラッシュメモリ(flash memory)などのように、プログラム命令を保存して遂行するように特別に構成されたハードウェア装置を含むことができる。プログラム命令は、コンパイラ(compiler)によって作られるような機械語コードだけでなく、インタープリタ(interpreter)などを使ってコンピュータによって実行され得る高級言語コードを含むことができる。
方法段階の一部又は全部は例えば、マイクロプロセッサ、プログラム可能なコンピュータまたは電子回路のようなハードウェア装置によって(または利用して)遂行され得る。一部の実施例において、最も重要な方法段階の少なくとも一つはこのような装置によって遂行され得る。
実施例において、プログラム可能なロジック装置(例えば、フィールドプログラマブルゲートアレイ)が、ここで説明された方法の機能の一部又は全部を遂行するために使われ得る。実施例において、フィールドプログラマブルゲートアレイは、ここで説明された方法のうち一つを遂行するためのマイクロプロセッサとともに作動することができる。一般に、方法は何らかのハードウェア装置によって遂行されることが好ましい。
上記では本発明の好ましい実施例を参照して説明したが、該当技術分野の熟練した当業者は下記の特許請求の範囲に記載された本発明の思想および領域から逸脱しない範囲内で、本発明を多様に修正および変更し得ることが理解できるであろう。

Claims (6)

  1. プロセッサ(processor)を含むセッション分析装置により遂行される、サーバーがクライアントから受信する要請メッセージと、前記サーバーが生成する応答メッセージを含むセッションの異常可否を感知する方法において、
    前記セッションに含まれたメッセージのうち少なくとも一部を行列形態のデータに変換する段階;
    コンボリューショナルニューラルネットワークを利用して前記行列形態のデータを前記行列よりも小さい次元の表現ベクトルに変換する段階;および
    前記メッセージから獲得された表現ベクトルを、前記メッセージの発生順に沿って羅列することによって第1表現ベクトルシーケンスを構成し、LSTMニューラルネットワークを利用して前記第1表現ベクトルシーケンスを分析することによって、前記セッションの異常可否を判断する段階;を含み、
    前記LSTMニューラルネットワークに含まれたLSTMレイヤーは、入力を受けた表現ベクトルに対する隠れ(hidden)ベクトルを出力するときに、以前に入力を受けた表現ベクトルに対する隠れベクトルの出力を参照し、
    前記LSTMニューラルネットワークは、複数のLSTMレイヤーを含むLSTMエンコーダおよび前記LSTMエンコーダと対称的な構造を有するLSTMデコーダを含み、
    前記LSTMニューラルネットワークに含まれたLSTMエンコーダは、前記第1表現ベクトルシーケンスに含まれた表現ベクトルの入力を順に受け、あらかじめ定められた大きさの隠れ(hidden)ベクトルを出力し、
    前記LSTMニューラルネットワークに含まれたLSTMデコーダは、前記隠れベクトルの入力を受けて前記第1表現ベクトルシーケンスに含まれる表現ベクトルのそれぞれに対応する推定ベクトルを逆順に出力することによって、第2表現ベクトルシーケンスを出力し、
    前記セッションの異常可否を判断する段階は、
    前記第1表現ベクトルシーケンスと前記第2表現ベクトルシーケンスとの間の差に基づいて前記セッションが正常であるか異常であるかを判断する、異常セッション感知方法。
  2. 前記メッセージのうち少なくとも一部を行列形態のデータに変換する段階は、
    前記メッセージのそれぞれに含まれた文字をワンホットベクトル(one−hot vector)に変換することによって、前記メッセージのそれぞれを行列形態のデータに変換する、請求項1に記載の異常セッション感知方法。
  3. 前記コンボリューショナルニューラルネットワークおよび前記LSTMニューラルネットワークをトレーニング(training)する段階;を含む、請求項1に記載の異常セッション感知方法。
  4. 訓練データを前記コンボリューショナルニューラルネットワークに入力し、
    前記コンボリューショナルニューラルネットワークの出力を、前記コンボリューショナルニューラルネットワークに対称的な構造を有する対称ニューラルネットワークに入力させ、
    前記対称ニューラルネットワークの出力と前記訓練データとの間の差に基づいて、前記コンボリューショナルニューラルネットワークで使用する加重値パラメーターを更新することによって、前記コンボリューショナルニューラルネットワークをトレーニングする、請求項に記載の異常セッション感知方法。
  5. 練データを前記LSTMエンコーダに入力し、
    前記LSTMエンコーダから出力される隠れベクトルおよび前記訓練データを前記LSTMデコーダに入力し、
    前記LSTMデコーダの出力と前記訓練データとの間の差に基づいて、前記LSTMエンコーダおよび前記LSTMデコーダで使用する加重値パラメーターを更新することによって、前記LSTMニューラルネットワークをトレーニングする、請求項に記載の異常セッション感知方法。
  6. プロセッサ(processor)を含むセッション分析装置により遂行される、サーバーがクライアントから受信する要請メッセージと、前記サーバーが生成する応答メッセージを含むセッションの異常可否を感知する方法において、
    前記セッションに含まれたメッセージのうち少なくとも一部を行列形態のデータに変換する段階;
    コンボリューショナルニューラルネットワークを利用して前記行列形態のデータを前記行列よりも小さい次元の表現ベクトルに変換する段階;および
    前記メッセージから獲得された表現ベクトルを、前記メッセージの発生順に沿って羅列することによって第1表現ベクトルシーケンスを構成し、GRUニューラルネットワークを利用して前記第1表現ベクトルシーケンスを分析することによって、前記セッションの異常可否を判断する段階;を含み、
    前記GRUニューラルネットワークに含まれたGRUレイヤーは、入力を受けた表現ベクトルに対する隠れ(hidden)ベクトルを出力するときに、以前に入力を受けた表現ベクトルに対する隠れベクトルの出力を参照し、
    前記GRUニューラルネットワークは、複数のGRUレイヤーを含むGRUエンコーダおよび前記GRUエンコーダと対称的な構造を有するGRUデコーダを含み、
    前記GRUニューラルネットワークに含まれたGRUエンコーダは、前記第1表現ベクトルシーケンスに含まれた表現ベクトルの入力を順に受け、あらかじめ定められた大きさの隠れ(hidden)表現ベクトルを出力し、
    前記GRUニューラルネットワークに含まれたGRUデコーダは、前記隠れベクトルの入力を受けて前記第1表現ベクトルシーケンスに含まれる表現ベクトルのそれぞれに対応する推定ベクトルを逆順に出力することによって、第2表現ベクトルシーケンスを出力し、
    前記セッションの異常可否を判断する段階は、
    前記第1表現ベクトルシーケンスと前記第2表現ベクトルシーケンスとの間の差に基づいて前記セッションが正常であるか異常であるかを判断する、異常セッション感知方法。
JP2018041354A 2017-09-22 2018-03-07 異常セッション感知方法 Active JP6608981B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170122363A KR101880907B1 (ko) 2017-09-22 2017-09-22 비정상 세션 감지 방법
KR10-2017-0122363 2017-09-22

Publications (2)

Publication Number Publication Date
JP2019061647A JP2019061647A (ja) 2019-04-18
JP6608981B2 true JP6608981B2 (ja) 2019-11-20

Family

ID=63443876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018041354A Active JP6608981B2 (ja) 2017-09-22 2018-03-07 異常セッション感知方法

Country Status (3)

Country Link
US (1) US20190095301A1 (ja)
JP (1) JP6608981B2 (ja)
KR (1) KR101880907B1 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9690938B1 (en) 2015-08-05 2017-06-27 Invincea, Inc. Methods and apparatus for machine learning based malware detection
EP3475822B1 (en) * 2016-06-22 2020-07-22 Invincea, Inc. Methods and apparatus for detecting whether a string of characters represents malicious activity using machine learning
CN110875912A (zh) * 2018-09-03 2020-03-10 中移(杭州)信息技术有限公司 一种基于深度学习的网络入侵检测方法、装置和存储介质
KR101984730B1 (ko) * 2018-10-23 2019-06-03 (주) 글루시스 서버 장애 자동 예측 시스템 및 자동 예측 방법
US11381651B2 (en) * 2019-05-29 2022-07-05 Adobe Inc. Interpretable user modeling from unstructured user data
CN112016866B (zh) * 2019-05-31 2023-09-26 北京京东振世信息技术有限公司 订单数据处理方法、装置、电子设备及可读介质
CN110430183A (zh) * 2019-07-31 2019-11-08 福建师范大学 基于会话特征相似性的mh-lstm异常检测方法
CN111178523B (zh) * 2019-08-02 2023-06-06 腾讯科技(深圳)有限公司 一种行为检测方法、装置、电子设备及存储介质
KR102232871B1 (ko) * 2019-08-14 2021-03-26 펜타시큐리티시스템 주식회사 Can 기반의 통신 네트워크에서 신호 검출 방법 및 장치
KR102118088B1 (ko) * 2019-08-29 2020-06-02 아이덴티파이 주식회사 인공지능 기술을 이용한 배기가스 배출량 예측방법
CN110569925B (zh) * 2019-09-18 2023-05-26 南京领智数据科技有限公司 应用于电力设备运检的基于lstm的时序异常检测方法
CN110874744B (zh) * 2019-11-18 2022-08-02 中国银联股份有限公司 一种数据异常检测方法及装置
WO2021097515A1 (en) * 2019-11-20 2021-05-27 Canva Pty Ltd Systems and methods for generating document score adjustments
US11716338B2 (en) * 2019-11-26 2023-08-01 Tweenznet Ltd. System and method for determining a file-access pattern and detecting ransomware attacks in at least one computer network
CN111091863A (zh) * 2019-11-29 2020-05-01 浪潮(北京)电子信息产业有限公司 一种存储设备故障检测方法及相关装置
CN111277603B (zh) * 2020-02-03 2021-11-19 杭州迪普科技股份有限公司 无监督异常检测系统和方法
JP2021189721A (ja) 2020-05-29 2021-12-13 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
CN112232948A (zh) * 2020-11-02 2021-01-15 广东工业大学 一种流量数据的异常检测方法及装置
KR102374817B1 (ko) * 2021-03-05 2022-03-16 경북대학교 산학협력단 시계열 특성의 군집화 분석을 사용한 고성능 심층 신경망 기반의 기계 고장 진단 방법 및 시스템
CN113595987B (zh) * 2021-07-02 2022-06-21 中国科学院信息工程研究所 一种基于基线行为刻画的通联异常发现方法、装置、存储介质及电子装置
CN115037543B (zh) * 2022-06-10 2024-03-19 江苏大学 一种基于双向时间卷积神经网络的异常网络流量检测方法
CN116112265B (zh) * 2023-02-13 2023-07-28 山东云天安全技术有限公司 一种异常会话的确定方法、电子设备及存储介质
CN115952465B (zh) * 2023-03-10 2023-07-21 畅捷通信息技术股份有限公司 一种传感器数据异常检测的方法、装置及计算机存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102130162B1 (ko) * 2015-03-20 2020-07-06 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 인공 신경망들에 대한 관련성 스코어 할당
US10606846B2 (en) * 2015-10-16 2020-03-31 Baidu Usa Llc Systems and methods for human inspired simple question answering (HISQA)
JP6517681B2 (ja) * 2015-12-17 2019-05-22 日本電信電話株式会社 映像パターン学習装置、方法、及びプログラム
KR101644998B1 (ko) * 2015-12-22 2016-08-02 엑스브레인 주식회사 Convolutional Neural Network를 이용하여 비정상 입력 데이터를 검출하는 방법 및 장치
US20180260699A1 (en) * 2017-03-13 2018-09-13 Intel IP Corporation Technologies for deep machine learning with convolutional neural networks and reduced set support vector machines
US10819724B2 (en) * 2017-04-03 2020-10-27 Royal Bank Of Canada Systems and methods for cyberbot network detection
GB201714917D0 (en) * 2017-09-15 2017-11-01 Spherical Defence Labs Ltd Detecting anomalous application messages in telecommunication networks

Also Published As

Publication number Publication date
JP2019061647A (ja) 2019-04-18
US20190095301A1 (en) 2019-03-28
KR101880907B1 (ko) 2018-08-16

Similar Documents

Publication Publication Date Title
JP6608981B2 (ja) 異常セッション感知方法
JP6574503B2 (ja) 機械学習方法および装置
JP6757978B2 (ja) 異常トラフィックを探知する方法および装置
US20230169140A1 (en) Graph convolutional networks with motif-based attention
US20190251360A1 (en) Method for analysing media content
US20190188573A1 (en) Training of artificial neural networks using safe mutations based on output gradients
US20210011974A1 (en) Named-entity recognition through sequence of classification using a deep learning neural network
KR20160034814A (ko) 뉴럴 네트워크를 수반한 클라이언트 장치 및 그것을 포함하는 시스템
KR102011788B1 (ko) 계층적 시각 특징을 이용한 시각 질의 응답 장치 및 방법
Chu et al. Analysis of feature maps selection in supervised learning using convolutional neural networks
KR101930940B1 (ko) 영상 분석 장치 및 방법
CN108875482B (zh) 物体检测方法和装置、神经网络训练方法和装置
US11568212B2 (en) Techniques for understanding how trained neural networks operate
EP3848836A1 (en) Processing a model trained based on a loss function
CN111782840A (zh) 图像问答方法、装置、计算机设备和介质
KR20190126857A (ko) 이미지에서 오브젝트 검출 및 표현
WO2019018533A1 (en) NEURO-BAYESIAN ARCHITECTURE FOR THE IMPLEMENTATION OF GENERAL ARTIFICIAL INTELLIGENCE
KR102031983B1 (ko) 복수의 lstm을 이용한 시계열적 자세 예측 장치
US20200372364A1 (en) Neural network with a layer solving a semidefinite program
KR102105951B1 (ko) 추론을 위한 제한된 볼츠만 머신 구축 방법 및 추론을 위한 제한된 볼츠만 머신을 탑재한 컴퓨터 장치
US11816185B1 (en) Multi-view image analysis using neural networks
KR101963556B1 (ko) 인공 신경망을 이용한 시계열적 자세 예측 장치
KR20230092371A (ko) 공진화 신경 상미분 방정식 기반의 인공지능 신경망 장치 및 방법
KR20220073464A (ko) 설명 가능한 인공지능 제공 방법
KR20190061381A (ko) Cnn 분류 모델에서의 하드웨어 변수 자동화 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190115

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190415

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190521

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190917

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20190924

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: 20191015

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191024

R150 Certificate of patent or registration of utility model

Ref document number: 6608981

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250