Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Libraries #447

Open
goastler opened this issue Nov 9, 2020 · 22 comments
Open

Libraries #447

goastler opened this issue Nov 9, 2020 · 22 comments

Comments

@goastler
Copy link
Member

goastler commented Nov 9, 2020

This issue is a rolling record of what libraries are currently in use and their purpose.

Please leave a comment of the library name, purpose / usage and whether it's a jar or gradle based library.

We can discuss whether libraries should be kept / removed here and get rid of the duplicate gradle / jar entries.

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

junit v4 via gradle, used for unit testing

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

guava via gradle, used in my code afaik and can be removed as I only use it a handful of times

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

apache commons collections v4 via gradle, purpose unknown

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

apache commons math v3 via gradle, I believe this is to do with fft in rise @MJFlynn ?

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

hppc correctsearch via gradle, is this for boss @MatthewMiddlehurst ?

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

jcommander via gradle, used for cmdline params in experiments

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

jexcelapi via gradle, used for spreadsheets right @james-large ?

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

kyro via gradle, I believe this is for xgboost

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

matlab-control via gradle, used for diagrams output during results evaluation

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

sizeOf via gradle, used for evaluating size of an obj in memory. @MatthewMiddlehurst do you still use this? I don't anymore

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

xgboost4j via gradle, provides xgboost implementation

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

guava-testlib via gradle, provides forced garbage collection afaik and nothing else. Potentially get rid of this

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

gson via gradle, don't think anyone uses this anymore. Handles JSON input/output

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

duplicate jars / gradle libraries:

  • commons collections
  • commons math3
  • guava
  • guava testlib
  • hppc
  • jcommander
  • junit
  • kyro
  • matlab control
  • xgboost4j
  • jxl

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

commons io via jar, not sure what this is used for

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

jtransforms via jar, not sure what this is used for

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

liblinear via jar, not sure what this is used for

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

commons logging via jar, not sure what this is used for

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

PF and TS-CHIEF wrapped via jar

@goastler
Copy link
Member Author

goastler commented Nov 9, 2020

Two versions of xgboost via jar, iirc one is for windows and one is for linux / the cluster

@MatthewMiddlehurst
Copy link
Member

hppc correctsearch via gradle, is this for boss @MatthewMiddlehurst ?

Used in WEASEL

sizeOf via gradle, used for evaluating size of an obj in memory. @MatthewMiddlehurst do you still use this? I don't anymore

I dont use this anymore either

liblinear via jar, not sure what this is used for

Required for WEASEL also, useful to keep. Also going to include libsvm which is similar.

PF and TS-CHIEF wrapped via jar

Can probably get rid of PF now? #435 needs to be done before removing TS-CHIEF

@MatthewMiddlehurst
Copy link
Member

From PR #438 and our previous Friday meeting, we are looking to add DL4J/ND4J which has 3 imports recommended from https://deeplearning4j.konduit.ai/getting-started/quickstart.

These are:

// https://mvnrepository.com/artifact/org.deeplearning4j/deeplearning4j-core
compile group: 'org.deeplearning4j', name: 'deeplearning4j-core', version: '1.0.0-beta4'
// https://mvnrepository.com/artifact/org.nd4j/nd4j-native-platform
compile group: 'org.nd4j', name: 'nd4j-native-platform', version: '1.0.0-beta4'
// https://mvnrepository.com/artifact/org.datavec/datavec-api
compile group: 'org.datavec', name: 'datavec-api', version: '1.0.0-beta4'

I chose beta4 as it was the last version to include a setNumThreads function instead of using enviroment variables. For ND4J, native uses a CPU backend and platform includes binaraies for most major OS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants