Update python requirements.txt

You need pyyaml to run the download scripts for getting the BVLC model references.
compile for compute capability 5.0
Add CHECKs to prevent segfault for incorrect IMAGE_DATA layers.

Incomplete IMAGE_DATA layers cause a segmentation fault, e.g.:

layers {
  name: "mnist"
  type: IMAGE_DATA
  top: "data"
  top: "label"
  image_data_param {
    batch_size: 100
  }
  include: { phase: TRAIN }
}

or

layers {
  name: "mnist"
  type: IMAGE_DATA
  top: "data"
  top: "label"
  data_param {
    source: "./data/train.txt"
    batch_size: 100
  }
  include: { phase: TRAIN }
}

Also empty image list files cause a segfault.
This is fixed by adding 3 CHECK instructions.
Merge pull request #1551 from schenker/fix_image_data_layer_segfault

Add CHECKs to prevent segfault for incorrect IMAGE_DATA layers.
Use valid MathJax delimiters.

MathJax does not support $ as a delimiter by default, so math was not
displayed properly on the “Forward and Backward” page.
Fix minor typos in strings.
Display averaged loss over the last several iterations
Added Multistep, Poly and Sigmoid learning rate decay policies

Conflicts:
	include/caffe/solver.hpp
	src/caffe/proto/caffe.proto
	src/caffe/solver.cpp
Adapt lenet_multistep_solver.prototxt to current solvers
Fix init current_step
Added bvlc_googlenet prototxt and weights
Added credits for training bvlc models
Added credits and bvlc_googlenet to model_zoo.md
Merge pull request #1607 from kjkjava/master

Use valid MathJax delimiters.
Warning of fallback only the first time for cudnn_pooling_layer
Merge pull request #1612 from sguada/googlenet_master

BVLC GoogLeNet
Better instructions for updating Homebrew after modifying formulae

Previous instructions glossed over how to deal with OpenCV-related update problems
Merge pull request #1449 from mprat/patch-1

add pyyaml requirement for python
Merge pull request #3 from BVLC/master

Update from BVLC
Merge pull request #4 from bearpaw/master

Update from BVLC