Source code for snapchat.research.gbml.training_samples_schema_pb2

"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import snapchat.research.gbml.graph_schema_pb2
import sys

if sys.version_info >= (3, 8):
    import typing as typing_extensions
else:
    import typing_extensions

[docs] DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
[docs] class Label(google.protobuf.message.Message):
[docs] DESCRIPTOR: google.protobuf.descriptor.Descriptor
[docs] LABEL_TYPE_FIELD_NUMBER: builtins.int
[docs] LABEL_FIELD_NUMBER: builtins.int
[docs] label_type: builtins.str
[docs] label: builtins.int
def __init__( self, *, label_type: builtins.str = ..., label: builtins.int = ..., ) -> None: ...
[docs] def ClearField(self, field_name: typing_extensions.Literal["label", b"label", "label_type", b"label_type"]) -> None: ...
[docs] global___Label = Label
[docs] class RootedNodeNeighborhood(google.protobuf.message.Message): """Store each node and related neighborhood subgraph can be used for storing random negative samples """
[docs] DESCRIPTOR: google.protobuf.descriptor.Descriptor
[docs] ROOT_NODE_FIELD_NUMBER: builtins.int
[docs] NEIGHBORHOOD_FIELD_NUMBER: builtins.int
@property
[docs] def root_node(self) -> snapchat.research.gbml.graph_schema_pb2.Node: """The main node for the sample"""
@property
[docs] def neighborhood(self) -> snapchat.research.gbml.graph_schema_pb2.Graph: """k-hop neighborhood of the root_node"""
def __init__( self, *, root_node: snapchat.research.gbml.graph_schema_pb2.Node | None = ..., neighborhood: snapchat.research.gbml.graph_schema_pb2.Graph | None = ..., ) -> None: ...
[docs] def HasField(self, field_name: typing_extensions.Literal["neighborhood", b"neighborhood", "root_node", b"root_node"]) -> builtins.bool: ...
[docs] def ClearField(self, field_name: typing_extensions.Literal["neighborhood", b"neighborhood", "root_node", b"root_node"]) -> None: ...
[docs] global___RootedNodeNeighborhood = RootedNodeNeighborhood
[docs] class SupervisedNodeClassificationSample(google.protobuf.message.Message):
[docs] DESCRIPTOR: google.protobuf.descriptor.Descriptor
[docs] ROOT_NODE_FIELD_NUMBER: builtins.int
[docs] NEIGHBORHOOD_FIELD_NUMBER: builtins.int
[docs] ROOT_NODE_LABELS_FIELD_NUMBER: builtins.int
@property
[docs] def root_node(self) -> snapchat.research.gbml.graph_schema_pb2.Node: """The main node for the sample"""
@property
[docs] def neighborhood(self) -> snapchat.research.gbml.graph_schema_pb2.Graph: """k-hop neighborhood of the root_node"""
@property
[docs] def root_node_labels(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Label]: ...
def __init__( self, *, root_node: snapchat.research.gbml.graph_schema_pb2.Node | None = ..., neighborhood: snapchat.research.gbml.graph_schema_pb2.Graph | None = ..., root_node_labels: collections.abc.Iterable[global___Label] | None = ..., ) -> None: ...
[docs] def HasField(self, field_name: typing_extensions.Literal["neighborhood", b"neighborhood", "root_node", b"root_node"]) -> builtins.bool: ...
[docs] def ClearField(self, field_name: typing_extensions.Literal["neighborhood", b"neighborhood", "root_node", b"root_node", "root_node_labels", b"root_node_labels"]) -> None: ...
[docs] global___SupervisedNodeClassificationSample = SupervisedNodeClassificationSample
[docs] class NodeAnchorBasedLinkPredictionSample(google.protobuf.message.Message):
[docs] DESCRIPTOR: google.protobuf.descriptor.Descriptor
[docs] ROOT_NODE_FIELD_NUMBER: builtins.int
[docs] HARD_NEG_EDGES_FIELD_NUMBER: builtins.int
[docs] POS_EDGES_FIELD_NUMBER: builtins.int
[docs] NEG_EDGES_FIELD_NUMBER: builtins.int
[docs] NEIGHBORHOOD_FIELD_NUMBER: builtins.int
@property
[docs] def root_node(self) -> snapchat.research.gbml.graph_schema_pb2.Node: """The main node for the sample"""
@property
[docs] def hard_neg_edges(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[snapchat.research.gbml.graph_schema_pb2.Edge]: """Hard negative edges: destination node is a negative example to the root_node Can be "fake" edges i.e. destination is a non neighbor of the root_node or user-defined """
@property
[docs] def pos_edges(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[snapchat.research.gbml.graph_schema_pb2.Edge]: """Positive edges: destination node is a positive example to the root_node Can be "real" edges i.e. destination is a neighbor of the root_node or user-defined """
@property
[docs] def neg_edges(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[snapchat.research.gbml.graph_schema_pb2.Edge]: """(DEPRECATED) Random negatives edges, now provided by batch-shared random negatives in RootedNodeNeighborhood and in-batch negatives """
@property
[docs] def neighborhood(self) -> snapchat.research.gbml.graph_schema_pb2.Graph: """The khop neighborhoods of root/pos/neg nodes are merged in proto definition, therefore in training additional fast tree search needs to be done to retrieve the relevant k hop neighborhoods for each node """
def __init__( self, *, root_node: snapchat.research.gbml.graph_schema_pb2.Node | None = ..., hard_neg_edges: collections.abc.Iterable[snapchat.research.gbml.graph_schema_pb2.Edge] | None = ..., pos_edges: collections.abc.Iterable[snapchat.research.gbml.graph_schema_pb2.Edge] | None = ..., neg_edges: collections.abc.Iterable[snapchat.research.gbml.graph_schema_pb2.Edge] | None = ..., neighborhood: snapchat.research.gbml.graph_schema_pb2.Graph | None = ..., ) -> None: ...
[docs] def HasField(self, field_name: typing_extensions.Literal["neighborhood", b"neighborhood", "root_node", b"root_node"]) -> builtins.bool: ...
[docs] def ClearField(self, field_name: typing_extensions.Literal["hard_neg_edges", b"hard_neg_edges", "neg_edges", b"neg_edges", "neighborhood", b"neighborhood", "pos_edges", b"pos_edges", "root_node", b"root_node"]) -> None: ...
[docs] global___NodeAnchorBasedLinkPredictionSample = NodeAnchorBasedLinkPredictionSample
[docs] class SupervisedLinkBasedTaskSample(google.protobuf.message.Message): """The SupervisedLinkBasedTaskSample can be used for both Link-classification-based link prediction tasks & Edge level prediction tasks """
[docs] DESCRIPTOR: google.protobuf.descriptor.Descriptor
[docs] ROOT_EDGE_FIELD_NUMBER: builtins.int
[docs] NEIGHBORHOOD_FIELD_NUMBER: builtins.int
[docs] ROOT_EDGE_LABELS_FIELD_NUMBER: builtins.int
@property
[docs] def root_edge(self) -> snapchat.research.gbml.graph_schema_pb2.Edge: """The main edge for the sample"""
@property
[docs] def neighborhood(self) -> snapchat.research.gbml.graph_schema_pb2.Graph: """Contains the k hop neighborhood for both nodes composing the root_edge"""
@property
[docs] def root_edge_labels(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Label]: """Allow multiple edge labels with different type ex. Snap view as target label, and Story view as target label"""
def __init__( self, *, root_edge: snapchat.research.gbml.graph_schema_pb2.Edge | None = ..., neighborhood: snapchat.research.gbml.graph_schema_pb2.Graph | None = ..., root_edge_labels: collections.abc.Iterable[global___Label] | None = ..., ) -> None: ...
[docs] def HasField(self, field_name: typing_extensions.Literal["neighborhood", b"neighborhood", "root_edge", b"root_edge"]) -> builtins.bool: ...
[docs] def ClearField(self, field_name: typing_extensions.Literal["neighborhood", b"neighborhood", "root_edge", b"root_edge", "root_edge_labels", b"root_edge_labels"]) -> None: ...
[docs] global___SupervisedLinkBasedTaskSample = SupervisedLinkBasedTaskSample