8.4.3 Building a Customized Pg2vec Model

You can build a Pg2vec model using customized hyper-parameters as described in the following code:

opg4j> var model = analyst.pg2vecModelBuilder().
                setGraphLetIdPropertyName("graph_id").
                setVertexPropertyNames(Arrays.asList("category")).
                setMinWordFrequency(1).
                setBatchSize(128).
                setNumEpochs(5).
                setLayerSize(200).
                setLearningRate(0.04).
                setMinLearningRate(0.0001).
                setWindowSize(4).
                setWalksPerVertex(5).
                setWalkLength(8).
                setUseGraphletSize(true).
                setValidationFraction(0.05).
                setGraphletSizePropertyName("<propertyName>").
                build()
Pg2vecModel model= analyst.pg2vecModelBuilder()
    .setGraphLetIdPropertyName("graph_id")
    .setVertexPropertyNames(Arrays.asList("category"))
    .setMinWordFrequency(1)
    .setBatchSize(128)
    .setNumEpochs(5)
    .setLayerSize(200)
    .setLearningRate(0.04)
    .setMinLearningRate(0.0001)
    .setWindowSize(4)
    .setWalksPerVertex(5)
    .setWalkLength(8)
    .setUseGraphletSize(true)
    .setValidationFraction(0.05)
    .setGraphletSizePropertyName("<propertyName>")
    .build();
model = analyst.pg2vec_model_builder(
    graph_let_id_property_name = "graph_id",
    vertex_property_names = ["category"],
    min_word_frequency = 1,
    batch_size = 128,
    num_epochs = 5,
    layer_size = 200,
    learning_rate = 0.04,
    min_learning_rate = 0.0001,
    window_size = 4,
    walks_per_vertex = 5,
    walk_length = 8,
    use_graphlet_size = true,
    graphlet_size_property_name = "<property_name>",
    validation_fraction = 0.05)

See Pg2vecModelBuilder in Javadoc for more explanation for each builder operation along with the default values.