# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: second/protos/optimizer.proto

import sys
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database

_b = sys.version_info[0] < 3 and (lambda x: x) or (lambda x: x.encode("latin1"))

# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()

DESCRIPTOR = _descriptor.FileDescriptor(
    name="second/protos/optimizer.proto",
    package="second.protos",
    syntax="proto3",
    serialized_options=None,
    serialized_pb=_b(
        '\n\x1dsecond/protos/optimizer.proto\x12\rsecond.protos"\x89\x02\n\tOptimiz' +
        'er\x12=\n\x12rms_prop_optimizer\x18\x01 \x01(\x0b\x32\x1f.second.protos.RMSPropOp' +
        'timizerH\x00\x12>\n\x12momentum_optimizer\x18\x02 \x01(\x0b\x32 .second.protos.M' +
        'omentumOptimizerH\x00\x12\x36\n\x0e\x61\x64\x61m_optimizer\x18\x03 \x01(\x0b\x32\x1c.sec' +
        'ond.protos.AdamOptimizerH\x00\x12\x1a\n\x12use_moving_avera' +
        'ge\x18\x04 \x01(\x08\x12\x1c\n\x14moving_average_decay\x18\x05 \x01(\x02\x42\x0b\n\toptimi' +
        'zer"\x9e\x01\n\x10RMSPropOptimizer\x12\x32\n\rlearning_rate\x18\x01 \x01(\x0b\x32\x1b.s' +
        'econd.protos.LearningRate\x12 \n\x18momentum_optimizer_va' +
        'lue\x18\x02 \x01(\x02\x12\r\n\x05\x64\x65\x63\x61y\x18\x03 \x01(\x02\x12\x0f\n\x07\x65psilo' +
        'n\x18\x04 \x01(\x02\x12\x14\n\x0cweight_decay\x18\x05 \x01(\x02"\x7f\n\x11Mom' +
        'entumOptimizer\x12\x32\n\rlearning_rate\x18\x01 \x01(\x0b\x32\x1b.second.protos' +
        '.LearningRate\x12 \n\x18momentum_optimizer_value\x18\x02 \x01(\x02\x12\x14\n\x0cwe' +
        'ight_decay\x18\x03 \x01(\x02"Y\n\rAdamOptimizer\x12\x32\n\rlearning_rat' +
        'e\x18\x01 \x01(\x0b\x32\x1b.second.protos.LearningRate\x12\x14\n\x0cweight_d' +
        'ecay\x18\x02 \x01(\x02"\xd8\x02\n\x0cLearningRate\x12\x45\n\x16\x63onstant' +
        '_learning_rate\x18\x01 \x01(\x0b\x32#.second.protos.ConstantLearningR' +
        'ateH\x00\x12V\n\x1f\x65xponential_decay_learning_rate\x18\x02 \x01(\x0b\x32+.secon' +
        'd.protos.ExponentialDecayLearningRateH\x00\x12J\n\x19manual_step_learning_rat' +
        'e\x18\x03 \x01(\x0b\x32%.second.protos.ManualStepLearningRateH\x00\x12L\n\x1a\x63osine' +
        '_decay_learning_rate\x18\x04 \x01(\x0b\x32&.second.protos.CosineDecayLearning' +
        'RateH\x00\x42\x0f\n\rlearning_rate"-\n\x14\x43onstantLearningRate\x12\x15\n\rlea' +
        'rning_rate\x18\x01 \x01(\x02"{\n\x1c\x45xponentialDecayLearningRate\x12\x1d\n\x15ini' +
        'tial_learning_rate\x18\x01 \x01(\x02\x12\x13\n\x0b\x64\x65\x63\x61y_st' +
        'eps\x18\x02 \x01(\r\x12\x14\n\x0c\x64\x65\x63\x61y_factor\x18\x03 \x01(\x02\x12\x11\n\tsta' +
        'ircase\x18\x04 \x01(\x08"\xc2\x01\n\x16ManualStepLearningRate\x12\x1d\n\x15initia' +
        'l_learning_rate\x18\x01 \x01(\x02\x12L\n\x08schedule\x18\x02 \x03(\x0b\x32:.second' +
        '.protos.ManualStepLearningRate.LearningRateSchedule\x1a;\n\x14LearningRateSc' +
        'hedule\x12\x0c\n\x04step\x18\x01 \x01(\r\x12\x15\n\rlearning_' +
        'rate\x18\x02 \x01(\x02"~\n\x17\x43osineDecayLearningRate\x12\x1a\n\x12lea' +
        'rning_rate_base\x18\x01 \x01(\x02\x12\x13\n\x0btotal_step' +
        's\x18\x02 \x01(\r\x12\x1c\n\x14warmup_learning_rate\x18\x03 \x01(\x02\x12\x14\n\x0cwarmup' +
        '_steps\x18\x04 \x01(\rb\x06proto3'
    ),
)


_OPTIMIZER = _descriptor.Descriptor(
    name="Optimizer",
    full_name="second.protos.Optimizer",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="rms_prop_optimizer",
            full_name="second.protos.Optimizer.rms_prop_optimizer",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="momentum_optimizer",
            full_name="second.protos.Optimizer.momentum_optimizer",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="adam_optimizer",
            full_name="second.protos.Optimizer.adam_optimizer",
            index=2,
            number=3,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="use_moving_average",
            full_name="second.protos.Optimizer.use_moving_average",
            index=3,
            number=4,
            type=8,
            cpp_type=7,
            label=1,
            has_default_value=False,
            default_value=False,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="moving_average_decay",
            full_name="second.protos.Optimizer.moving_average_decay",
            index=4,
            number=5,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[
        _descriptor.OneofDescriptor(
            name="optimizer",
            full_name="second.protos.Optimizer.optimizer",
            index=0,
            containing_type=None,
            fields=[],
        ),
    ],
    serialized_start=49,
    serialized_end=314,
)


_RMSPROPOPTIMIZER = _descriptor.Descriptor(
    name="RMSPropOptimizer",
    full_name="second.protos.RMSPropOptimizer",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="learning_rate",
            full_name="second.protos.RMSPropOptimizer.learning_rate",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="momentum_optimizer_value",
            full_name="second.protos.RMSPropOptimizer.momentum_optimizer_value",
            index=1,
            number=2,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="decay",
            full_name="second.protos.RMSPropOptimizer.decay",
            index=2,
            number=3,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="epsilon",
            full_name="second.protos.RMSPropOptimizer.epsilon",
            index=3,
            number=4,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="weight_decay",
            full_name="second.protos.RMSPropOptimizer.weight_decay",
            index=4,
            number=5,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=317,
    serialized_end=475,
)


_MOMENTUMOPTIMIZER = _descriptor.Descriptor(
    name="MomentumOptimizer",
    full_name="second.protos.MomentumOptimizer",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="learning_rate",
            full_name="second.protos.MomentumOptimizer.learning_rate",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="momentum_optimizer_value",
            full_name="second.protos.MomentumOptimizer.momentum_optimizer_value",
            index=1,
            number=2,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="weight_decay",
            full_name="second.protos.MomentumOptimizer.weight_decay",
            index=2,
            number=3,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=477,
    serialized_end=604,
)


_ADAMOPTIMIZER = _descriptor.Descriptor(
    name="AdamOptimizer",
    full_name="second.protos.AdamOptimizer",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="learning_rate",
            full_name="second.protos.AdamOptimizer.learning_rate",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="weight_decay",
            full_name="second.protos.AdamOptimizer.weight_decay",
            index=1,
            number=2,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=606,
    serialized_end=695,
)


_LEARNINGRATE = _descriptor.Descriptor(
    name="LearningRate",
    full_name="second.protos.LearningRate",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="constant_learning_rate",
            full_name="second.protos.LearningRate.constant_learning_rate",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="exponential_decay_learning_rate",
            full_name="second.protos.LearningRate.exponential_decay_learning_rate",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="manual_step_learning_rate",
            full_name="second.protos.LearningRate.manual_step_learning_rate",
            index=2,
            number=3,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="cosine_decay_learning_rate",
            full_name="second.protos.LearningRate.cosine_decay_learning_rate",
            index=3,
            number=4,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[
        _descriptor.OneofDescriptor(
            name="learning_rate",
            full_name="second.protos.LearningRate.learning_rate",
            index=0,
            containing_type=None,
            fields=[],
        ),
    ],
    serialized_start=698,
    serialized_end=1042,
)


_CONSTANTLEARNINGRATE = _descriptor.Descriptor(
    name="ConstantLearningRate",
    full_name="second.protos.ConstantLearningRate",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="learning_rate",
            full_name="second.protos.ConstantLearningRate.learning_rate",
            index=0,
            number=1,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1044,
    serialized_end=1089,
)


_EXPONENTIALDECAYLEARNINGRATE = _descriptor.Descriptor(
    name="ExponentialDecayLearningRate",
    full_name="second.protos.ExponentialDecayLearningRate",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="initial_learning_rate",
            full_name="second.protos.ExponentialDecayLearningRate.initial_learning_rate",
            index=0,
            number=1,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="decay_steps",
            full_name="second.protos.ExponentialDecayLearningRate.decay_steps",
            index=1,
            number=2,
            type=13,
            cpp_type=3,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="decay_factor",
            full_name="second.protos.ExponentialDecayLearningRate.decay_factor",
            index=2,
            number=3,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="staircase",
            full_name="second.protos.ExponentialDecayLearningRate.staircase",
            index=3,
            number=4,
            type=8,
            cpp_type=7,
            label=1,
            has_default_value=False,
            default_value=False,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1091,
    serialized_end=1214,
)


_MANUALSTEPLEARNINGRATE_LEARNINGRATESCHEDULE = _descriptor.Descriptor(
    name="LearningRateSchedule",
    full_name="second.protos.ManualStepLearningRate.LearningRateSchedule",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="step",
            full_name="second.protos.ManualStepLearningRate.LearningRateSchedule.step",
            index=0,
            number=1,
            type=13,
            cpp_type=3,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="learning_rate",
            full_name="second.protos.ManualStepLearningRate.LearningRateSchedule.learning_rate",
            index=1,
            number=2,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1352,
    serialized_end=1411,
)

_MANUALSTEPLEARNINGRATE = _descriptor.Descriptor(
    name="ManualStepLearningRate",
    full_name="second.protos.ManualStepLearningRate",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="initial_learning_rate",
            full_name="second.protos.ManualStepLearningRate.initial_learning_rate",
            index=0,
            number=1,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="schedule",
            full_name="second.protos.ManualStepLearningRate.schedule",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[_MANUALSTEPLEARNINGRATE_LEARNINGRATESCHEDULE],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1217,
    serialized_end=1411,
)


_COSINEDECAYLEARNINGRATE = _descriptor.Descriptor(
    name="CosineDecayLearningRate",
    full_name="second.protos.CosineDecayLearningRate",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="learning_rate_base",
            full_name="second.protos.CosineDecayLearningRate.learning_rate_base",
            index=0,
            number=1,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="total_steps",
            full_name="second.protos.CosineDecayLearningRate.total_steps",
            index=1,
            number=2,
            type=13,
            cpp_type=3,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="warmup_learning_rate",
            full_name="second.protos.CosineDecayLearningRate.warmup_learning_rate",
            index=2,
            number=3,
            type=2,
            cpp_type=6,
            label=1,
            has_default_value=False,
            default_value=float(0),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="warmup_steps",
            full_name="second.protos.CosineDecayLearningRate.warmup_steps",
            index=3,
            number=4,
            type=13,
            cpp_type=3,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1413,
    serialized_end=1539,
)

_OPTIMIZER.fields_by_name["rms_prop_optimizer"].message_type = _RMSPROPOPTIMIZER
_OPTIMIZER.fields_by_name["momentum_optimizer"].message_type = _MOMENTUMOPTIMIZER
_OPTIMIZER.fields_by_name["adam_optimizer"].message_type = _ADAMOPTIMIZER
_OPTIMIZER.oneofs_by_name["optimizer"].fields.append(
    _OPTIMIZER.fields_by_name["rms_prop_optimizer"]
)
_OPTIMIZER.fields_by_name[
    "rms_prop_optimizer"
].containing_oneof = _OPTIMIZER.oneofs_by_name["optimizer"]
_OPTIMIZER.oneofs_by_name["optimizer"].fields.append(
    _OPTIMIZER.fields_by_name["momentum_optimizer"]
)
_OPTIMIZER.fields_by_name[
    "momentum_optimizer"
].containing_oneof = _OPTIMIZER.oneofs_by_name["optimizer"]
_OPTIMIZER.oneofs_by_name["optimizer"].fields.append(
    _OPTIMIZER.fields_by_name["adam_optimizer"]
)
_OPTIMIZER.fields_by_name[
    "adam_optimizer"
].containing_oneof = _OPTIMIZER.oneofs_by_name["optimizer"]
_RMSPROPOPTIMIZER.fields_by_name["learning_rate"].message_type = _LEARNINGRATE
_MOMENTUMOPTIMIZER.fields_by_name["learning_rate"].message_type = _LEARNINGRATE
_ADAMOPTIMIZER.fields_by_name["learning_rate"].message_type = _LEARNINGRATE
_LEARNINGRATE.fields_by_name[
    "constant_learning_rate"
].message_type = _CONSTANTLEARNINGRATE
_LEARNINGRATE.fields_by_name[
    "exponential_decay_learning_rate"
].message_type = _EXPONENTIALDECAYLEARNINGRATE
_LEARNINGRATE.fields_by_name[
    "manual_step_learning_rate"
].message_type = _MANUALSTEPLEARNINGRATE
_LEARNINGRATE.fields_by_name[
    "cosine_decay_learning_rate"
].message_type = _COSINEDECAYLEARNINGRATE
_LEARNINGRATE.oneofs_by_name["learning_rate"].fields.append(
    _LEARNINGRATE.fields_by_name["constant_learning_rate"]
)
_LEARNINGRATE.fields_by_name[
    "constant_learning_rate"
].containing_oneof = _LEARNINGRATE.oneofs_by_name["learning_rate"]
_LEARNINGRATE.oneofs_by_name["learning_rate"].fields.append(
    _LEARNINGRATE.fields_by_name["exponential_decay_learning_rate"]
)
_LEARNINGRATE.fields_by_name[
    "exponential_decay_learning_rate"
].containing_oneof = _LEARNINGRATE.oneofs_by_name["learning_rate"]
_LEARNINGRATE.oneofs_by_name["learning_rate"].fields.append(
    _LEARNINGRATE.fields_by_name["manual_step_learning_rate"]
)
_LEARNINGRATE.fields_by_name[
    "manual_step_learning_rate"
].containing_oneof = _LEARNINGRATE.oneofs_by_name["learning_rate"]
_LEARNINGRATE.oneofs_by_name["learning_rate"].fields.append(
    _LEARNINGRATE.fields_by_name["cosine_decay_learning_rate"]
)
_LEARNINGRATE.fields_by_name[
    "cosine_decay_learning_rate"
].containing_oneof = _LEARNINGRATE.oneofs_by_name["learning_rate"]
_MANUALSTEPLEARNINGRATE_LEARNINGRATESCHEDULE.containing_type = _MANUALSTEPLEARNINGRATE
_MANUALSTEPLEARNINGRATE.fields_by_name[
    "schedule"
].message_type = _MANUALSTEPLEARNINGRATE_LEARNINGRATESCHEDULE
DESCRIPTOR.message_types_by_name["Optimizer"] = _OPTIMIZER
DESCRIPTOR.message_types_by_name["RMSPropOptimizer"] = _RMSPROPOPTIMIZER
DESCRIPTOR.message_types_by_name["MomentumOptimizer"] = _MOMENTUMOPTIMIZER
DESCRIPTOR.message_types_by_name["AdamOptimizer"] = _ADAMOPTIMIZER
DESCRIPTOR.message_types_by_name["LearningRate"] = _LEARNINGRATE
DESCRIPTOR.message_types_by_name["ConstantLearningRate"] = _CONSTANTLEARNINGRATE
DESCRIPTOR.message_types_by_name[
    "ExponentialDecayLearningRate"
] = _EXPONENTIALDECAYLEARNINGRATE
DESCRIPTOR.message_types_by_name["ManualStepLearningRate"] = _MANUALSTEPLEARNINGRATE
DESCRIPTOR.message_types_by_name["CosineDecayLearningRate"] = _COSINEDECAYLEARNINGRATE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Optimizer = _reflection.GeneratedProtocolMessageType(
    "Optimizer",
    (_message.Message,),
    dict(
        DESCRIPTOR=_OPTIMIZER,
        __module__="second.protos.optimizer_pb2"
        # @@protoc_insertion_point(class_scope:second.protos.Optimizer)
    ),
)
_sym_db.RegisterMessage(Optimizer)

RMSPropOptimizer = _reflection.GeneratedProtocolMessageType(
    "RMSPropOptimizer",
    (_message.Message,),
    dict(
        DESCRIPTOR=_RMSPROPOPTIMIZER,
        __module__="second.protos.optimizer_pb2"
        # @@protoc_insertion_point(class_scope:second.protos.RMSPropOptimizer)
    ),
)
_sym_db.RegisterMessage(RMSPropOptimizer)

MomentumOptimizer = _reflection.GeneratedProtocolMessageType(
    "MomentumOptimizer",
    (_message.Message,),
    dict(
        DESCRIPTOR=_MOMENTUMOPTIMIZER,
        __module__="second.protos.optimizer_pb2"
        # @@protoc_insertion_point(class_scope:second.protos.MomentumOptimizer)
    ),
)
_sym_db.RegisterMessage(MomentumOptimizer)

AdamOptimizer = _reflection.GeneratedProtocolMessageType(
    "AdamOptimizer",
    (_message.Message,),
    dict(
        DESCRIPTOR=_ADAMOPTIMIZER,
        __module__="second.protos.optimizer_pb2"
        # @@protoc_insertion_point(class_scope:second.protos.AdamOptimizer)
    ),
)
_sym_db.RegisterMessage(AdamOptimizer)

LearningRate = _reflection.GeneratedProtocolMessageType(
    "LearningRate",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LEARNINGRATE,
        __module__="second.protos.optimizer_pb2"
        # @@protoc_insertion_point(class_scope:second.protos.LearningRate)
    ),
)
_sym_db.RegisterMessage(LearningRate)

ConstantLearningRate = _reflection.GeneratedProtocolMessageType(
    "ConstantLearningRate",
    (_message.Message,),
    dict(
        DESCRIPTOR=_CONSTANTLEARNINGRATE,
        __module__="second.protos.optimizer_pb2"
        # @@protoc_insertion_point(class_scope:second.protos.ConstantLearningRate)
    ),
)
_sym_db.RegisterMessage(ConstantLearningRate)

ExponentialDecayLearningRate = _reflection.GeneratedProtocolMessageType(
    "ExponentialDecayLearningRate",
    (_message.Message,),
    dict(
        DESCRIPTOR=_EXPONENTIALDECAYLEARNINGRATE,
        __module__="second.protos.optimizer_pb2"
        # @@protoc_insertion_point(class_scope:second.protos.ExponentialDecayLearningRate)
    ),
)
_sym_db.RegisterMessage(ExponentialDecayLearningRate)

ManualStepLearningRate = _reflection.GeneratedProtocolMessageType(
    "ManualStepLearningRate",
    (_message.Message,),
    dict(
        LearningRateSchedule=_reflection.GeneratedProtocolMessageType(
            "LearningRateSchedule",
            (_message.Message,),
            dict(
                DESCRIPTOR=_MANUALSTEPLEARNINGRATE_LEARNINGRATESCHEDULE,
                __module__="second.protos.optimizer_pb2"
                # @@protoc_insertion_point(class_scope:second.protos.ManualStepLearningRate.LearningRateSchedule)
            ),
        ),
        DESCRIPTOR=_MANUALSTEPLEARNINGRATE,
        __module__="second.protos.optimizer_pb2"
        # @@protoc_insertion_point(class_scope:second.protos.ManualStepLearningRate)
    ),
)
_sym_db.RegisterMessage(ManualStepLearningRate)
_sym_db.RegisterMessage(ManualStepLearningRate.LearningRateSchedule)

CosineDecayLearningRate = _reflection.GeneratedProtocolMessageType(
    "CosineDecayLearningRate",
    (_message.Message,),
    dict(
        DESCRIPTOR=_COSINEDECAYLEARNINGRATE,
        __module__="second.protos.optimizer_pb2"
        # @@protoc_insertion_point(class_scope:second.protos.CosineDecayLearningRate)
    ),
)
_sym_db.RegisterMessage(CosineDecayLearningRate)


# @@protoc_insertion_point(module_scope)
