Задать вопрос
xenon
@xenon
Too drunk to fsck

Если ли движки-методы для обнаружения шаблонов в данных?

Представим, что у нас есть множество данных в формате JSON, например:

{
  "kind": "person"
  "name": "John Doe",
  "age": 28,
  "occupation": "programmer",
  "sex": "male" 
},
{
  "kind": "dog",
  "breed": "collie"
  "name": "Fido",
  "age": 3
}


Или на входе - запросы к сайту (URI, длина запроса, тип контента, поля формы и их значения).

И у нас очень-очень много таких записей. Задача - находить ошибочные, странные, подозрительные записи. (Как в той шутке, когда мальчика зовут Джон'; DROP TABLE persons -- )
Человеку легко понять их структуру и понять, какие из них выбиваются из шаблона. Так же легко человеческое понимание реализовать в виде простого кода для проверок, что если kind==person, то age будет числом и от 0 до 120, а name - имеет разумную длинну (не 1 мегабайт), символьный, а sex либо male либо female.

А каким способом мы можем автоматически определить шаблоны для этого? Например, который поднимет тревогу если имя - "/etc/passwd" или слишком длинное или содержит инъекцию или например поле "occupation" встретилось для собаки. (но не потому что мы знаем атаки и настораживаемся от слов /etc/passwd, .env или SELECT , а потому что мы в обучающем сете не видели раньше имен из одного слова и со слешами)

Либо простой нейросеткой (собственной) можно ли это как-то сделать? Как?
Может какими-то более простыми методами?
Нельзя ли вообще каким-то байесовым фильтром, как раньше почту от спама фильтровали?
Или просто обычным алгоритмом это можно сделать, без магии ИИ?

Мне кажется, задача относительно простая, просто у меня нет опыта в Machine Learning. В какую сторону копать?
  • Вопрос задан
  • 33 просмотра
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 1
@exwill
Так подаешь на вход свои структуры + команду "найди странное"
Попробуй на разных моделях. Думаю, что задача действительно решается легко (но недешево)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы