diff --git a/setup.py b/setup.py index efb062da91a1f44ce6242b2e63125bfcdabbeef3..b7c3e4d69f3ce60fa3fbb7c5dbf8d0018807b4c9 100644 --- a/setup.py +++ b/setup.py @@ -21,7 +21,7 @@ include_dirs = [ xbob.core.get_include(), ] -packages = ['bob-io >= 2.0.0a2'] +packages = ['bob-io >= 2.0.0a2', 'bob-machine >= 2.0.0a2'] version = '2.0.0a0' setup( diff --git a/xbob/learn/mlp/test_roll.py b/xbob/learn/mlp/test_roll.py new file mode 100644 index 0000000000000000000000000000000000000000..825aaf0cd1502b7049d29d05c11aba7d0bf434e8 --- /dev/null +++ b/xbob/learn/mlp/test_roll.py @@ -0,0 +1,41 @@ +#!/usr/bin/env python +# vim: set fileencoding=utf-8 : +# Laurent El Shafey <Laurent.El-Shafey@idiap.ch> +# Tue Jun 25 20:44:40 CEST 2013 +# +# Copyright (C) 2011-2014 Idiap Research Institute, Martigny, Switzerland + +"""Tests on the roll/unroll functions +""" + +import numpy +from . import Machine, roll, unroll + +def test_roll_1(self): + + m = Machine((10,3,8,5)) + m.randomize() + + vec = unroll(m) + m2 = Machine((10,3,8,5)) + roll(m2, vec) + assert m == m2 + + m3 = Machine((10,3,8,5)) + vec = unroll(m.weights, m.biases) + roll(m3, vec) + assert m == m3 + +def test_roll_2(self): + + w = [numpy.array([[2,3.]]), numpy.array([[2,3,4.],[5,6,7]])] + b = [numpy.array([5.,]), numpy.array([7,8.])] + vec = numpy.ndarray(11, numpy.float64) + unroll(w, b, vec) + + w_ = [numpy.ndarray((1,2), numpy.float64), numpy.ndarray((2,3), numpy.float64)] + b_ = [numpy.ndarray(1, numpy.float64), numpy.ndarray(2, numpy.float64)] + roll(w_, b_, vec) + + assert (w_[0] == w[0]).all() + assert (b_[0] == b[0]).all()