Examples of ThreadedMatrixOperator


Examples of JKernelMachines.fr.lip6.threading.ThreadedMatrixOperator

      map.put(s, index);
      index++;
    }
   
    //computing matrix       
    ThreadedMatrixOperator factory = new ThreadedMatrixOperator()
    {
      @Override
      public void doLine(int index, double[] line) {
        //reverse search through mapping S <-> index
        S s1 = null;
        for(S s : map.keySet())
          if( map.get(s) == index )
          {
            s1 = s;
            break;
          }
        //mapped signature
        T t1 = signatures.get(s1);
       
        //all mapping S <-> T
        for(S s2 : map.keySet())
        {
          //get index of s2
          int j = map.get(s2);
          //get signature of s2
          T t2 = signatures.get(s2);
          //add value of kernel
          line[j] = kernel.valueOf(t1, t2);
        }
      };
    };


    /* do the actuel computing of the matrix */
    matrix = factory.getMatrix(matrix);
   
  }
View Full Code Here

Examples of JKernelMachines.fr.lip6.threading.ThreadedMatrixOperator

  public double[][] getKernelMatrix(final List<TrainingSample<T>> l) {
   
    final List<TrainingSample<T>> e = l;
    double[][] matrix = new double[e.size()][e.size()];
       
    ThreadedMatrixOperator factory = new ThreadedMatrixOperator()
    {
      @Override
      public void doLine(int index, double[] line) {
       
        T xi = l.get(index).sample;
       
        for(int i = line.length-1 ; i >= 0 ; i--)
        {
          line[i] = k.valueOf(xi, l.get(i).sample);
        }
      };
    };

    /* do the actuel computing of the matrix */
    matrix = factory.getMatrix(matrix);
   
    return matrix;
  }
View Full Code Here

Examples of JKernelMachines.fr.lip6.threading.ThreadedMatrixOperator

        continue;
     

      final double[][] m = k.getKernelMatrix(l);
      // specific factory
      ThreadedMatrixOperator tmo = new ThreadedMatrixOperator(){
       
        @Override
        public void doLine(int index, double[] line) {
         
          for(int i = line.length-1 ; i >= 0 ; i--)
          {
            line[i] += m[index][i] * w;
          }
        };
       
      };
     
      tmo.getMatrix(matrix);
    }
    return matrix;
  }
View Full Code Here

Examples of JKernelMachines.fr.lip6.threading.ThreadedMatrixOperator

        continue;
     

      final double[][] m = k.getKernelMatrix(l);
      // specific factory
      ThreadedMatrixOperator tmo = new ThreadedMatrixOperator(){
       
        @Override
        public void doLine(int index, double[] line) {
         
          for(int i = line.length-1 ; i >= 0 ; i--)
          {
            line[i] *= Math.pow(m[index][i], w);
          }
        };
       
      };
     
      tmo.getMatrix(matrix);
    }
    return matrix;
  }
View Full Code Here

Examples of JKernelMachines.fr.lip6.threading.ThreadedMatrixOperator

//        }
//    }
   
    //parallelized
    final double[] resLine = new double[kmatrix.length];
    ThreadedMatrixOperator objFactory = new ThreadedMatrixOperator()
    {
      @Override
      public void doLine(int index, double[] line) {
        if(alp[index] < numPrec)
          return;
        double al1 = -0.5 * alp[index] * l.get(index).label;
        for(int j = line.length-1 ; j != 0 ; j--)
        {
          resLine[index] += al1 * alp[j] * l.get(j).label * kmatrix[index][j];
        }
       
      } 
    };
   
    objFactory.getMatrix(kmatrix);
    double obj1 = 0;
    for(double d : resLine)
      obj1 += d;
   
    double obj2 = 0;
View Full Code Here

Examples of JKernelMachines.fr.lip6.threading.ThreadedMatrixOperator

//        g += -0.5* alp[x]*alp[y]*l.get(x).label*l.get(y).label*kmatrix[x][y];
//      }
     
      //parallelized
      final double[] resLine = new double[kmatrix.length];
      ThreadedMatrixOperator gradFactory = new ThreadedMatrixOperator()
      {
        @Override
        public void doLine(int index, double[] line) {
          if(alp[index] < numPrec)
            return;
          double al1 = -0.5 * alp[index] * l.get(index).label;
          for(int j = line.length-1 ; j != 0 ; j--)
          {
            resLine[index] += al1 * alp[j] * l.get(j).label * kmatrix[index][j];
          }
         
        } 
      };
     
      gradFactory.getMatrix(kmatrix);
      double g = 0;
      for(double d : resLine)
        g += d;
      grad.add(i, g);
    }
View Full Code Here

Examples of JKernelMachines.fr.lip6.threading.ThreadedMatrixOperator

//        lambda_matrix[y][x] = lambda_matrix[x][y];
//      }
//    }
//   
    eprintln(3, "+ update lambda");
    ThreadedMatrixOperator factory = new ThreadedMatrixOperator()
    {
      @Override
      public void doLine(int index, double[] line) {
        int l1 = l.get(index).label;
        double al1 = -0.5 * a[index]*l1;
        for(int j = line.length-1 ; j != 0 ; j--)
        {
          int l2 = l.get(j).label;
          line[j] = al1 * l2 * a[j] * matrix[index][j];
        }
      }

     
    };
   
    lambda_matrix = factory.getMatrix(lambda_matrix);
  }
View Full Code Here

Examples of fr.lip6.jkernelmachines.threading.ThreadedMatrixOperator

      rmap.put(index, s);
      index++;
    }
   
    //computing matrix       
    ThreadedMatrixOperator factory = new ThreadedMatrixOperator()
    {
      @Override
      public void doLines(double[][] matrix, int from, int to) {
        for(int index = from ; index < to ; index++)
        {
          //reverse search through mapping S <-> index
          S s1 = rmap.get(index);
          //mapped signature
          T t1 = signatures.get(s1);

          //all mapping S <-> T
          for(Iterator<S> iter = map.keySet().iterator() ; iter.hasNext() ;)
          {
            S s2 = iter.next();
            //get index of s2
            int j = map.get(s2);
            //get signature of s2
            T t2 = signatures.get(s2);
            //add value of kernel
            matrix[index][j] = kernel.valueOf(t1, t2);
          }
        }
      };
    };


    /* do the actuel computing of the matrix */
    matrix = factory.getMatrix(matrix);
       
  }
View Full Code Here

Examples of fr.lip6.jkernelmachines.threading.ThreadedMatrixOperator

    debug.println(4, "svmObj : alphas = " + Arrays.toString(alp));
    // debug.println(4, "svmObj : b="+svm.getB());

    // parallelized
    final double[] resLine = new double[kmatrix.length];
    ThreadedMatrixOperator objFactory = new ThreadedMatrixOperator() {
      @Override
      public void doLines(double[][] matrix, int from, int to) {
        for (int index = from; index < to; index++) {
          if (abs(alp[index]) > 0) {
            double al1 = abs(alp[index]);
            for (int j = 0; j < matrix[index].length; j++) {
              if (abs(alp[j]) > 0)
                resLine[index] += al1 * abs(alp[j])
                    * matrix[index][j];
            }
          }
        }
      }
    };

    objFactory.getMatrix(kmatrix);
    double obj1 = 0;
    for (double d : resLine)
      obj1 += d;

    double obj2 = 0;
View Full Code Here

Examples of fr.lip6.jkernelmachines.threading.ThreadedMatrixOperator

      Kernel<T> k = km.get(i);
      double kmatrix[][] = k.getKernelMatrix(list);

      // parallelized
      final double[] resLine = new double[kmatrix.length];
      ThreadedMatrixOperator gradFactory = new ThreadedMatrixOperator() {
        @Override
        public void doLines(double[][] matrix, int from, int to) {
          for (int index = from; index < to; index++) {
            if (alp[index] > 0) {
              double al1 = -0.5 * alp[index];
              for (int j = 0; j < matrix[index].length; j++) {
                resLine[index] += al1 * alp[j]
                    * matrix[index][j];
              }
            }
          }
        }
      };

      gradFactory.getMatrix(kmatrix);
      double g = 0;
      for (double d : resLine)
        g += d;
      grad.add(i, g);
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.