\documentclass{standalone}

\usepackage[T1]{fontenc}
\usepackage{tikz}
\usepackage{amsmath,amssymb}

% matrices
\newcommand*{\mat}[1]{\boldsymbol{#1}}
% tensors (special case for lower case caligraphic letters)
\newcommand*{\ten}[1]{
    \ifnum\pdfstrcmp{#1}{`}=1       % lowercase argument
    \mathfrak{#1}
    \else                           % uppercase argument
    \mathcal{#1}
    \fi
}
% matrix transpose
\renewcommand*{\t}[1]{{#1^{T}}}
% Expected Value
\newcommand{\E}{\operatorname{\mathbb{E}}}


\begin{document}
\begin{tikzpicture}[scale = 1.2, line width = 1pt]

    \def\rect#1#2#3{
        \draw (0, 0, 0) -- (#1, 0, 0) -- (#1, #2, 0) -- (0, #2, 0) -- cycle;

        \draw[      ] (#1, 0, -#3) -- (#1, #2, -#3) -- (0, #2, -#3);
        \draw[dashed] (#1, 0, -#3) -- (0, 0, -#3) -- (0, #2, -#3);

        \draw[dashed] (0, 0, 0) -- (0, 0, -#3);
        \draw[      ] (0, #2, 0) -- (0, #2, -#3);
        \draw[      ] (#1, 0, 0) -- (#1, 0, -#3);
        \draw[      ] (#1, #2, 0) -- (#1, #2, -#3);
    }

    \begin{scope}[yshift = 1cm, line width = 1pt]
        \rect{1.5}{1}{2}
        \node[font = \boldmath] at (1, 0.5) {$\ten{R}(\ten{X})$};
    \end{scope}
    \rect{3}{2}{4}
    \node at (2, 0.5) {$\ten{X} - \E\ten{X}$};

    \draw[lightgray, line width = 0.7pt] (-2.1, 2) arc (180:270:2);
    \draw[fill = lightgray, fill opacity = 0.7] (-2.1, 1) rectangle +(2, 1)
        node [pos = 0.5] {$\t{\mat{\beta}_1}$};

    \draw[lightgray, line width = 0.7pt, domain = 0:1, smooth, variable = \t]
        plot ({0}, {2.1 + 4 * cos(90 * \t)}, {-4 * sin(90 * \t)});
    \draw[fill = lightgray, fill opacity = 0.7]
        (0, 2.1, 0) -- (0, 2.1, -2) -- (0, 6.1, -2) -- (0, 6.1, 0) -- cycle;
    \node[opacity = 0.7, cm={0.66, 0.66, 0, 1, (0, 0)}]
        at (0, 5.3, -1.1) {$\t{\mat{\beta}_3}$};

    \draw[lightgray, line width = 0.7pt] (0, 5.1) arc (90:0:3);
    \draw[fill = lightgray, fill opacity = 0.7] (0, 2.1) rectangle +(1.5, 3)
        node [pos = 0.5] {$\t{\mat{\beta}_2}$};
\end{tikzpicture}
\end{document}
