Deeplearning4J медленный на Word2Vec - PullRequest
0 голосов
/ 30 октября 2018

Я хочу попробовать word2vec с этой конфигурацией:

compile "org.deeplearning4j:deeplearning4j-core:1.0.0-beta2"
compile "org.nd4j:nd4j-native-platform:1.0.0-beta2"
//compile "org.nd4j:nd4j-cuda-9.2-platform:1.0.0-beta2"
compile group: 'org.deeplearning4j', name: 'deeplearning4j-nlp', version: '1.0.0-beta2'
compile group: 'org.deeplearning4j', name: 'deeplearning4j-ui_2.11', version: '1.0.0-beta2'

    SentenceIterator iter = new BasicLineIterator(new File("E:/temp/text_1.txt"));
    TokenizerFactory t = new DefaultTokenizerFactory();

    t.setTokenPreProcessor(new CommonPreprocessor());

    Word2Vec vec = new Word2Vec.Builder()
            .minWordFrequency(20)
            .iterations(1)
            .layerSize(150)
            .seed(42)
            .windowSize(5)
            .iterate(iter)
            .tokenizerFactory(t)
            .allowParallelTokenization(true)
            .batchSize(1000)
            .workers(8)
            .elementsLearningAlgorithm(new SkipGram<>())
            .build();
    vec.fit();

Файл с предложениями составляет около 15 ГБ и содержит одно предложение в строке.

22:33:07.116 [main] INFO  o.d.m.w.wordstore.VocabConstructor - Sequences checked: [200000]; Current vocabulary size: [48699]; Sequences/sec: 8298,07; Words/sec: 69217,82;

Как я могу настроить его так, чтобы он не был таким медленным? Потребовалось более 24 часов, чтобы просто собрать воаб.

Вот некоторые строки из текстового файла, которые я хочу обработать:

Джеден Абенд и Сиэт Сьен Шаттен-ам-Фенстер

Не знаю, Эйн Эйзер Хаш Инс Циммер

der unheimliche besucher laesst sich nicht abwehren

bei seinem anblick erstarrt die frau vor entsetzen

Денн Си Канн Нихт Бегрейфен Дасс Плоецхих дер Манн Вор Ихр Стехт Ден Си Вор Вилен Джарен Беграбен Хэт

dem unheimlichen besucher eine falle zu stellen

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...