Abstract

This paper proposes a 3D shape descriptor network, which is a deep convolutional energy-based model, for modeling volumetric shape patterns. The maximum likelihood training of the model follows an “analysis by synthesis” scheme and can be interpreted as a mode seeking and mode shifting process. The model can synthesize 3D shape patterns by sampling from the probability distribution via MCMC such as Langevin dynamics. The model can be used to train a 3D generator network via MCMC teaching. The conditional version of the 3D shape descriptor net can be used for 3D object recovery and 3D object super-resolution. Experiments demonstrate that the proposed model can generate realistic 3D shape patterns and can be useful for 3D shape analysis.

1.1 Statistical models of 3D shapes

Recently, with the introduction of large 3D CAD datasets, e.g., ShapeNet [29, 4], some interesting attempts [5, 24, 17] have been made on object recognition and synthesis based on voxelized 3D shape data. From the perspective of statistical modeling, the existing 3D models can be grouped into two main categories: (1) 3D discriminators, such as Voxnet [16], which aim to learn a mapping from 3D voxel input to semantic labels for the purpose of 3D object classification and recognition, and (2) 3D generators, such as 3D-GAN[28], which are in the form of latent variable models that assume that the 3D voxel signals are generated by some latent variables. The training of discriminators usually relies on big data with annotations and is accomplished by a direct minimization of the prediction errors, while the training of the generators learns a mapping from the latent space to 3D voxel data space.

The generator model, while useful for synthesizing 3D shape patterns, involves a challenging inference step (i.e., sampling from the posterior distribution) in maximum likelihood learning, therefore variational inference [12] and adversarial learning [6, 18, 28] methods are commonly used, where an extra network is incorporated into the learning algorithm to get around the difficulty of the posterior inference.

The past few years have witnessed impressive progress on developing discriminator models and generator models for 3D shape data, however, there has not been much work in the literature on modeling 3D shape data based on energy-based models. We call this type of models the descriptive models or descriptor networks following [34], because the models describe the data based on bottom-up descriptive features learned from the data. The focus of the present paper is to develop a volumetric 3D descriptor network for voxelized shape data. It can be considered an alternative to 3D-GAN [28] for 3D shape generation.

1.2 3D shape descriptor network

Specifically, we present a novel framework for probabilistic modeling of volumetric shape patterns by combining the merits of energy-based model [14] and volumetric convolutional neural network [16]. The model is a probability density function directly defined on voxelized shape signal, and the model is in the form of a deep convolutional energy-based model, where the feature statistics or the energy function is defined by a bottom-up volumetric ConvNet that maps the 3D shape signal to the features.
We call the proposed model the 3D DescriptorNet, because it uses a volumetric ConvNet to extract 3D shape features from the voxelized data.

The training of the proposed model follows an “analysis by synthesis” scheme [7]. Different from the variational inference or adversarial learning, the proposed model does not need to incorporate an extra inference network or an adversarial discriminator in the learning process. The learning and sampling process is guided by the same set of parameters of a single model, which makes it a particularly natural and statistically rigorous framework for probabilistic 3D shape modeling.

Modeling 3D shape data by a probability density function provides distinctive advantages: First, it is able to synthesize realistic 3D shape patterns by sampling examples from the distribution via MCMC, such as Langevin dynamics. Second, the model can be modified into a conditional version, which is useful for 3D object recovery and 3D object super-resolution. Specifically, a conditional probability density function that maps the corrupted (or low resolution) 3D object to the recovered (or high resolution) 3D object is trained, and then the 3D recovery (or 3D super-resolution) can be achieved by sampling from the learned conditional distribution given the corrupted or low resolution 3D object as the conditional input. Third, the model can be used in a cooperative training scheme [31], as opposed to adversarial training, to train a 3D generator model via MCMC teaching. The training of 3D generator in such a scheme is stable and does not encounter mode collapsing issue. Fourth, the model is useful for semi-supervised learning. After learning the model from unlabeled data, the learned features can be used to train a classifier on the labeled data.

We show that the proposed 3D DescriptorNet can be used to synthesize realistic 3D shape patterns, and its conditional version is useful for 3D object recovery and 3D object super-resolution. The 3D generator trained by 3D DescriptorNet in a cooperative scheme carries semantic information about 3D objects. The feature maps trained by 3D DescriptorNet in an unsupervised manner are useful for 3D object classification.

1.3 Related work

3D object synthesis. Researchers in the fields of graphics and vision have studied the 3D object synthesis problems [2, 3, 9]. However, most of these object synthesis methods are nonparametric and they generate new patterns by retrieving and merging parts from an existing database. Our model is a parametric probabilistic model that requires learning from the observed data. 3D object synthesis can be achieved by running MCMC such as Langevin dynamics to draw samples from the learned distribution.

3D deep learning. Recently, the vision community has witnessed the success of deep learning, and researchers have used the models in the field of deep learning, such as convolutional deep belief network [29], deep convolutional neural network [16], and deep convolutional generative adversarial nets (GAN) [28], to model 3D objects for the sake of synthesis and analysis. Our proposed 3D model is also powered by the ConvNets. It incorporates a bottom-up 3D ConvNet structure for defining the probability density, and learns the parameters of the ConvNet by an “analysis by synthesis” scheme.

Descriptive models for synthesis.
Our model is related to the following descriptive models. The FRAME (Filters, Random field, And Maximum Entropy) [35] model, which was developed for modeling stochastic textures. The sparse FRAME model [30, 32], which was used for modeling object patterns.
Inspired by the successes of deep convolutional neural networks (CNNs or ConvNets), [15] proposes a deep FRAME model, where the linear filters used in the original FRAME model are replaced by the non-linear filters at a certain convolutional layer of a pre-trained deep ConvNet. Instead of using filters from a pre-trained ConvNet, [33] learns the ConvNet filters from the observed data by maximum likelihood estimation. The resulting model is called generative ConvNet, which can be considered a recursive multi-layer generalization of the original FRAME model.

Building on the early work of [25], recently [8, 13] have developed an introspective learning method to learn the energy-based model, where the energy function is discriminatively learned.

1.4 Contributions

(1) We propose a 3D deep convolutional energy-based model that we call 3D DescriptorNet for modeling 3D object patterns by combining the volumetric ConvNets [16] and the generative ConvNets [33]. (2) We present a mode seeking and mode shifting interpretation of the learning process of the model. (3) We present an adversarial interpretation of the zero temperature limit of the learning process. (4) We propose a conditional learning method for recovery tasks. (5) we propose metrics that can be useful for evaluating 3D generative models. (6) A 3D cooperative training scheme is provided as an alternative to the adversarial learning method to train 3D generator.

2.1 Probability density

The 3D DescriptorNet is a 3D deep convolutional energy-based model defined on the volumetric data Y, which is in the form of exponential tilting of a reference distribution [33]:

p(Y;θ)=1Z(θ)exp[f(Y;θ)]p0(Y),

(1)

where p0(Y) is the reference distribution such as Gaussian white noise model, i.e.,
p0(Y)∝exp(−∥Y∥2/2s2),f(Y;θ) is defined by a bottom-up 3D volumetric ConvNet whose parameters are denoted by θ. Z(θ)=∫exp[f(Y;θ)]p0(Y)dY is the normalizing constant or partition function that is analytically intractable. The energy function is

E(Y;θ)=∥Y∥22s2−f(Y;θ).

(2)

We may also take p0(Y) as uniform distribution within a bounded range. Then E(Y;θ)=−f(Y;θ).

2.2 Analysis by synthesis

The maximum likelihood estimation (MLE) of the 3D DescriptorNet follows an “analysis by synthesis” scheme. Suppose we observe 3D training examples {Yi,i=1,...,n} from an unknown data distribution Pdata(Y). The MLE seeks to maximize the log-likelihood function
L(θ)=1n∑ni=1logp(Yi;θ).
If the sample size n is large, the maximum likelihood estimator minimizes KL(Pdata∥pθ), the Kullback-Leibler divergence from the data distribution Pdata to the model distribution pθ.
The gradient of the L(θ) is

L′(θ)=1nn∑i=1∂∂θf(Yi;θ)−Eθ[∂∂θf(Y;θ)],

(3)

where Eθ denotes the expectation with respect to p(Y;θ). The expectation term in equation (3) is due to
∂∂θlogZ(θ)=Eθ[∂∂θf(Y;θ)], which is analytically intractable and has to be approximated by MCMC, such as Langevin dynamics, which iterates the following step:

Yτ+Δτ

=

Yτ−Δτ2∂∂YE(Yτ;θ)+√Δτϵτ

(4)

=

Yτ−Δτ2[Yτs2−∂∂Yf(Yτ;θ)]+√Δτϵτ,

where τ indexes the time steps of the Langevin dynamics, Δτ is the discretized step size, and ϵτ∼N(0,I) is the Gaussian white noise term. The Langevin dynamics consists of a deterministic part, which is a gradient descent on a landscape defined by E(Y;θ), and a stochastic part, which is a Brownian motion that helps the chain to escape spurious local minima of the energy E(Y;θ).

Suppose we draw ~n samples {~Yi,i=1,...,~n} from the distribution p(Y;θ) by running ~n parallel chains of Langevin dynamics according to (4). The gradient of the log-likelihood L(θ) can be approximated by

L′(θ)≈1nn∑i=1∂∂θf(Yi;θ)−1~n~n∑i=1∂∂θf(~Yi;θ).

(5)

2.3 Mode seeking and mode shifting

The above “analysis by synthesis” learning scheme can be interpreted as a mode seeking and mode shifting process. We can rewrite equation (5) in the form of

L′(θ)≈∂∂θ[1~n~n∑i=1E(~Yi;θ)−1nn∑i=1E(Yi;θ)].

(6)

We define a value function

V({~Yi};θ)=1~n~n∑i=1E(~Yi;θ)−1nn∑i=1E(Yi;θ).

(7)

The equation (6) reveals that the gradient of the log-likelihood L(θ) coincides with the gradient of V.

The sampling step in (4) can be interpreted as mode seeking, by finding low energy modes or high probability modes in the landscape defined by E(Y;θ) via stochastic gradient descent (Langevin dynamics) and placing the synthesized examples around the modes. It seeks to decrease V. The learning step can be interpreted as mode shifting (as well as mode creating and mode sharpening) by shifting the low energy modes from the synthesized examples {~Yi} toward the observed examples {Yi}. It seeks to increase V.

The training algorithm of the 3D DescriptorNet is presented in Algorithm 1.

3:Mode seeking: For each i, run l steps of Langevin dynamics to revise ~Yi, i.e., starting from the current ~Yi, each step follows equation (4).

4:Mode shifting: Update θ(t+1)=θ(t)+γtL′(θ(t)), with learning rate γt, where L′(θ(t)) is computed according to (5).

5: Let t←t+1

6:untilt=T

Algorithm 1 3D DescriptorNet

2.4 Alternating back-propagation

Both mode seeking (sampling) and mode shifting (learning) steps involve the derivatives of f(Y;θ) with respect to Y and θ respectively. Both derivatives can be computed efficiently by back-propagation. The algorithm is thus in the form of alternating back-propagation that iterates the following two steps: (1) Sampling back-propagation: Revise the synthesized examples by Langevin dynamics or gradient descent.
(2) Learning back-propagation: Update the model parameters
given the synthesized and the observed examples by gradient ascent.

2.5 Zero temperature limit

We can add a temperature term to the model pT(Y;θ)=exp(−E(Y;θ)/T)/ZT(θ), where the original model corresponds to T=1. At zero temperature limit as T→0, the Langevin sampling will become gradient descent where the noise term diminishes in comparison to the gradient descent term. The resulting algorithm approximately solves the minimax problem below

maxθmin{~Yi}V({~Yi};θ)

(8)

with ~Yi initialized from an initial distribution and approaching local modes of V. We can regularize either the diversity of {~Yi} or the smoothness of E(Y;θ). This is an adversarial interpretation of the learning algorithm. It is also a generalized version of herding [27] and is related to [1]. In our experiments, we find that disabling the noise term of the Langevin dynamics in the later stage of the learning process often leads to better synthesis results. Ideally the learning algorithm should create a large number of local modes with similar low energies to capture the diverse observed examples as well as unseen examples.

2.6 Conditional learning for recovery

The conditional distribution p(Y|C(Y)=c;θ) can be derived from p(Y;θ). This conditional form of the 3D DescriptorNet can be used for recovery tasks such as inpainting and super-resolution. In inpinating, C(Y) consists of the visible part of Y. In super-resolution, C(Y) is the low resolution version of Y. For such tasks, we can learn the model from the fully observed training data {Yi,i=1,...,n} by maximizing the conditional log-likelihood

L(θ)=1nn∑i=1logp(Yi∣C(Yi)=ci;θ),

(9)

where ci is the observed value of C(Yi).
The learning and sampling algorithm is essentially the same as maximizing the original log-likelihood, except that in the Langevin sampling step, we need to sample from the conditional distribution, which amounts to fixing C(Yτ) in the sampling process.
The zero temperature limit (with the noise term in the Langevin dynamics disabled) approximately solves the following minimax problem

We can let a 3D generator network learn from the MCMC sampling of the 3D DescriptorNet, so that the 3D generator network can be used as an approximate direct sampler of the 3D DescriptorNet.

3.1 3D generator model

The 3D generator model [6] is a 3D non-linear multi-layer generalization of the traditional factor analysis model. The generator model has the following form

Z∼N(0,Id);

Y=g(Z;α)+ϵ;ϵ∼N(0,σ2ID).

(11)

where Z is a d-dimensional vector of latent factors that follow N(0,1) independently, and the 3D object Y is generated by first sampling Z from its known prior distribution N(0,Id) and then transforming Z to the D-dimensional Y by a top-down deconvolutional network g(Z;α) plus the white noise ϵ. α denotes the parameters of the generator.

3.2 MCMC teaching of 3D generator net

The 3D generator model can be trained simultaneously with the 3D DescriptorNet in a cooperative training scheme [31]. The basic idea is to use the 3D generator to generate examples to initialize a finite step Langevin dynamics for training the 3D DescriptorNet. In return, the 3D generator learns from how the Langevin dynamics changes the initial examples it generates.

Specifically, in each iteration, (1) We generate Zi from its known prior distribution, and then generate the initial synthesized examples by ^Yi=g(Zi;α)+ϵi for i=1,...,~n. (2) Starting from the initial examples {^Yi}, we sample from the 3D DescriptorNet by running a finite number of steps of MCMC such as Langevin dynamics to obtain the revised synthesized examples {~Yi}. (3) We then update the parameters θ of the 3D DescriptorNet based on {~Yi} according to (5), and update the parameters α of the 3D generator by gradient descent

Δα∝−∂∂α[1~n~n∑i=1∥~Yi−g(Zi;α)∥2].

(12)

We call it MCMC teaching because the revised examples {~Yi} generated by the finite step MCMC are used to teach g(Z;α).
For each ~Yi, the latent factors Zi are known to the 3D generator, so that there is no need to infer Zi, and the learning becomes a much simpler supervised learning problem. Algorithm 2 presents a full description of the learning of a 3D DescriptorNet with a 3D generator as a sampler.

4.1 3D object synthesis

Figure 1: Generating 3D objects. Each row displays one experiment, where the first three 3D objects are some observed examples, columns 4, 5, 6, 7, 8, and 9 are 6 of the synthesized 3D objects sampled from the learned model by Langevin dynamics. For the last four synthesized objects (shown in columns 6, 7, 8, and 9), their nearest neighbors retrieved from the training set are shown in columns 10, 11, 12, and 13.

We conduct experiments on synthesizing 3D objects of categories from ModelNet dataset [29]. Specifically, we use ModelNet10, a 10-category subset of ModelNet which is commonly used as benchmark for 3D object analysis. The categories are chair, sofa, bathtub, toilet, bed, desk, table, nightstand, dresser, and monitor. The size of the training set for each category ranges from 100 to 700.

For qualitative experiment, we learn one 3-layer 3D DescriptorNet for each object category in ModelNet10. The first layer has 200 16×16×16 filters with sub-sampling of 3, the second layer has 100 6×6×6 filters with sub-sampling of 2, and the final layer is a fully connected layer with a single filter that covers the whole voxel grid. We add ReLU layers between convolutional layers. We fix the standard deviation of the reference distribution of the model to be s=0.5. The number of Langevin dynamics steps in each learning iteration is l=20 and the step size Δτ=0.1. We use Adam [11] for optimization with β1=0.5 and β2=0.999. The learning rate is 0.001. The number of learning iterations is 3,000. We disable the noise term in the Langevin step after 100 iterations. The training data are of size 32×32×32 voxels, whose values are 0 or 1. We prepare the training data by subtracting the mean value from the data. Each voxel value of the synthesized data is discretized into 0 or 1 by comparing with a threshold 0.5. The mini-batch size is 20. The number of parallel sampling chains for each batch is 25.

Figure 1 displays the observed 3D objects randomly sampled from the training set, and the synthesized 3D objects generated by our models for categories chair, bed, sofa, table, dresser, and toilet.
We visualize volumetric data via isosurfaces in our paper. To show that our model can synthesize new 3D objects beyond the training set, we compare the synthesized patterns with their nearest neighbors in the training set. The retrieved nearest neighbors are based on ℓ2 distance in the voxel space. As shown in Figure 1, our model can synthesize realistic 3D shapes, and the generated 3D objects are similar, but not identical, to the training set.

To quantitatively evaluate our model, we adopt the Inception score proposed by [26], which uses a reference convolutional neural network to compute

I({~Yi,i=1,...,~n})=exp(E~Y[KL(p(c|~Y)∥p(c))]),

where c denotes category, {~Yi,i=1,...,~n} are synthesized examples sampled from the model, p(c|~Y) is obtained from the output of the reference network, and p(c)≈1~n∑~ni=1p(c|~Yi). Both a low entropy conditional category distribution p(c|~Y) (i.e., the network classifies a given sample with high certainty) and a high entropy category distribution p(c) (i.e., the network identifies a wide variety of categories among the generated samples) can lead to a high inception score. In our experiment, we use a state-of-the-art 3D multi-view convolutional neural network [17] trained on ModelNet dataset for 3D object classification as the reference network.

We learn a single model from mixed 3D objects from the training sets of 10 3D object categories of ModelNet10 dataset.
Table 1 reports the Inception scores of our model as well as a comparison with some baseline models including 3D-GAN [28], 3D ShapeNets [29], and 3D-VAE [12].

We also evaluate the quality of the synthesized 3D shapes by the model learned from single category by using average softmax class probability that reference network assigns to the synthesized examples for the underlying category.
Table 2 displays the results for all 10 categories. It can be seen that our model generates 3D shapes with higher softmax class probabilities than other baseline models.

4.2 3D object recovery

We then test the conditional 3D DescriptorNet on the 3D object recovery task. On each testing 3D object, we randomly corrupt some voxels of the 3D object. We then seek to recover the corrupted voxels by sampling from the conditional distribution p(YM|Y~M;θ) according to the learned model p(Y;θ), where M and ~M denote the corrupted and uncorrupted voxels, and YM and Y~M are the corrupted part and the uncorrupted part of the 3D object Y respectively. The sampling of p(YM|Y~M;θ) is again accomplished by the Langevin dynamics, which is the same as the Langevin dynamics that samples from the full distribution p(Y;θ), except that we fix the uncorrupted part Y~M and only update the corrupted part YM throughout the Langevin dynamics. In the learning stage, we learn the model from the fully observed training 3D objects. To specialize the learned model to this recovery task, we learn the conditional distribution p(YM|Y~M;θ) directly. That is, in the learning stage, we also randomly corrupt each fully observed training 3D object Y, and run Langevin dynamics by fixing YM to obtain the synthesized 3D object. The parameters θ are then updated by gradient ascent according to (5). The network architecture for recovery is the same as the one used in Section 4.1 for synthesis. The number of Langevin dynamics steps for recovery in each iteration is set to be l=90 and the step size is Δτ=0.07. The number of learning iterations is 1,000. The size of the mini-batch is 50. The 3D training data are of size 32×32×32 voxels.

After learning the model, we recover the corrupted voxels in each testing data Y by sampling from p(YM|Y~M,θ) by running 90 Langevin dynamics steps. In the training stage, we randomly corrupt 70% of each training 3D shape. In the testing stage, we experiment with the same percentage of corruption. We compare our method with 3D-GAN and 3D ShapeNets.
We measure the recovery error by the average of per-voxel differences between the original testing data and the corresponding recovered data on the corrupted voxels. Table 3 displays the numerical comparison results for the 10 categories. Figure 2 displays some examples of 3D object recovery. For each experiment, the first row displays the original 3D objects, the second row displays the corrupted 3D objects, and the third row displays the recovered 3D objects that are sampled from the learned conditional distributions given the corrupted 3D objects as inputs.

Figure 2: 3D object recovery by sampling from the conditional 3D DescriptorNet models. In each category, the first row displays the original 3D objects, the second row shows the corrupted 3D objects, and the third row displays the recovered 3D objects by running Langevin dynamics starting from the corrupted objects. (a) chair, (b) night stand.

4.3 3D object super-resolution

Figure 3: 3D object super-resolution by conditional 3D DescriptorNet. The first row displays some original 3D objects (64×64×64 voxels). The second row shows the corresponding low resolution 3D objects (16×16×16 voxels). The last row displays the corresponding super-resolution results which are obtained by sampling from the conditional 3D DescriptorNet by running 10 steps of Langevin dynamics initialized with the objects shown in the second row.

toilet

sofa

Figure 4: Synthesis by 3D generators

toilet

sofa

Figure 5: Interpolation between latent vectors of the 3D objects on the two ends

Figure 6: 3D shape arithmetic in the latent space

We test the conditional 3D DescriptorNet on the 3D object super-resolution task. Similar to Experiment 4.2, we can perform super-resolution on a low resolution 3D objects by sampling from a conditional 3D DescriptorNet p(Yhigh|Ylow,θ), where Yhigh denotes a high resolution version of Ylow.
The sampling of the conditional model p(Yhigh|Ylow,θ) is accomplished by the Langevin dynamics initialized with the given low resolution 3D object that needs to be super-resolutioned. In the learning stage, we learn the conditional model from the fully observed training 3D objects as well as their low resolution versions. To specialize the learned model to this super-resolution task, in the training process, we down-scale each fully observed training 3D object Yhigh into a low resolution version Ylow, which leads to information loss. In each iteration, we first up-scale Ylow by expanding each voxel of Ylow into a d×d×d block (where d is the ratio between the sizes of Yhigh and Ylow) of constant values to obtain an up-scaled version Y′high of Ylow (The up-scaled Y′high is not identical to the original high resolution Yhigh since the high resolution details are lost), and then run Langevin dynamics starting from Y′high. The parameters θ are then updated by gradient ascent according to (5). Figure 3 shows some qualitative results of 3D super-resolution, where we use a 2-layer conditional 3D DescriptorNet. The first layer has 200 16×16×16 filters with sub-sampling of 3. The second layer is a fully-connected layer with one single filter. The Langevin step size is 0.01.

To be more specific, let Ylow=CYhigh, where C is the down-scaling matrix, e.g., each voxel of Ylow is the average of the corresponding d×d×d block of Yhigh. Let C− be the pseudo-inverse of C, e.g., C−Ylow gives us a high resolution shape by expanding each voxel of Ylow into a d×d×d block of constant values. Then the sampling of p(Yhigh|Ylow;θ) is similar to sampling the unconditioned model p(Yhigh;θ), except that for each step of the Langevin dynamics, let ΔY be the change of Y, we update Y←Y+(I−C−C)ΔY, i.e., we project ΔY to the null space of C, so that the low resolution version of Y, i.e., CY, remains fixed. From this perspective, super-resolution is similar to inpainting, except that the visible voxels are replaced by low resolution voxels.

4.4 Analyzing the learned 3D generator

We evaluate a 3D generator trained by a 3D DescriptorNet via MCMC teaching. The generator network g(Z;α) has 4 layers of volumetric deconvolution with 4×4×4 kernels, with up-sampling factors {1,2,2,2} at different layers respectively. The numbers of channels at different layers are 256, 128, 64, and 1. There is a fully connected layer under the 100 dimensional latent factors Z. The output size is 32×32×32. Batch normalization and ReLU layers are used between deconvolution layers and tanh non-linearity is added at the bottom-layer. We train a 3D DescriptorNet with the above 3D generator as a sampler in a cooperative training scheme presented in Algorithm 2 for the categories of toilet, sofa, and nightstand in ModelNet10 dataset independently. The 3D DescriptorNet has a 4-layer network, where the first layer has 64 9×9×9 filters, the second layer has 128 7×7×7 filters, the third layer has 256 4×4×4 filters, and the fourth layer is a fully connected layer with a single filter. The sub-sampling factors are {2,2,2,1}. ReLU layers are used between convolutional layers.

We use Adam for optimization of 3D DescriptorNet with β1=0.4 and β2=0.999, and for optimization of 3D generator with β1=0.6 and β2=0.999. The learning rates for 3D DescriptorNet and 3D generator are 0.001 and 0.0003 respectively. The number of parallel chains is 50, and the mini-batch size is 50. The training data are scaled into the range of [−1,1]. The synthesized data are re-scaled back into [0,1] for visualization. Figure 5 shows some examples of 3D objects generated by the 3D generators trained by the 3D DescriptorNet via MCMC teaching.

We show results of interpolating between two latent vectors of Z in Figure 5. For each row, the 3D objects at the two ends are generated from Z vectors that are randomly sampled from N(0,Id). Each object in the middle is obtained by first interpolating the Z vectors of the two end objects, and then generating the objects using the 3D generator. We observe smooth transitions in 3D shape structure and that most intermediate objects are also physically plausible.
This experiment demonstrates that the learned 3D generator embeds the 3D object distribution into a smooth low dimensional manifold. Another way to investigate the learned 3D generator is to show shape arithmetic in the latent space. As shown in Figure 6, the 3D generator is able to encode semantic knowledge of 3D shapes in its latent space such that arithmetic can be performed on Z vectors for visual concept manipulation of 3D shapes.

4.5 3D object classification

We evaluate the feature maps learned by our 3D DescriptorNet. We perform a classification experiment on ModelNet10 dataset. We first train a single model on all categories of the training set in an unsupervised manner. The network architecture and learning configuration are the same as the one used for synthesis in Section 4.1.
Then we use the model as a feature extractor. Specifically, for each input 3D object, we use the model to extract its first and second layers of feature maps, apply max pooling of kernel sizes 4×4×4 and 2×2×2 respectively, and concatenate the outputs as a feature vector of length 8,100. We train a multinomial logistic regression classifier from labeled data based on the extracted feature vectors for classification. We evaluate the classification accuracy of the classifier on the testing data using the one-versus-all rule. For comparison, Table 4 lists 8 published results on this dataset obtained by other baseline methods. Our method outperforms the other methods in terms of classification accuracy on this dataset.

We propose the 3D DescriptorNet for volumetric object synthesis, and the conditional 3D DescriptorNet for 3D object recovery and 3D object super resolution. The proposed model is a deep convolutional energy-based model, which can be trained by an “analysis by synthesis” scheme. The training of the model can be interpreted as a mode seeking and mode shifting process, and the zero temperature limit has an adversarial interpretation. A 3D generator can be taught by the 3D DescriptorNet via MCMC teaching. Experiments demonstrate that our models are able to generate realistic 3D shape patterns and are useful for 3D shape analysis.

Acknowledgment

The work is supported by Hikvision gift fund, DARPA SIMPLEX N66001-15-C-4035, ONR MURI N00014-16-1-2007, DARPA ARO W911NF-16-1-0579, and DARPA N66001-17-2-4029. We thank Erik Nijkamp for his help on coding. We thank Siyuan Huang for helpful discussions.