Skip to content

shawnrhoads/gu-psyc-347

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

DOI:10.21105/jose.00146 Jupyter Book Badge book GitHub last update BuyMeACoffee

Computational Models of Human Social Behavior and Neuroscience

If you use these materials for teaching or research, please use the following citation:

Rhoads, S. A. & Gan, L. (2022). Computational models of human social behavior and neuroscience: An open educational course and Jupyter Book to advance computational training. Journal of Open Source Education, 5(47), 146. https://doi.org/10.21105/jose.00146

πŸŽ“ For Students

All course information relevant for students can be found on the course homepage and syllabus. Students are free to follow along on their own or with an instructor (see below).

🍎 For Instructors

This repository contains materials for a semester-long educational course (see 14-week schedule) and Jupyter Book that provides introductory training in specifying, implementing, and interpreting computational models that characterize human social behavior and neuroscience. This course was designed and taught by Shawn A Rhoads in the spring of 2021 (reach him via email, GitHub, or Twitter with any questions).

This release contains the following modules compiled with the Jupyter Book (and accompanying Google Colaboratory Notebooks):

Module 01 - Scientific Python

Run View
Tutorial: Jupyter Notebooks Open In Colab view
Tutorial: Python Basics Open In Colab view
Tutorial: Working with Data Open In Colab view
Exercise Open In Colab view

Module 02 - Introduction to Modeling

Run View
Tutorial: Linear Modeling Open In Colab view
Tutorial: Nonlinear Modeling Open In Colab view
Exercise Open In Colab view

Module 03 - Reinforcement Learning

Run View
Tutorial: Two-Armed Bandits Open In Colab view
Tutorial: Models of Learning Open In Colab view
Exercise Open In Colab view

Module 04 - Social Learning

Run View
Tutorial: Prosocial Learning Open In Colab view
Exercise Open In Colab view

The course structure is outlined in the syllabus and schedule. These include course goals and student expectations, an example timeline of the course (i.e., how long to spend on each module), prerequisites and required materials/software, and example assessments of learning (e.g., assignments, exercises, readings, projects).

All course materials are also designed to be modular. For example, if students are knowledgeable in Python basics and Jupyter Notebook (Module 01), then instructors could begin with model fitting (Module 02). If students are knowledgeable in model fitting with maximum likelihood estimation (Module 02), instructors could start with reinforcement learning (Module 03). Instructors can adopt, remix, transform, and build upon these materials for their own course or for other educational purposes (e.g., workshops, single class sessions) under a Creative Commons Attribution-ShareAlike 4.0 International License.

Students have the option to interact with each tutorial notebook using one of two ways. The first option entails installing Anaconda 3 on their local computers with a custom environment made for this course and then opening each notebook using Jupyter Notebook. Instructors can walk students through the installation steps using the instructions provided on the Getting Started page. However, this can be rather difficult to implement with students' different machines, operating systems, background, etc. As a fail-safe, students also have the option to use Google Colaboratory, which runs the code on Google's cloud servers for free. There is a button at the top of each tutorial page that opens each Jupyter Book page in Google Colaboratory:

Open In Colab

Once students are able to run notebooks (locally or on the cloud), they can interact with all of the code in the tutorials. Instructors should guide students through all of the "tutorials", which, for example, will allow them to demonstrate to students how tweaking certain variables in real-time would change the outputs. The "exercises" at the end of each module were created for the students to apply what they have learned. They can work on these by themselves or in groups.

For additional background on the content covered in each tutorial (technical or theoretical), instructors (and students) are encouraged to review the references and/or resources listed at the beginning of each tutorial or the non-exhaustive list of resources on the Resources page. In addition, instructors should familarize themselves with the recommended readings associated with each module and use them to introduce students to each topic, generate discussions and ideas among students, and provide relevant background for each tutorial.

🀝 For Contributors

While the course aims to incorporate a diverse curriculum to introduce students to the basics of modeling in the context of social behavior, there is still so much left out (and still much unknown in this growing field). That being said, other researchers and educators are invited to help improve and expand the content included in this Jupyter Book!

Here are some ways you can help accomplish this goal!

  • If you spot an error (e.g., typo, bug, inaccurate descriptions, etc.), please open a new issue on GitHub by clicking on the GitHub Icon in the top right corner on any page and selecting "open issue". Alternatively, you can open a new issue directly through GitHub.
  • If there is inadvertently omitted credit for any content that was generated by others, please also open a new issue directly through GitHub.
  • If you have an idea for a tutorial or a new module to include (especially related to the growing list of readings, please either open a new issue and/or submit a pull request directly to the repository on GitHub.

Please visit this page for additional information on helping improve and/or expand the content in this Jupyter Book!

πŸ”Ž Seeking Help

Content-related questions from students, teachers, and contributors related to the course can be submitted here. The maintainers will try their best to answer any questions in a timely manner, but please be mindful of their time. We request that individuals make a good faith effort searching for their answer in the relevant readings or resources listed at the beginning of each tutorial before submitting questions.


✨ Contributors


Shawn A Rhoads
🎨 πŸ”£ πŸ“– πŸ–‹ πŸ’»
πŸ€” πŸš‡ 🚧 πŸ‘€ βœ…

Lin Gan
πŸ–‹
πŸ’» πŸ‘€

The above follows the all-contributors specification (see emoji key).

πŸ™ Acknowledgments

I am grateful to Dr. Deborah Sterns, Joscelin Rocha-Hidalgo, and the Georgetown Center for New Designs in Learning & Scholarship (CNDLS) for allowing me to use their teaching resources throughout the development of this course. I am also grateful to Project Jupyter for making it possible to create and share these materials in a Jupyter Book. I am also grateful to Lin Gan for her contributions and feedback in making enhancements to these materials. The format of this course was largely inspired by the MIND Computational Summer School, Neuromatch Academy, Dr. Maximilian Risenhuber's Computational Neuroscience course, Dr. Robert C. Wilson's Modeling the Mind course, Dr. Luke J. Chang's DartBrains Jupyter Book, the research conducted in Dr. Abigail A. Marsh's Laboratory on Social and Affective Neuroscience, and the countless conversations with my colleagues about the selected topics.

🎫 License for this book

Creative Commons License
Content in this book (i.e., any .md or .ipynb files in the content/ folder) is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.