VS265: Homework assignments: Difference between revisions

From RedwoodCenter
Jump to navigationJump to search
 
(27 intermediate revisions by 4 users not shown)
Line 2: Line 2:


'''Submission instructions''':
'''Submission instructions''':
email both a PDF of your solutions as well as your code (.m or .py files) as attachments to:
Only paper copies of the homework will be accepted. Solutions are due at the start of the class. Please place them on the speaker's desk at the front of the class.
    vs265 AT rctn.org
You can hand in a paper copy of your solutions before class, but you still have to email your code to the address above before the assignment is due.


= Resources =
= Resources =
Line 22: Line 20:
* [http://redwood.berkeley.edu/vs265/lab1.pdf lab1.pdf]  
* [http://redwood.berkeley.edu/vs265/lab1.pdf lab1.pdf]  
* [http://redwood.berkeley.edu/vs265/data.mat data.mat]
* [http://redwood.berkeley.edu/vs265/data.mat data.mat]
<!--[http://redwood.berkeley.edu/w/images/e/ef/Hw1_soln_bilenko.pdf Solution.pdf] -->


==== Lab #2, due Tuesday, September 23 at beginning of class ====
==== Lab #2, due Tuesday, September 23 at beginning of class ====
Line 40: Line 36:
   Out[3]: ['oranges2', 'apples2', 'apples', 'oranges']
   Out[3]: ['oranges2', 'apples2', 'apples', 'oranges']


 
==== Lab #3, due Tuesday, October 21 at beginning of class ====
==== Lab #3, due Thursday, October 2 at beginning of class ====
* [http://redwood.berkeley.edu/vs265/lab3.pdf lab3.pdf]
* [http://redwood.berkeley.edu/vs265/lab3.pdf lab3.pdf]
Matlab code are as separate files below.
Matlab code are as separate files below.
Line 56: Line 51:
* [http://redwood.berkeley.edu/vs265/lab3/eigmovie.txt eigmovie.py]
* [http://redwood.berkeley.edu/vs265/lab3/eigmovie.txt eigmovie.py]


<!-- * [http://redwood.berkeley.edu/vs265/sols/hw3-08.pdf Solutions.pdf] This is a solution from a previous version of this class that is really well written. -->
==== Lab #4, due October 9th at beginning fo class ====
 
* [http://redwood.berkeley.edu/w/images/8/81/Vs265_fall14_hw4.pdf lab4.pdf]
Matlab code and data for homework
* [http://redwood.berkeley.edu/vs265/lab7/patterns.mat patterns.mat]
* [http://redwood.berkeley.edu/vs265/lab7/hopnet.m hopnet.m]
* [http://redwood.berkeley.edu/vs265/lab7/corrupt.m corrupt.m]
* [http://redwood.berkeley.edu/vs265/lab7/genpat.m genpat.m]
 
''Python code:''
* [http://redwood.berkeley.edu/vs265/lab7/hopnet.txt hopnet.py] - python version of the above code as one file (with run, genpat, and corrupt methods)
* [http://redwood.berkeley.edu/vs265/lab7/patterns.npz patterns.npz]
    p = np.load('patterns.npz')
    face,hi,X = p['face'], p['hi'], p['X']
 
    # if you load patterns.mat, use:
    p = scipy.io.loadmat("patterns.mat")
    face,hi,X = [p[k].reshape(10,10).T.reshape(100,1) for k in 'face','hi','X']
    # line above converts Fortran to C ordering
 
==== Lab #5, due Thursday, Oct 30 at beginning of class ====
* [http://redwood.berkeley.edu/vs265/lab5.pdf lab5]
* [http://redwood.berkeley.edu/vs265/foldiak_class_scripts.zip foldiak scripts (zip)]
* [http://redwood.berkeley.edu/vs265/sparsenet_class_scripts.zip sparsenet scripts (zip)]
* You will also need the following set of whitened natural movie images: [https://redwood.berkeley.edu/bruno/sparsenet/IMAGES.mat IMAGES.mat]
 
==== Lab #6, due Thursday, Nov. 6 at beginning of class ====
* [http://redwood.berkeley.edu/vs265/lab6.pdf lab6]
* [http://redwood.berkeley.edu/vs265/lab6/kohonen.m kohonen.m]
* [http://redwood.berkeley.edu/vs265/lab6/showrfs.m showrfs.m]
 
''Python code:''
* [http://redwood.berkeley.edu/vs265/lab6/kohonen.txt kohonen.py]
* [http://redwood.berkeley.edu/vs265/lab6/showrfs.txt showrfs.py]
 
==== Lab #7, due Tuesday, Nov. 25 at beginning of class ====
* [http://redwood.berkeley.edu/vs265/lab7.pdf lab7]
* [http://redwood.berkeley.edu/vs265/lab7_scripts.zip lab7_scripts.zip]
 
==== Lab #8, due Thursday, Dec. 4 at beginning of class ====
* [http://redwood.berkeley.edu/vs265/lab8.pdf lab8.pdf]
* [http://redwood.berkeley.edu/vs265/boltz/boltz.m boltz.m]
* [http://redwood.berkeley.edu/vs265/boltz/get_batch.m get_batch.m]
* [http://redwood.berkeley.edu/vs265/boltz/sample.m sample.m]
* [http://redwood.berkeley.edu/vs265/boltz/draw.m draw.m]
* [http://redwood.berkeley.edu/vs265/boltz/sigmoid.m sigmoid.m]
* [http://redwood.berkeley.edu/vs265/boltz/scribble.mat scribble.mat]
* [http://redwood.berkeley.edu/vs265/boltz/scribble_v6.mat scribble_v6.mat] (version 6)
* [http://redwood.berkeley.edu/vs265/boltz/extract_patches.m extract_patches.m]
* [http://redwood.berkeley.edu/vs265/boltz/prob.m prob.m]
* [http://redwood.berkeley.edu/vs265/boltz/show_patches.m show_patches.m]

Latest revision as of 21:25, 23 August 2016

Students are encouraged to work in groups, but turn in assignments individually, listing the group members they worked with.

Submission instructions: Only paper copies of the homework will be accepted. Solutions are due at the start of the class. Please place them on the speaker's desk at the front of the class.

Resources

Matlab

Student version of Matlab ($50) may be obtained here.

There is an excellent guide to Matlab by Kevin Murphy on the web: http://code.google.com/p/yagtom/

Python

Fernando Perez at the Brain Imaging Center has an excellent set of resources on Python for scientific computing. You will likely find the "Starter Kit" particularly useful.

Also, a great starting point for all scientific python is using Anaconda [1]

Assignments

Lab #1, due Tuesday, September 16 at beginning of class

Lab #2, due Tuesday, September 23 at beginning of class

For Python you can use apples-oranges.npz

  In [1]: import numpy as np
  In [2]: d = np.load('apples-oranges.npz')
  In [3]: d.keys()
  Out[3]: ['oranges2', 'apples2', 'apples', 'oranges']

Lab #3, due Tuesday, October 21 at beginning of class

Matlab code are as separate files below.

Data

For Python you can use

Lab #4, due October 9th at beginning fo class

Matlab code and data for homework

Python code:

  • hopnet.py - python version of the above code as one file (with run, genpat, and corrupt methods)
  • patterns.npz
   p = np.load('patterns.npz')
   face,hi,X = p['face'], p['hi'], p['X']
   # if you load patterns.mat, use:
   p = scipy.io.loadmat("patterns.mat")
   face,hi,X = [p[k].reshape(10,10).T.reshape(100,1) for k in 'face','hi','X']
   # line above converts Fortran to C ordering

Lab #5, due Thursday, Oct 30 at beginning of class

Lab #6, due Thursday, Nov. 6 at beginning of class

Python code:

Lab #7, due Tuesday, Nov. 25 at beginning of class

Lab #8, due Thursday, Dec. 4 at beginning of class