C#,数值计算——分类与推理Svmlinkernel的计算方法与源程序

1 文本格式

using System;

namespace Legalsoft.Truffer

{

public class Svmlinkernel : Svmgenkernel

{

public int n { get; set; }

public double[] mu { get; set; }

public Svmlinkernel(double[,] ddata, double[] yy) : base(yy, ddata)

{

this.n = data.GetLength(1);

this.mu = new double[n];

for (int j = 0; j < n; j++)

{

mu[j] = 0.0;

}

for (int i = 0; i < m; i++)

{

for (int j = 0; j < n; j++)

{

mu[j] += data[i, j];

}

}

for (int j = 0; j < n; j++)

{

mu[j] /= m;

}

fill();

}

public override double kernel(double xi, double xj)

{

return 0.0;

}

public override double kernel(double[] xi, double[] xj)

{

double dott = 0.0;

for (int k = 0; k < n; k++)

{

dott += (xi[k] - mu[k]) * (xj[k] - mu[k]);

}

return dott;

}

}

}

2 代码格式

cs 复制代码
using System;

namespace Legalsoft.Truffer
{
    public class Svmlinkernel : Svmgenkernel
    {
        public int n { get; set; }
        public double[] mu { get; set; }

        public Svmlinkernel(double[,] ddata, double[] yy) : base(yy, ddata)
        {
            this.n = data.GetLength(1);
            this.mu = new double[n];

            for (int j = 0; j < n; j++)
            {
                mu[j] = 0.0;
            }
            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    mu[j] += data[i, j];
                }
            }
            for (int j = 0; j < n; j++)
            {
                mu[j] /= m;
            }
            fill();
        }

        public override double kernel(double xi, double xj)
        {
            return 0.0;
        }

        public override double kernel(double[] xi, double[] xj)
        {
            double dott = 0.0;
            for (int k = 0; k < n; k++)
            {
                dott += (xi[k] - mu[k]) * (xj[k] - mu[k]);
            }
            return dott;
        }
    }
}
相关推荐
前端炒粉1 小时前
35.LRU 缓存
开发语言·javascript·数据结构·算法·缓存·js
星释2 小时前
Rust 练习册 75:ETL与数据转换
开发语言·rust·etl
happyjoey2172 小时前
使用Qt自带的Maintenance Tool将Qt6.9升级为QT6.10
开发语言·qt
矶鹬笛手5 小时前
(2.1) 信息技术及其发展
sql·计算机网络·c#
u***27616 小时前
C#数据库操作系列---SqlSugar完结篇
网络·数据库·c#
p***h6436 小时前
JavaScript在Node.js中的异步编程
开发语言·javascript·node.js
散峰而望6 小时前
C++数组(二)(算法竞赛)
开发语言·c++·算法·github
Porunarufu6 小时前
Java·关于List
java·开发语言
子不语1807 小时前
Python——函数
开发语言·python
ndjnddjxn7 小时前
Rust学习
开发语言·学习·rust