Optimizing algorithms in machine learning and cryptography
Computer science undergraduate Andre Ceschia discovers a love of research
Andre Ceschia, BSc, Computer Science
Third-year computer science undergraduate Andre Ceschia has been interested in computers since he was young, and his interest in machine learning has only grown since the emergence of the generative AI program ChatGPT. "I find that predictive machine learning is very useful, especially if it helps people predict things that we wouldn't be able to see ourselves," explains Ceschia.
Fortunately, Ceschia has had numerous opportunities to put this fascination into practice at TMU. Already, he has worked as a Research Assistant on various projects, including one to reduce computing time for machine learning and another to break cryptographic ciphers using deep learning, a subset of machine learning.
A cipher is an algorithm that turns plain text into ciphertext (unreadable information) for encryption (or the other way for decryption).
In the project aimed at reducing computing time, Ceschia collaborated with computer science professor Claude Gravel and his postdoctoral researcher, Daniel Willhalm, to test new algorithms that would optimize the core algorithms used in machine learning. He began to try them out on real-world data sets, for example, by using a data set of BBC News articles and applying the algorithm to predict whether the article was positive or negative as a test of its predictive abilities. Ceschia experimented with the algorithm on several databases of varying sizes, from 20,000 articles to 200,000 articles, using a method that shrinks the data set beforehand.
In the cryptographic project, Ceschia is again working with Gravel and Willhalm using the CoDeepNEAT algorithm to evolve thousands of different neural networks and test them against one another. The goal is to determine which performs best and then, in turn, evolves to make the best next-generation algorithms. “The algorithm tries to mimic biological evolution in that it finds the best ‘parents’, it makes them mate, and then it produces offspring. Through the offspring, you have a chance to mutate and keep going until you find an optimized algorithm,” he explains. In doing so, Ceschia says he is trying to find ways to break ciphers that will help identify problems in existing encryption.
The project has a lot of applications for Internet of Things (IoT) objects, such as Smart TVs, where encryption is needed for a short time. By finding ways to break current ciphers, they can pass that information along to the industry to address any vulnerabilities. ”If we can find weaknesses, then it's possible a hacker can find out. So, if we find out and publish it, then it would be fixed before anybody can really do anything.”
With this taste of research and the possibilities, Ceschia is already set on doing more. “I definitely want to go into grad school, I definitely want to keep it going.”