In [3]:
from pug.ann.data import weather
df = weather.fresno
from pug.ann import util
ds = util.pybrain_dataset_from_dataframe(df)
nn = util.build_ann(ds)
print(nn)
train = util.pb.supervised.RPropMinusTrainer(nn)
print(train)
ans = train.trainUntilConvergence(ds, maxEpochs=10, verbose=True)
print(ans)


FeedForwardNetwork-19
   Modules:
    [<LinearLayer 'input'>, <LinearLayer 'hidden'>, <LinearLayer 'output'>]
   Connections:
    [<FullConnection 'FullConnection-17': 'hidden' -> 'output'>, <FullConnection 'FullConnection-18': 'input' -> 'hidden'>]

<RPropMinusTrainer 'RPropMinusTrainer-20'>
('train-errors:', '[3119.2   , 2989.65  , 2856.48  , 2692.71  , 2477.13  , 2194.92  , 1837.67  , 1408.75  , 929.467  , 498.889  , 379.895  , 562.296  , 344.098  , 296.028  , 337.392  , 236.166  , 191.756  , 207.568  , 155.434  , 132.953  , 162.599  , 135.442  , 130.834  , 136.247  , 131.107  , 130.834  , 131.753  , 130.4    , 130.834  , 130.529  , 130.356  , 130.591  , 130.355  , 130.348  , 130.349  , 130.323  , 130.352  , 130.323  , 130.322  , 130.324  , 130.321  , 130.322  , 130.321  , 130.321  , 130.321  , 130.32   , 130.32   , 130.32   , 130.32   , 130.32   , 130.32   ]')
('valid-errors:', '[3073     , 2946.52  , 2816.56  , 2656.81  , 2446.67  , 2171.84  , 1824.52  , 1408.76  , 939.695  , 520.368  , 407.416  , 577.045  , 362.589  , 313.535  , 348.204  , 244.815  , 195.946  , 207.509  , 151.655  , 126.041  , 157.597  , 129.989  , 123.448  , 131.15   , 124.747  , 123.448  , 125.628  , 123.6    , 123.448  , 123.857  , 123.311  , 123.726  , 123.504  , 123.303  , 123.513  , 123.376  , 123.442  , 123.417  , 123.361  , 123.425  , 123.391  , 123.362  , 123.398  , 123.379  , 123.387  , 123.387  , 123.39   , 123.387  , 123.382  , 123.384  , 123.386  , 123.386  ]')
([3119.2043180688456, 2989.6535043867525, 2856.4762995614715, 2692.7105565643242, 2477.1345269163435, 2194.9234179322652, 1837.6746813748803, 1408.7514562114586, 929.46658299732826, 498.88898669438356, 379.8953844878954, 562.2962732861846, 344.0980353086955, 296.02827511924551, 337.39238529191175, 236.16604847658962, 191.75575381025754, 207.56773684774421, 155.43402572850661, 132.95261981942249, 162.59943187202634, 135.44218473959248, 130.83415610527905, 136.24696033597183, 131.1065909111573, 130.83415610527908, 131.75308477542595, 130.39967786958601, 130.83415610527905, 130.52903928817591, 130.35592362795185, 130.59068280973185], [3072.9950029700785, 2946.5239292227739, 2816.5586962119874, 2656.8125629531646, 2446.6664398023581, 2171.841958857231, 1824.5187476117537, 1408.7614329311411, 939.69512096165306, 520.36781805661496, 407.41617616518016, 577.04521586525914, 362.58914766291321, 313.5345691651475, 348.20422280180549, 244.81469563426663, 195.94551036473769, 207.50925743690479, 151.65478710625914, 126.04103981750126, 157.59699431769931, 129.98918724566533, 123.44823062502739, 131.14964159664487, 124.74702710463013, 123.44823062502742, 125.62773551059725, 123.60014603456747, 123.44823062502742, 123.85745965551784, 123.31105624109593, 123.72643747900499, 123.50408448208448])

In [10]:
from pug.ann import util
ds = util.pybrain_dataset_from_dataframe(df)
print(ds)


input: dim(2046, 3)
[[ 1.19325827 -0.20421695 -1.60169216]
 [ 1.63790947  1.19325827  0.74860706]
 [ 1.63790947  0.17691266 -1.28408415]
 ..., 
 [ 0.93917186 -0.14069535 -1.28408415]
 [ 1.38382307  0.74860706  0.11339106]
 [ 1.63790947  0.30395586 -1.02999775]]

target: dim(2046, 1)
[[ 50.]
 [ 51.]
 [ 55.]
 ..., 
 [ 54.]
 [ 44.]
 [ 46.]]



In [12]:
nn = util.build_ann()
print(nn)
train = util.pb.supervised.RPropMinusTrainer(nn, ds)
print(train)


FeedForwardNetwork-22
   Modules:
    [<LinearLayer 'input'>, <LinearLayer 'output'>]
   Connections:
    [<FullConnection 'FullConnection-21': 'input' -> 'output'>]

<RPropMinusTrainer 'RPropMinusTrainer-23'>

In [13]:
train.trainUntilConvergence(maxEpochs=50)
print(train)


---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-13-0be8324d6ce0> in <module>()
----> 1 train.trainUntilConvergence(maxEpochs=50)
      2 print(train)

/usr/src/projects/pybrain/pybrain/supervised/trainers/backprop.pyc in trainUntilConvergence(self, dataset, maxEpochs, verbose, continueEpochs, validationProportion, trainingData, validationData, convergence_threshold)
    213             # validation.
    214             trainingData, validationData = (
--> 215                 dataset.splitWithProportion(1 - validationProportion))
    216         if not (len(trainingData) > 0 and len(validationData)):
    217             raise ValueError("Provided dataset too small to be split into training " +

AttributeError: 'NoneType' object has no attribute 'splitWithProportion'