?? accuracy.cpp
字號(hào):
#include <deque>
#include <vector>
#include "head.h"
#include <iostream>
using namespace std;
instance center( cluster & my_cluster) {
int i; instance tmp(my_cluster.f1.size());
for(i=0; i< my_cluster.f1.size(); i++) {
tmp[i]= my_cluster.f1[i] / my_cluster.n;
}
return tmp;
}
double accuracy( deque<lable_instance>::iterator begin, deque<lable_instance>::iterator end,
concept & my_concept)
{
if (begin>=end) {
cout<<"wrong parameter!\n";
return 0;
}
deque<lable_instance>::iterator here=begin;
int count=0;
vector<double> min(my_concept.size(), 10000);
int result;
double val;
instance tmp;
int i,j;
while( here!=end) {
for(i=0; i< my_concept.size(); i++) {
for(j=0; j<my_concept[i].size(); j++) {
tmp= center( my_concept[i][j] );
if (distance((*here).att, tmp ) < min[i])
min[i]= distance( (*here).att, tmp );
}
}
result=0; val= min[0] ;
for(i=0; i<min.size(); i++) {
if (val>min[i]) {
result=i;
val=min[i];
}
}
if (result== (*here).lable)
count++;
here++;
}
cout<<count<<endl;
return (count/ (end-begin) );
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -