EAS595
Instructor: Dr. Akshay Agarwal
Course: EAS 595 (Fundamentals of Artificial Intelligence [AI]) Course is over in Spring 2022
Email: aa298@buffalo.edu
Office Hours: Fri 2:30 PM - 3:30 PM
Lecture Times: MoWe 6:30 PM - 7:50 PM
Class Room: Capen 240
Course Prerequisites: N/A
Course Overview: This course is intended for Engineering graduate students who are interested in understanding the fundamental issues, challenges, and techniques that are associated with recent advances in Artificial Intelligence (AI). The course will discuss the history and properties of basic AI systems including neural networks, machine learning, and data science, and how to build a basic machine learning and AI project including data scraping, data processing, etc. We will discuss the challenges of bias, security, privacy, explainability, ethical issues, and the use of context. We will learn about AI’s use in applications such as image processing and computer vision, natural language processing, recommendation systems, and gaming. The course is supported by a primer on the use of Python, to support home works and projects related to machine learning. The course will be a combination of lectures, discussions, activities, and projects that will prepare students without a computer science background to study and apply artificial intelligence tools and applications in a variety of different domains.
Piazza: We will use Piazza to answer questions and post announcements about the course. Class SignUp
UB Learns
Grade Composition: All the quizzes/exams/etc will be close-book, close internet unless specified
Semester Long Project: 25%
Assignments: 20%
Mid-term(s)/ Project-1: 20%
Final: 20-25%
Class Quizzes/Participation: 10-15%
Textbook/Reference Books:
There is no official textbook for the class, but a number of the supporting readings will come from:
Artificial Intelligence: An Essential Beginner’s Guide to AI, Machine Learning, Robotics, The Internet of Things, Neural Networks, Deep Learning, Reinforcement Learning, and Our Future– July 13, 2019, Neil Wilkins
Artificial Intelligence Basics: A Non-Technical Introduction – August 2, 2019, Tom Taulli
Data Science from Scratch, First Principles with Python– May 10, 2019, Joel Grus
AI Ethics (The MIT Press Essential Knowledge series) – April 7, 2020, Mark Coeckelbergh
Useful Tools:
Overleaf (LaTex online document generator) - a great tool for creating reports
Google Colab (online Jupyter Notebook with free GPU) (link)
Course Schedule (each topic will take ≈ 1 − 2 weeks)
History of AI, Properties of AI Systems
Introduction to Python
Machine Learning Overview with Applications
Sequential Models
Recommendation System
Unsupervised Learning
Data Visualization and Processing
Reinforcement Learning
Bonus Points
Jupyter Demo Time
Poster Session Participation
Other activities to be released as the course goes
Late Day Policy
Students can use up to 3 free late days throughout the course that can be applied to the assignments (some assignments may have a hard deadline)
A late day extends the deadline by 24 hours If there is more than 3 days after the deadline, a penalty of 25% for one day will be applied to any work submitted after that time
Weekly or Bi-Weekly Quizzes - How does it work?
It will be announced in the class or on the course platforms beforehand; however, there might be some surprise quizzes
Quizzes come in various forms, including multiple-choice, multiple answers, written, and coding formats
All the quizzes will be close-book, close internet, unless specified
Academic Integrity Policy
Academic integrity is a fundamental university value. No collaboration, cheating, and plagiarism are allowed in projects, quizzes, and exams. Those found violating academic integrity will get an immediate F in the course.
Academic integrity is a fundamental university value.
No collaboration, cheating, or plagiarism is allowed in assignments, quizzes, or exams.
The catalog describes plagiarism as “Copying or receiving material from any source and submitting that material as one’s own, without acknowledging and citing the particular debts to the source (quotations, paraphrases, basic ideas), or in any other manner representing the work of another as one’s own.”
Any suspicious cases will be officially reported using the Academic Dishonesty Report form and all bonus points will be subject to removal from the student’s final evaluation.
Those found violating academic integrity more than once throughout their program will receive an immediate F in the course.
Please refer to the UB Academic Integrity Policy for more details.
Academic Integrity is a very high priority not only for our Department but the University as a whole. We are glad to provide you with help to ensure you achieve great results during the course, however, we do not tolerate any kind of cheating.
Helpful Resources
We want you to demonstrate your own achievements and showcase your own abilities during the course! From the course instructor's side, we are glad to provide you with all the help needed for you to succeed in the course. Here are some of the free resources provided by the University:
If you need help with English, check UB Writing Center
If you have issues with your device, the University provides access to computers, as well as equipment loans.
Your well-being is highly important, if you have any concerns, make sure to check the Counseling Service.
Accessibility Resources
If you have a disability and may require some type of instructional and/or examination accommodation, please inform me early in the semester so that we can coordinate the accommodations you may need. If you have not already done so, please contact the Office of Accessibility Services, 60 Capen Hall, 645-2608, and also the instructor of this course. The office will provide you with information and review appropriate arrangements for accommodations. More details.
Diversity
The UB School of Engineering and Applied Sciences considers the diversity of its students, faculty, and staff to be a strength, critical to our success. We are committed to providing a safe space and a culture of mutual respect and inclusiveness for all. We believe a community of faculty, students, and staff who bring diverse life experiences and perspectives leads to a superior working environment, and we welcome differences in race, ethnicity, gender, age, religion, language, intellectual and physical ability, sexual orientation, gender identity, socioeconomic status, and veteran status.
FAQ
I want to prepare for the course, what can I do?
You can check out the Python resources page and get familiar with Jupyter Notebooks and Python basics.
I am on the waiting list, can you help me to enroll?
Unfortunately, there is nothing we can do at this time. I would suggest keeping an eye on the enrollment. Typically some students drop the course right before the drop-date deadline, so if you are on the waiting list, there is a high chance you will get enrolled, so I would strongly suggest visiting the lectures before the enrolment is finalized, even if you are not registered at this time.
What programming language will be used?
We will be using Python (version >3.9) as the programming language for the projects.
Is attendance required?
Attendance is not required but is encouraged. Sometimes we may do in-class exercises or discussions related to quizzes or projects and these are harder to do and benefit from by yourself
I am highly interested in the course, can audit it?
Typically I welcome students interested in the topics to audit the course. Unfortunately, our scheduled room might not be big enough to fill all people interested. You are welcome to drop me an email one week after the class begins, I will give you updates if there is some space available.
Any suggestions or comments?
I would be glad to get feedback from you, just send me an email.