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

# 计算机代写|机器学习代写Machine Learning代考|Constraint-based approach

avatest™

## avatest™帮您通过考试

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

•最快12小时交付

•200+ 英语母语导师

•70分以下全额退款

## 计算机代写|机器学习代写Machine Learning代考|IC algorithm

The original algorithm, due to Verma and Pearl [VP90], was called the IC algorithm, which stands for “inductive causation”. The method is as follows [Pea09, p50]:

1. For each pair of variables $a$ and $b$, search for a set $S_{a b}$ such that $a \perp b \mid S_{a b}$. Construct an undirected graph such that $a$ and $b$ are connected iff no such set $S_{a b}$ can be found (i.e., they cannot be made conditionally independent).
2. Orient the edges involved in $\mathrm{v}$-structures as follows: for each pair of nonadjacent nodes $a$ and $b$ with a common neighbor $c$, check if $c \in S_{a b}$; if it is, the corresponding DAG must be $a \rightarrow c \rightarrow b, a \leftarrow c \rightarrow b$ or $a \leftarrow c \leftarrow b$, so we cannot determine the direction; if it is not, the DAG must be $a \rightarrow c \leftarrow b$, so add these arrows to the graph.
3. In the partially directed graph that results, orient as many of the undirected edges as possible, subject to two conditions: (1) the orientation should not create a new v-structure (since that would have been detected already if it existed), and (2) the orientation should not create a directed cycle. More precisely, follow the rules shown in Figure 31.8. In the first case, if $X \rightarrow Y$ has a known orientation, but $Y-Z$ is unknown, then we must have $Y \rightarrow Z$, otherwise we would have created a new v-structure $X \rightarrow Y \leftarrow Z$, which is not allowed. The other two cases follow similar reasoning.

## 计算机代写|机器学习代写Machine Learning代考|PC algorithm

A significant speedup of $\mathrm{IC}$, known as the $\mathbf{P C}$ algorithm after is creators Peter Spirtes and Clark Glymour [SG91], can be obtained by ordering the search for separating sets in step 1 in terms of sets of increasing cardinality. We start with a fully connected graph, and then look for sets $S_{a b}$ of size 0 , then of size 1 , and so on; as soon we find a separating set, we remove the corresponding edge. See Figure 31.9 for an example.
Another variant on the $\mathrm{PC}$ algorithm is to learn the original undirected structure (i.e., the Markov blanket of each node) using generic variable selection techniques instead of CI tests. This tends to be more robust, since it avoids issues of statisical significance that can arise with independence tests. See [PE08] for details.
The running time of the $\mathrm{PC}$ algorithm is $O\left(D^{K+1}\right)$ [SGS00, p85], where $D$ is the number of nodes and $K$ is the maximal degree (number of neighbors) of any node in the corresponding undirected graph.

The IC/PC algorithm relies on an oracle that can test for conditional independence between any set of variables, $A \perp B \mid C$. This can be approximated using hypothesis testing methods applied to a finite data set, such as chi-squared tests for discrete data. However, such methods work poorly with small sample sizes, and can run into problems with multiple testing (since so many hypotheses are being compared). In addition, errors made at any given step can lead to an incorrect final result, as erroneous constraints get propagated. In practice it is a common to use a hybrid approach, where we use IC/PC to create an initial structure, and then use this to speed up Bayesian model selection, which tends to be more robust, since it avoids any hard decisions about conditional independence or lack thereof.

## 计算机代写|机器学习代写Machine Learning代考|IC algorithm

1. 对于每对变量 $a$ 和 $b$, 搜索一个集合 $S_{a b}$ 这样 $a \perp b \mid S_{a b}$. 构造一个无向图使得 $a$ 和 $b$ 连接当且仅当没有这 样的集合 $S_{a b}$ 可以找到（即，它们不能有条件地独立）。
2. 定向涉及的边缘v-结构如下: 对于每对不相邻的节点 $a$ 和 $b$ 和一个共同的邻居 $c$, 检查是否 $c \in S_{a b}$; 如果 是，则相应的 DAG 必须是 $a \rightarrow c \rightarrow b, a \leftarrow c \rightarrow b$ 或者 $a \leftarrow c \leftarrow b$ ，所以我们无法确定方向；如果 不是，则 DAG 必须是 $a \rightarrow c \leftarrow b$ ，因此将这些箭头添加到图形中。
3. 在产生的部分有向图中，根据两个条件㞔可能多地定向无向边：(1) 定向不应创建新的 $v$ 结构 (因为如果 它存在，它已经被检测到)，以及(2)定向不宜形成定向循环。更准确地说，㘏循图 31.8 中所示的规 则。在第一种情况下，如果 $X \rightarrow Y$ 有一个已知的方向，但是 $Y-Z$ 是末知的，那么我们必须有 $Y \rightarrow Z$, 否则我们会创建一个新的 $\mathrm{v}$ 结构 $X \rightarrow Y \leftarrow Z$, 这是不允许的。其他两个案例邅循类似的推 理。

## 计算机代写|机器学习代写Machine Learning代考|PC algorithm

$\mathrm{IC} / \mathrm{PC}$ 算法依赖于一个可以测试任何变量集之间的条件独立性的预言机， $A \perp B \mid C$. 这可以使用 应用于有限数据集的假设检验方法来近似，例如离散数据的卡方检验。然而，这种方法在样本量较小 的情况下效果不佳，并且可能会遇到多重测试的问题（因为要比较很多假设）。此外，在任何给定步 骤中犯的错误都可能导致不正确的最终结果，因为错误的约束会传播。在实践中，通常使用混合方 法，我们使用 IC/PC 创建初始结构，然后使用它来加速贝叶斯模型选择，这种方法往往更稳健，因 为它避免了关于条件的任何艰难决策独立性或缺乏独立性。

## MATLAB代写

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