Recall that Scientific computing is the science of solving problems with computers.
Disecting this field into it's engineering and science disciplines, we have
Computational Engineering : Building mathematical and computationally feasible models from scientific facts.
Computational Science : Establishing scientific facts and theorems. (This will be described in the final section)
Computational engineering is a broad spectrum, where core of which deals with numerically solving partial differential equations
to estimate it's parameters after quantifying the uncertainity from statistical principles. This also forms the foundation for various disciplines
like Computational neuroscience and Natural science related fields, Computational statistics and financial fields etc. Today Machine learning
seems mostly about neural networks, which is just one aspect of Computational enginnering, yet containing myraids of applications. But I do see
that the future direction of research will blur the gap between machine learning and computational engineering.
Recent advances in Computer Vision and Natural Language Processing make heavy use of meticulously enginnered concepts and neural network operations
like Convolution neural networks, Recurrent neural networks, Capsule networks, Temporal convolutions, Attention and the list goes on. These two fields are particularly important
because most of it's mathematical models have been successful deployed for real time use cases. For instance, a technique called Simultaneous Localization And Mapping
(SLAM) holds the key blue-print behind the working of self driving vehicles. I will be dwelling into all of the above concepts.
I will also touch upon the advancements in the so called 3rd generation neural networks like Spiking neural networks,
which tries to address the current short-commings by comming up with models that closely mimics the human brain.