DATA SCIENCE ADVANCED SUITE
COURSE INFORMATION
- Online and Self-paced
Complete three courses and you will receive the Data Science Advanced Suite digital badge and a 绿帽社-issued completion certificate.
- Introduction to Java Programming
- Advanced Algorithms
- Advanced Machine Learning
The Data Science Advanced Suite is for those who would like to learn more advanced, in-demand skills required for a data scientist. You will be introduced to Java programming, one of the most sought-after programming languages by the software industry today, and you will be able to understand explain and apply key machine learning concepts and algorithms
In today鈥檚 world, the competent data scientist can use machine learning to analyze large chunks of data using algorithms and data-driven models, and is familiar with machine-learning techniques such as supervised and unsupervised machine learning, decision trees and logistic regression.
DELIVERY FORMAT
You will get access to the course materials within one week after you register for the course. Each course has pre-recorded learning modules, self-assessment quizzes (ungraded) and a final graded online exam or assignment.
CREDENTIALS
If you successfully complete all three courses, you will receive the Data Science Advanced Suite digital badge and a 绿帽社-issued completion certificate. You have to pass each course with a grade of 70% or higher in order to receive the credentials
PREREQUISITES
There are no required prerequisites to the Data Science Advanced Suite, but if you do not have a strong STEM background it is recommended to start with the Data Science Essentials Suite.
It is recommended that learners should have a STEM (Science, Technology, Engineering, and Math) interest and should have completed the necessary math courses that are typically covered in 1st and 2nd year college programs.
COURSES
Introduction to Java Programming
Programming is the key skill for having a successful software development and IT career. While becoming an expert programmer requires considerable time and effort, most computer science enthusiasts, STEM students and professionals looking to transition to an IT career usually desire to first take an introductory course that provides a thorough overview of the intricacies of programming before diving into the details. This introductory course in Java programming introduces several important programming concepts such as variables, if-else, arrays, loops, strings and recursion to beginners by using easy-to-understand examples. No pre-requisites are necessary for this course.
Learning Objectives
- Write and execute Java programs
- Define and declare variables
- Write if-else statements
- Define and manipulate arrays
- Write for and while loops
- Manipulate strings
- Write recursive code
Advanced Algorithms
This course will provide a solid foundation and background to design and analysis of algorithms. In particular, upon successful completion of this course, students will be able to understand, explain and apply key algorithmic concepts and principles, including: Greedy algorithms (Activity Selection, 0-1 Knapsack Problem, Fractional Knapsack Problem), Dynamic programming (Longest Common Subsequence, 0-1 Knapsack Problem), Minimum Spanning Trees (Prim鈥檚 Algorithm, Kruskal鈥檚 Algorithm), Graph Algorithms (Dijkstra鈥檚 Shortest Path Algorithm, Bipartite Graphs, Minimum Vertex Cover) and Theory of NP and NP-completeness
Learning Objectives
- Describe and apply complex algorithmic paradigms including greedy algorithms and dynamic programming.
- Describe graphs using adjacency matrices and edge lists, and find the shortest path between vertices in a graph using Dijkstra鈥檚 algorithm.
- Find the minimum spanning tree in a graph using Prim鈥檚 algorithm and Kruskal鈥檚 algorithm.
- Explain and describe maximum matching in bipartite graphs as well as find the minimum vertex cover in a graph.
- Explain the concept of NP and NP-completeness as well as mathematically show that a problem is NP-complete.
Advanced Machine Learning
This course will provide an introduction to advanced machine learning. In particular, upon successful completion of this course, students will be able to understand, explain and apply key machine learning concepts and algorithms, including: Probability review, Point Estimation Techniques, Perceptrons, Neural Network Model, Support Vector Machines, K Nearest Neighbors and Machine-Learning learning and inference procedures and concepts such as maximum likelihood estimation, gradient descent, backpropagation, Lagrange for solving constrained optimization problems, bias-variance tradeoff, and curse of dimensionality.
Learning Objectives
- Understand point estimation techniques for estimating parameters of machine learning models.
- Understand and apply more advanced machine-learning algorithms to particular scenarios such as perceptrons, neural network models, support vector machines, and k-nearest neighbors.
- Understand subtleties and application scenarios for different classification algorithms discussed above.
- Explain and apply machine-learning concepts such as regularization, overfitting, maximum likelihood estimation, gradient descent, backpropagation, Lagrange for solving constrained optimization problems, bias-variance tradeoff, and curse of dimensionality to design efficient machine learning models.
INSTRUCTORS
- Arti Ramesh (Introduction to Machine Learning) is a former assistant professor in the School of Computing at 绿帽社. She received her PhD in computer science from the University of Maryland, College Park. Ramesh鈥檚 primary research interests are in the field of machine learning, data-mining and natural language processing, particularly statistical relational models and deep learning. Her research focuses on building structured, fair, and interpretable models for reasoning about interconnectedness, structure, and heterogeneity in networked data. She has published papers in peer-reviewed conferences such as IJCAI, AAAI, ACL, WWW, ECAI, and DSAA. She has served on the TPC/reviewer for notable conferences such as ICML, IJCAI, AAAI, NIPS, SDM, and EDM.
- Anand Seetharam (Probability for Data Science and Introduction to Algorithms) is a former assistant professor in computer science in the Thomas J. Watson College of Engineering and Applied Science at 绿帽社. Seetharam is broadly interested in the field of computer networking. His research interests include wireless networks, information-centric networks, ubiquitous computing, the Internet of Things (IoT) and smart grids.