Package org.apache.commons.collections.primitives

Examples of org.apache.commons.collections.primitives.DoubleList


      Validate.notEmpty(forecastPerformers);
      double[] sum = new double[getOutputsCount()];

      for (IForecastPerformer forecastPerformer : forecastPerformers)
      {
         DoubleList partialResult = forecastPerformer.getResult();
         for (int i = 0; i < partialResult.size(); ++i)
         {
            sum[i] = sum[i] + partialResult.get(i);
         }
      }

      DoubleList result = new ArrayDoubleList();
      for (int i = 0; i < sum.length; ++i)
      {
         result.add(sum[i] / forecastPerformers.size());
      }

      return result;
   }
View Full Code Here


      currentVectorNumber = -1;
   }

   public void afterStep()
   {
      DoubleList networkResult = builder.getNetwork().getResult();
      DoubleList realResult = currentSample.getOutput();

      double error = JNMFMathUtils.distance(networkResult, realResult);
      sumError += error;

      if (learningData.isSplitedOnClasses())
View Full Code Here

   protected void calcAllErrors()
   {
      signalNewNetworkErrorCalculdated(this.sumError / (double) learningData.size());
      if (learningData.isSplitedOnClasses())
      {
         DoubleList notGuessedPercentByClasses = new ArrayDoubleList();
         for (int i = 0; i < learningData.getOutputsCount(); ++i)
         {
            double persent =
                    (double) notGuessedClasses[i] / (double) learningData.calcCountOfItems(i);

            if (Double.isNaN(persent))
            {
               persent = 0;
            }

            notGuessedPercentByClasses.add(persent);
         }

         signalNewNotGuessedLearningDataPercentCalculated(
                 (double) totalNotGuessedClasses / (double) learningData.size(),
                 notGuessedPercentByClasses);
View Full Code Here

      for (int i = 0; i < data.size(); ++i)
      {
         Sample pair = data.get(i);

         network.feedforwardStep(pair.getInput());
         DoubleList networkResult = network.getResult();
         DoubleList realResult = pair.getOutput();

         double error = JNMFMathUtils.distance(networkResult, realResult);
         averageError += error;

         if (data.isSplitedOnClasses())
         {
            int guessedClass = JNMFMathUtils.indexOfMaxElement(networkResult);
            int realClass = JNMFMathUtils.indexOfMaxElement(realResult);

            if (guessedClass != realClass)
            {
               totalNotGuessedClasses++;
               notGuessedClasses[realClass]++;
            }
         }
      }

      averageError /= data.size();
      res.averageError = averageError;

      if (data.isSplitedOnClasses())
      {
         DoubleList notGuessedPersentByClasses = new ArrayDoubleList();
         for (int i = 0; i < data.getOutputsCount(); ++i)
         {
            double error = (double) notGuessedClasses[i] / (double) data.calcCountOfItems(i);

            if (Double.isNaN(error))
            {
               error = 0;
            }

            notGuessedPersentByClasses.add(error);
         }

         res.totalNotGuessedClassesPercent = (double) totalNotGuessedClasses / (double) data.size();
         res.notGuessedClassesPercents = notGuessedPersentByClasses;
      }
View Full Code Here

   public DoubleList resolveClusterCenter(int clusterNum)
   {
      Layer lastLayer = getNetwork().getLayers().getLast();
      Neuron clusterNeuron = lastLayer.getNeurons().get(clusterNum);

      DoubleList res = new ArrayDoubleList(clusterNeuron.getInputSynapses().size());
      for (Synapse s : clusterNeuron.getInputSynapses())
      {
         res.add(s.getWeight());
      }

      return res;
   }
View Full Code Here

      data.addColumn(clustersColumn);

      for (int i = 0; i < data.size(); ++i)
      {
         Row row = data.get(i);
         final DoubleList input = row.createSample().getInput();

         Integer cluster = getCluster(input);
         String clusterStr = clustersStrings.get(cluster);

         if (clusterStr == null)
View Full Code Here

      // ��������� ������� ��������� � �������� ��������
      int numLast = builder.getNetwork().getLayers().size() - 1;

      String wString = "";

      DoubleList bestWeights = casCorMath.findBestCandidatesOutputWeights(bestCandidate);

      List<Neuron> outputNeurons = builder.getNetwork().getLayers().get(numLast).getNeurons();
      int outputsCount = outputNeurons.size();
      for (int i = 0; i < outputsCount; ++i)
      {
         double w = bestWeights.get(i);
         builder.addSynapseGenerative(numLast - 1, 0, w, numLast, i);

         wString = wString + w + " ";
      }
View Full Code Here

      TrainingDataset trainingData = art2m.getLearningData();
      for (int j = 0; j < trainingData.size(); ++j)
      {
         Sample sample = trainingData.get(j);
         DoubleList x = sample.getInput();

         Row transformedRow = new Row(metadataOfTransformedData);

         DoubleList input = new ArrayDoubleList();
         double sumP = 0;
         for (int i = 0; i < c.size(); ++i)
         {
            double d = JNMFMathUtils.distance(x, c.get(i));
            p = Math.exp(-beta * d * d);
            input.add(p);

            sumP += p;
         }

         Row row = data.get(j);
         transformedRow.add(row.get(0));

         for (int i = 0; i < c.size(); ++i)
         {
            double u = input.get(i) / sumP;
            transformedRow.add(u);
         }

         for (ColumnInfo outputColumn : data.getMetadata().resolveColumns(VariableType.OUT))
         {
View Full Code Here

      List<List<DoubleList>> inputsForClasses = findInputsForClasses(learningData);

      for (int i = 0; i < learningData.getOutputsCount(); ++i)
      {
         DoubleList center = JNMFMathUtils.center(inputsForClasses.get(i));

         List<DoubleList> inputsForClass = inputsForClasses.get(i);
         final DoubleList distances = new ArrayDoubleList();
         for (int j = 0; j < inputsForClass.size(); ++j)
         {
            double distance = JNMFMathUtils.distance(center, inputsForClass.get(j));

            distances.add(distance);
         }

         IFactory<IFunction> factory = new IFactory<IFunction>()
         {
            @Override
View Full Code Here

         {
            vectorsOfClass.add(data.get(i).getInput());
         }
      }

      DoubleList center = JNMFMathUtils.center(vectorsOfClass);

      DoubleList distances = new ArrayDoubleList();
      for (int i = 0; i < vectorsOfClass.size(); ++i)
      {
         distances.add(JNMFMathUtils.distance(center, vectorsOfClass.get(i)));
      }

      double result = Math.sqrt(JNMFMathUtils.dispersion(distances));
      return result;
   }
View Full Code Here

TOP

Related Classes of org.apache.commons.collections.primitives.DoubleList

Copyright © 2018 www.massapicom. 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.