Opened 2 years ago

Closed 2 years ago

#3390 closed defect (fixed)

r.learn.ml crossvalidation fails if category map class codes increase more then +1

Reported by: maitl Owned by: grass-dev@…
Priority: normal Milestone: 7.2.2
Component: Addons Version: unspecified
Keywords: Cc:
CPU: All Platform: All

Description

Crossvalidation fails if class ID values in category maps do not increase strictly by +1 i.e 1, 2, 3, 4, 5, 6 ... .

E.g. a cass code list 10, 11, 12, 13, 25, 26 is not handled properly.

The bug is here:

if mode == 'classification' and cv > np.histogram(

y, bins=len(np.unique(y)))[0].min():

The solution is to use

if mode == 'classification' and cv > np.histogram(

y, bins=np.unique(y))[0].min():

Attachments (1)

r.learn.ml (32.5 KB) - added by maitl 2 years ago.
r.learn.ml with bugfix example

Download all attachments as: .zip

Change History (2)

Changed 2 years ago by maitl

Attachment: r.learn.ml added

r.learn.ml with bugfix example

comment:1 Changed 2 years ago by spawley

Resolution: fixed
Status: newclosed

Thanks for reporting this and providing the bug fix. This has been updated in the Add-Ons in #71358 and I'm closing the ticket.

Steve

Note: See TracTickets for help on using tickets.