The Power of Predictions: Deep Learning Neural Networks Make Debut at FlightAware
FlightAware is excited to announce the introduction of Neural Network powered predictive models for FlightAware Foresight. This cutting-edge technology allows airlines and operators to better handle flight delays and disruptions, empowering them to proactively manage their operations and improve the passenger experience. Below, we will explore the benefits of these new predictive models and how they are poised to revolutionize the aviation industry. We will also examine how FlightAware's advanced technology can help airlines and operators optimize their operations and provide more reliable and efficient service to their customers. So fasten your seatbelts and join us on this exciting journey into the future of aviation technology.
Adam Suarez leads the Predictive Technologies team as the Director of Engineering for Aviation Insight at FlightAware. This team is responsible for developing the FlightAware Foresight predictive models, including ETAs for landing time and gate arrival time, as well as taxi-out duration estimates. The team has recently implemented significant changes to their models, most notably the incorporation of neural networks into FlightAware.
Senior Marketing Communications Strategist Kathleen Bangs sat down with Adam to discuss these developments and gain insights into the team's current projects.
What is the history of machine learning at FlightAware? Where did it all start, what's been done in the past, and where are we heading?
It started about six years ago with an intern project. Our customers indicated an interest in getting predictive estimates for ETAs, and we did some initial work to see if we could predict those events. Moving forward, we tried to bring it into a global product, and there were a lot of challenges around figuring out how to do it for every airport in the world and every flight currently in the air. It took the engineering team at least a year to build the systems and the data pipelines and figure out how to get those models into customers' hands.
What is a deep learning neural network?
A neural network takes inspiration from brains, the idea being that you start with a very simple component, so a neuron is much more complicated than a node in a neural network, but it's much less complex than the system as a whole. You start with fairly simple building blocks, which in math lingo would be matrix multiplication, function evaluation, and the composition of functions. With these simple building blocks, you build them up in a graph that looks like the neurons in a brain, but with each simple building block, you're able to build very complex approximations to very complex functions but it gives you the ability to calculate what's necessary for doing the optimization. It's what is called training in machine learning. From these simple building blocks, we can build tremendously complex systems that can also be computationally feasible to estimate ideal versions of them.
What makes it unique, and why did FlightAware pursue this kind of new development?
Neural networks are unique in the machine learning and statistical landscape, whose general goal is to estimate unknown functions. What we discussed in terms of the structure of neural networks gives some huge computational advantages that, in FlightAware's specific case, we have a tremendous amount of data. We want to fit in everything from flight positions to weather data to information about airports and aircraft, and we want a function that can now estimate arrival times.
Some statistical machine learning approaches would be just computationally infeasible to estimate with other types of methods. Neural networks give us the ability to do mini-batch training, allowing us to feed in our training data a little bit at a time so that we can use a vast amount of data, and come up with optimal estimates of how we will generate these predictions. It also does a very good job of borrowing strength or learning from disparate pieces of data. Our neural network approach allows us to unify our thousands of models, which used to be specific to given airports, and now do everything in one model. For example, whether a flight is going to London Heathrow or to JFK in New York, all of the predictions come from one single model. Those approaches that are available on the neural network approach, which weren't available in our previous models, allow the model to learn similarities between these various airports but do everything at once, so we can take full advantage of this vast amount of data that FlightAware has.
What kinds of innovation do neural networks enable for FlightAware?
Many! One that I already mentioned is that we no longer have to worry about training thousands of different models. We can focus on training one model where the biggest hurdle is how we fit all of our data into the training pipeline for a single model. This greatly simplifies our approach to training and deploying these models.
Additionally, it's now much easier to do multi-objective learning, where we have one model that produces multiple outputs. For example, previously we had separate models for landing times and gate arrival times. Now we're able to do these things jointly within one model, giving us more reliable and more consistent estimates.
It also gives us the ability to build in uncertainty quantification, meaning not only can we produce our best guess of when a flight will arrive at its gate, but at the same time, we can produce prediction intervals that enable entirely different types of decision-making for our customers.
With so many people now aware of the application of artificial intelligence and machine learning, is there a particular use of deep learning in another industry that serves as a model for FlightAware?
Language models have become incredibly popular, and language models deal with a sequence of words. At FlightAware, we have sequences of flight positions. Although the two things may seem different, the underlying models for these two things are actually very similar. When you deal with words in sentences, you have to translate a word into a numeric representation. Language models try to understand a sequence of words and then learn how to make an output from that. The data that we have (where a flight is located, its speed, and altitude) already includes the numeric positions, so what we want to be able to do is understand a sequence of flight positions in context to be able to build a prediction. Even though they can sound very different, they have many similarities. There are a lot of different approaches to this. For example, transformer models for a sequence of words can also be applied when you have numeric inputs. Our latest neural network model is actually using transformer block as part of it to understand what's happening with a flight as it progresses.
Are there opportunities for innovation that would not be possible or be far more difficult without a neural network?
Neural nets, because they're built up from smaller components, many people have done a really good job at simplifying computation for some very particular structure. Meaning neural networks are very popular in areas like image processing and object detection within images.
One of the things that this new approach will enable is bringing in more complicated features. Previously we included weather data as part of our models, but they are features that are available at specific points. What we can now do is bring in weather maps and actually have images as part of our models. We can deal more easily with other types of time series. This approach allows us to bring in much more complicated data that we believe will take our prediction accuracy to a whole new level.
You just spoke about innovation in terms of new features that we could feed into our models. Are there also opportunities for innovation in terms of what the model can produce?
I've already mentioned one, which is that instead of producing a single ETA prediction of what a flight is going to arrive at its gate, we can also output multiple values for that so that we can create prediction intervals, and this can be done using quantile estimates, allowing better decision-making opportunities for our customers.
For extending our models in the future, we can do things like predicting the future path of a flight or predicting images. These models can just as easily output very complex structures as they can “eat them in” in terms of features.
You've spoken about what a neural network is, but how can people get access to these predictions now?
The main way people can receive our predictions are through FlightAware’s existing data products. Our REST API product, Aero API, allows you the ability to request predictions as you need them. We also have a streaming version of our data product called Firehose℠ , which gives you a stream of our predictions for any subset of data that you're interested in.
With the acquisition of FlightAware by Collins Aerospace there are also exciting opportunities to have these predictions built into other applications in aircraft management and airport management. One example we're really excited about is the Hermes™ product, which FlightAware Foresight has already been fully integrated into. We expect to work closely with our colleagues to continue to develop these applications and make sure that any significant advancements that we introduce can be incorporated into other Collins Aerospace applications.
Any time there is a new technical undertaking, there are bound to be challenges. Are there any lessons learned that you could share?
There are definitely technical challenges in moving to this new structure of model, like having to feed even more data into our training. We like to take inspiration from our peers in the tech world that are doing similar types of training, and stay up to date with the latest libraries, packages, and technologies that are out there for doing our training. For example, we're really excited about an open-source project called Ray. We will be migrating our training to their platform, which enables distributed training of neural network models at a really huge scale. We can take full advantage of our data but do it really efficiently.
Any final thoughts?
Thank you for letting me talk today about something I'm really passionate about. Deep learning and neural networks have been a big part of my career. They have helped a lot of different industries in terms of making predictions and the path that they're allowing us to go down, in particular, getting to the point of expressing uncertainty in our predictions is just huge personally for me, but also for our current and future customers. I think a big part of machine learning in general and the work we have to do is making people feel comfortable with machine learning predictions, and a big part of that is understanding their uncertainty and what confidence should you have in them. We already believe we provide a great product in terms of the accuracy of our predictions, but we hope to be even more transparent, provide even more data so that our customers can make new decisions and feel even more comfortable in the decisions they're already making with our predictions.
Adam Suarez, is the Director of Engineering for Aviation Insight at FlightAware. He leads the Predictive Technologies crew that is responsible for developing the machine learning models that make up FlightAware Foresight's suite of predictive products. Prior to joining FlightAware, Adam previously worked as a Data Scientist at Monsanto Company and Mastercard. Adam holds a Ph.D. in both Statistics and Mathematics from North Carolina State University. He is an expert in Deep Learning, MLOps, and Bayesian Statistics.
With the most comprehensive dataset in the world, FlightAware Foresight's predictive models provide unprecedented insight to improve operational efficiencies and facilitate better decision-making in the air and on the ground.
Join the discussion...
Leave your comment below.