Skip to content

Commit a25de60

Browse files
committed
adds jan 2025 workshop page, with presentation
1 parent 9c3dabc commit a25de60

File tree

9 files changed

+642
-32
lines changed

9 files changed

+642
-32
lines changed

site/_workshops/jan-2025.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
---
2+
layout: home
3+
title: Jan 2025
4+
categories: workshops
5+
date: Jan 2025
6+
redirect_from: /workshops/jan-2025/
7+
---
8+
9+
![image](/assets/jan2025-banner.svg)
10+
11+
# Flatiron CCN Software Workshop, January 2025
12+
13+
We are excited to see everyone at the Flatiron Center for Computational Neuroscience workshop on using open source packages to analyze neural data in January 2025!
14+
15+
Over the course of this two-day workshop, we will walk you through the notebooks included on this site in order to demonstrate how to use pynapple and NeMoS to analyze and visualize your data.
16+
17+
This website contains links to the presentations for the workshop, as well as to other useful information.
18+
19+
## Useful links
20+
21+
- [Workshop schedule](#schedule)
22+
- [Notebook site](https://flatironinstitute.github.io/neurorse-workshops/workshops/jan-2025/branch/main/)
23+
- Websites for the packages used in this workshop:
24+
- pynapple: [documentation](https://pynapple.org/), [github repo](https://github.com/pynapple-org/pynapple), [twitter](https://x.com/thepynapple), [bluesky](https://bsky.app/profile/pynapple.bsky.social)
25+
- NeMoS: [documentation](https://nemos.readthedocs.io/en/latest/), [github repo](https://github.com/flatironinstitute/nemos), [twitter](https://x.com/nemos_neuro)
26+
27+
## Setup
28+
29+
Before the workshop begins, please follow the setup instructions found on the [workshop notebook site](https://flatironinstitute.github.io/neurorse-workshops/workshops/jan-2025/branch/main/)
30+
31+
## Presentations, in chronological order
32+
33+
- [Welcome](/presentations/jan-2025/welcome), Billy Broderick ([pdf slides](https://users.flatironinstitute.org/~wbroderick/presentations/jan-2025/welcome.pdf) if html won't load)
34+
- [Neurodata Without Borders](https://users.flatironinstitute.org/~wbroderick/presentations/fens-2024/2024_06_22_CCN_at_FENS_NWB_Ruebel.pdf), Oliver Rübel
35+
- Introduction to Pynapple Core, Guillaume Viejo
36+
- [A conceptual introduction to Generalized Linear Models](https://users.flatironinstitute.org/~wbroderick/presentations/jan-2025/glm_intro_jan_feb_2025.pdf), Edoardo Balzani
37+
- [Basic Generalized Linear Models with NeMoS](/presentations/jan-2025/current_injection), Billy Broderick ([pdf slides](https://users.flatironinstitute.org/~wbroderick/presentations/jan-2025/current_injection.pdf) if html won't load)
38+
- [Model Selection and Cross-Validation](https://users.flatironinstitute.org/~wbroderick/presentations/jan-2025/model_selection.pdf), Edoardo Balzani
39+
- [Scikit learn](/presentations/jan-2025/scikit-learn), Billy Broderick ([pdf slides](https://users.flatironinstitute.org/~wbroderick/presentations/jan-2025/scikit-learn.pdf) if html won't load)
40+
- [Conclusion](/presentations/jan-2025/conclusion), Billy Broderick ([pdf slides](https://users.flatironinstitute.org/~wbroderick/presentations/jan-2025/conclusion.pdf) if html won't load)
41+
42+
## Schedule
43+
44+
| Day 0 (Wed, Jan 29) | |
45+
|---------------------------|-----------------------------------------------------------------------------------------|
46+
| 2pm -- 5pm | Installation help |
47+
| 5pm -- 7pm | Welcome reception |
48+
|---------------------------|-----------------------------------------------------------------------------------------|
49+
| **Day 1 (Thurs, Jan 30)** | **pynapple** |
50+
|---------------------------|-----------------------------------------------------------------------------------------|
51+
| 9 -- 10am | Breakfast |
52+
| 10 -- 11am | Welcome and introduction to data standards |
53+
| 11 -- 11:30am | Coffee break |
54+
| 11:30am -- 1pm | Pynapple core |
55+
| 1 -- 2pm | Lunch |
56+
| 2 -- 3:30pm | Standard analyses in systems neuroscience, part 1: cross-correlations and tuning curves |
57+
| 3:30 -- 4pm | Coffee break |
58+
| 4 -- 5:45pm | Standard analyses in systems neuroscience, part 2: signal processing |
59+
| 5:45 -- 6pm | [fastplotlib](https://github.com/fastplotlib/fastplotlib) advertisement |
60+
| 6 -- 8pm | Dinner |
61+
|---------------------------|-----------------------------------------------------------------------------------------|
62+
| **Day 2 (Fri, Jan 31)** | **NeMoS** |
63+
|---------------------------|-----------------------------------------------------------------------------------------|
64+
| 9 -- 10am | Breakfast |
65+
| 10 -- 11am | Introduction to Generalized Linear Models (GLMs) |
66+
| 11 -- 11:30am | Coffee break |
67+
| 11:30am -- 1pm | Fitting a basic GLM to single neuron patch-clamp recordings |
68+
| 1 -- 2pm | Lunch |
69+
| 2 -- 4pm | Functional connectivity analysis of head-direction neurons |
70+
| 4 -- 4:30pm | Coffee break |
71+
| 4:30 -- 6pm | Model comparison and cross-validation |
72+
| 6 -- 8pm | Dinner |
73+
74+
## Speakers
75+
76+
{% assign speakers = "balzani,broderick,venditto,viejo,ruebel" | split: "," %}
77+
{% include people_cards.html people=speakers %}
78+
79+
## TAs
80+
81+
{% assign speakers = "lewis,schomburg,tanelus,garon" | split: "," %}
82+
{% include people_cards.html people=speakers %}

site/assets/flatiron-slides.css

Lines changed: 39 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*
55
* Liz Lovero
66
* Updated: 28 August 2019
7-
*/
7+
*/
88
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,700');
99
@import url('https://fonts.googleapis.com/css?family=Tinos:400,700,400i,700i');
1010
/*********************************************
@@ -84,7 +84,7 @@ body {
8484
margin-top: 20%;
8585
}
8686

87-
.reveal h2:not(:has(~ p, ~ div, ~ ul, ~ ol, ~ dl)):not(h1 + h2, h2 + h2) {
87+
.reveal h2:not(:has(~ p, ~ div, ~ ul, ~ ol, ~ dl, ~ table)):not(h1 + h2, h2 + h2) {
8888
text-shadow: none;
8989
margin-bottom: 5%;
9090
margin-top: 20%;
@@ -216,23 +216,6 @@ body {
216216
word-wrap: normal;
217217
}
218218

219-
.reveal table {
220-
margin: auto;
221-
border-collapse: collapse;
222-
border-spacing: 0;
223-
}
224-
225-
.reveal table th {
226-
font-weight: bold;
227-
}
228-
229-
.reveal table th,
230-
.reveal table td {
231-
text-align: left;
232-
padding: 0.2em 0.5em 0.2em 0.5em;
233-
border-bottom: 1px solid;
234-
}
235-
236219
.reveal table.vert th,
237220
.reveal table.vert td {
238221
border-left: 1px solid;
@@ -242,19 +225,42 @@ body {
242225
border-left: none;
243226
}
244227

245-
.reveal table th[align='center'],
246-
.reveal table td[align='center'] {
247-
text-align: center;
248-
}
249-
250-
.reveal table th[align='right'],
251-
.reveal table td[align='right'] {
252-
text-align: right;
253-
}
254-
255-
.reveal table tbody tr:last-child th,
256-
.reveal table tbody tr:last-child td {
257-
border-bottom: none;
228+
/* copied from main2.css and then modified slightly */
229+
.reveal table {
230+
width: 100%;
231+
text-align: left;
232+
border-collapse: collapse;
233+
margin: auto;
234+
border-spacing: 0;
235+
border: 1px solid #e8e8e8;
236+
th {
237+
font-weight: bold;
238+
}
239+
th,
240+
td {
241+
padding: 0.2em 0.5em 0.2em 0.5em;
242+
border-bottom: 1px solid;
243+
}
244+
td {
245+
border-width: 1px 0px 1px 0px;
246+
border-style: solid;
247+
border-color: #e8e8e8;
248+
}
249+
th:first-child, td:first-child {
250+
width: 30%
251+
}
252+
th[align='center'],
253+
td[align='center'] {
254+
text-align: center;
255+
}
256+
th[align='right'],
257+
td[align='right'] {
258+
text-align: right;
259+
}
260+
tbody tr:last-child th,
261+
tbody tr:last-child td {
262+
border-bottom: none;
263+
}
258264
}
259265

260266
.reveal sup {
@@ -492,3 +498,4 @@ div.two-column {
492498
display: none;
493499
visibility: hidden;
494500
}
501+

site/assets/jan-2025/speakers.svg

Lines changed: 342 additions & 0 deletions
Loading
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
layout: slides
3+
title: "Conclusion"
4+
markdown: slides.md
5+
---
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Flatiron CCN Software workshop
2+
3+
![image](/assets/jan2025-banner.svg)
4+
5+
#note: thanks everyone for coming to this workshop!
6+
7+
---
8+
## Staying in touch
9+
10+
- [https://neurorse.flatironinstitute.org/](https://neurorse.flatironinstitute.org/)
11+
- pynapple:
12+
- [https://github.com/pynapple-org/pynapple](https://github.com/pynapple-org/pynapple)
13+
- [https://x.com/thepynapple](https://x.com/thepynapple)
14+
- [https://bsky.app/profile/pynapple.bsky.social](https://bsky.app/profile/pynapple.bsky.social)
15+
- thepynapple@gmail.com
16+
- NeMoS:
17+
- [https://github.com/flatironinstitute/nemos](https://github.com/flatironinstitute/nemos)
18+
- [https://x.com/nemos_neuro](https://x.com/nemos_neuro)
19+
20+
#note: all of these packages are on github, and we're always excited to get more people involved. you can ask us questions on github, open issues if you run into problems, and keep an eye on what we're up to
21+
22+
---
23+
## Thank you!
24+
25+
Look for survey in the next day
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
layout: slides
3+
title: "Basic GLMs with NeMoS"
4+
markdown: slides.md
5+
---
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# Basic Generalized Linear Models with NeMoS
2+
3+
## Billy Broderick
4+
## Jan 2025
5+
6+
#note: welcome back everyone. I hope everyone's refreshed, caffeinated, and excited for modeling. I'm Billy, one of the developers of nemos, and from now until lunch, we're going to learn the basics of fitting a GLM with NeMoS, before Edoardo comes back and shows a more indepth example
7+
8+
---
9+
10+
![](https://users.flatironinstitute.org/~wbroderick/presentations_assets/fens-2024/allen_brain_map.png)
11+
12+
#note: for this first exercise, we're going to use a data from the Allen Brain Atlas, which contains recordings from a huge variety of mouse neurons.
13+
14+
---
15+
16+
<div data-animate data-load="https://users.flatironinstitute.org/~wbroderick/presentations_assets/fens-2024/allen_data.svg" crossorigin="anonymous">
17+
<!-- {"setup": [
18+
{"element": "#rect712", "modifier": "attr", "parameters": [ {"class": "fragment appear-disappear", "data-fragment-index": "0"} ]},
19+
{"element": "#rect1342", "modifier": "attr", "parameters": [ {"class": "fragment appear-disappear", "data-fragment-index": "1"} ]},
20+
{"element": "#rect1374", "modifier": "attr", "parameters": [ {"class": "fragment appear-disappear", "data-fragment-index": "2"} ]},
21+
{"element": "#g1429", "modifier": "attr", "parameters": [ {"class": "fragment appear-disappear", "data-fragment-index": "4"} ]},
22+
{"element": "#g1433", "modifier": "attr", "parameters": [ {"class": "fragment appear-disappear", "data-fragment-index": "5"} ]},
23+
{"element": "#g1437", "modifier": "attr", "parameters": [ {"class": "fragment appear-disappear", "data-fragment-index": "6"} ]}
24+
]} -->
25+
</div>
26+
27+
#note: in this session, we're going to use data from one of these recordings.
28+
29+
**click** this is a layer 4 neuron from mouse V1.
30+
31+
**click** this is an in-vitro experiment, with the neuron in a patch-clamp setup in a dish. the experimenters are injecting current in different patterns and recording the cell's response, both the membrane voltage and the spikes.
32+
33+
we're going to ignore the membrane voltage, since you don't usually have that for the kinds of experiments analyzed with nemos, and we'll focus on the current as input and the spikes as output.
34+
35+
**click** they injected current in a bunch of different patterns, but we're just going to look at one of them, Noise 1. in this protocol, current was injected at three different time points throughout the trial, as a noisy sinusoid.
36+
37+
- **click** looking back at the data here, we can see that the cell doesn't respond at all to the first, lowest amount of current
38+
- **click** then it responds a medium amount to the middle level of current
39+
- **click** and responds a lot to the final current level
40+
41+
This behavior, this simple response to the current, is what we're going to build our model to explain.
42+
43+
I'm going to return to this behavior and talk about it in more detail as we work through the notebook, but any questions about this before we get started?
44+
45+
**pause**
46+
47+
first we're going to explore this data set with pynapple, then we'll put together a model in nemos, examine how it did, and then extend it a bit. okay, let's get started.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
layout: slides
3+
title: "Welcome!"
4+
markdown: slides.md
5+
---
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# Flatiron CCN Software workshop
2+
3+
![image](/assets/jan2025-banner.svg)
4+
5+
#note: welcome everyone to the CCN software workshop! we're excited to have you here. I'm Billy Broderick, one of the members of the neuroRSE team. Before we get started, I'm going to have the speakers and TAs introduce themselves. then we'll go around and have everyone introduce themselves. I'll finish up by giving an overview of our schedule, and then we'll get started!
6+
7+
but before all that --- couple quick notes:
8+
9+
- we're planning on taking some photos at this workshop, which we'll post on twitter or our websites. if you don't want your photo included there, just let one of us know
10+
- has everyone run setup.py? did they see my slack message yesterday about `pip install -e .`?
11+
12+
---
13+
14+
## Everyone installed and ready to go?
15+
16+
```
17+
cd path/to/ccn-software-jan-2025
18+
git pull
19+
pip install -e .
20+
```
21+
22+
---
23+
24+
## Workshop staff
25+
26+
![image](/assets/jan-2025/speakers.svg)
27+
28+
#note: Okay, with all that out of the way, let's introduce who's here for this workshop. These are the people you can ask questions to if you have logistical or technical problems. I'm going to have us all go around and introduce ourselves briefly, saying who we are, where we are, what we work on, and one non-science fact about ourselves.
29+
30+
Since I'm standing up here, I'll go first: I'm Billy Broderick, I'm one of the members of the neuroRSE group I just mentioned. I'm one of the developers for nemos, and I'm the main developer for plenoptic, which we're not actually discussing here, but is a package for generating stimuli to better understand computational models of perceptual systems. If you're interested, happy to talk more about this, come find me. My non science fact is: I'm actually recently back from parental leave; I have a 15 week old daughter at home. so I'm really looking forward to getting a full nights uninterrupted sleep while I'm Vienna. And I have about a million photos, if anyone wants to see.
31+
32+
Okay, let's go through everyone else from top left to bottom right: Jessica?
33+
34+
---
35+
## Introduce yourselves!
36+
37+
### Name, Lab, What you work on
38+
### One non-science fact about yourself
39+
40+
#note: Now let's go through and introduce all the participants. Let's start at the front here and we'll snake our way back.
41+
42+
---
43+
## Day 1: pynapple
44+
45+
| Time | Event |
46+
|---------------|-----------------------------------------------------------------------------------------|
47+
| 9 - 10am | Breakfast |
48+
| 10 - 11am | Welcome and introduction to data standards |
49+
| 11 - 11:30am | Coffee break |
50+
| 11:30am - 1pm | Pynapple core |
51+
| 1 - 2pm | Lunch |
52+
| 2 - 3:30pm | Standard analyses in systems neuroscience, part 1: cross-correlations and tuning curves |
53+
| 3:30 - 4pm | Coffee break |
54+
| 4 - 5:45pm | Standard analyses in systems neuroscience, part 2: signal processing |
55+
| 5:45 - 6pm | [fastplotlib](https://github.com/fastplotlib/fastplotlib) advertisement |
56+
| 6 - 8pm | Dinner |
57+
58+
#note: Excellent. so, up next, we're going to hear from Oliver talking about the NWB data standard, then the rest of the day will be Guillaume and Sarah Jo talking about pynapple, alternating between presentations and hands-on exercises.
59+
60+
if you don't have your installation working now, come find one of us at the coffee break so we can get you ready to go for the rest of the day! please!
61+
62+
then we have dinner tonight all together at Flatiron
63+
64+
---
65+
## Day 2: nemos
66+
67+
| Time | Event |
68+
|---------------|-------------------------------------------------------------|
69+
| 9 - 10am | Breakfast |
70+
| 10 - 11am | Introduction to Generalized Linear Models (GLMs) |
71+
| 11 - 11:30am | Coffee break |
72+
| 11:30am - 1pm | Fitting a basic GLM to single neuron patch-clamp recordings |
73+
| 1 - 2pm | Lunch |
74+
| 2 - 4pm | Functional connectivity analysis of head-direction neurons |
75+
| 4 - 4:30pm | Coffee break |
76+
| 4:30 - 6pm | Model comparison and cross-validation |
77+
| 6 - 8pm | Dinner |
78+
79+
#note: tomorrow is all Generalized Linear Models, all day. We'll start off with Edoardo giving an conceptual overview of the GLM, then I'll walk you through a simple example with some data from the Allen Brain Observatory, Edoardo will come back to walk you through a more involved example with head-direction tuned neurons, then I'll finish the day by discussing how to use nemos with scikit-learn to do model selection and cross-validation
80+
81+
And we'll again finish the day with a hackathon. we'll have some advanced concepts you can work through, or you can play around with using nemos on your data. again, we'll be here to help and answer any questions.
82+
83+
our dinner tomorrow will be offsite, so please let one of the admin know if you won't be joining for any reason.
84+
85+
---
86+
## one link to rule them all
87+
88+
[https://neurorse.flatironinstitute.org/workshops/jan-2025/](https://neurorse.flatironinstitute.org/workshops/jan-2025/)
89+
90+
#note: Finally, I'm going to leave this up here for a bit. You've gotten this link on the slack, you've gotten this in your email, but one more time. This page has links to the slides of all the presentations you'll see, as well as to the workshop schedule and the github page that has the setup instructions and all the notebooks we'll be working through on this workshop.
91+
92+
Any questions before I pass things off to Oliver to talk about NWB?

0 commit comments

Comments
 (0)