Course Synopsis

CDS503/4 – Machine Learning

Upon successful completion of the course, students will have a broad understanding of machine learning algorithms. Students will be acquiring skills of applying relevant machine learning techniques to address real-world problems. Students will be able to adapt or combine some of the key elements of existing machine learning algorithms. Topics which will be covered in this course include supervised and unsupervised learning techniques, parametric and non-parametric methods, Bayesian learning, kernel machines, and decision trees. The course will also discuss recent applications of machine learning. Students are expected to obtain hands-on experience during labs and assignments to address practical challenges. An understanding of the current state-of-the-art in machine learning is done via a review of key research papers allowing students to further research in machine learning.

At the end of this course, the students will be able to:

  • To apply relevant machine learning algorithms for typical real-world problems.
  • Manipulate machine learning algorithms which can be adapted to more complex scenarios.
  • Synthesize findings and recommendations.

CDS505/4 - Data Visualisation & Visual Analytics       

This course discusses the use of computer-supported, interactive and visual representations of data in order to amplify cognition, help people reason effectively about information, find patterns and meaning in the data, and easily explore the datasets from different perspectives in particular in data-intensive environment. The course covers techniques from two branches of visual representation of data, namely data visualization and visual analytics. In data visualization, the course covers scientific visualisation techniques (representations of empirically-gathered scientific datasets) such as contours, isosurface, and volume rendering as well as specifics techniques in information visualisation (representations of abstract datasets) which include tables, networks and trees, and mapcolour. In visual analytics, a visualization process features a significant amount of computational analysis and human-computer interaction. So, the topics covered in this part of the course include view manipulation, multiple views, reduction in items and attributes, and focus + context as well as analysis case studies involving a visualization system or tool.

At the end of this course, the students will be able to:

  • Select the right visualization techniques for any given problems or applications.
  • Adapt visualization techniques for particular application.

Apply several techniques either by designing or developing specific visualization techniques or using existing tools.

CDS521/4 - Multimodal Information Retrieval

This course provides the basic concepts, principles and applications for multimodal (text, image, video and audio) retrieval. This course covers basic techniques for content processing, indexing, representation, ranking, querying, and evaluation for multimodal information retrieval. In addition, advanced techniques such as large scale retrieval, multimodal analysis, and cross media retrieval will be covered based on the latest context such as mobile devices, social media and big data.

At the end of this course, the students will be able to:

  • Summarize and criticize the state of the art of multimodal information retrieval.
  • Adapt the framework, models and techniques of multimodal information retrieval.
  • Solve problems in emerging multimodal applications using the learned techniques.

CDS522/4 - Text and Speech Analytics

A lot of the information resides in documents and speech format. This information however is not directly utilisable because they are unstructured. The course focuses on the theory and applications of natural language processing and speech processing to retrieve linguistic knowledge in these sources. The linguistic knowledge from words, syntax and semantics of sentences will be combined with machine learning algorithms and statistical approach to find, organize, categorize, analyze and interpret the unstructured and semi-structured text that allow users to seek advice to make a decision.

At the end of this course, the students will be able to:

  • Describe basic concepts and algorithms in natural language and speech processing, for example tokenization, morphological analysis, ngram, tagging, parsing, word sense disambiguation and decoding.
  • Manipulate natural language processing and speech processing approaches to obtain different levels of linguistics information such as word, sentence and semantics for text analytics.
  • Design custom solutions using natural language processing and speech processing techniques or text and speech analytics problems in organizations.

CDS523/4 - Forensic Analytics and Digital Investigations

This course introduces fundamental knowledge and techniques of computer forensics and digital investigations. Starting from an overview of the profession of digital investigator, issues on the digital forensics and investigations on big data, and the current practices for processing crime and incident scenes will be explained. Next, the principles of interpretation of evidence, ways of controlling and preserving evidence, and techniques for manual interpretation of raw binary data will be detailed. The students will learn advanced techniques in forensic investigations on big data: methods to identify big data evidence, collecting and performing analysis on the data, and then the proper techniques to report and present the forensic findings as well as the proper way to act as expert witness in reporting results of investigations.

In addition, technical and legal difficulties involved in searching, extracting, maintaining and storing digital evidence will be explained along with the legal implications of such investigations and the rules of legal procedure relevant to electronic evidence. 

At the end of this course, the students will be able to: 

  • Conduct digital investigations that conform to accepted professional standards and are based on the investigative process: identification, preservation, examination, analysis and reporting.
  • Identify and document potential security breaches of computer data that suggest violations of legal, ethical, moral, policy and/or societal standards.
  • Master the principles and practices of big data forensics and digital investigations.
  • Access and critically evaluate relevant technical and legal information and emerging industry trends.

CCS516/4 – Computational Intelligence

The course introduces computational intelligence. It begins with an introduction to evolutionary algorithms, artificial neural networks, and fuzzy system. Various variants of evolutionary algorithms, artificial neural networks, and fuzzy system are explored. Several issues within evolutionary algorithms (e.g. parameter tuning and control), artificial neural networks (e.g. learning rules, architecture and deep learning), and fuzzy system (e.g. fuzzy assessment, fuzzy reasoning) are pursued. 

At the end of this course, the students will be able to:

  • Analyse basic principles and concepts of evolutionary algorithms, artificial neural networks and fuzzy systems.
  • Adapt evolutionary algorithms, artificial neural networks and fuzzy systems in problem solving.
  • • Integrate evolutionary algorithms, artificial neural networks and fuzzy systems as hybrid intelligent system.

CCS525/4 –  Advanced Cloud Computing Platform

Cloud computing is one of the most recent technologies that can lower total cost of ownership and provide greater flexibility. This course focuses on theory, concepts, principles and issues that arise in the design and implementation of high-performance cloud applications that use advanced cloud computing platforms. Topics covered includes distributed systems, parallel models, virtualization technologies, cloud system architectures, cloud service models, cloud computing platforms, cloud databases, cloud infrastructure services, cloud security and advanced topics.      

At the end of this course, the students will be able to:

  • Evaluate application, selection and construction issues of advanced cloud computing platform.
  • Adapt cloud computing platform basic services for construction of cloud applications.
  • Propose suitable components of cloud computing platform

CCS526/4 –  Wireless and Mobile Communications

This course introduces the students to infrastructure based wireless technologies such as Cellular, WiFi, and WiMAX, and infrastructureless wireless technologies such as Wireless Mesh, MANETs, and wireless sensors networks. This course also includes Quality of Service (QoS) parameters such as QoS classes, provisioning, and network management, mobility and roaming, wireless routing, mobile IP and protocol independent handovers, performance issues of wireless network protocols, packet header overheads, suppression, and compression. Advanced topics such as location-based services, and emerging wireless technologies are also discussed.

At the end of this course, the students will be able to:

  • Point out various network technology techniques based on infrastructure or infrastructureless as well as suitability of applications in different application scenarios.
  • Adapt advanced technologies such as location-based services and wireless network communication to develop secure applications.
  • Study the Quality of Service (QoS) classes, and issues and limitations of wireless networks.

CCS527/4 –  Internet of Things

This course focuses on existing and potential applications of Internet of Things (IoT). Standards, protocols and application overlays for IoT will be introduced. IoT device access via Internet Gateway and security issues will be studied. Data Analytics, Data Management and IoT Privacy Issues will be covered. Students will be briefly exposed to energy management issues for IoT. Practical disclosure to IOT devices and software will be provided through assignments and projects.

At the end of this course, the students will be able to:

  • Point out various network technology techniques based on infrastructure or infrastructureless as well as suitability of applications in different application scenarios.
  • Adapt advanced technologies such as location-based services and wireless network communication to develop secure applications.
  • Study the Quality of Service (QoS) classes, and issues and limitations of wireless networks.

CCS528/4 –  Information Security and Cryptography

The course presents an overview of the history, concepts, practice and theoretical foundations of modern cryptographic algorithms. The course also addresses the issue of trusted computers used to provide various computer security services. The first part of the course will cover historical background, basic concepts and symmetric cryptography (including DES, Blowfish, AES, and other ciphers). The second part of the course will cover asymmetric cryptography and discussion on how these cryptography primitives (symmetric, asymmetric and unkeyed cryptography) addressed the issues such as confidentiality, integrity, authentication, and non-repudiation. In the third part of the course, the class will analyse the most popular implementations of cryptography used on the Internet such as PGP, SSL, IPSec, Kerberos etc.

At the end of this course, the students will be able to:

  • Explain concepts of cryptography and computer security.
  • Adapt cryptographics algorithms and protocols in computer applications.
  • Select critically potential publications to generate new ideas.

CCS590/20, CCS599/20 – Dissertation

The course aims to enhance students’ knowledge and skills in planning and implementation of a research project in the field of computer science. Students can choose research topics in related areas in computer science but they are encouraged to choose research topic in their respective focused area, and then proceed to conduct extensive review of literature pertaining to the topic and eventually carry out the research under the supervision of a lecturer.  At the end of the course, students are required to produce a satisfactory dissertation in order to fulfill their degree requirements.

At the end of this course, the students will be able to:

  • Design a research project in the field of computer science.
  • Formulate new solutions for computer science problems.
  • Defend orally the research outcomes in the field of computer science.
  • Practice the research tasks and processes in an ethical manner.
  • Perform research at a higher level in the field of computer science.
  • Perform a research project with proper planning, judgements and decisions.

CCS591/4 – Research and Empirical Methods in Computer Science

This course aims to introduce techniques in conducting research, academic writing and presentation especially in the field of Computer Science. It will guide students to choose a title or a research problem, understand the process and the related technique and also tools that can be used to support research. Students will conduct literature review, synthesise reference sources, argue logically and evaluate scientific literature critically. It also covers the explanation on common methods used in research such as survey, comparison, case study and experiment and how to produce a research methodology and pre-proposal of high quality research project. This includes methods in data analysis and conducting evaluation towards the obtained results either qualitatively or quantitatively to prove a research contribution based on research design and hypothesis. This course will also give guidance in techniques to present research materials, paper writing and high quality thesis. Students should work under the supervision of a lecturer. This course is a pre-requisite for the dissertation. 

At the end of this course, the students will be able to:

  • Critique research and research proposal of their peers.
  • Design research proposal.
  • Defend the research proposal and expected contribution of the research in the form of poster presentation.
  • Perform research comfortably and responsibly in a research team.
  • Practice the research tasks, writing and publications in an ethical manner.
  • Identify research problem based on reference materials in the chosen field.
  • Propose a research project with proper planning, judgements and decisions as well as correct planning of empirical data analysis.