shogun-toolbox / shogun

Shōgun
http://shogun-toolbox.org
BSD 3-Clause "New" or "Revised" License
3.03k stars 1.04k forks source link

Add Factor Analysis meta example. #5100

Closed Hephaestus12 closed 3 years ago

Hephaestus12 commented 4 years ago

For Factor Analysis converter

geektoni commented 4 years ago

Looks good to me. It misses only the data commit and we need to delete the undocumented python code.

Hephaestus12 commented 4 years ago

Yess, I'll do that. :)

geektoni commented 4 years ago

Good! It seems there is an issue with octave. I just rerun the test to make sure it is not a CI issue.

Hephaestus12 commented 4 years ago

Is this okay?

geektoni commented 4 years ago

Is this okay?

There is an error with the integration test for octave. We would need to fix that before merging this.

geektoni commented 4 years ago

You would need to build the octave interface and run that single test with CTest to understand why it is failing.

@karlnapf @vigsterkr @gf712 Have we ever had problems with octave serialization? since it is the only one which is failing, it seems odd. I reckon that interface was disabled (?) not so long time ago...

gf712 commented 4 years ago

You would need to build the octave interface and run that single test with CTest to understand why it is failing.

@karlnapf @vigsterkr @gf712 Have we ever had problems with octave serialization? since it is the only one which is failing, it seems odd. I reckon that interface was disabled (?) not so long time ago...

The problem is that the meta example is probably failing but the error code for octave is probably not the one expected by ctest (I assume it returns 0 even if there is an error). The meta example probably never serialised anything because the octave script throws an error, ctest just doesn't display it, hence you only see the error in the serialisation test (which uses a C++ executable). Not sure why this happens, but it is a known issue. The best you can do atm is compile shogun for octave, run the meta example that is causing issues (not using ctest but the actual command in the shell) and see what is throwing.

geektoni commented 4 years ago

I see! Thank you for the clarification! :)

On Sat, 25 Jul 2020 at 12:43, Gil notifications@github.com wrote:

You would need to build the octave interface and run that single test with CTest to understand why it is failing.

@karlnapf https://github.com/karlnapf @vigsterkr https://github.com/vigsterkr @gf712 https://github.com/gf712 Have we ever had problems with octave serialization? since it is the only one which is failing, it seems odd. I reckon that interface was disabled (?) not so long time ago...

The problem is that the meta example is probably failing but the error code for octave is probably not the one expected by ctest (I assume it returns 0 even if there is an error). The meta example probably never serialised anything because the octave script throws an error, ctest just doesn't display it, hence you only see the error in the serialisation test (which uses a C++ executable). Not sure why this happens, but it is a known issue. The best you can do atm is compile shogun for octave, run the meta example that is causing issues (not using ctest but the actual command in the shell) and see what is throwing.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/shogun-toolbox/shogun/pull/5100#issuecomment-663840493, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAZE2KFKM4IWVRSHZYLAQQTR5KZNJANCNFSM4PE6V7AA .

karlnapf commented 4 years ago

did you check what is failing @Hephaestus12 ?

Hephaestus12 commented 4 years ago

This is the error when running the meta example using th octave interface https://pastebin.com/CXLr1W0a

karlnapf commented 4 years ago

Might be number of threads (is 1 in octave)

On Fri, 31 Jul 2020 at 13:45, Gil notifications@github.com wrote:

@gf712 commented on this pull request.

In examples/meta/src/converter/factor_analysis.sg.in https://github.com/shogun-toolbox/shogun/pull/5100#discussion_r463588647 :

@@ -0,0 +1,17 @@ +File f_feats_train = read_csv("@SHOGUN_DATA@/fm_train_real.dat") + +#![create_features] +Features feats = create_features(f_feats_train) +#![create_features] + +#![set_parameters] +Transformer fa = create_transformer("FactorAnalysis", target_dim=2, max_iteration=200, epsilon=0.00001)

Simplest would be to run the octave code in the octave shell, or yes, modify the octave script

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/shogun-toolbox/shogun/pull/5100#discussion_r463588647, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAFKVP65UVJK3WSITPUYDKDR6K4FRANCNFSM4PE6V7AA .

-- Sent from my phone

karlnapf commented 4 years ago

Did you try running with a single thread? Did that help?

Hephaestus12 commented 4 years ago

Sorry I had started working on the main project and so this slipped out of my mind, I'll try it today.

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] commented 3 years ago

This issue is now being closed due to a lack of activity. Feel free to reopen it.