irllabs / ml-lib

A machine learning library for Max and Pure Data
Other
275 stars 40 forks source link

Every object crashes Max 8 when fed a wrong size vector #152

Closed NiccoloGranieri closed 5 years ago

NiccoloGranieri commented 5 years ago

When fed a wrong size vector, every object makes Max 8 crash.

To reproduce:

  1. Open the help file for ml.adaboost, or any other object
  2. Add the example class (add 1 0.2 0.7 0.3 0.1) and a second class that can be the same as the first for this purpose only (add 2 0.2 0.7 0.3 0.1).
  3. Train the model.
  4. Add a fifth element to the input vector in order to have a discrepancy between the added vector and the one that is trying to be mapped (map 0.2 0.7 0.3 0.1 0.2)
  5. Press map until Max 8 crashes.

Max 8.0.3 macOS 10.14.2 MacBook Pro 15" 2015

@jamiebullock


EDIT:

The same thing happens with ml.gmm, I suspect it is a common problem of all the library. Will test further.


EDIT:

All the object behave in the same way, they have been tested all with the procedure mentioned above.


EDIT:

Add Crash Report

NiccoloGranieri commented 5 years ago

Verbose Crash Report - ml-lib 0.20.0

jamiebullock commented 5 years ago

@NiccoloGranieri this is an interesting one. The crash log shows that that crash isn't happening in our code. In fact the call stack for the crash doesn't pass through our code at all! Maybe it's a Max bug?

A couple of questions:

  1. Which version of Max are you on?
  2. How many times are you clicking map before you get the crash, roughly?
NiccoloGranieri commented 5 years ago

@jamiebullock

  1. Latest version of Max 8 (8.0.3)
  2. Yesterday when I generated the crash report 2-3 times.
jamiebullock commented 5 years ago

@NiccoloGranieri sorry for the slow reply on this. Is there any possibility you could perform this test on a different machine?

JeffersonBledsoe commented 5 years ago

Followed the reproduce instructions on a separate machine. Same specs as the original machine except with an NVIDIA graphics card. Clicking map the first time gives the correct error in max, however clicking it a second time crashes max. Zipped crashed report attached.

Max_2019-02-26-150817_JeffersonBledsoeMacbook.crash.zip

jamiebullock commented 5 years ago

Thanks @JeffersonBledsoe that still isn't crashing in our code, but the stack trace does give a few mode clues.