svm_light错误“特征必须按递增顺序排列”

来自svm_learn train.dat model.out的输出

Scanning examples...doneReading examples into memory...100..200..300..400..500..特征必须按递增顺序排列!!!: 未定义的错误: 0LINE: -1 1:5 14:14 21:1 54:1 55:1 57:1 471:1 568:1 584:1 4686:1 11680:1 11681:1 11682:1 11683:1 11696:1 11698:1 11802:1 11803:1 12050:1 12844:1 13292:1 13293:1 13294:1 13295:1 13296:1 13297:1 13298:2 13299:1 13300:1 13301:1 13302:1 13303:1 13304:1 13304:1 13305:1 13306:1 13307:1 13308:1 13309:1 13310:1 13311:1 13312:1 13313:1 13314:1 13315:1 13316:1 13317:1 13318:1 13319:1 13320:1 13321:1 13322:1 13323:1 13324:1 13325:1 13326:1 13327:1 13328:1 13329:1 13330:1 13331:1 13332:1 13333:1 13334:1

由于某种未知原因,svm_light 大约每500行就会对特征顺序出现问题。我已经将特征通过排序函数处理过,但仍然无法找出失败的原因。

这是我的train.dat文件中一个有问题的行(第四行)附近的摘录:

+1 1:5 14:14 54:1 55:1 57:1 13266:1 13267:1 13268:1 13269:1 13270:1 13271:1+1 1:5 14:14 27:1 188:1 1436:1 3793:1 5479:1 5480:1 13272:1 13273:1 13274:1 13275:1 13276:1 13277:1 13278:1 13279:1 13280:1 13281:1 13282:1 13283:1-1 1:5 14:14 116:1 163:1 471:1 978:1 3776:1 3826:1 5892:1 13284:1 13285:1 13286:1 13287:1 13288:1 13289:1 13290:1 13291:1-1 1:5 14:14 21:1 54:1 55:1 57:1 471:1 568:1 584:1 4686:1 11680:1 11681:1 11682:1 11683:1 11696:1 11698:1 11802:1 11803:1 12050:1 12844:1 13292:1 13293:1 13294:1 13295:1 13296:1 13297:1 13298:2 13299:1 13300:1 13301:1 13302:1 13303:1 13304:1 13304:1 13305:1 13306:1 13307:1 13308:1 13309:1 13310:1 13311:1 13312:1 13313:1 13314:1 13315:1 13316:1 13317:1 13318:1 13319:1 13320:1 13321:1 13322:1 13323:1 13324:1 13325:1 13326:1 13327:1 13328:1 13329:1 13330:1 13331:1 13332:1 13333:1 13334:1-1 1:5 14:14 75:1 99:1 1349:1 13335:1 13336:1 13337:1 13338:1 13339:1 13340:1 13341:1 13342:1 13343:1+1 1:5 14:14 54:1 55:1 57:1 75:1 122:1 463:1 2044:1 2913:1 3045:1 3502:1 4540:1 11041:1 11905:1 13344:1 13345:1 13346:1 13347:1 13348:1 13349:1 13350:1 13351:1 13352:1 13353:1 13354:1 13355:1 13356:1 13357:1 13358:1 13359:1 13360:1 13361:1 13362:1 13363:1 13364:1 13365:1 13366:1 13367:1 13368:1 13369:1 13370:1 13371:1 13372:1 13373:1 13374:1 13375:1 13376:1 13377:1 13378:1 13379:1 13380:1 13381:1-1 1:5 11:1 14:14 99:1 122:1 347:1 800:1 4428:1 5685:1 13136:1 13382:1 13383:1 13384:1 13385:1 13386:1 13387:1 13388:1 13389:1 13390:1 13391:1 13392:1 13393:1 13394:1 13395:1 13396:1 13397:1

回答:

好的,我找到了问题所在!是重复的特征ID:

... 13304:1 13304:1 ...

这是由于数据库中的匹配函数与我的代码之间存在不一致性导致的。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注