Modify

Opened 13 years ago

Closed 13 years ago

#7 closed defect (fixed)

HaarSingleStumpLearner coredump

Reported by: /C=FR/O=CNRS/OU=UMR8607/CN=Francois-David Collin/emailAddress=Francois-David.Collin@… Owned by: busarobi
Priority: major Milestone: Multiboost Refactoring
Component: Multiboost code Version:
Keywords: Cc: balazs.kegl@…, busarobi@…

Description

{{{multiboost --fileformat arff --csample num 100 --iisize 15x15 --seed 71
--traintest ./uspsHaarTrain.arff ./uspsHaarTest.arff 5 --outputinfo ./OK-
uspsHaar-TreeLearner-HaarSingleStumpLearner-traintest.dta --shypname ./OK-
uspsHaar-TreeLearner-HaarSingleStumpLearner-traintest.xml --learnertype
TreeLearner --baselearnertype HaarSingleStumpLearner 5 --verbose 6
--> Using learner: TreeLearner
Warning: No strong learner is given. Set to default (AdaBoost).
The strong learner is AdaBoostMH
Segmentation fault
}}}

with gdb :

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000000
0x00000001000e5cf7 in MultiBoost::TreeLearner::initLearningOptions
(this=0x100b00fe0, args=@0x7fff5fbfe600) at
src/WeakLearners/TreeLearner.cpp:90
90                      pWeakHypothesisSource->initLearningOptions(args);

(gdb) l
85                              cerr << "The weak hypothesis must be a
ScalarLearner!!!" << endl;
86                              exit(-1);
87                      }
88
89
90                      pWeakHypothesisSource->initLearningOptions(args);
91
92                      for( int ib = 0; ib < _numBaseLearners; ++ib ) {
93
_baseLearners.push_back(dynamic_cast<ScalarLearner*>(pWeakHypothesisSource->create()));
94
dynamic_cast<BaseLearner*>(_baseLearners[ib])->initLearningOptions(args);

Attachments (0)

Change History (5)

comment:1 Changed 13 years ago by /C=FR/O=CNRS/OU=UMR8607/CN=Robert Busa-Fekete/emailAddress=busarobi@…

FD,

please check whether the current version in the SVN has the same problem. I think this bug has been fixed. The problem was in the implementation of function 'cut'.

cheers,robi

comment:2 Changed 13 years ago by /C=FR/O=CNRS/OU=UMR8607/CN=Francois-David Collin/emailAddress=Francois-David.Collin@…

it's still crashing :

(gdb) run --fileformat arff --csample num 100 --iisize 15x15 --seed 71 --traintest ./uspsHaarTrain.arff ./uspsHaarTest.arff 5 --outputinfo ./OK-uspsHaar-TreeLearner-HaarSingleStumpLearner-traintest.dta --shypname ./OK-uspsHaar-TreeLearner-HaarSingleStumpLearner-traintest.xml --learnertype TreeLearner --baselearnertype HaarSingleStumpLearner 5 --verbose 6
Starting program: /scratch/fradav/MultiBoostSVN/MultiBoost/multiboost --fileformat arff --csample num 100 --iisize 15x15 --seed 71 --traintest ./uspsHaarTrain.arff ./uspsHaarTest.arff 5 --outputinfo ./OK-uspsHaar-TreeLearner-HaarSingleStumpLearner-traintest.dta --shypname ./OK-uspsHaar-TreeLearner-HaarSingleStumpLearner-traintest.xml --learnertype TreeLearner --baselearnertype HaarSingleStumpLearner 5 --verbose 6
--> Using learner: TreeLearner
Warning: No strong learner is given. Set to default (AdaBoost).
The strong learner is AdaBoostMH

Program received signal SIGSEGV, Segmentation fault.
0x00000000004a9f31 in MultiBoost::TreeLearner::initLearningOptions (this=0x1706ee0, args=@0x7fffaa767da0) at src/WeakLearners/TreeLearner.cpp:90
90                      pWeakHypothesisSource->initLearningOptions(args);
(gdb) backtrace 
#0  0x00000000004a9f31 in MultiBoost::TreeLearner::initLearningOptions (this=0x1706ee0, args=@0x7fffaa767da0)
    at src/WeakLearners/TreeLearner.cpp:90
#1  0x0000000000406ae7 in MultiBoost::AdaBoostMHLearner::run (this=0x172cc10, args=@0x7fffaa767da0)
    at src/StrongLearners/AdaBoostMHLearner.cpp:147
#2  0x00000000004e6ef1 in main (argc=25, argv=0x7fffaa768da8) at src/main.cpp:506
(gdb) 

comment:3 Changed 13 years ago by /C=FR/O=CNRS/OU=UMR8607/CN=Francois-David Collin/emailAddress=Francois-David.Collin@…

Milestone: Multiboost Refactoring

comment:4 Changed 13 years ago by anonymous

The bug was in the registration of HaarSingleStumpLearner because its name in the register did not coincide with the name of the class. So, we had changed this line

REGISTER_LEARNER_NAME(HaarSingleStump, HaarSingleStumpLearner)

to

REGISTER_LEARNER(HaarSingleStumpLearner)

The shouldn't use REGISTER_LEARNER_NAME macro later on.

comment:5 Changed 13 years ago by anonymous

Resolution: fixed
Status: newclosed

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain busarobi.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.