weka .net ikvm -> почему загрузка файла csv такая медленная? - PullRequest
2 голосов
/ 29 марта 2012

Я следовал руководству по использованию weka из .net http://weka.wikispaces.com/IKVM+with+Weka+tutorial Проблема: weka c # api тратит слишком много времени на загрузку простого CSV-файла, для маленького файла это занимает более 30 секунд, в то время как этот же файл загружается через 1 секунду исследователем weka, понимаете?

C # пример кода:

string filename = "weka_file.csv";
// weka.core.converters.ConverterUtils.DataSource source = new weka.core.converters.ConverterUtils.DataSource(filename); // doesn't seem to work for csv files
// weka.core.Instances instsOrg = source.getDataSet();
weka.core.converters.CSVLoader csvLoader = new weka.core.converters.CSVLoader();
csvLoader.setSource(new java.io.File(filename));
weka.core.Instances instsOrg = csvLoader.getDataSet(); // this takes 30 secondes for a particular csv file I have and it take only 1 sec to load it in with the weka explorer...

Ответы [ 2 ]

6 голосов
/ 29 марта 2012

Вы случайно не запускаете это с F5 в Visual Studio?В этом случае вы работаете внутри отладчика, а отладчик .NET ужасен с исключительной производительностью.Попробуйте запустить с Ctrl-F5 (без отладчика).

0 голосов
/ 14 февраля 2013

Если это слишком много, подождите, пока вы не попытаетесь получить графики из weka. Вернее попытаться. Недавно я завершил проект c # с использованием weka (алгоритм j48), и, поскольку мы запускаем weka.jar через ikvm, даже классификация файлов 5arb .arff занимает слишком много времени. Подводя итог, ваш код в порядке, но проблема заключается в использовании weka через ikvm.

Попробуйте создать отдельный поток и просто использовать weka в фоновом режиме, пока приложение делает что-то еще. Для графиков единственным вариантом является отдельное Java-приложение.

...