Frequently Used Import Targets ============================== Includes a brief summary of important symbols and modules. Service Users ------------- If you write client code interacting with the OSS Vizier service, use these import targets: - **from vizier.service import pyvizier as vz**: Exposes the same set of symbol names as ``vizier.pyvizier``. ``vizier.service.pyvizier.Foo`` is a subclass or an alias of ``vizier.pyvizier.Foo``, and can be converted into protobufs. - **from vizier.service import ...**: Include binaries and internal utilities. Algorithm Developers -------------------- If you write algorithm code (Designers or Pythia policies) in OSS Vizier, use these import targets: - **from vizier import pyvizier as vz**: Pure python building blocks of OSS Vizier. Cross-platform code, including Pythia policies, must use this ``pyvizier`` instance. - ``Trial`` and ``ProblemStatement`` are important classes. - **from vizier.pyvizier import converters**: Convert between ``pyvizier`` objects and numpy arrays. - ``TrialToNumpyDict``: Converts parameters (and metrics) into a dict of numpy arrays. Preferred conversion method if you intended to train an embedding of categorical/discrete parameters, or data includes missing parameters or metrics. - ``TrialToArrayConverter``: Converts parameters (and metrics) into an array. - **from vizier.interfaces import serializable**: Abstractions for serializable objects. - ``PartiallySerializable``, ``Serializable`` Algorithm Abstractions ~~~~~~~~~~~~~~~~~~~~~~ - **from vizier import pythia**: Abstractions for Pythia policies. - ``Policy``, ``PolicySupporter``: Key abstractions. - ``LocalPolicyRunner``: Use it for running a ``Policy`` in RAM. - **from vizier import algorithms**: Abstractions for algorithms. - ``Designer``: Stateful algorithm abstraction. - ``DesignerPolicy``: Wraps ``Designer`` into a Pythia Policy. - ``GradientFreeMaximizer``: For optimizing acquisition functions. - ``(Partially)SerializableDesigner``: Designers who wish to optimize performance by saving states. Tensorflow Modules ~~~~~~~~~~~~~~~~~~ - **from vizier import tfp**: Tensorflow-Probability utilities. - ``acquisitions``: Acquisition functions module. - ``AcquisitionFunction``: Abstraction. - ``UpperConfidenceBound``, ``ExpectedImprovement``, etc. - ``bijectors``: Bijectors module. - ``YeoJohnson``: Implements both Yeo-Johnson and Box-Cox transformations. - ``optimal_power_transformation``: Returns the optimal power transformation. - ``flip_sign``: returns a sign-flip bijector. - **from vizier import keras as vzk**: - ``vzk.layers``: Layers usually wrapping ``tfp`` classes. - ``variable_from_prior``: Utility layer for handling regularized variables. - ``vzk.models``: Most of the useful models don’t easily fit into Keras's ``Model`` abstraction, but we may add some for display. - ``vzk.optim``: Wrappers around optimizers in ``tfp`` or ``keras``.