Mi proyecto actual es trabajar en la intersección de la ciberseguridad y el aprendizaje automático.
Existen algunos métodos interesantes en estas tres áreas para abordar la ciberseguridad. Los algoritmos más comunes utilizan aprendizaje supervisado y no supervisado para detectar amenazas / anomalías.
Aprendizaje supervisado
- Quiero construir un robot autónomo. Debe poder mirar a su alrededor y juzgar a dónde debe ir. ¿Qué conocimiento necesito para lograr esto?
- ¿Cuál sería el campo de estudio entre la física teórica y ML / AI?
- Cómo usar la red neuronal entrenada
- ¿Cómo utilizamos funciones como la inteligencia artificial y el procesamiento de imágenes en una aplicación?
- ¿Qué son las no linealidades continuas en el contexto de las funciones de activación en redes neuronales?
El ejemplo más fundamental de aprendizaje supervisado en ciberseguridad es usar datos etiquetados (tráfico normal o tráfico anómalo) para hacer predicciones sobre el tráfico futuro de la red. Sin embargo, esto es particularmente desafiante por algunas razones.
Primero, la relación entre el tráfico normal y el tráfico anómalo es extremadamente alta, lo que hace que los algoritmos de aprendizaje supervisado tengan un rendimiento inferior al óptimo en general.
En segundo lugar, es realmente difícil encontrar conjuntos de datos que hayan etiquetado de manera confiable el tráfico anómalo y el tráfico normal, ya que a menudo no hay “expertos” que puedan hacer esta etiqueta y la variabilidad de las características en el tráfico anómalo es bastante alta. Esto no se hace más fácil por el hecho de que muchos datos modernos de tráfico de red están altamente encriptados.
Otro ejemplo de aprendizaje supervisado en este espacio es el análisis y pronóstico de series temporales. La idea básica es que, dada una gran cantidad de datos sobre el tráfico anterior (esto puede contener o no anomalías, generalmente se supone que contiene anomalías mínimas), puede predecir la naturaleza del tráfico de red futuro. Cualquier cosa que no se ajuste a sus predicciones en el futuro se clasifica como una anomalía, y esto ha mostrado algunos resultados prometedores. Esta es la idea que he estado explorando profundamente en mi investigación.
Hay otra clase de algoritmos que no son exactamente algoritmos de aprendizaje supervisados, sino que comparten muchas ideas llamadas algoritmos de detección de anomalías. La idea es que usted modele las características de los datos por una distribución gaussiana y luego le dé un nuevo punto de datos, lo clasifique como una anomalía si la probabilidad de que ese punto de datos ocurra es menor que algún umbral predeterminado. Puede leer más sobre estos algoritmos en las notas de Andrew Ng en Coursera. [1]
La razón por la que elegí no seguir el método de distribución gaussiana en mi investigación es que las características del tráfico de red han sido analizadas a fondo por la literatura y esta investigación ha concluido que el tráfico de red no está suficientemente modelado por una distribución gaussiana. [2]
Aprendizaje sin supervisión
Existen varios métodos intuitivos en el aprendizaje no supervisado para clasificar las anomalías. La idea más simple es simplemente tomar el tráfico de red y agruparlo en dos grupos separados: el que tenga menos puntos de datos es su tráfico anómalo.
Otro método intuitivo es observar los datos del tráfico “normal” y encontrar el centroide de este grupo único. Luego, para el tráfico futuro, simplemente defina una distancia predeterminada de este grupo y cualquier cosa mayor que esa distancia se clasifica como una anomalía. [3]
Los algoritmos de agrupamiento más comunes que se utilizan para este problema son k-Means o k-Medians, pero se han realizado investigaciones que utilizan otros algoritmos más sofisticados.
Aprendizaje reforzado
Sinceramente, no conozco ningún trabajo significativo en el área de seguridad informática del aprendizaje automático que utilice algoritmos de aprendizaje por refuerzo. En una búsqueda rápida en Google, encontré un trabajo interesante que modeló los escenarios de ataque cibernético como un juego de confrontación y utilicé algoritmos de Q-learning para resolver el problema. [4]
Notas al pie
[1] 15_Detección de anomalías
[2] http://www.utdallas.edu/~kxs0281…
[3] https: //pdfs.semanticscholar.org…
[4] http://ais.cs.memphis.edu/files/…