Curriculum

Take a look at some of the fascinating subjects on offer in the Advanced Computing program.





What you will study at Tsinghua


The PhD & Master in Advanced Computing Program will give you an opportunity to study a breadth of cutting-edge subjects. Professors are experts in their respective fields and are able to enrich your studies with their knowledge and expertise.

At Tsinghua you will be required to take a total of 26 credits (for master program) or 19 credits (for PhD program), both with compulsory modules included. You will also have the opportunity to study subjects which are aligned with your interests such as Machine Learning, Big Data, Computer Graphics etc.



"Everyone should learn how to code, it teaches you how to think."
- Steve Jobs

Unsplashed background img 3

Detailed Curriculum


Compulsory Subjects

  • doneChinese Language

    Every foreign student must take the Chinese Language exam before the beginning of the first semester and has to take the class according to the exam result, except those who meet the requirement of Chinese Language course exemption.

    Lecturer(s) Prerequisites Grading
    Depends on class and level - Assignments and Exam
  • doneChinese Culture and Society

    This course serves as a general introduction for students who have an interest to know more about Chinese culture and its formation and growth in the past few thousand years. It centers around a few topics that are intended to lead students to obtain a better understanding of Chinese civilization, one of the oldest in the world, and to stimulate them to make a constructive comparison between what they experience in China and what they know from the readings about the country and between Chinese culture and their own culture. Besides a couple of guest speakers we plan to bring in to our class whose expertise will definitely enrich the content of the course and expand the scope of the perspectives, we are giving students opportunities to share their experience in China with the class and discuss issues that arise from their study of Chinese culture and society. It is hoped that, through reading Chinese works in English translation and discussion, students should have an understanding of some essential aspects of Chinese culture, such as Confucianism, Taoism, Chinese Buddhism, general history of China, Tang poetry, Yuan drama, Honglou meng, etc., and be able to relate more successfully to people living around them.

    Lecturer(s) Prerequisites Grading
    Shiyi YU - Attendance (10%), Participation (10%), Two short papers and presentation (40%) and The final paper (40%)
  • doneLiterature Summarizing and Presentation of Thesis

    Students should do literature survey in some particular area of computer science, and report their research plan for the thesis. They should discuss the thesis topic with their advisors.

    Lecturer(s) Prerequisites Grading
    Thesis advisor - Presentation
  • doneDevelopment of Employability and Entrepreneurship Skills for Graduate Students

    The Graduate Office will provide 10 lectures with different lecturers to guide graduate students to do research, seek jobs and improve entrepreneurship skills. Students should attend at least 8 times and submit a course summerization and report.

    Lecturer(s) Prerequisites Grading
    Depend on topic - Course Summerization & Report
  • doneSocial Investigation

    Applying knowledge to solve problems in society, including companies, governments and international organizations.

    Lecturer(s) Prerequisites Grading
    Depend on topic - Products and Report
  • doneAcademic Activities and Symposia

    PhD students should attend academic activities in his/her research area each semanster.

    Lecturer(s) Prerequisites Grading
    Depend on topic - -
  • doneComprehensive Examination in the Major Field

    The PhD qualifying examination is aimed to assess how well the students understand the fundamentals and principles in the relevant fields, and whether the student has the ability to think scientifically and critically about both theoretical and practical researches. The examination is normally delivered after a formal presentation by the candidates and will not be approved unless all the examiners consent that the student has demonstrated sufficient content of research and is potentially capable to work out an acceptable dissertation within the required timescale. The examination should usually be taken in the second year of a PhD candidate; and passing of the examination gives students the advancement to candidacy.

    Lecturer(s) Prerequisites Grading
    - - Presentation and Oral Test

  • Academic Fundemental Subjects

  • doneCombinatorics and Algorithms Design

    This course covers topics in Combinatorics and Algorithms Design. We comprehensively discuss basic concepts, theories, methods, and instances in Combinatorics while focusing on concepts and ideas. Selected topics include: the Pigeonhole Principle, counting, combinations, Polya counting, recurrence relations and generating functions, graph, and linear programming etc. We also discuss basic mathematics concepts in algorithms design including growth of function, Big-O notations and recurrence relations etc., and basic strategies of algorithms design including search, divide and conquer, and greedy etc. Finally, we show examples of algorithms design in Combinatorics, including basic algorithms on Graph, minimum spanning tree algorithms, and algorithms for linear programming etc.

    Lecturer(s) Prerequisites Grading
    Yuchun MA (Combinatorics), Ying ZHAO (Algorithms Design) Graduate Standing. Advanced Mathematics, Linear Algebra, Programming skill. Class attendance is required, Assignments (20%), Projects (30%) and Final Exam (50%)
  • doneNumerical Analysis

    This course gives an introduction to modern numerical approximation techniques; to explain how,why ang when they can be expected to work ;and to provide a firm basis for future study of numerical analysis and scientific computing. It also presents some overview of numerical methods for students and professionals in computational oriented disciplines who need to solve mathematical problems. It focuses on the motivation and ideas behind the algorithms rather than on detailed analysis of them.

    Lecturer(s) Prerequisites Grading
    - - -

  • Academic Elective Subjects

    • mode_editMachine Learning

      The course introduces the advanced theory of machine learning and its related algorithms. The course will first review the state-of-the-art machine learning algorithms and the course’s content mainly consists of probabilistic generative learning and probabilistic discriminative learning. Based on the theoretical analysis and algorithmic application, we plan to introduce the following subtopics:
      (1) Probabilistic topic model
      (2) Restricted Boltzmann machines
      (3) Factor graph model
      (4) Bayesian nonparametrics
      (5) Semi-supervised learning
      (6) Scalable machine learning
      The course requires all students to design and implement an algorithm for advanced machine learning, and validate the algorithm on the our provided platform.

      Lecturer(s) Prerequisites Grading
      Jie TANG, Jun ZHU Data representation(e.g.,vector space model,language model); Basic probability theory(e.g., likelihood,conditional probability,posterior probability,Bayes);Basic linear algerbra(e.g.,linear transformations,eigenvalues,least-squares best fit) Class attendance is required, Assignments, Exams/Projects
    • mode_editDistributed Systems

      This is an introductory course on distributed systems. This course introduces the principles of distributed systems as well as some of the current influential large-scale distributed systems such as Google file system, MapReduce, Amazon Dynamo etc. To make the course more concrete, this course uses a series of labs requiring the students to build real distributed systems. This course emphasizes on the general principles of building distributed systems in addition to introducing important practical distributed systems. For example, the various kinds of distributed consistency protocols will be discussed and such principles can be adopted in many kinds of real distributed applications. The current systems used by Googe, Amazon, Microsoft will be introduced.

      Lecturer(s) Prerequisites Grading
      Kang CHEN data structure, C programming Class attendance is required, Readings and Homework (20%), Labs (40%), Final Exam (40%). Exam will be closed-book.
    • mode_editDistributed Database System

      The aim of the course is to 1) enhance the previous knowledge of database systems by deepening the understanding of the theoretical and practical aspects of the database technologies, and showing the need for distributed database technology to tackle deficiencies of the centralized database systems; 2) introduce basic principles and implementation techniques of distributed databases including distributed database design and architecture, query processing and optimization, transaction management, recovery, and reliability protocols, and to 3) expose active research issues in distributed database systems and application development.

      Lecturer(s) Prerequisites Grading
      Ling FENG Database Management Systems Class attendance is required, Examination (40%) and Practical project (60%)
    • mode_editFundamentals of Computer Graphics

      This course gives an introduction to computer graphics, by integrating various skills in computer science such as programming, data structure and algorithm design. With the aid of new human-computer interface, students will learn these fundamental knowledge in computer science in terms of fancy graphics effects that reduce the learning load through abstract data visualization. The content of this course includes raster graphics, interactive graphics, matrix representation of 3D transformation, curve and surface design, ray tracing and visual realism, all with OpenGL source code.

      Lecturer(s) Prerequisites Grading
      Yongjin LIU linear algebra, C++ programming Class attendance is required, Attendance/Presentations (10%), Projects (15% + 20% + 20% + 35%),
    • mode_editAdvance Computer Networks

      This course discusses the basic design principles of the Internet and where the future Internet architecture is heading to. It is for graduate students and we will cultivate the research capabilities of students by this course. 10 lectures will be given. Students are required to read papers and give presentations in the class, as well as finish the course project. The course language is English.

      Lecturer(s) Prerequisites Grading
      Dan LI - Class attendance is required, Paper reading presentations and Project
    • mode_editHuman Computer Interaction Technologies

      This course covers the basic understanding of human perception and cognition, interaction styles development, design and evaluation of GUI, and natural human computer interface technologies. Input technologies are emphasized. Multimodality about visual, acoustic and touch sense channels are introduced with new input interfaces. Signal processing, feature extraction, and mapping schemes will also be covered. Measure methods are for the efficiency of interaction. Hands-on laboratories, study reports, individual projects and semester long group projects will be assigned, some can potentially continue as further researches.

      Lecturer(s) Prerequisites Grading
      Yuanchun SHI Programming Class attendance is required, Assignments
    • mode_editProcess and Methods of Software Project Management

      Software project management is the art and science of planning and leading software projects. It is a sub-discipline of project management in which software projects are planned, monitored and controlled. Using software development life cycle and process groups as two main threads, this course introduces the procedures and methods of software project management, which will help keep projects under control, and produce software with required functions in shorter time, higher quality and predicable cost. This course follows the nine Project Management Knowledge Areas - project integration, scope, time, cost, quality, human resources, communications, risk, and procurement - using the experiences of real-life businesses. The students are organized in groups to do the homework and presentations. Virtual software projects are assigned to groups. Typical scenarios are designed in the projects to help students understand the nine knowledge areas by solving the issues in the projects through group discussion and collaboration.

      Lecturer(s) Prerequisites Grading
      Yong ZHANG Programming skill Class attendance is required, Assignments (20%), Mid-term report (15%), Final short show (35%), Final open-book examination (30%)
    • mode_editTopics in Advanced Multimedia Technologies

      The course starts with an overview of the fundamental concepts, algorithms and tools in multimedia processing, including information theory, signal processing, signal compression, and communications. Then, a brief introduction of multimedia related standards such as H.264, HEVC, RTP are provided. Combining the fundamentals and the standards, we will finally introduce the students to challenges and current solutions to various challenges in large scale, real time and mobile multimedia applications.

      Lecturer(s) Prerequisites Grading
      Jiangtao (Gene) WEN - Attendance/quizzes (25%), Projects/presentations (15%/5% + 15%/5% + 25%/10%)
    • mode_editWeb Information Retrieval

      This course gives a survey to the new research branches, introduces the state-of-the-art technologies, and discusses on open problems and challenges on Web information retrieval (Web IR). At the same time, the course focuses on the real applications in the Internet environment, making case study and detail analysis on commercial search engines (SE). The main topics of the course includes (but not limited to): IR in Web environment, such as link analysis, anti-spam, etc; question answering; opinion / sentimental analysis; social media and IR; personalized IR and recommendation; user behavior analysis; online advertisement; mobile search; and IR and SE evaluations. The course is composed of lectures and student-conducted discussions.

      Lecturer(s) Prerequisites Grading
      Min ZHANG Programming skill Class attendance is required, Assignments, Projects and Tea Time Presentations (bonus score)
    • mode_editIntroduction to Big Data Systems

      The course starts with an overview of the big data analytics, clustering and distributed programming. We will also cover methods for processing big data as well as optimization techniques. Graph processing and visualization of big data will be covered. There will be labs and projects which allow students to experiment with real data and apply the knowledge of what they learnt in class.

      Lecturer(s) Prerequisites Grading
      Wenguang CHEN Some programming knowledge Assignments and Labs (50%), Projects (15%), Mid-Term Exam (10%), Final Exam (25%).
    • mode_editAdvance Network Management

      This course is a graduate course and is primarily project-oriented. It will cover three major of aspects of IP network management: networks, objectives and methodologies. There will be 12 lectures given. Students are expected to form a team of two and finish a project on the THU-INM (Tsinghua University IP Network Management) platform.

      Lecturer(s) Prerequisites Grading
      Dan PEI C Programming, Undergraduate Network course Demo of Projects (50%), Technical Reports (30%), Presentation (20%).
    • mode_editNatural Language Processing

      The course introduces natural language processing (NLP), from its history to recent advances in deep learning applied to NLP. NLP is one of the most important technologies in Artificial Intelligence. NLP aims at enabling computers to understand human languages and communicate with humans. There are a large variety of tasks and machine learning methods in NLP. In this course, we plan to introduce the following subtopics:
      (1) The history and the tasks in NLP.
      (2) Basic tasks in NLP: Sequence tagging, parsing, classification and clustering.
      (3) Applications in NLP: machine translation, question answering, etc.
      (4) Recent advances in deep learning applied to NLP.
      (5) Open problems and challenges for NLP.
      By learning from lectures and programming assignments, students will master necessary knowledge about NLP and engineering tricks for practical NLP problems.

      Lecturer(s) Prerequisites Grading
      Zhiyuan Liu basic probability theory; basic linear algebra; programming skills (C++ or Python). Knowledge of machine learning is preferred. Class attendance is required, assignments, projects.
    • mode_editDeep Learning

      This course introduces the basic concepts and history of deep learning as well as recent developments. The course will cover the theoretical foundation and typical models of deep learning and discuss the cutting-edge research about deep learning. Specifically, we will introduce the following topics:
      (1) Basics of machine learning
      (2) Multi-layer perceptron
      (3) Convolutional neural networks
      (4) Long short-term memory networks
      (5) Deep generative models
      (6) Generative adversarial networks
      (7) Programming libraries (e.g., Tensorflow, ZhuSuan)
      The course requires all students to design a deep learning model for solving a practical problem, which can be chosen from a set of problems provided by the teacher or proposed by yourself.

      Lecturer(s) Prerequisites Grading
      Jun ZHU, Xiaolin HU Basic level of probability theory, linear algebra and calculus. Basic level of programming skills. Class attendance is required, Assignments, Exams/Projects.
    • mode_editAdvanced Theoretical Computer Science

      The course will cover the following topics: NP completeness, PSPACE, L Space, IP system, BPP, derandomization, PCP, classical communication complexity, circuit complexity, Decision tree complexity. quickly recall basics about convex optimization and machine learning: linear/logistic regression, regularization, newton method, stochastic gradient descent (asychronized, variance reduction method), generative vs discrimitive, variance vs bias. Off-the-shelf machine learning and prediction algorithms: k-nn, SVM, kernel trick, clustering, Adaboost, gradient boosting, random forest. Online learning and sequential prediction. Multi-armed bandit, Universal portfolio, Multiplicative weighting method, online convex optimization, basic time series. linear algebra-based learning algorithms: SVD, principle component analysis (PCA), independent component analysis (ICA), Nonnegative matrix factorization (NMF), topic modeling, matrix completion, dictionary learning, tensor method, spectral clustering.

      Lecturer(s) Prerequisites Grading
      Andrew YAO Discrete Mathmatics Assignments and Final Exam
    • mode_editHot Topics in Computational Biology

      The course covers research progress and hot topics in Computational Biology and introduces topics including basic computational theory and methods, three-dimensional structure determination and dynamic study of proteins, protein and  drug molecular design, Proteomics, and Biology evolution model.

      Lecturer(s) Prerequisites Grading
      Jianyang ZENG Machine Learning Projects and Final Exam
    • mode_editBig Data Intelligence

      This course introduces the basic concepts, development, recent advances of big data, and proposes the concept of big data intelligence. In this course, we will cover the intuitions, basics and tools as well as real-world applications of Big Data Intelligence. Specifically, this course includes, but not limited to:
      (1) Introduction to Big Data Intelligence.
      (2) Classic Big Data Intelligence theories and methods.
      (3) Datamining approaches.
      (4) Advanced techniques for intelligence such as Deep Learning, Bayesian Learning, Causal Learning, Reinforcement Learning etc.
      (5) Big data analytic tools, systems and platforms.
      (6) Advances for Big Data Intelligence.

      Besides, in this course we design three take-home assignments and one final group project (you are supposed to either choose the projects provided by us or projects proposed on your own given that your projects show strong correlations with this course) to examine your understanding of Big Data Intelligence. The final project may involve writing codes, taking part in competitions, and making presentations.

      Lecturer(s) Prerequisites Grading
      Wenwu ZHU, Xing WANG Machine Learning Projects and Final Exam