SHOGUN
3.2.1
首页
相关页面
模块
类
文件
文件列表
文件成员
全部
类
命名空间
文件
函数
变量
类型定义
枚举
枚举值
友元
宏定义
组
页
src
shogun
ensemble
MeanRule.cpp
浏览该文件的文档.
1
/*
2
* This program is free software; you can redistribute it and/or modify
3
* it under the terms of the GNU General Public License as published by
4
* the Free Software Foundation; either version 3 of the License, or
5
* (at your option) any later version.
6
*
7
* Written (W) 2013 Viktor Gal
8
* Copyright (C) 2013 Viktor Gal
9
*/
10
11
#include <
shogun/ensemble/MeanRule.h
>
12
#include <
shogun/lib/SGVector.h
>
13
#include <
shogun/lib/SGMatrix.h
>
14
15
using namespace
shogun;
16
17
CMeanRule::CMeanRule
()
18
:
CCombinationRule
()
19
{
20
21
}
22
23
CMeanRule::~CMeanRule
()
24
{
25
26
}
27
28
SGVector<float64_t>
CMeanRule::combine
(
const
SGMatrix<float64_t>
& ensemble_result)
const
29
{
30
float64_t
* row_sum =
31
SGMatrix<float64_t>::get_column_sum
(ensemble_result.
matrix
,
32
ensemble_result.
num_rows
,
33
ensemble_result.
num_cols
);
34
35
SGVector<float64_t>
mean_labels(row_sum, ensemble_result.
num_rows
);
36
37
float64_t
scale = 1/(
float64_t
)ensemble_result.
num_cols
;
38
mean_labels.
scale
(scale);
39
40
return
mean_labels;
41
}
42
43
float64_t
CMeanRule::combine
(
const
SGVector<float64_t>
& ensemble_result)
const
44
{
45
float64_t
combined =
SGVector<float64_t>::sum
(ensemble_result);
46
combined /= (
float64_t
)ensemble_result.
vlen
;
47
return
combined;
48
}
SHOGUN
机器学习工具包 - 项目文档