Example #1
0
//------------------------------------------------------------------------------
void svm_model::print() const {
  std::cout << "n classes = " << n_class() << " n sv = " << size()
            << " n dims = " << n_dims() << std::endl;

  std::cout << "Support vectors: " << std::endl;
  for (size_t i = 0; i != sv.size(); ++i) {
    for (int j = 0; j != n_dims(); ++j)
      std::cout << sv[i][j] << " ";
    std::cout << std::endl;
  }

  std::cout << "Support vector coefficients: " << std::endl;
  for (size_t i = 0; i != sv_coef.size(); ++i) {
    for (int j = 0; j != size(); ++j)
      std::cout << sv_coef[i][j] << " ";
    std::cout << std::endl;
  }

  std::cout << "Rho: " << std::endl;
  for (size_t i = 0; i != rho.size(); ++i)
    std::cout << rho[i] << " ";
  std::cout << std::endl;

  if (!probA.empty()) {
    std::cout << "Probabilities A: " << std::endl;
    for (size_t i = 0; i != probA.size(); ++i)
      std::cout << probA[i] << " ";
    std::cout << std::endl;

    std::cout << "Probabilities B: " << std::endl;
    for (size_t i = 0; i != probB.size(); ++i)
      std::cout << probB[i] << " ";
    std::cout << std::endl;
  }
}
Example #2
0
      //--------------------------------------------------------------------------------
      int svm_model::persistent_size() const
      {
	stringstream b;
	b << n_class() << " "
	  << size() << " " 
	  << n_dims() << " ";
	
	int n = b.str().size();
	
	n += sv.size() * n_dims() * sizeof(float) + 1;
	
	{
	  stringstream b2;
	  for (size_t i = 0; i < sv_coef.size(); ++i) {
	    for (int j = 0; j < size(); ++j) 
	      b2 << sv_coef[i][j] << " ";
	  }
	  n += b2.str().size();
	}

	{ 
	  stringstream b2;
          b2 << rho << " ";
	  n += b2.str().size();
	}

	{ 
	  stringstream b2;
          b2 << label << " ";
	  n += b2.str().size();
	}

	{ 
	  stringstream b2;
          b2 << n_sv << " ";
	  n += b2.str().size();
	}

	{ 
	  stringstream b2;
          b2 << probA << " ";
	  n += b2.str().size();
	}

	{ 
	  stringstream b2;
          b2 << probB << " ";
	  n += b2.str().size();
	}

	{ 
	  stringstream b2;
          b2 << w << " ";
	  n += b2.str().size();
	}

	return n;
      }
Example #3
0
//------------------------------------------------------------------------------
void svm_model::save(std::ostream &outStream) const {
  outStream << n_class() << " " << size() << " " << n_dims() << " ";

  for (auto &elem : sv)
    nupic::binary_save(outStream, elem, elem + n_dims());
  outStream << " ";

  for (auto &elem : sv_coef)
    for (int j = 0; j < size(); ++j)
      outStream << elem[j] << " ";

  outStream << rho << ' ' << label << ' ' << n_sv << ' ' << probA << ' '
            << probB << ' ' << w << ' ';
}
Example #4
0
      //--------------------------------------------------------------------------------
      void svm_model::save(std::ostream& outStream) const
      {
	outStream << n_class() << " "
		  << size() << " " 
		  << n_dims() << " ";
  
	for (size_t i = 0; i < sv.size(); ++i) 
	  nta::binary_save(outStream, sv[i], sv[i] + n_dims());
	outStream << " ";
  
	for (size_t i = 0; i < sv_coef.size(); ++i) 
	  for (int j = 0; j < size(); ++j) 
	    outStream << sv_coef[i][j] << " ";
  
        outStream << rho << ' '
                  << label << ' '
                  << n_sv << ' '
                  << probA << ' '
                  << probB << ' '
                  << w << ' ';
      }