Facts to get straight on Artificial Intelligence and more
When it comes to catchphrases like Artificial Intelligence and Machine Learning, there is a common misconception that ‘intelligence’ is an add-on, ready-made asset, much like a microwaveable meal— in truth, it is quite the opposite. A machine is no more than a heap of material put together, programmed to do whatever a human (with actual intelligence) has told it to do.
Human-like intelligence is a complicated thing to programme in a machine, because it is “the capacity to acquire and apply knowledge,” ‘to benefit from past experience, act purposefully, solve problems, and adapt to new situations’. Some define intelligence as having general cognitive problem-solving skills: a mental ability involved in reasoning, perceiving relationships, and so on. A machine can’t reason nor sophisticatedly perceive relationships outside of its programmed behaviour, not in the way Man can (cue rationale for the ‘Artificial’ in AI)… at least, not yet. When it comes to reaping the benefits of machine learning for enterprises, there are still questions many business owners have unanswered.
In an attempt to better understand its applications, we sat down with Francesco Visconti, Blockchain and AI Specialist at Mangrovia, to pick his brain (pun unintended) and better dissect machine learning, AI and other correlated themes.
I have an MSc in Physics from my alma mater, La Sapienza University in Rome. Having decided upon graduation, however, to become a programmer, I had initially moved to Mallorca for a scholarship. Turns out, fate had other plans for me and I ended up returning to academia, working first at the Italian National Council of Research, and then the Italian National Institute of Astrophysics as a technologist. In 2018 Mangrovia came knocking, so here I am, back to being a programmer after a 10-year academic career.
My approach to life is quite a rational one, while eclectic at the same time: I follow my intuitions, nurturing myself with art. Music is my main passion. I used to DJ in parties before becoming a father of two. That’s when my life completely changed, enriched in a whole new way.
I still listen to tons of music of course, as does my family (they aren’t allowed not to!).
What do you do for Mangrovia? Can you describe a typical day at the office?
Currently, I’m developing on Hyperledger Fabric, writing smart contracts to manage our upcoming digital tradable card game, Cyberdeck: we are all very excited about it!
I’ve also set up a demo to demonstrate the potentialities of image classification. It’s a web interface to train any major state-of-the-art architecture on any image dataset (transfer learning is extremely cool), and then predict on new images. Everything is run on dockers so that it is portable on any Linux box.
I spend my days designing solutions, writing code and doing technical sales support. I write smart contract code for both Ethereum and Hyperledger Fabric, and I’m constantly discovering new technical approaches (it’s a fast-moving world, that of blockchain and machine learning!).
A typical day starts with some tech news along with my breakfast, before my sons get up: interestingly enough, it is there that I find new technical tendencies and input for my day-to-day.
Usually, by the time I arrive at the office, I’ve already exchanged half a dozen ideas with my colleagues on my phone. You could call it sort of daily SCRUM we have, prior to seeing each other in person!
So many people use the words “machine learning” and “artificial intelligence” as if they are interchangeable. How would you describe the difference between the two and which one would you say better describes your work?
They overlap, of course. I don’t think there is a clear separation. Traditionally, AI is the study of “intelligent agents” that can maximise the chances of achieving their goals. The term machine learning should be used any time we want to explore tools from computational statistics to create data-driven models to be used by a machine to make classifications or predictions (with predictions we mean things such as: understanding a handwritten note, predicting energy consumption or production, inferring a tennis player’s behaviour in a particular situation).
I’ve been working for three years on classification/regression problems with machine learning techniques and frameworks. Definitely my cup of tea.
Why can’t we just use statistical/analytical models instead of machine learning?
Well, we could… but there are so many things we don’t know!
Take this for example: we use probability to predict what face of a die we’re going to see after a throw; if the die has six faces, we say the probability will be one out of six for each face (unless we are dealing with a loaded die). But suppose you know the exact initial velocity vector of your throw, the micro-feature of the surface your die will land on, the air composition in your room to evaluate friction… Do you see what I mean? You could probably have a deterministic model to predict the precise result of any of your throws! But this isn’t a manageable nor reasonable way of predicting things, so we resort to probabilistic models, which can tell us enough things on their own.
Machine learning techniques are basically statistical techniques, and very well understood by scientists. What has radically changed in recent years is the hardware and its availability — this has made it possible to approach some problems from a data point of view, comparing the results with what we expect from our knowledge. We always introduce a bias with our knowledge. Assumptions are required to build physical models: with Galileo’s scientific method, we can prove whether we are wrong or right, and when we get it we get perfect results. But some problems are still far too difficult, so a data-driven approach is necessary.
What do you think is the main problem most companies face when it comes to machine learning?
Not fixing a baseline.
Most companies don’t know what to compare their results with.
How do I decide if I am satisfied with my model that recognises food in pictures? I need something to compare it with. You would probably say “the more accurate the better”, but beware the Accuracy Paradox! (I see you Googling this… you should).
Generally speaking, I would say the main problem companies have is in properly defining their needs. You need to diagnose what tools you require to then fulfil those, all while increasing the efficiency of your internal processes. Only then can you evaluate, with the help of experts, if machine learning will actually benefit your company.
Why can’t I just ingest tons of data in my ML model and wait for results?
Ahh. I have a favourite quote on this.
“Science is built up of facts, as a house is with stones. But a collection of facts is no more a science than a heap of stones is a house.”
Pragmatically: machine learning is a very, very powerful tool in our hands, but only meant for facing complex phenomena we can’t address with a physical model. Its one distinguishing characteristic is that it is data-driven, which is what makes it so suitable for systems in which not every feature is a physical observable you can measure (preventing you from building an analytical model such as the gravity model).
Physicists and mathematicians often need to do heavy assumptions to build analytical or statistical models for very complex systems, and this inevitably introduces a bias, which can be overcome by a machine learning model.
But we should heed Poincaré’s advice, or we might end up building a complex Recurrent Neural Network to compute the time it takes for a stone to drop from the leaning tower of Pisa.
Robotics has been in the industry for quite a bit of time already. Do you think there’s been a real contribution of value brought in by ML/AI in recent years?
Like I mentioned: hardware is just incredible these days, and the best is yet to come.
What makes those robots act are tons of complex calculations, tensor multiplications and derivatives: the speed you can achieve with modern hardware allows you to build astonishing products and services, such as real-time filters for the camera on your smartphone, real-time highlights for a tennis match (even at the end of a single rally!) based upon crowd wows analysed by a computer.
When I think of robotics, my mind goes to those car production lines, or to conveyor belts for food packing or printed circuit boards. To get robotic arms to move as desired requires a lot of complex operations and research, both of which are deeply connected to machine learning.
How do you think blockchain and machine learning can best complement each other?
When I say data-driven, I’m talking about *a lot of* data.
The more you have, the better you can train your model (except if you use transfer learning techniques — and you should — then you don’t need so many… but that means that it would’ve had to be trained intensively beforehand, by those before you).
When feeding an algorithm with data, speed is important. The blockchain is not designed for this use case, since it’s not fast enough in fetching data.
Science suffers from a reproducibility issue, so finding a suitable set of information to save in a blockchain in order to reproduce your results could improve the reliability of your searches. A very cool idea would be to store your data science work in a shared, tamper-proof ledger, including all the associated metadata.
. . .
Francesco Visconti is part of Mangrovia’s secret sauce: his status as Machine Learning guru is cemented in his scientific background in Physics. He’s worked as a Solution Designer and Software Developer in scientific applications, both in academia (public research centres) and the private sector. Projects he’s been involved in include the CTA (Cherenkov Telescope Array).