16 using namespace shogun;
24 int32_t size,
CHMM* p,
CHMM* n,
bool neglin,
bool poslin)
85 SG_DEBUG(
"pos_feat=[%i,%i,%i,%i],neg_feat=[%i,%i,%i,%i] -> %i features\n",
pos->
get_N(),
pos->
get_N(),
pos->
get_N()*
pos->
get_N(),
pos->
get_N()*
pos->
get_M(),
neg->
get_N(),
neg->
get_N(),
neg->
get_N()*
neg->
get_N(),
neg->
get_N()*
neg->
get_M(),
num_features) ;
89 int32_t num, int32_t &len,
float64_t* target)
101 return featurevector;
105 float64_t* featurevector, int32_t num, int32_t& len)
107 int32_t i,j,p=0,x=num;
117 featurevector[p++]=(posx-negx);
208 SG_ERROR(
"allocation not successful!");
212 SG_INFO(
"calculating top feature matrix\n");
216 if (!(x % (num_vectors/10+1)))
217 SG_DEBUG(
"%02d%%.", (
int) (100.0*x/num_vectors));
218 else if (!(x % (num_vectors/200+1)))
242 for (i=0; i<hmm->
get_N(); i++)
250 for (j=0; j<hmm->
get_N(); j++)
263 if (hmm_idx->num_p > 0)
265 hmm_idx->idx_p=
SG_MALLOC(int32_t, hmm_idx->num_p);
269 if (hmm_idx->num_q > 0)
271 hmm_idx->idx_q=
SG_MALLOC(int32_t, hmm_idx->num_q);
275 if (hmm_idx->num_a > 0)
277 hmm_idx->idx_a_rows=
SG_MALLOC(int32_t, hmm_idx->num_a);
278 hmm_idx->idx_a_cols=
SG_MALLOC(int32_t, hmm_idx->num_a);
279 ASSERT(hmm_idx->idx_a_rows);
280 ASSERT(hmm_idx->idx_a_cols);
283 if (hmm_idx->num_b > 0)
285 hmm_idx->idx_b_rows=
SG_MALLOC(int32_t, hmm_idx->num_b);
286 hmm_idx->idx_b_cols=
SG_MALLOC(int32_t, hmm_idx->num_b);
287 ASSERT(hmm_idx->idx_b_rows);
288 ASSERT(hmm_idx->idx_b_cols);
297 for (i=0; i<hmm->
get_N(); i++)
301 ASSERT(idx_p < hmm_idx->num_p);
302 hmm_idx->idx_p[idx_p++]=i;
307 ASSERT(idx_q < hmm_idx->num_q);
308 hmm_idx->idx_q[idx_q++]=i;
311 for (j=0; j<hmm->
get_N(); j++)
315 ASSERT(idx_a < hmm_idx->num_a);
316 hmm_idx->idx_a_rows[idx_a]=i;
317 hmm_idx->idx_a_cols[idx_a++]=j;
325 ASSERT(idx_b < hmm_idx->num_b);
326 hmm_idx->idx_b_rows[idx_b]=i;
327 hmm_idx->idx_b_cols[idx_b++]=j;
364 void CTOPFeatures::init()