Presentation is loading. Please wait.

Presentation is loading. Please wait.

Developing Computational Skills in the Sciences with MATLAB

Similar presentations


Presentation on theme: "Developing Computational Skills in the Sciences with MATLAB"— Presentation transcript:

1 Developing Computational Skills in the Sciences with MATLAB
Lisa Alain Benjamin Daniel Presenters: Lisa Kempler, Alain Plattner, Benjamin Bratton, Daniel Zysman Audience: Science educators

2 The Session Will Give You
Strategies for teaching data analysis, modeling, and computation, in domain-focused courses Resources for teaching computation in Sciences Teaching activities (with code) Tools to address common challenges conveying computational skills in the Sciences with MATLAB Access to a community of peer educators

3 Session Flow Session goals
Tour of MATLAB Resources for Sciences: SERC site 3 professors’ representative Teaching Activities Choice of geophone layout in a simple near-surface seismics setting Alain Plattner, Geophysics California State University – Fresno Building Modular Tools for Visualizing Computation Benjamin Bratton, Biology Princeton University Principal Component Analysis Daniel Zysman, Neuroscience Massachusetts Institute of Technology Q&A

4 Teaching Computation in the Sciences with MATLAB Workshop (Oct 2016)
Objectives and process Participants Outcomes

5 Participants and Posted Resources
he

6 Resource Overview Page: Teaching with MATLAB

7 October 2016 Workshop Outcomes: Teaching Computation with MATLAB

8 SERC Site Resources: Teaching Computation with MATLAB
MATLAB page for educators data_models/toolsheets/MATLAB.html Workshop resources and outcomes teaching_computation/index.html matlab_computation2016/outcomes.html

9 Session Flow Session goals
Tour of MATLAB Resources for Sciences: SERC site 3 professors’ representative Teaching Activities Choice of geophone layout in a simple near-surface seismics setting Alain Plattner, Geophysics California State University – Fresno Building Modular Tools for Visualizing Computation Benjamin Bratton, Biology Princeton University Principal Component Analysis Daniel Zysman, Neuroscience Massachusetts Institute of Technology Q&A

10 California State University Fresno
Examples using Matlab / Octave for Experimental Design and Data Processing in a Near-surface Applied Geophysics Class Alain Plattner California State University Fresno April 27, 2017

11 Two Matlab / Octave m-file packages
On Seism-O: Simulation of applied geophysics seismic data Used for teaching concepts and experimental design GPR-O: Processing and visualization of ground penetrating radar data Used for teaching concepts and effects of data processing

12 Seism-O: Simple Seismic Data Simulation

13 Seism-O: Simple Seismic Data Simulation

14 Seism-O: Simple Seismic Data Simulation

15 Seism-O: Simple Seismic Data Simulation
Show simulated arrival times Simulated arrival times using Seism-O for 1 m geophone spacing

16 Seism-O: Simple Seismic Data Simulation
Simulated arrival times for 1 m geophone spacing Simulated waveforms for 1 m geophone spacing

17 Seism-O: Simple Seismic Data Simulation
Simulated waveforms for 2 m geophone spacing Simulated waveforms for 1 m geophone spacing

18 Seism-O: Simple Seismic Data Simulation
Software and teaching activity on Simulated waveforms for 2 m geophone spacing Simulated waveforms for 1 m geophone spacing

19 GPR-O: GPR data processing & visualization

20 GPR-O: GPR data processing & visualization
Instructions and software on Simple Matlab / Octave scripts Ground penetrating radar basic data processing 2-D profile and depth-slice plots Topography Educational documentation GPR data available for example from

21 GPR-O: GPR data processing & visualization
Data: Liu et al. (in prep)

22 GPR-O: GPR data processing & visualization
Data: Liu et al. (in prep)

23 GPR-O: GPR data processing & visualization
Data: Liu et al. (in prep)

24 GPR-O: GPR data processing & visualization
Data: Liu et al. (in prep)

25 GPR-O: GPR data processing & visualization
Tutorial with test data: Raw field data available for example from:

26 Summary Seism-O and GPR-O: Matlab / Octave scripts for seismic data simulation and ground penetrating radar data processing Both available from For near-surface geophysics class or general data simulation, experimental design, data processing class.

27 Building modular tools for visualizing computation

28 Why are computational tools daunting (for biology graduate students) to use?
“The toolbox can’t find a thing and so it gives an error.” “I don’t know which parameters are important and which ones I’m not supposed to touch.” “I understood the code you showed us in class, but when I go to do the homework problems, I can’t figure out what to write.” “I don’t want to use a tool when I don’t entirely understand the math. What if there’s some important assumption that I’m missing?” “I used these four different packages and one of them gave me the result that I think will make my boss happy, so I must have done something wrong on the other ones.”

29 Modular problem sets help students quickly gain proficiency
Small pieces with displayed outputs Reusable pieces Springboard to independence “The toolbox can’t find a thing and so it gives an error.” “I don’t know which parameters are important and which ones I’m not supposed to touch.” “I understood the code you showed us in class, but when I go to do the homework problems, I can’t figure out what to write.” “I don’t want to use a tool when I don’t entirely understand the math. What if there’s some important assumption that I’m missing?” “I used these four different packages and one of them gave me the result that I think will make my boss happy, so I must have done something wrong on the other ones.”

30 What do x(t) and y(t) look like?
Dynamical systems What do x(t) and y(t) look like? “The toolbox can’t find a thing and so it gives an error.” “I don’t know which parameters are important and which ones I’m not supposed to touch.” “I understood the code you showed us in class, but when I go to do the homework problems, I can’t figure out what to write.” “I don’t want to use a tool when I don’t entirely understand the math. What if there’s some important assumption that I’m missing?” “I used these four different packages and one of them gave me the result that I think will make my boss happy, so I must have done something wrong on the other ones.”

31 Dynamical systems “The toolbox can’t find a thing and so it gives an error.” “I don’t know which parameters are important and which ones I’m not supposed to touch.” “I understood the code you showed us in class, but when I go to do the homework problems, I can’t figure out what to write.” “I don’t want to use a tool when I don’t entirely understand the math. What if there’s some important assumption that I’m missing?” “I used these four different packages and one of them gave me the result that I think will make my boss happy, so I must have done something wrong on the other ones.”

32 Dynamical systems “The toolbox can’t find a thing and so it gives an error.” “I don’t know which parameters are important and which ones I’m not supposed to touch.” “I understood the code you showed us in class, but when I go to do the homework problems, I can’t figure out what to write.” “I don’t want to use a tool when I don’t entirely understand the math. What if there’s some important assumption that I’m missing?” “I used these four different packages and one of them gave me the result that I think will make my boss happy, so I must have done something wrong on the other ones.”

33 Dynamical systems “The toolbox can’t find a thing and so it gives an error.” “I don’t know which parameters are important and which ones I’m not supposed to touch.” “I understood the code you showed us in class, but when I go to do the homework problems, I can’t figure out what to write.” “I don’t want to use a tool when I don’t entirely understand the math. What if there’s some important assumption that I’m missing?” “I used these four different packages and one of them gave me the result that I think will make my boss happy, so I must have done something wrong on the other ones.”

34 Dynamical systems “The toolbox can’t find a thing and so it gives an error.” “I don’t know which parameters are important and which ones I’m not supposed to touch.” “I understood the code you showed us in class, but when I go to do the homework problems, I can’t figure out what to write.” “I don’t want to use a tool when I don’t entirely understand the math. What if there’s some important assumption that I’m missing?” “I used these four different packages and one of them gave me the result that I think will make my boss happy, so I must have done something wrong on the other ones.”

35 Specific example: Modeling oscillations of glycolysis in yeast
For multiple versions of the code see lization_SERC201610

36 Benefits for modular problems
Students learn when to take breaks Fail (and succeed) quickly Encourages code reuse “The toolbox can’t find a thing and so it gives an error.” “I don’t know which parameters are important and which ones I’m not supposed to touch.” “I understood the code you showed us in class, but when I go to do the homework problems, I can’t figure out what to write.” “I don’t want to use a tool when I don’t entirely understand the math. What if there’s some important assumption that I’m missing?” “I used these four different packages and one of them gave me the result that I think will make my boss happy, so I must have done something wrong on the other ones.”

37 A principled way to principal components analysis
Daniel Zysman April 27, 2017

38 Teaching scientific computing in Brain & Cog sciences
The challenge is to deal with students motivation, preparedness and interest: How to effectively break the ice. How to cope with inertia. We need to make it interesting, relevant and transferable.

39 A two tier approach Tier 1:
Learn the basics of data visualization and modelling via toy examples. Build it step by step. Tier 2: Apply the fundamentals to fun and relevant problems. Photos: Mandana Sassanfar, Quantitative Methods Workshop, CBMM, MIT.

40 Tier 1: PCA Toy Example Toy data: Bivariate Gaussian, unknown covariance to students. Task: Find directions of maximum variance. Rotate Project Reveal Structure

41 Take home messages: Rotations and Projections
Data variability and its geometry Matrix duality: to represent data to transform data Challenge activity: make a dataset, ask fellow student to reveal underlying structure.

42 Tier 2: PCA for image classification
Teaching activity: 28 by 28 pixels 8-bit gray scale images These images live in a 784 dimensional space Task: classify digits one from seven using PCA Revisit: rotations projections MNIST data set

43 Pairwise pixel intensity relations
There are more than possible pairwise pixel plots!!! Not clear which one to choose. Which choice is more informative? Try PCA.

44 The 9 images that capture most variance

45 Projections for classification
The first two PCs capture ~37% of the total variance. The data clusters nicely in this space (linear separability).

46 Learning outcomes PCA reveals underlying structure in the data.
It aids in visualization and classification tasks. Provides a chance to address short comes, assumptions and pitfalls. Emphasize the different role of matrices: To store data To transform data

47 Student’s feedback The two tier approach:
Keep students engaged and motivated to learn, while being challenged. Improves confidence and competency to transfer what they have learned to broader contexts.

48 Join the Community: Teaching Computation in Sciences with MATLAB Community

49 Join the Community: Teaching Computation in Sciences with MATLAB Community

50 Future Community Sessions on Teaching with MATLAB
Earth Educators’ Rendezvous, July 17-21, 2017 Early Bird Registration deadline is May 1st! Mark your calendars! Teaching Computation with MATLAB in the Sciences Workshop October 15-17, 2017 Carleton College, Northfield, MN Rory McFadden if you are interested in joining the community

51 SERC Resources: Teaching Computation with MATLAB
MATLAB page for educators toolsheets/MATLAB.html And researchers, too Workshop outcomes Teaching Activities Pedagogy and computational philosophy Community


Download ppt "Developing Computational Skills in the Sciences with MATLAB"

Similar presentations


Ads by Google