Ticket #1214 (closed bug: fixed)

Opened 2 years ago

Last modified 2 years ago

LinearLearner does not work for some datasets

Reported by: marko Owned by: ales
Milestone: 2.6 Component: library
Severity: major Keywords:
Cc: Blocking:
Blocked By:

Description

LinearLearner crashes with orange.KernelException: 'orange.OrangeVector<GCPtr<TOrangeVector<float, false> >, true>': vector subscript out of range for some datasets.

A problematic data set is attached.

Code:

import Orange

types = [ Orange.classification.logreg.LibLinearLogRegLearner.L2R_LR,
    Orange.classification.logreg.LibLinearLogRegLearner.L2R_LR_Dual,
    Orange.classification.logreg.LibLinearLogRegLearner.L1R_LR ]

data = Orange.data.Table("linear_fail.tab")

logreg = Orange.classification.logreg.LibLinearLogRegLearner(solver=types[1])
logreg(data)

Attachments

linear_fail.tab Download (1.9 KB) - added by marko 2 years ago.

Change History

Changed 2 years ago by marko

comment:1 Changed 2 years ago by Ales Erjavec <ales.erjavec@…>

  • Status changed from new to closed
  • Resolution set to fixed

In [c1bc9e5b584ee0808689a8f596a03842221a05c8/orange]:

Fixed weight vector initialization when class values are missing from training data.

Fixes #1214.

Note: See TracTickets for help on using tickets.