Posted on Categories:CS代写, Machine Learning, 机器学习, 计算机代写

# 计算机代写|机器学习代写Machine Learning代考|ENGG3300 Finding the MAP forest

avatest™

## avatest™帮您通过考试

avatest™的各个学科专家已帮了学生顺利通过达上千场考试。我们保证您快速准时完成各时长和类型的考试，包括in class、take home、online、proctor。写手整理各样的资源来或按照您学校的资料教您，创造模拟试题，提供所有的问题例子，以保证您在真实考试中取得的通过率是85%以上。如果您有即将到来的每周、季考、期中或期末考试，我们都能帮助您！

•最快12小时交付

•200+ 英语母语导师

•70分以下全额退款

## 计算机代写|机器学习代写Machine Learning代考|Finding the MAP forest

Since all trees have the same number of parameters, we can safely use the maximum likelihood score as a model selection criterion without worrying about overfitting. However, sometimes we may want to fit a forest rather than a single tree, since inference in a forest is much faster than in a tree (we can run belief propagation in each tree in the forest in parallel). The MLE criterion will never choose to omit an edge. However, if we use the marginal likelihood or a penalized likelihood (such as BIC), the optimal solution may be a forest. Below we give the details for the marginal likelihood case.

In Section 31.2.3.2, we explain how to compute the marginal likelihood of any DAG using a Dirichlet prior for the CPTs. The resulting expression can be written as follows:
$$\log p(\mathcal{D} \mid T)=\sum_{t \in \mathcal{V}} \log \int \prod_{i=1}^N p\left(x_{i t}\left|\boldsymbol{x}{i, \mathrm{pa}(t)}\right| \boldsymbol{\theta}_t\right) p\left(\boldsymbol{\theta}_t\right) d \boldsymbol{\theta}_t=\sum_t \operatorname{score}\left(\mathbf{N}{t, \mathrm{pa}(t)}\right)$$
where $\mathbf{N}_{t, \mathrm{pa}(t)}$ are the counts (sufficient statistics) for node $t$ and its parents, and score is defined in Equation (31.26).

Now suppose we only allow DAGs with at most one parent. Following [HGC95, p227], let us associate a weight with each $s \rightarrow t$ edge, $w_{s, t} \triangleq \operatorname{score}(t \mid s)-\operatorname{score}(t \mid 0)$, where score $(t \mid 0)$ is the score when $t$ has no parents. Note that the weights might be negative (unlike the MLE case, where edge weights are aways non-negative because they correspond to mutual information). Then we can rewrite the objective as follows:
$$\log p(\mathcal{D} \mid T)=\sum_t \operatorname{score}(t \mid \operatorname{pa}(t))=\sum_t w_{\mathrm{pa}(t), t}+\sum_t \operatorname{score}(t \mid 0)$$
The last term is the same for all trees $T$, so we can ignore it. Thus finding the most probable tree amounts to finding a maximal branching in the corresponding weighted directed graph. This can be found using the algorithm in [GGS84].

If the scoring function is prior and likelihood equivalent (these terms are explained in Section 31.2.3.3), we have
$$\operatorname{score}(s \mid t)+\operatorname{score}(t \mid 0)=\operatorname{score}(t \mid s)+\operatorname{score}(s \mid 0)$$
and hence the weight matrix is symmetric. In this case, the maximal branching is the same as the maximal weight forest. We can apply a slightly modified version of the MST algorithm to find this [EAL10]. To see this, let $G=(V, E)$ be a graph with both positive and negative edge weights. Now let $G^{\prime}$ be a graph obtained by omitting all the negative edges from $G$. This cannot reduce the total weight, so we can find the maximum weight forest of $G$ by finding the MST for each connected component of $G^{\prime}$. We can do this by running Kruskal’s algorithm directly on $G^{\prime}$ : there is no need to find the connected components explicitly.

## 计算机代写|机器学习代写Machine Learning代考|Mixtures of trees

A single tree is rather limited in its expressive power. Later in this chapter we discuss ways to learn more general graphs. However, the resulting graphs can be expensive to do inference in. An interesting alternative is to learn a mixture of trees [MJ00], where each mixture component may have a different tree topology. This is like an unsupervised version of the TAN classifier discussed in ??. We can fit a mixture of trees by using EM: in the E step, we compute the responsibilities of each cluster for each data point, and in the M step, we use a weighted version of the Chow-Liu algorithm. See [MJ00] for details.

In fact, it is possible to create an “infinite mixture of trees”, by integrating out over all possible trees. Remarkably, this can be done in $V^3$ time using the matrix tree theorem. This allows us to perform exact Bayesian inference of posterior edge marginals etc. However, it is not tractable to use this infinite mixture for inference of hidden nodes. See [MJ06] for details.

## 计算机代写|机器学习代写Machine Learning代考|Finding the MAP forest

$$\log p(\mathcal{D} \mid T)=\sum_{t \in \mathcal{V}} \log \int \prod_{i=1}^N p\left(x_{i t}|\boldsymbol{x} i, \operatorname{pa}(t)| \boldsymbol{\theta}t\right) p\left(\boldsymbol{\theta}_t\right) d \boldsymbol{\theta}_t=\sum_t \operatorname{score}(\mathbf{N} t, \mathrm{pa}(t))$$ 在哪里 $\mathbf{N}{t, \mathrm{pa}(t)}$ 是节点的计数 (充分统计) $t$ 及其父母，分数在方程式 (31.26) 中定义。

$$\log p(\mathcal{D} \mid T)=\sum_t \operatorname{score}(t \mid \operatorname{pa}(t))=\sum_t w_{\mathrm{pa}(t), t}+\sum_t \operatorname{score}(t \mid 0)$$

$$\operatorname{score}(s \mid t)+\operatorname{score}(t \mid 0)=\operatorname{score}(t \mid s)+\operatorname{score}(s \mid 0)$$

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。