時間の経過とともに学習し、適応することができるアルゴリズムを作成する技術は数多くある。大まかに言えば、これらのアルゴリズムは、教師あり、教師なし、強化学習の3つのカテゴリーのいずれかに整理することができる。
教師あり学習とは、入力データの各インスタンスに、その入力に対する望ましい値または目標値が付随している状況を指す。目標値が有限の離散カテゴリの集合である場合、学習タスクはしばしば分類問題として知られる。ターゲットが1つ以上の連続変数の場合、そのタスクは回帰と呼ばれる。
例えば、分類タスクには、与えられた電子メールがスパムかハムか(すなわち、スパムでないか)を予測することや、与えられたバイナリファイルがマルウェアのN個のファミリーのどれに分類されるべきかを予測することが含まれるかもしれません。回帰タスクには、あるネットワーク上のホストが特定の時間中にどれだけのセキュリティインシデントを引き起こすかを予測することが含まれます。どちらの場合も、教師あり学習の目標は、データが引き出された入力空間と、データを記述する望ましい空間またはターゲット空間との間の機能的なマッピングを学習することです。
対照的に、教師なし学習とは、アルゴリズムやエージェントが、目標値という形のフィードバックや監視なしに、生のデータのみから学習しなければならないシナリオを指す。これは多くの場合、データ中の類似した例をグループ化する学習(クラスタリングとして知られるタスク)や、データが引き出された入力空間の基礎となる分布について何かを学習することを意味する。
例えば、クラスタリングは、接続を開始する内部ホストと外部ホストの数や、接続を開始するホストの数などの特徴に基づいて、ネットワーク内の類似したマシンのグループを決定するために使用することができる。
あるいは、教師なし学習法は、ネットワーク上の正常なトラフィックの特性や統計量を学習することで、異常検知に使用することができる。すべての可能なユースケースを列挙することは難しいかもしれないが、教師なし学習の目標は、それを記述する所定のラベルを使用せずに、基礎となるデータについて何かを学習することである。
ディープラーニングが普及するきっかけとなった歴史的な発展のひとつに、教師なし事前学習がある。これは、ネットワークが分類しようとしている画像のクラスに対して学習を微調整するために教師ありの手法を使用する前に、ニューラルネットワークの重みの初期セットを学習するために使用された。教師なし事前学習の良い例は、福島の1975年の新認識論モデルや、HintonとSalukhutdinovの深いBotlzmannマシンに見られる。
最後に、強化学習とは、環境と相互作用するエージェントが一連の振る舞いをとる学習パラダイムを指す。各行動は環境の状態を変化させる可能性があり、各ステップで取るべき正しい行動についての明示的なフィードバックを受け取るのではなく、どの程度うまくいっているかについての一般的な報酬シグナルのみを受け取る。
今日、強化学習の典型的な例は、エージェントが環境の状態を観察する動画ゲームで見られる。チェスではボードの状態、任天堂のゲームでは画面上のピクセルの集合かもしれない。時間ステップごとに、次にどの駒を動かすか、あるいは左、右、上、下、a/bのどれを押すかなど、適切な振る舞いを決定する。
エージェントは、各ステップで取るべき最良の行動に関する明確なフィードバックを受け取らない。その代わりに、振る舞いを起こした後、かなり時間が経ってから報酬シグナルによってフィードバックを得る。例えば、チェスゲームに勝ったり、レベルを突破したりしたときのポジティブな報酬であったり、ポン (Pong) のようなゲームで対戦相手がポイントを獲得するごとにネガティブな報酬を受け取ることもある。
報酬シグナルだけを使用して、エージェントは、肯定的な報酬につながる振る舞いを取る可能性を増加させ、否定的または懲罰的な報酬につながる行動を取る可能性を減少させることを試みるべきである。強化学習は、自動化されたペンテストや侵入検知において、ますます重要になる可能性が高い。しかし、サイバーセキュリティの領域に関してはまだ比較的初期段階にあり、本番のシナリオでうまく機能する可能性は低い。
とはいえ、Vectra のAIチームは、IDSシステムを回避できる攻撃振る舞いを学習するエージェントを作成するための強化学習アルゴリズムの研究と開発をすでに始めており、それによってIDSシステムが学習できるデータの自動作成を可能にしている。