8.4.3 Building a Customized Pg2vec Model
You can build a Pg2vec model using cusomized hyper-parameters as described in the following code:
Building a Customized Pg2vec model Using
JShell
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();
Building a Customized Pg2vec model Using
Java
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();
Building a Customized Pg2vec model Using Python
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.
Parent topic: Using the Pg2vec Algorithm