EAS 510 · Graduate
Basics of Artificial Intelligence
A hands-on introduction to modern artificial intelligence for engineering graduate students without a computer-science background: what AI systems are, how they are built, and the challenges of using them responsibly.
The course starts from zero — no Python, no machine learning — and ends with each team deploying a working model as a web app. Along the way it covers the ideas behind neural networks and the full life of an AI project: preparing data, building and training models, measuring them carefully, reusing pretrained models, reading and reproducing a research paper, and putting a model in front of users. Examples come mostly from computer vision, where results are easy to see. Bias in data comes up when we build our own datasets, and the deployment module ends with a practical guide to using AI responsibly — privacy, security, and explainability included.
Every module has a full set of notes, linked from the outline below, that you can work through at your own pace.
Undergraduates who wish to take the course for credit should contact the SEAS graduate office.
What the course covers
- Foundations
- Week 1 PyTorch fundamentalsWhat AI, machine learning, and deep learning are; just enough Python; tensors, shapes, datatypes, and GPUs.
- Week 2 The PyTorch workflowData, model, loss and optimizer, training loop, evaluation, and saving — the six steps of every project, on a straight line.
- Week 3 Neural network classificationPredicting categories; logits, sigmoid and softmax; why non-linearity matters; accuracy and its limits.
- Working with images
- Week 4 Computer visionImage tensors, mini-batches, and a first convolutional neural network.
- Week 5 Custom datasetsYour own images, transforms and augmentation, and reading loss curves for over- and underfitting.
- Week 6 Going modularFrom notebook to reusable scripts you can train from the command line.
- Week 7 Midterm examCovers weeks 1–5 (modules 00–04).
- From experiments to products
- Week 8 Transfer learningAdapting a pretrained model to a new problem; freezing, a new classifier head, and fine-tuning.
- Week 9 Experiment trackingRunning experiments deliberately, logging them with TensorBoard, and choosing a model with evidence.
- Weeks 10–11 Replicating a research paperThe Vision Transformer, from the paper's equations to working code.
- Week 12 Model deploymentSpeed versus accuracy, a Gradio demo, a public app, and using AI responsibly.
- Group project
- Weeks 13–15 Project work and presentationsEach team presents a model it has trained, evaluated, and deployed as a web app with a model card.
How the course runs
Classes are hands-on. We work through each module live in a Google Colab notebook, and you type the code as we go — reading code is no substitute for writing it. The exercises at the end of each module are the best practice for the assignments and the midterm.
- Attendance (10%) — checked with short in-class pop quizzes at random points in the term.
- Programming assignments (30%) — two assignments, posted on UBlearns.
- Midterm exam (30%) — in week 7, covering weeks 1–5 (modules 00–04).
- Group project (30%) — each team chooses a problem from its own field, finds or collects the data, and carries it through the workflow of the course: a model trained and evaluated with evidence, then deployed as a web app with a model card (module 09). Teams present in the final weeks and hand in a short report. Start early — collecting data takes longer than training.
The midterm date is announced a week ahead, and the schedule may change with the pace of the class. Grades use this scale: 95–100 A, 90–94 A−, 85–89 B+, 80–84 B, 75–79 B−, 70–74 C+, 65–69 C, 60–64 C−, 55–59 D, below 55 F. The final grade reflects overall performance across all assessments, and the instructor makes the final decision.
Getting set up
You need a Google account and a web browser — nothing to install. All code runs in Google Colab, which provides Python, PyTorch, and a free GPU. Module 00 walks through the first notebook step by step, including just enough Python to read the code. Free Colab GPUs are not always available; the CPU is enough for modules 00–05, and modules 06–09 run best on a GPU. In module 09 you will also create a free Hugging Face account to publish your app.
Warm-up courses (optional bonus)
If you have never programmed before, these free freeCodeCamp courses are a gentle way in. Even the first sections of the Python certification will make the first weeks easier; each full certification is a substantial piece of work.
- Python (the successor to Scientific Computing with Python, which still counts if you have started it)
- Data Analysis with Python
- College Algebra with Python
Each completed certification adds 5 points to your final course grade, up to 15 points for all three. Attach the certificates to your final project report.
Course policies
Collaboration
Discussing the modules and the assignments with classmates at the level of ideas is encouraged, but your assignment code must be your own. Helping someone debug an error message is fine; sharing code or results is not. In the group project, the team shares its code; each member should be able to explain every part of it.
AI and LLM use
- Allowed without disclosure: autocomplete-style help (syntax lookups, translating code between libraries), debugging individual error messages, and reading recommendations.
- Allowed with disclosure: explanations of concepts you are stuck on, and suggested approaches after you have thought the problem through. A one-line note in your submission is enough.
- Not allowed: generating assignment solutions or large blocks of assignment or project code or text with an LLM. Undisclosed LLM-generated work is an academic-integrity violation.
When in doubt, disclose. Disclosure costs you nothing; non-disclosure can cost you the course.