An introduction to neural networks from biological and machine learning perspectives. Focuses on neural networks for classification and regression involving large image and text datasets. Topics include fundamental design principles; supervised and unsupervised learning; fully connected and convolutional networks; transfer learning. Students obtain hands-on experience implementing and analyzing the neural networks covered each week in regular projects that explore different application areas.

Semester Fall 2026
Credits 4
Times & Locations

TR 9:30 - 10:45 am
Davis 117

Instructor Oliver W. Layton
Office: Davis 115
Email: oliver.layton@colby.edu
Office hours: Here are my weekly office hours. Please reach out — I would like to get to know you!
M: 1:00-2:00pm
T:  11:00-12:00pm
W: 2:00-3:00pm
R: 1:00-2:00pm
Evening TAs

In order to provide as much help as possible to you as you work on assignments in this course, the CS Department has hired the following former CS343ers to work as TAs in Davis in the evenings. You are strongly encouraged to take advantage of this resource. The TAs are getting paid to help you, so don't feel guilty about asking them for help!

Date (Time) TA
Tuesday, 4:00 - 7:00 pm Truong Tuan Minh (mttruo27@colby.edu)
Wednesday, 4:00 - 7:00 pm Ariel Pan (ypan27@colby.edu)
Wednesday, 7:00 - 10:00 pm Glory Mahenge (gamahe28@colby.edu)
Thursday, 7:00 - 10:00 pm Said Castro-Solano (scastr27@colby.edu)
Course Goals
  1. Students understand mathematical and/or computational neural models and can implement them to perform simulations.
  2. Students understand how to interpret and analyze the outputs of neural network model simulations.
  3. Students understand how different neural network architectures affect pattern processing, learning, and memory.
  4. Students appreciate the biological underpinnings of computational principles and their utility for machine learning.
  5. Students work together and solve problems in a team environment.
  6. Students present methods, algorithms, results, and designs in an organized and competently written manner.
  7. Students write, organize and manage a large software project.
Grading

There will be regular opportunities for you to practice what you have learned and to demonstrate your accomplishments.

The course grade will be determined as follows:

Projects (Team) 20% Hands-on opportunities to implement and explore concepts from lecture.
Assigned on average every 2-3 weeks, with weekly turn-in due dates.
Work in teams of two.
Team Participation (Individual) 10% Peer assessment from your team member on collaboration and balanced contributions.
Participation (Individual) 5% I expect you to be an active contributor in the classroom. This requires you to attend lectures. It is not a problem if you know that you will not be able to attend a lecture, but please email me in advance to let me know.
Attendance 5% Active participation and learning require you to attend lectures. It is not a problem if you know that you will not be able to attend a lecture, but please email me in advance to let me know.
Quizzes 20% Short weekly quizzes (given most Thursdays in class)
Midterm Exam 20% A 90-minute opportunity to demonstrate your ability to answer questions about concepts, code, and implementation.
Final Exam 20% A 90-minute opportunity at the end of the semester to demonstrate your ability to answer questions about concepts, code, and implementation. Will be cumulative.
Projects and Extensions

Work done in teams of two.

This course has a weekly project deliverable schedule. A project milestone is due on almost all weeks of the semester, either a check-in or final version:

Check-in submissions Base Project submissions Extension submissions (Optional)
Thursdays 11:59 pm EST *Thursdays 11:59 pm EST
*There are a few exceptions that I will emphasize.
Mondays 11:59 pm EST

Your progress is check on designated project tasks (specifics are not graded).

Updated version of check-in submission and remaining project tasks, graded out of 26 points.

Extensions (due 2 non-weekend days after the final project submission deadline). Extensions will be accepted for any number of projects.

Grade appears in rubric for base project.

Grade appears in rubric for base project.

Extensions have their own rubrics and post in Google Classroom.

Honest attempt: possible to earn at least 26/26 on the final submission.

Absent: 1 point reduction for each missing check-in on base project submission.

26/26: All tasks completed, all test code returns expected outputs.

Up to 4 points for creative, thorough, well-explained extensions.

Together with the base project (/26), projects are still effectively graded out of 30 points.

Earning extension credit requires that the base project is turned in on time. If not, extensions will NOT be graded.

Check-in schedule

The check-in and final submission schedule depends on the project length:

  • 1 week project: Graded final submission only.
  • 2 week project: Check-in submission due one week after project assigned, final graded submission due the next week.
  • 3 week project: Check-in submissions due weekly during the first two weeks, final graded submission due on the third week.

Submitting a project

Check-in and final submissions should be submitted as a ZIP file to Google Classroom to the posted Project assignment there. Only one team member should do this.

The zip file should be named based on the submitting team member's Colby username (e.g. owlayton for me). You should also indicate whether it is a check-in or final submission:

  • For Project X Check-in Y I would name my zip file owlayton_checkinY.zip where X and Y are integers, Including the project number in the filename is not necessary since Google Classroom will automatically organize things based on the project assignment.
  • For Project X final, I would name my zip file owlayton_final.zip.
Project Late Policy

Projects are an important part of the learning experience in this course. I do not want you to get behind with the project workload. To encourage this, projects later than 1 week past the due date will not be accepted.

To help encourage on-time submissions, late projects submitted within this 1 week grace period will not be eligible for extension credit and will be capped at a maximum of 24/30.

Please contact me immediately in the event of illness and other unforeseen circumstances, we will work out accommodations.

Project Freebee

Since everyone has a few extra days to turn in extensions beyond the base project due date, we will not have "freebees". Even if you are not planning on completing extensions, recall the 1 week late policy for base projects that carry only a minor late penalty.

Team Participation

Group work is an important component of the learning experience in this course. You and your team member should feel empowered to contribute with your maximum potential and creativity so that everyone can learn effectively. This requires open communication and respect for each other's contributions and time.

To encourage everyone to reflect on this throughout the course, everyone will fill out a short form to evaluate the team experience when you submit each project. I understand that your workload outside of this course fluctuates during some weeks of the semester. The key is open communication and accountability with your team so that the workload can be distributed equitably and fairly. I expect you to reach out to your team member and me if this is not the case.

The team participation form is only filled out when turning in final submissions (not check-ins).

AI

Effective use of AI has become a core skill in modern computer science and related fields. I encourage you to use AI in this course to build your proficiency. However, with freedom comes responsibility: use AI to enhance your learning, not replace it. You must find balance in your usage so that you learn effectively — this looks different for everyone and requires experimentation.

A primary goal of this course is to prepare you as an AI tool builder. That requires hands-on practice with coding, design, and analysis. If AI does that heavy lifting for you, you have gone too far. Here are a few ideas to guide your AI usage:

  • Code review: Write a method yourself, then have AI help you check your work. Make sure you understand any suggestions or fixes the AI proposes. Never accept fixes blindly; your solution may be better aligned with the project goals.
  • Explore alternative implementations: Ask AI for more readable or efficient implementations. You might learn about an approach that you did not consider!
  • Mock quizzes: Have AI quiz you on concepts, code, or results.

Ultimately, you are responsible for all the code and analyses that you turn in; AI cannot take the blame for shortcomings. Here are several points to keep in mind:

  • For base projects, you should only use Python packages listed in Software. Do not let AI convince you otherwise.
  • Be cautious of AI suggestions that involve esoteric or exotic functions or overly complex implementations. If you cannot read and understand them, do not include them!
Class Participation
  • Your attendance is required. Your presence and participation matters for your learning experience! Everyone in the class benefits from your participation.
  • If you must miss a class for any reason (covid, illness, etc.), please email me in advance. I am happy to work with you.
  • When you have a question, ask it. It is highly likely that one of your classmates has the same question.
Weekly quizzes
  • There is a 10 minute closed book paper quiz given most Thursdays in class.
  • The quizzes let you show me what you have learned. These should be quick and straightforward if you participate in lecture and review lecture notes.
  • I understand that everyone has a bad day; the quiz with the lowest grade will be dropped.
  • Each quiz may be made up when a prior request is made or there is a documented health issue.
  • Please contact me immediately in the event of illness and other unforeseen circumstances, we will work out accommodations.
Midterm and Final Exams
  • There will be a 90-minute evening midterm exam on Wednesday October 21st. To accommodate universal access, everyone may have 3 hours to complete the exam (7:00 - 10:00pm).
  • There will be cumulative final exam at Friday December 18th 9am-12pm.
  • Both exams will contain questions involving course concepts and project results, coding, and implementation. There are no makeups in either case.
Backups

It should go without saying that you should back up any files related to this course. If the code you submit to us is somehow lost (through your fault or our fault), I must be able to get another copy from you. I suggest keeping your code on a cloud storage provider (shared with your team member) Google Drive, Dropbox, or Microsoft OneDrive. That way, you have a backup stored in the cloud.

A private GitHub repository (with your team member set as a collaborator) is another good backup option.

If you use filer, be aware that off campus you need VPN access, which could be unreliable. Also, you must store data in either your Personal folder or a Private folder in Courses.

Team Collaboration

Here are the expectations for collaboration on projects in a team-based environment:

  • You are free to share, exchange, and jointly write code, solve problems, and answer project questions within your team.
  • You may discuss problems and solutions with other teams in English, but you must NOT see, share, or exchange code or responses to written project questions.
Collaboration, Academic honesty

Computer science, both academically and professionally, is a collaborative discipline. In any collaboration, however, all parties are expected to make their own contributions and to generously credit the contributions of others. In our class, therefore, collaboration on assignments is encouraged, but you as an individual are responsible for understanding all the material in the assignment and doing your own work. The following rules are intended to help you get the most out of your education and to clarify the line between honest and dishonest work:

  • For collaboration on projects, see Team Collaboration.
  • Always strive to do your best.
  • Cite and give generous credit to others. If you have had a substantive discussion of any homework or programming solution with a classmate, then be sure to cite them in your write-up. If you are unsure of what constitutes "substantive", then ask me or err on the side of caution.
  • Start early.
  • Seek help early from both your professors and classmates.
  • You must not copy answers or code from another student outside of your team either by hand or electronically. Another way to think about it is that you should communicate with one another in natural human sentences, not in lines of code from a programming language.
  • I reserve the right to ask you to verbally explain the reasoning behind any answer or code that you turn in and to modify your project grade based on your answers. It is vitally important that you turn in work that is your own.

Reports of academic dishonesty are handled by an academic review board and a finding of academic dishonesty may result in significant sanctions. For more details on Colby's Academic Integrity policies and procedures, see colby.edu/academicintegrity.

The Colby Affirmation

Colby College is a community dedicated to learning and committed to the growth and well-being of all its members.

As a community devoted to intellectual growth, we value academic integrity. We agree to take ownership of our academic work, to submit only work that is our own, to fully acknowledge the research and ideas of others in our work, and to abide by the instructions and regulations governing academic work established by the faculty.

As a community built on respect for ourselves, each other, and our physical environment, we recognize the diversity of people who have gathered here and that genuine inclusivity requires active, honest, and compassionate engagement with one another. We agree to respect each other, to honor community expectations, and to comply with College policies.

As a member of this community, I pledge to hold myself and others accountable to these values. More ...

Academic Accommodations

I am available to discuss academic accommodations that any student with a documented disability may require. Please note that you’ll need to provide a letter from the Dean of Studies Office documenting your approved accommodations. Please meet with me to make a request for accommodations at the beginning of the semester--and at a minimum two weeks before any key due dates--so that we can work together with the College to make the appropriate arrangements for you.

Sexual Misconduct
(Title IX Statement)

Colby College prohibits and will not tolerate sexual misconduct or gender-based discrimination of any kind. Colby is legally obligated to investigate sexual misconduct (including, but not limited to, sexual assault and sexual harassment) and other specific forms of behavior that violate federal and state laws (Title IX and Title VII, and the Maine Human Rights Act). Such behavior also requires the College to fulfill certain obligations under two other federal laws, the Violence Against Women Act (VAWA) and the Jeanne Clery Disclosure of Campus Security Policy and Campus Statistics Act (Clery Act).

To learn more about what constitutes sexual misconduct or to report an incident, see: https://www.colby.edu/sexualviolence/.

If you wish to speak confidentially about an incident of sexual misconduct, you may contact:

  • Counseling Center: 207-859-4490
  • Title IX coordinator: Meg Hatch
  • Gender and Sexual Diversity Program: Director Emily Schusterbauer (207-859-4093)
  • Office of Religious & Spiritual Life: Dean of Religious & Spiritual Life Kate Smanik (207-859-4272)

Students should be aware that faculty members are considered "responsible employees"; as such, if you disclose an incident of sexual misconduct to a faculty member, they have an obligation to report it to Colby's Title IX Coordinator. "Disclosure" may include communication in-person, via email/phone/text, or through class assignments.

Observance of Religious holidays

Colby College supports the religious practices of students, faculty, and staff, but we don't always know which people will observe which holidays. Since I need to plan course activities in advance, I need to know in advance, if you need to miss a class or have a deadline adjusted in order to observe a holiday. Please notify me by e-mail at least 14 days in advance of any religious holiday that will affect your ability to participate in this course.

© 2026 Oliver Layton