NN

N. Rich Nguyen

Assistant Professor
Unit: School of Engineering and Applied Science
Department: Department of Computer Science
Office location and address
85 Engineers Way
Charlottesville, Virginia 22903
CS 1501: Special Topics in Computer Science
Credits: 1
Student led special topic courses which vary by semester.
USEM 1570: University Seminar
Credits: 2–3
Consult the University Seminars web page at https://provost.virginia.edu/subsite/academic-affairs/student-experience/university-seminars (copy and paste web address into browser) for specific descriptions.
CS 2150: Program and Data Representation
Credits: 3
Introduces programs and data representation at the machine level. Data structuring techniques and the representation of data structures during program execution. Operations and control structures and their representation during program execution. Representations of numbers, arithmetic operations, arrays, records, recursion, hashing, stacks, queues, trees, graphs, and related concepts. Prerequisite: CS 2102 and CS 2110, both with grades of C- or higher.
CS 2910: CS Education Practicum
Credits: 1
An overview of computer science education for undergraduate students. Topics include ethics, diversity, tutoring and teaching techniques, and classroom management. Students enrolled in this course serve as a teaching assistant for a computer science course as part of their coursework.
CS 4501: Special Topics in Computer Science
Credits: 1–3
Content varies annually, depending on instructor interests and the needs of the department. Similar to CS 5501 and CS 7501, but taught strictly at the undergraduate level. Prerequisite: Instructor permission; additional specific requirements vary with topics.
CS 4774: Machine Learning
Credits: 3
An introduction to machine learning: the study of algorithms that improve their performance through experience. Covers both machine learning theory and algorithms. Introduces algorithms, theory, and applications related to both supervised and unsupervised learning, including regression, classification, and optimization and major algorithm families for each. Prerequisites: CS 2150; and either Math 3350 or APMA 3080; and one of APMA 3100, APMA 3110, MATH 3100, or equivalent.
CS 4980: Capstone Research
Credits: 1–3
This course is one option in the CS fourth-year thesis track. Students will seek out a faculty member as an advisor, and do an independent project with said advisor. Instructors can give the 3 credits across multiple semesters, if desired. This course is designed for students who are doing research, and want to use that research for their senior thesis. Note that this track could also be an implementation project, including a group-based project. Prerequisite: CS 2150 or CS 2501 topic DSA2 with a grade of C- or higher, and BSCS major
CS 4993: Independent Study
Credits: 1–3
In-depth study of a computer science or computer engineering problem by an individual student in close consultation with departmental faculty. The study is often either a thorough analysis of an abstract computer science problem or the design, implementation, and analysis of a computer system (software or hardware). Prerequisite: Instructor permission.
CS 4998: Distinguished BA Majors Research
Credits: 3
Required for Distinguished Majors completing the Bachelor of Arts degree in the College of Arts and Sciences. An introduction to computer science research and the writing of a Distinguished Majors thesis. Prerequisites: CS 2150 with a grade of C- or higher and CS BA major status.
SYS 6016: Machine Learning
Credits: 3
A graduate-level course on machine learning techniques and applications with emphasis on their application to systems engineering. Topics include: Bayesian learning, evolutionary algorithms, instance-based learning, reinforcement learning, and neural networks. Students are required to have sufficient computational background to complete several substantive programming assignments. Prerequisite: A course covering statistical techniques such as regression. Co-Listed with CS 6316.
DS 6050: Deep Learning
Credits: 3
A graduate-level course on deep learning fundamentals and applications with emphasis on their broad applicability to problems across a range of disciplines. Topics include regularization, optimization, convolutional networks, sequence modeling, generative learning, instance-based learning, and deep reinforcement learning. Students will complete several substantive programming assignments. A course covering statistical techniques such as regression.
CS 6316: Machine Learning
Credits: 3
This is a graduate-level machine learning course. Machine Learning is concerned with computer programs that automatically improve their performance through experience. This course covers introductory topics about the theory and practical algorithms for machine learning from a variety of perspectives. Topics include supervised learning, unsupervised learning and learning theory. Prerequisite: Calculus, Basic linear algebra, Basic Probability and Basic Algorithm. Statistics is recommended. Students should already have good programming skills.
CS 6890: Industrial Applications
Credits: 1
A graduate student returning from Curricular Practical Training can use this course to claim one credit hour of academic credit after successfully reporting, orally and in writing, a summary of the CPT experience to his/her academic advisor.
CS 7993: Independent Study
Credits: 1–12
Detailed study of graduate course material on an independent basis under the guidance of a faculty member.
CS 7995: Supervised Project Research
Credits: 3
Formal record of student commitment to project research for the Master of Computer Science degree under the guidance of a faculty advisor.
CS 8897: Graduate Teaching Instruction
Credits: 1–12
For master's students who are teaching assistants.
CS 8999: Thesis
Credits: 1–12
Formal record of student commitment to thesis research for the Master of Science degree under the guidance of a faculty advisor. May be repeated as necessary.
CS 9897: Graduate Teaching Instruction
Credits: 1–12
For doctoral students who are teaching assistants.