Создание фактического классификатора с машинным обучением

  1. Шаг 1 - Начните с вопроса
  2. Шаг 2 - Сбор и подготовка данных
  3. Подготовка данных
  4. Шаг 3 - Анализируйте, изучайте и улучшайте данные
  5. Наш выбор функций
  6. Шаг 4 - Построить модель
  7. Обучение случайных лесов
  8. Шаг 5 - Анализируйте результаты и рисуйте идеи
  9. Заключение

Как упоминалось в части 1 «   Создание наивного классификатора YouTube против Spotify: введение в машинное обучение   «Здесь, в Sentryo, сетевой трафик является нашим основным источником информации, чтобы предоставить нашим пользователям точное описание их инфраструктуры и предупредить их о потенциальном вторжении

Как упоминалось в части 1 « Создание наивного классификатора YouTube против Spotify: введение в машинное обучение «Здесь, в Sentryo, сетевой трафик является нашим основным источником информации, чтобы предоставить нашим пользователям точное описание их инфраструктуры и предупредить их о потенциальном вторжении.
Машинное обучение позволяет нам создавать мощные алгоритмы для выполнения задач классификации. В контексте мониторинга сетевой безопасности такие методы могут использоваться, например, для классификации некоторых действий как вредоносных.

Во второй части мы будем следовать различным этапам проекта Data Science, который мы описали в части 1, для создания классификатора пакетов YouTube / Spotify, то есть определения только по нейтральным метаданным, приходит ли пакет из транзакции, включающей видео YouTube
Во второй части мы будем следовать различным этапам проекта Data Science, который мы описали в части 1, для создания классификатора пакетов YouTube / Spotify, то есть определения только по нейтральным метаданным, приходит ли пакет из транзакции, включающей видео YouTube. или Spotify музыка.
Читатель должен помнить, что работа, представленная в этой статье, предназначена только для пояснения. Цель здесь не в том, чтобы представить самые передовые методы в науке о данных или представить глубокие знания с точки зрения бизнеса или кибербезопасности, а просто представить основные принципы. Основные принципы, которые по-прежнему заставляют нас автоматически отличать YouTube от Spotify более чем в 86% случаев.

Шаг 1 - Начните с вопроса

Наш вопрос здесь прост: «Соответствует ли эта сетевая активность просмотру Youtube или Spotify?»

Шаг 2 - Сбор и подготовка данных

Сбор информации

Первым шагом нашего анализа является сбор данных о просмотре веб-страниц, представляющих связь между ноутбуком и этими веб-сайтами. Одним из стандартных способов захвата сетевого трафика является использование Wireshark [1], бесплатного анализатора пакетов с открытым исходным кодом, используемого для анализа сети. Как показано на рисунке ниже, этот инструмент предоставляет информацию о пакетах, передаваемых между хостами, в данном случае между локальным ноутбуком и youtube.com или spotify.com.

Подготовка данных

После преобразования в более универсальный формат, т. Е. CSV, данные могут быть проанализированы стандартными инструментами обработки данных.

Элемент в наборе данных представляет собой фрейм Ethernet или, точнее, в нашем случае, IP-пакет (скажем, сетевое сообщение). Теперь он соответствует одной строке в файле CSV.

В случае сетевых данных, как видно на скриншоте Wireshark выше, элементы (пакеты) описаны со следующими функциями:

  • время прибытия
  • длина кадра,
  • IP-адрес отправителя,
  • IP-адрес получателя,
  • сетевой протокол,
  • и т.п.

Чтобы следовать этой статье, вам не понадобятся глубокие знания сети. Однако вам необходимо знать, что такое IP-адрес, т. Е. Цифровая метка, присваиваемая каждому устройству, участвующему в компьютерной сети [2].

Поскольку IP-адрес может напрямую идентифицировать сервер YouTube с сервера Spotify, мы не будем использовать это свойство для построения классификатора.
Сетевой протокол, используемый при просмотре веб-страниц, - HTTPS (или HTTP), как видно в адресной строке вашего браузера. Особенностью HTTPS, с «S» для безопасного, является шифрование. Данные в пути, содержащие, например, название песни или саму песню, шифруются. Они не читаются наблюдателем.
Поскольку мы находимся в положении этого наблюдателя, чтобы построить наш классификатор, мы сосредоточимся только на показателях времени и размера, а не на функциях, основанных на контенте. Этот выбор частично вдохновлен диссертационной работой Дж. С. Аткинсона, где исследователь «определил, что сравнение различных комбинаций информации о времени и размере кадра достаточно для различения конкретных действий пользователя» [3].

Шаг 3 - Анализируйте, изучайте и улучшайте данные

На этом этапе идея состоит в том, чтобы ознакомиться с данными для анализа. Для каждого элемента (пакета) в наборе данных мы рассчитываем количество пакетов, полученных ноутбуком за последние 10 миллисекунд до времени прибытия этого пакета.

Таким образом, другая переменная описывает каждый элемент набора данных, такая переменная называется функцией.

Интуитивно понятно, что при просмотре Youtube мы получаем больше пакетов за 10-миллисекундное окно, поскольку пропускная способность видео обычно выше, чем у аудио.
На гистограмме показано ниже:

  • ось х (то, что мы рассчитываем) представляет количество пакетов, полученных с интервалом в 10 миллисекунд
  • ось Y представляет номер вхождения для этого наблюдения

ось х (то, что мы рассчитываем) представляет количество пакетов, полученных с интервалом в 10 миллисекунд   ось Y представляет номер вхождения для этого наблюдения

Сначала мы можем заметить, что Youtube обычно отправляет больше пакетов, чем Spotify (в среднем Youtube отправляет 30 пакетов, в то время как Spotify отправляет 23 в течение того же периода времени).
В качестве второго примера и для того, чтобы почувствовать скорость загрузки / выгрузки, давайте представим количество кадров, полученных от удаленных хостов. Используя тот же подход окна 10 мс, мы создаем функцию для каждого элемента, представляющую количество пакетов, полученных с YouTube / Spotify за текущий период времени.

Мы замечаем, что пакеты с Youtube имеют тенденцию приходить пакетами с некоторыми перерывами между ними, в то время как Spotify, кажется, обеспечивает более стабильный поток.

Это различие между наборами данных, которые алгоритм машинного обучения будет использовать для выполнения задачи классификации
Это различие между наборами данных, которые алгоритм машинного обучения будет использовать для выполнения задачи классификации.

Наш выбор функций

Мы решили описать процесс потоковой передачи, используя следующие 10 функций:

По времени (в секундах)

  • дельта времени из предыдущего пакета

По размеру пакетов (в байтах)

  • размер текущего пакета
  • количество данных, полученных за последние 10 мс
  • количество данных, отправленных за последние 10 мс
  • средний размер полученных пакетов за последние 10 мс
  • средний размер отправленных пакетов за последние 10 мс
  • стандартное отклонение размера полученных пакетов за последние 10 мс
  • стандартное отклонение размера отправленных пакетов за последние 10 мс

По количеству пакетов:

  • количество пакетов, полученных за последние 10 мс
  • количество отправленных пакетов за последние 10 мс

Как указывалось во введении к этой статье, выбранные функции далеки от оптимальных, но были сохранены для простоты, а также для указания на то, что алгоритм может достигать достойной производительности даже при наивном выборе функций. Тем не менее, очевидно, что некоторые более умные функции проектирования потребовали бы больше работы, но дали бы значительно улучшенные результаты.

Шаг 4 - Построить модель

Теперь, когда мы получили знания о том, как выглядят данные о трафике в различных действиях просмотра страниц, и усовершенствовали наш набор данных, давайте применим алгоритм машинного обучения, чтобы изучить эти различия и в конечном итоге классифицировать действие как YouTube или Spotify.

Обучение случайных лесов

После обучения у нас теперь есть лес, заполненный 200 деревьями решений с максимальной глубиной дерева, равной 15. Эти параметры были выбраны для оптимизации производительности алгоритма.
Представление одного (и упрощенного) дерева из леса показано на рисунке ниже:

Теперь, если пакет анализируется деревом и заканчивается красным конечным листом, он будет классифицирован как «Youtube».

Шаг 5 - Анализируйте результаты и рисуйте идеи

В случае классификатора YouTube против Spotify показатель точности составляет 87%. Для первой попытки эта оценка верна, но для более важного бизнес-кейса (например, обнаружения вторжений) мы ожидаем гораздо более надежного классификатора.

Как указано в Часть 1 Классификатор, безусловно, можно улучшить, выполнив следующие действия:

  • добавив больше данных,
  • добавление новой информации через проектирование объектов,
  • настройка параметров модели.

Давайте помнить, что эти метрики могут быть вычислены, только если у нас есть информация о правильном классе заранее, точно так же как данные обучения. Если эта информация недоступна, классификатор все еще может определить класс для любого нового элемента, но не может оценить его точность.

Заключение

Мы надеемся, что эта статья убедила вас в том, что наука о данных и машинное обучение не являются чёрной магией и что эти подходы легко применять для анализа сетевого трафика. В частности, мы продемонстрировали силу основанных на метаданных функций, основанных на времени или размере, подходе, который даже работает, когда соединение шифруется при передаче.
Эта статья из двух частей - наш первый взгляд на науку о данных и машинное обучение, применяемый к сетевым данным и кибербезопасности. Будут еще статьи, так что следите за обновлениями. Мы надеемся, что вам понравилось читать эту первую итерацию, пожалуйста, свяжитесь с нами [4], если у вас есть какие-либо вопросы или пожелания.

Рекомендации :

[1] https://www.wireshark.org/ [2] https://en.wikipedia.org/wiki/IP_address [3] Ваш WiFi пропускает, полагая, что шифрование поведения пользователя не имеет значения [+4] [email protected]

Похожие

Как разместить свой собственный сайт из дома (плюс 5 плюсов и минусов)
... шаги Вот , Шаг 4. Настройка DNS Чтобы использовать собственный домен (например, example.com) для локального веб-сервера, вам необходимо настроить Apache для приема веб-запросов для вашего домена. Во-первых, убедитесь, что DNS вашего домена имеет запись A (которая указывает на определенный IP-адрес) для вашего доменного имени, например, www.example.com. У вашего провайдера DNS-хостинга
Как настроить беспроводной маршрутизатор
Настройка беспроводного маршрутизатора не должна быть тяжелым испытанием. И хотя производители маршрутизаторов заслуживают похвалы за то, что они упрощают установку своих продуктов, эти советы сделают процесс еще проще. Я также покажу вам, как убедиться, что ваша домашняя сеть настолько безопасна, насколько это возможно, и я объясню некоторые детали сети, которые руководства пользователя часто скрывают. Большинство производителей маршрутизаторов теперь предлагают приложения для смартфонов
Как создать сайт: пошаговое руководство
... данных Для хранения, управления и доступа к данным, которые вводятся пользователю на сайте, рассматривается большая таблица информации, называется базой данных. Система управления базами данных, например MySQL, MongoDB и PostgreSQL, используется на стороне сервера, чтобы эффективно выполнять эту работу. FTP (протокол передачи файлов) FTP используется для легкого переноса выходных файлов сайта на его сервер. Существуют
Резервное копирование данных - аварийное восстановление - BackUp Academy
Резервное копирование данных очень важно, особенно в наши дни, когда появляется все больше и больше угроз. Никто не застрахован от потери ценных данных, и каждый должен быть к этому готов. Данные и информация быстро становятся самым ценным активом 21-го века, поэтому крайне важно, чтобы у каждой компании - от домашних офисов до транснациональных корпораций - были комплексные планы резервного копирования данных и аварийного восстановления. В этой статье мы покажем, как QNAP NAS и программное
Как запрограммировать журнал температуры с помощью Arduino Uno?
... и, как создать устройство для измерения температуры и влажности с помощью Arduino. Теперь мы расширим его функцией записи данных на SD-карту и записи времени каждого измерения. Нам понадобится накладка на SD-карту и часы реального времени. Дисплей может остаться на обложке Grove. Если вы хотите использовать регистратор данных без дисплея, вы можете отключить его. Список продуктов Накладка на SD-карту Описание
Сравнение цен - как это сделать правильно?
Наряду с растущей популярностью интернет-магазинов, интерес к сайтам сравнения цен также растет. Исследование Gemius показывает, что 63% людей, заявляющих о покупках в Интернете, используют эти
Идеальный параграф
В этой статье я хотел бы познакомить вас со скромной рабочей лошадкой общения, которая является абзацем. Параграфы есть везде. На самом деле, с большим риском констатировать очевидное, вы читаете один сейчас. Несмотря на их повсеместность, мы часто пренебрегаем их представлением . Это ошибка. Это ошибка. Здесь мы рассмотрим некоторые проверенные временем соглашения о наборе текста с акцентом на удобочитаемость и предложим рекомендации по их эффективной
Как включить и отключить роуминг на вашем телефоне
... данных, потому что тогда телефон будет использовать дорогие услуги роуминга . Давайте проверим, что именно является роумингом и как он влияет на вашу учетную запись, и как включить и отключить роуминг на наших телефонах. Что такое роуминг ? Когда приближается сезон отпусков, дискуссии на эту тему часто появляются в СМИ. роуминг , Но что именно это? Хотя концепция
Создание ссылок не оказывает существенного влияния на SEO
Согласно Google, большинство веб-сайтов с хорошими позициями в поисковых системах не используют построение ссылок, т.е. «Создание ссылок». В течение многих лет специалисты по SEO основывали свои стратегии позиционирования на получении ссылок на свои сайты
Как вы выбираете доменное имя?
... и один бизнес в Интернете не может обойтись. Именно поэтому крайне важно правильно выбрать название сайта . Хотя это, казалось бы, легко, эта задача оказывается чрезвычайно сложной, поскольку большинство самых популярных имен в настоящее время заняты . Сложно, однако, это не значит невозможное - поэтому стоит ознакомиться с некоторыми советами и узнать, как выбрать доменное имя . Легко произносить и запоминать домен
Стоит начинать бизнес в социальных сетях?
Перед каждым предпринимателем встает вопрос: стоит переносить свой бизнес в плоскость социальных сетей? Специалисты утверждают: однозначно - стоит! Более того: из соцсетей можно даже начинать собственное дело. Стоит предупредить вас заранее: не стоит ожидать молниеносных результатов. Вполне возможно, что в течение нескольких месяцев вам придется лишь вкладывать силы и финансы без существенной отдачи. Но не надо опускать руки. При правильно построенной стратегии и профессионального подхода

Комментарии

Предложение постоянных вешалок и подвеска сегодня чрезвычайно богата, но какую модель выбрать - подвесную или стоящую и в каком интерьере модель подойдет лучше всего?
Темпы появления новых сайтов с каждым годом стремительно увеличивается. Если 10 лет назад компании в Украине в основном не интересовались своим присутствием в интернете, то сегодня это едва ли не главный компонент успеха. Многие бизнес уже открыли свои виртуальные представительства или интернет-магазины,
Синек начинает свою работу с фундаментального вопроса: почему некоторые люди и организации являются более инновационными, более влиятельными и более прибыльными, чем другие?
Синек начинает свою работу с фундаментального вопроса: почему некоторые люди и организации являются более инновационными, более влиятельными и более прибыльными, чем другие? Почему некоторые пользуются большей лояльностью со стороны клиентов и сотрудников? Даже среди успешных, почему так мало людей могут повторить свой успех снова и снова? Как компания создает сильное родство с клиентами? Книга объясняет концепцию Золотого круга, которая показывает, как вдохновлять, а не пытаться
Короткое рабочее время и отличные результаты?
Короткое рабочее время и отличные результаты? Сухая полировка Быстрая и одинаково эффективная обработка может быть достигнута в двухэтапном процессе полировки с использованием ореховых гранул. Весь процесс происходит в любом центробежная дробилка и включая измельчение занимает около 6 часов. Результат? Идеальные поверхности с глубоким зеркальным блеском. Кроме того, это надежная
Как быстро появятся результаты работы?
Как быстро появятся результаты работы? Что делать, если социальные сети не приносят результата? Где научиться правильно работать с социальными сетями, чтобы бизнес вышел на новый уровень качества? Сейчас мы попробуем подробно ответить на каждый из вопросов. Польза соцсетей для развития бизнеса С помощью социальных групп вы сможете: сделать свой бренд узнаваемым; получить лояльных клиентов; увеличить
Налагаются ли на пользователей сети ограничения на количество загружаемых данных?
Налагаются ли на пользователей сети ограничения на количество загружаемых данных? Пользователи (за исключением коммерческих клиентов) не имеют ограничений по доступной пропускной способности и объему загружаемых данных. Могу ли я создать сеть Wi-Fi в своей комнате? Да, такая возможность есть. Все, что вам нужно сделать, это купить подходящее устройство (важно, чтобы оно предназначалось для локальных сетей, устройства, предназначенные для абонентских сетей, таких

Что такое роуминг ?
Оуминг , Но что именно это?
Перед каждым предпринимателем встает вопрос: стоит переносить свой бизнес в плоскость социальных сетей?
Синек начинает свою работу с фундаментального вопроса: почему некоторые люди и организации являются более инновационными, более влиятельными и более прибыльными, чем другие?
Почему некоторые пользуются большей лояльностью со стороны клиентов и сотрудников?
Даже среди успешных, почему так мало людей могут повторить свой успех снова и снова?
Как компания создает сильное родство с клиентами?
Короткое рабочее время и отличные результаты?
Результат?
Как быстро появятся результаты работы?