zoukankan      html  css  js  c++  java
  • 两个向量之间的欧式距离及radial-basis-functions(RBF)

    template <class DataType1, class DataType2>
    double EuclideanDistance(std::vector<DataType1> &inst1, std::vector<DataType2> &inst2) {
      if(inst1.size() != inst2.size()) {
        std::cout<<"the size of the vectors is not the same ";
        return -1;
      }
      std::vector<double> temp;
      for(size_t i=0; i<inst1.size(); ++i) {
        temp.push_back(pow(inst1.at(i)-inst2.at(i), 2.0));
      }
      double distance=accumulate(temp.begin(), temp.end(), 0.0);
      distance=sqrt(distance);

      return distance;
    }

    The radial-basis-functions(RBF) technique consists of choosing a function F that has the form

      F(x)=Σwiφ(||x-xi||)

    where {φ(||x-xi||)|i=1,2,...,N} is a set of N arbitrary (generally nonlinear) functions, known as 

    radial-basis functions, and ||•|| denotes a norm that is usually Euclidean.

    Much of the theory developed on RBF networks builds on the Gaussian function, an important member

    of the class of  radial-basis functions. The Gaussian function may also be viewed as a kernel--hence the 

    designation of the two-stage procedure based on the Gaussian function as a kernel method.

  • 相关阅读:
    PHP base_convert() 函数详解
    PHP中位运算符
    MySQL中SQL Mode的查看与设置
    HTML 字符实体详情
    php7中 ?? 和 ?: 的区别
    正则表达式详解
    PHP sprintf() 函数详解
    php-config——PHP配置信息的查看
    无界工作记录
    CMake根据平台移植检查设置文件编译选项
  • 原文地址:https://www.cnblogs.com/donggongdechen/p/9513575.html
Copyright © 2011-2022 走看看