The effectiveness of machine learning models may vary between the test phase and their use "in the wild" on actual consumer data.
Many research papers claim high rates of malware detection and false positives with machine learning, and often deep learning, models. However, nearly all of these rates are within the context of a single source of data, which authors use to train and test their models.
Machine learning has become more advanced but isn't used enough yet in security, says Hillary Sanders, data scientist for Sophos' data science research group. She anticipates usage will increase in coming years to address the rise of different forms of malware.
Historically, Sanders explains, static signatures have been used to detect malware. This method doesn't scale well because software needs to be updated with new signatures as more malware is created. Machine learning and deep learning automatically generate more flexible patterns, which could better detect malicious content compared with stricter static signatures.
"This enables us to move away from signature detection and more toward deep learning detection, which doesn't really require signatures and is going to be better at detecting malware that has never been seen before," she says.
The challenge is in creating a deep learning model to detect forms of malware that don't yet exist. Sanders explains the problem of using current data to test these models, which would ideally be used to detect future malware strains in different clients and environments.
"We can't be sure the data we trained on is going to be super similar to the data in organization deployment," she explains. "If we're training on data that isn't like the data we want to eventually test on, our model might fail catastrophically."
In current machine learning research, accuracy estimates don't consider how systems will process future data. Sanders says modern publications lack time-decay analysis and sensitivity analysis, which could lead to a lack of trust among those who rely on this information.
"If researchers forget to focus on sensitivity testing and time decay, our models are liable to fail catastrophically in the wild," she explains.
Time-decay analysis simulates how the accuracy of data decreases over time, she explains. Consider a dataset with information from January through April. If a machine learning model is trained on data before February 1, it will do well on processing data from January, but accuracy will begin to decay after February.
Sensitivity analysis tweaks inputs for machine learning models to see how output is affected. Sanders will present sensitivity results in her presentation titled "Garbage In Garbage Out: How Purportedly Great Machine Learning Models Can Be Screwed Up By Bad Data" at this year's Black Hat USA conference in Las Vegas.
This analysis will include a deep learning model designed to detect malicious URLs, which was trained and tested using three sources of URL data. As part of her discussion, she'll dive into what caused the results by focusing on how the data sources are different, and higher-level feature activations the neural net identified in some datasets but not in others.
For security teams, the end goal with deep learning is to stop malware. If training and testing data is biased compared with real-world data, models are likely to miss out.
"You ignore the thing you could be optimizing for," says Sanders. "You could miss swaths of malware."