25. Object-oriented Programming |
3 |
This course introduces an object-oriented approach to programming, demonstrates the importance of object-oriented programming and its advantages over structured programming. The main contents provided include: concepts and principles of object oriented programming; how the class and its components are designed; implements object-oriented properties such as inheritance, closure, abstraction, polymorphism. Through practicing some simple applications on the C# programming language to gain insight into the key properties of the object-oriented model. |
26. Theory of Graph |
3 |
The module aims to equip students with basic mathematical knowledge of graphs and trees. In addition, the module will help students practice programming skills to install algorithms on graphs and trees such as finding directions, finding maximum trees and coloring maps. The knowledge and skills gained from this module will be the foundation to help students later be able to solve some problems applied in practice. |
27. Python Programming |
3 |
The module aims to equip students with the basics of the Python language. In addition, the module will help students practice programming skills in Python language such as control structures, data structures that gather and handle common file types. The knowledge and skills gained from this module will be the foundation for students to later be able to install algorithms or analyze data from basic to advanced. |
28. Artificial Intelligence |
3 |
This course aims to equip learners with basic knowledge of the problem-solving methods of Artificial Intelligence (AI), skills of applying AI methods to practical problems of the socio-economic field. On that basis, it helps learners with necessary knowledge and skills to participate in the development of software projects for research and management in the fields of marketing, supply chain management, and financial analysis. Credit performance analysis. |
29. Machine Learning |
3 |
This course aims to equip learners with the basics of machine learning (ML) methods, as well as practice the application of ML to practical socio-economic problems. On that basis, it helps learners have the necessary knowledge and skills in data analysis using ML, can participate in research projects in the fields of marketing, supply chain management, analysis. Finance, credit activity analysis. |
30. Data Mining |
3 |
This course equips students with the basics of data mining. Also provide students with algorithms for data mining through the use of computers. From that knowledge, students can apply to program or use libraries to make functions for consulting or decision-making purposes. |
31. Introduction to Formal Languages |
3 |
Formal languages are used in the construction of programming languages, the theory of translated programs. Formal languages form a descriptive engine for computational models both for input-output and for manipulation. Formal language theory, precisely because it is an interdisciplinary field of science; The need to describe grammatical form has arisen in many sciences ranging from formal linguistic theory to biology. The pertinent aspects of formal language theory will therefore be of decisive importance in the textbooks of Formal Language Theory and automatism. The course provides basic knowledge about Formal Languages and abstract machines (automats, grammars, turing machines). This is a must-have for students of computer science. On that basis, students can gain a deeper understanding of the structure of programming languages, translation programs as well as the nature of algorithms and their computational complexity. |
32. Cloud Computing |
3 |
This course introduces the knowledge and skills necessary for students to have a clear understanding of cloud computing and the technology trends related to cloud computing today. In addition, students will be given discussion topics / exercises to apply knowledge learned. |
33. Functional Programming |
3 |
Functional programming is one of the basic programming subjects that equips students to program based on pure functions like mathematical functions. The course helps students apply mathematical knowledge to programming to prove that a program does its job correctly or to find simpler, easier to understand solutions to problems. Students will be equipped with functional programming skills through popular languages such as Haskell or javascript. |
34. System Programming |
3 |
The course content focuses on how applications are created by combining small programs and exchanging them over pipes, files, mass memory, or networks. The course also equips multi-threaded and shared-memory programming skills on the basis of the NUMA computer architecture (a modern computer model with a single processor or multiple cores). Students will be equipped with knowledge of parallel programming, using different levels of caching, locking and synchronization types. |
- Elective: Select 1 out of 2 |
3 |
|
35. Stochastic Process |
3 |
This course is designed to provide students with a foundational understanding of stochastic processes as they apply to the economics and finance. Topics will include an introduction to stochastic processes, Markov processes, Martingales, Brownian motion, Stochastic calculus and stochastic differential equations. |
36. Introduction to Acoustic Processing |
3 |
The module provides students with knowledge of audio and voice signals, sound and voice processing techniques such as coding techniques, sound smoothing, etc. In addition, the above audio and voice processing skills are based on software solutions that will help students apply to practical problems such as noise separation, sound smoothing, or advanced processing problems such as text-to-speech. In addition, students are also acquainted with dedicated audio and voice processing libraries for future work. |
- Elective: Select 1 out of 2 |
3 |
|
37. Game Theory |
3 |
The course provides a framework used to study strategic interactions between participants through their decision making. After completing this module, students will be able to (i) Explain some economic phenomena such as competitiveness, quality of labor force, salary level, impact of policies; (i) Modeling a decision problem, using game theory concepts and from the assumptions of the particular problem; and (iii) Use tools to solve them based on the principles learned. The main content is related to the goal of the game (solution concept), in which the Nash equilibrium plays an important role, depending on the form (static, dynamic, normal, extended, Bayesian) and information (complete, not enough). Thereby examining specific economic models such as oligopoly, job market signals, adverse selection, bargaining, auctions, and efficient wages. |
38. Image Processing & Analysis |
3 |
The module provides basic knowledge about digital images, digital image processing methods and algorithms, digital image analysis and machine vision technologies related to object recognition. In addition, skills related to applying methods of image recovery, separation, image quality enhancement, image segmentation to serve other post-processing operations in machine vision also help students solve practical problems related to digital images. In addition, the module also provides students with the skills to use software libraries to support image processing and analysis techniques. |
- Elective: Select 1 out of 3 |
3 |
|
39. Natural Language Processing |
3 |
Equip students with basic knowledge of computational linguistics and specialized knowledge of natural language processing. At the same time, provide students with libraries that support natural language processing. |
40. Operation Research |
3 |
Operations learning aims to introduce students to common mathematical models used in decision-making problems. A variety of deterministic models such as: nonlinear programming models, linear programming models, network programming models, integer programming models are used to solve practical problems. In addition, the module also provides knowledge to help students convert practical problems into mathematical models of Operations Learning, from which they can apply the methods they have learned to solve. In addition, students learn how to analyze and represent results with the help of software solutions. |
41. GUI Design |
3 |
The course provides comprehensive knowledge of the technologies of user interface design and implementation. Topics include the foundation of human-computer interaction, methods of building graphical user interfaces, interactive devices and technologies, cognitive models, usability, and processes. design and development, user interface management systems, interface design techniques and styles |
- Elective: Select 1 out of 2 |
3 |
|
42. Decision Support Systems |
3 |
This module provides students with knowledge about management support, decision-making and decision support. At the same time, it provides students with an understanding and analysis of the components, models, and algorithms of decision support systems. Finally, the course gives students the skills to orient the development of decision support. Contents include: - Overview of management support - Decision-making model and system - Decision support system - Introduction to the data management branch in decision support - Introduction to the model branch in decision support - Introduction to the branch of knowledge management in decision support - Decision support system development process |
43. Computer Graphics |
3 |
The module aims to equip students with basic knowledge of computer graphics, algorithms for drawing shapes, coloring, lighting, shading, reflections, etc. Students will also learn basic techniques for creating movement. In addition, students are also equipped with the necessary skills to implement algorithms based on the popular graphics library, OpenGL. |
- Elective: Select 1 out of 2 |
3 |
|
44. Introduction to Deep Learning |
3 |
Deep Learning is an area of artificial intelligence (AI) that involves building deep neural network models to solve complex problems, such as image classification, automated translation, and data analysis. Deep Learning is a deep neural network-based machine learning method in which layers of neurons link together to learn from input data and generate predictions for new data. Deep Learning is a rapidly growing field and has many applications in fields ranging from healthcare to industrial automation. It is considered one of the important trends in artificial intelligence today. Deep Learning focuses on how to build and train deep neural network models, along with techniques to optimize these models. Deep Learning courses also cover solving complex problems using deep neural network models, including applications in image processing, natural language, and robot control. Deep learning also often delves into the core techniques of machine learning, including optimizing and calibrating models, processing missing data, and minimizing overfitting. Some common tools used in deep learning include TensorFlow, Keras, and PyTorch. The course content consists of four parts Chapter 1: Introduction to Deep Learning Chapter 2: Neural Networks Basics Chapter 3: Convolutional Neural Networks Chapter 4: Recurrent Neural Networks Chapter 5: Deep Learning for Computer Vision Chapter 6: Natural Language Processing with Deep Learning. Chapter 7: Deep Reinforcement Learning |
45. Computational Economics |
3 |
The course equips computational methods used to solve basic problems in Economics. The calculation methods include: matrix method, optimal method, integral method, probability method and optimal control method. After completing the module, students have the ability to analyze Economic problems to choose a method to solve and represent problems suitable for this method, and use software tools to solve and present results. |
- Elective: Select 1 out of 3 |
3 |
|
46. Analytics of Social Network Data |
3 |
This course focuses on harnessing data from social networks such as Twitter, Facebook, LinkedIn, Google+, and GitHub. Students will learn how to use open source tools to retrieve data, process data, and visualize collected data. The course content consists of five parts •Chapter 1: Overview of data mining from social networks: In this chapter, students will be introduced to the basic concepts of data mining from social networks, including the applications and challenges of the field. Chapter 2: Using APIs to Get Data from Twitter, Facebook, and LinkedIn: This chapter focuses on how to use Twitter, Facebook, and LinkedIn APIs to get data. Students will learn how to make API requests, handle returned data formats, and create computer programs to retrieve data. •Chapter 3: Processing and Analyzing Collected Data: In this chapter, students will learn how to use Python tools to process data collected from social networks. These tools include the pandas library for processing data in the form of tables and the matplotlib library for data visualization. •Chapter 4: Data visualization with charts and graphs: In this chapter, students will learn how to use Python tools to visualize data collected from social networks using charts and graphs. These tools include the seaborn library for drawing statistical graphs and the network library for plotting link graphs. •Chapter 5: Application of Data Mining Techniques: This chapter focuses on data mining techniques to find information and detect connections from data collected from social networks. Students will learn how to use these techniques to analyze data and find specific information, for example searching for popular hashtags on Twitter or searching for similar user groups on LinkedIn. All chapters in the course use the Python programming language and popular libraries such as pandas, matplotlib, seaborn, network, and other software development tools. |
47. Expert Systems |
3 |
This module provides students with specialist knowledge. At the same time, it provides students with an understanding and analysis of the components, models, and algorithms of decision support systems. Finally, the course gives students developmental orientation skills and builds decision support. Contents include: - Expert system overview - Structure of the expert system - Expression of knowledge - Inference method - Fuzzy logic and fuzzy deductive systems - Introduction to PROLOG and CLIPS languages - Generation development |
48. Multimedia Content Creation |
5 |
The module provides basic knowledge related to multimedia content such as graphics, audio and video. To create diverse and engaging multimedia content, students need to have knowledge of specialized multimedia content creation software. In addition to learning about software solutions for multimedia design, students are also provided with knowledge related to the principles of designing multimedia content to achieve aesthetics and increase interactivity. In addition, students also interact in groups to promote critical thinking in the transmission of design content. |