我正在尝试使用deeplearning4j复制论文NLP (almost) from scratch。我已完成以下步骤:
MultiLayerConfiguration conf = new NeuralNetConfiguration.Builder()
.seed(seed).iterations(iterations)
.learningRate(1e-8f)
.optimizationAlgo(OptimizationAlgorithm.STOCHASTIC_GRADIENT_DESCENT)
.list(2)
.layer(0, new DenseLayer.Builder()
.nIn(wordVecLayers * windowSize).nOut(hiddenSize)
.activation("relu")
.weightInit(WeightInit.DISTRIBUTION)
.dist(new UniformDistribution(-2.83 / Math.sqrt(hiddenSize), 2.83 / Math.sqrt(hiddenSize)))
.biasInit(0.0f).build())
.layer(1, new OutputLayer.Builder(LossFunction.NEGATIVELOGLIKELIHOOD)
.nIn(hiddenSize).nOut(types.size())
.activation("softmax").weightInit(WeightInit.DISTRIBUTION)
.dist(new UniformDistribution(-2.83 / Math.sqrt(hiddenSize), 2.83 / Math.sqrt(hiddenSize)))
.biasInit(0.0f).build())
.backprop(true).pretrain(false)
.build();
我尝试了很多不同的配置,但没有一个适合我。该模型使用' O' -tag预测所有单词。如果你能指出我的方法有什么问题,我将不胜感激?接下来我应该采取什么措施?谢谢!
答案 0 :(得分:2)
我们的word2vec情绪示例是一个很好的起点: https://github.com/deeplearning4j/dl4j-0.4-examples/tree/master/dl4j-examples/src/main/java/org/deeplearning4j/examples/recurrent/word2vecsentiment
这包括对单词矢量进行序列标记(也是NER)