COURSE DETAIL
This course examines information technology infrastructure and security in the business environment. It covers the different components of IT infrastructure and security, as well as the best practices for designing, implementing, and managing secure systems.
COURSE DETAIL
This course aims to engender a mastery of the fundamentals of programming in C++, a language compiled to optimised machine-code, usable in a uniquely wide range of scenarios, from low level ‘close to the metal’ ones to ones involving high level programming abstractions. Command-line tools are used for program development so the module serves also as an introduction to that approach.
COURSE DETAIL
This advanced course introduces the basics of artificial intelligence, which include learning, searching, knowledge management, inference, and their applications. Transformer and Large Language Model are mainly discussed in addition to other types of deep neural networks. Classical artificial intelligence topics (before the deep learning era) is also overviewed. Applications to solve web, industrial, and scientific problems with artificial intelligence will also be introduced.
Prerequisite: It is strongly recommended that students complete other basic machine learning and deep learning courses before enrolling in this course. The instructor reviews the basics of machine learning and deep learning, but it is not a guarantee that the review will be enough for students who did not previously take any related courses.
COURSE DETAIL
In this course, students learn how to use Python to retrieve and parse data from biological repositories through bulk download and application programming interfaces (APIs). They learn about established data formats for different data modalities so that they understand the structure and content of the data they are using and how it was generated. Each week students focus on analytical tasks in linked topics that span the main components of modern biomedical informatics research. Topics change slightly each year, but typically include tools, algorithms, and approaches for biological sequence, multi-omics (transcriptomics, proteomics, methylomics), biomedical network, and biomedical text analysis. Each topic is explored using real-world examples.
COURSE DETAIL
This course focuses on Deep Learning (DL), with an emphasis on recent advances in Natural Language Processing (NLP). It is structured into lectures that cover the fundamental concepts of the field, complemented by practical tutorials and exercises, where these concepts are further expanded and practically implemented through live coding sessions (mainly in Python). The course is organized along the following themes: Recap of Machine Learning (ML) fundamentals; Introduction to Neural Networks and the connectionist paradigm: from the perceptron to Multi-Layer Perceptrons (MLPs), universality theorems, the backpropagation algorithm, and principles of Neural Network design; The rise of Deep Learning: Convolutional Neural Networks (CNNs), regularization techniques, and residual connections. Basics of Recurrent Neural Networks (RNNs), attention mechanisms, and Transformers; Introduction to Natural Language Processing (NLP): text preprocessing, static and contextual word embeddings, language modelling, and neural approaches to text processing—from neural machine translation to modern large language models (LLMs). Course prerequisites: solid understanding of calculus, linear algebra, probability, and statistics, along with basic prior programming experience in Python.
COURSE DETAIL
This course provides a technical overview of decision making and action control in robotics with an emphasis on the development of generalist robots. The course covers:
(1) fundamental robot kinematics that discusses geometric relationships between the robot’s body and the end effector;
(2) classical control and planning, that provides a theoretical basis, and
(3) state-of-the-art robot learning that facilitates adaptive and continual learning of robot tasks.
Course Prerequisites: Machine learning; linear algebra; probability; computer vision; linux system; python programming, and pytorch programming.
COURSE DETAIL
This course provides a comprehensive introduction to both the practical and rigorous foundations of software engineering as well as both soft and hard skills. With them, students learn how to design, develop, test, verify, and maintain high-quality software systems.
Topics include software development life cycles, design patterns, testing and coverage, code quality practices such as code reviews and coding style guides, and formal verification techniques.
In this course, students engage in software engineering by applying coding, refactoring, and testing techniques to support continuous development and maintainability in real-world projects. Students also analyze given software designs or code using design patterns, testing strategies, and code quality standards. We also evaluate the strengths and limitations of various development methodologies and design alternatives to determine the most suitable approach for a given context. We design and implement tools or procedures that verify software correctness using logic-based reasoning and formal methods and build maintainable, high-quality software systems.
Prerequisites: CAS1102 (Object-Oriented Programming), CAS2103 (Data Structure); students should be familiar with object-oriented languages including C++, Python, etc. Students should be familiar with implementing data structures and be able to analyze pros and cons of several data structures. Students should have a Github account.
COURSE DETAIL
This course covers algorithm design techniques and algorithm analysis techniques. It deals with inductive and recursive thinking through which problems can be tackled and solved.
In the class, students learn organized and effective thinking methods for problem solving. Topics include analysis tools (asymptotic complexity, recurrence), sorting and selection, retrieval and insertion of data (search tree, hash table), dealing with sets, dynamic programming, graph algorithms, text pattern matching, limit of computation (NP-Completeness), problem space, etc.
Prerequisite: Data Structure. Students should also be familiar with the basics of discrete mathematics and probability.
COURSE DETAIL
This course examines artificial intelligence and its real-world applications. It aims to give students a historical overview of the development of AI and its underlying concepts, to understand its current and potential impact on individuals, organizations, and society, and to analyze and discuss the future of AI and its potential applications. Additionally, the course will equip students with the knowledge to use AI for productivity and creativity and to engage with AI responsibly, considering ethical considerations and responsibilities.
COURSE DETAIL
This course covers the essential programming structures for managing data and controlling computation, as well as abstractions that facilitate decomposing large systems into modules. The course also covers pragmatics of programming languages, including abstract syntax, interpretation and domain-specific language implementation. Students do not learn how to use any one language, but instead learn the basic elements needed to understand the next 700 programming languages, or even design their own.
Pagination
- Previous page
- Page 7
- Next page