All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.deeplearning4j.models.embeddings.learning.ElementsLearningAlgorithm Maven / Gradle / Ivy

There is a newer version: 1.0.0-M2.1
Show newest version
package org.deeplearning4j.models.embeddings.learning;

import org.deeplearning4j.models.embeddings.WeightLookupTable;
import org.deeplearning4j.models.embeddings.loader.VectorsConfiguration;
import org.deeplearning4j.models.sequencevectors.interfaces.SequenceIterator;
import org.deeplearning4j.models.sequencevectors.sequence.Sequence;
import org.deeplearning4j.models.sequencevectors.sequence.SequenceElement;
import org.deeplearning4j.models.word2vec.wordstore.VocabCache;

import java.util.concurrent.atomic.AtomicLong;

/**
 * Implementations of this interface should contain element-related learning algorithms. Like skip-gram, cbow or glove
 *
 * @author [email protected]
 */
public interface ElementsLearningAlgorithm {

    String getCodeName();

    void configure(VocabCache vocabCache, WeightLookupTable lookupTable, VectorsConfiguration configuration);

    void pretrain(SequenceIterator iterator);

    void learnSequence(Sequence sequence, AtomicLong nextRandom, double learningRate);

    boolean isEarlyTerminationHit();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy