From 47f46e6e9cdc4b3581613b1f6940e7f0f0a9bdc7 Mon Sep 17 00:00:00 2001
From: Fabian Pedregosa <fabian.pedregosa@inria.fr>
Date: Tue, 5 Jan 2010 13:53:48 +0000
Subject: [PATCH] Easier way to select random sample of data for RBF centers.

From: fred.mailhot <fred.mailhot@cb17146a-f446-4be1-a4f7-bd7c5bb65646>

git-svn-id: https://scikit-learn.svn.sourceforge.net/svnroot/scikit-learn/trunk@35 22fbfee3-77ab-4535-9bad-27d1bd3bc7d8
---
 scikits/learn/ann/rbf.py | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/scikits/learn/ann/rbf.py b/scikits/learn/ann/rbf.py
index 025be8da48..b3d692a1ed 100644
--- a/scikits/learn/ann/rbf.py
+++ b/scikits/learn/ann/rbf.py
@@ -3,6 +3,7 @@
 # 2006/08/20
 
 import numpy as N
+import random
 from scipy.optimize import leastsq
 
 class rbf:
@@ -80,12 +81,8 @@ class rbf:
             (ii) set fixed variance from max dist between centers
             (iii) learn output weights using scipy's leastsq optimizer
         """
-        # set centers
-        self.centers = N.zeros((len(X)/10,X.shape[1]))
-        for i in range(len(X)):
-            if i%10 == 0:
-                self.centers[i/10] = X[i]
-        # set variance
+        # set centers & variance
+        self.centers = N.array(random.sample(X,len(X)/10))
         d_max = 0.0
         for i in self.centers:
             for j in self.centers:
-- 
GitLab