Word2Vec上的Deeplearning4J缓慢

时间:2018-10-29 21:44:22

标签: performance word2vec nd4j

我想用这种配置尝试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();

包含句子的文件约为15GB,每行只有一个句子。

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个小时就制作了唱词。

这些是我要处理的文本文件中的一些行:

杰登·阿本德·西耶特·芬斯特河畔锡登斯考滕

dann weht ein eisiger hauch ins zimmer

最美好的时光

北塞纳姆·阿布利克·埃斯塔特死了

denn sie kann nicht begreifen dass ploetzlich der mann vor ihr steht den sie vor vielen jahren begraben帽子

dem unheimlichen besucher eine falle zu stellen

0 个答案:

没有答案