Subject OverviewAn advanced, practice-oriented study of Python as the principal programming language for AI, machine learning and analytics. The subject progresses from language foundations to data engineering, modelling, production deployment, governance and emerging AI development practices. Learning GoalStudents will be able to design reliable Python software, analyse and prepare data, implement AI/ML workflows, evaluate computational and business outcomes, deploy governed solutions, and make informed technical and managerial decisions across the AI lifecycle. Syllabus1. Python and the AI/ML Development EcosystemLearning Objective: Explain Python’s role in AI and digital transformation; configure interpreters, IDEs, notebooks, virtual environments, package managers and Git; use documentation and establish reproducible project structures. Category: foundation 2. Syntax, Variables and the Python Object ModelLearning Objective: Apply Python syntax, naming conventions, expressions, operators, dynamic typing, scalar types, mutability, identity, references, type conversion and basic input/output. Category: foundation 3. Control Flow and Algorithmic Problem SolvingLearning Objective: Develop algorithms using conditions, loops, comprehensions and pattern matching; reason about correctness, complexity, numerical precision and efficient problem decomposition. Category: foundation 4. Core Data Structures and CollectionsLearning Objective: Select and manipulate strings, lists, tuples, sets, dictionaries, ranges and specialised collections; understand indexing, slicing, hashing, copying and memory implications. Category: core 5. Functions and Functional ProgrammingLearning Objective: Create reusable functions using parameters, return values, scope, recursion, lambdas, higher-order functions, closures, iterators, generators, decorators, type hints and documentation. Category: core 6. Modules, Packages and Object-Oriented DesignLearning Objective: Build modular applications with imports and packages; model AI/ML components using classes, inheritance, composition, polymorphism, abstract interfaces, dataclasses and established design principles. Category: core 7. Reliability, Testing and Software QualityLearning Objective: Handle exceptions and resources with context managers; debug, log, profile and test programs using unit, integration and property-based techniques; apply linting, formatting, static analysis and secure coding practices. Category: core 8. Data Access, Persistence and IntegrationLearning Objective: Process text, CSV, JSON, binary and columnar formats; use regular expressions, SQL databases, web APIs and serialization while addressing validation, privacy, security and data provenance. Category: application 9. Numerical Computing with NumPy and Scientific PythonLearning Objective: Perform vectorised computation with arrays, broadcasting, indexing, linear algebra, random sampling and numerical methods; compare vectorisation with loops and manage computational efficiency. Category: core 10. Data Wrangling with pandasLearning Objective: Acquire, clean, transform, join, aggregate and reshape tabular and time-series data; treat missing values, outliers and categorical variables while constructing reproducible data pipelines. Category: core 11. Visualisation, Statistics and Exploratory AnalyticsLearning Objective: Use Matplotlib, Seaborn and interactive tools to communicate distributions, relationships and uncertainty; conduct descriptive analysis, sampling, hypothesis-oriented exploration and stakeholder-focused reporting. Category: application 12. Machine Learning Workflows in PythonLearning Objective: Build scikit-learn pipelines for preprocessing, feature engineering, supervised and unsupervised learning; apply cross-validation, hyperparameter tuning, suitable metrics, explainability and leakage prevention. Category: application 13. Deep Learning and Contemporary AI FrameworksLearning Objective: Use Python with PyTorch or TensorFlow for tensors, automatic differentiation, neural network training and evaluation; understand GPU execution, pretrained models, transformers, embeddings and responsible use of generative AI APIs. Category: advanced 14. Performance, Parallelism and Scalable ComputingLearning Objective: Measure and optimise time and memory; apply vectorisation, multiprocessing, asynchronous programming, JIT compilation and distributed or cloud data frameworks, selecting approaches according to workload and cost. Category: advanced 15. Production AI, MLOps and Responsible GovernanceLearning Objective: Package and expose models through APIs and containers; implement versioning, CI/CD, experiment tracking, monitoring and drift management; evaluate security, fairness, privacy, auditability, regulation, business value and emerging trends such as AI-assisted development and agentic systems. Category: strategic
|