Learn how to apply statistical learning and language processing techniques to build machine learning models capable of deriving actionable insights from human language and thus enabling automated and contextual interactions between computers and humans.
Applied Graph Theory
Learn the basics of graph theory before modelling data as a distributed knowledge graph and thereafter undertaking complex network analysis to uncover hidden patterns and relationships in order to derive actionable intelligence from structured and unstructured data.
Introduction to Deep Learning
Learn how to mathematically design, interpret and evaluate deep learning models that are designed to overcome challenges in traditional machine learning models by learning successive layers of representations in terms of other simpler representations, modelled as neural networks.
Applied Deep Learning
Learn how to apply the latest innovative deep learning research and techniques to exciting real-world business problems in Python by designing neural architectures and thereafter training, interpreting and evaluating distributed deep learning models.
Deep Learning for NLP
Learn how to apply the latest innovative deep learning research and techniques to build genuinely state-of-the-art and next-generation natural language processing systems to further automate seamless contextual interactions between computers and humans.
Introduction to Java
An introductory course to the Java programming language, one of the most popular programming languages in the world supported by a global community of millions and in which a significant number of web, mobile, artificial intelligence and big data frameworks are written.
Object Oriented Programming
Learn how to model the world as digital objects that store data and interact with each other, enabling software engineers to build reusable and interoperable software services and libraries that power modern web, mobile, artificial intelligence, big data and enterprise applications and frameworks.
Learn how to easily manage and persist objects to a wide variety of underlying SQL and NoSQL distributed data stores including relational databases, document databases, key-value databases, columnar databases and search indexes using industry-standard object mapping frameworks for Java and Python.
Test Driven Development
Learn how to develop better code, reduce the number of bugs in production systems, reduce overall development time and remove the fear from software changes and production deployments through a test-first approach to software development that promotes automation and improved test coverage.
Introduction to Spring Boot
Learn how to quickly build standalone applications and services in Java using the Spring Boot framework designed to remove the need for software engineers to write boilerplate code and instead enabling them to focus on the specific requirements of their application with minimum fuss and configuration.
Web Application Development
Learn how to build production-grade web applications in Java using the Spring framework including advanced techniques covering security, authentication and authorisation, session management, real-time messaging, management of secrets and advanced persistence to SQL and NoSQL databases.