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

# 计算机代写|机器学习代写Machine Learning代考|Version Spaces and Mistake Bounds

avatest™

## avatest™帮您通过考试

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

•最快12小时交付

•200+ 英语母语导师

•70分以下全额退款

## 计算机代写|机器学习代写Machine Learning代考|Version Spaces and Mistake Bounds

The first learning methods we present are based on the concepts of version spaces and version graphs. These ideas are most clearly explained for the case of Boolean function learning. Given an initial hypothesis set $\mathcal{H}$ (a subset of all Boolean functions) and the values of $f(\mathbf{X})$ for each $\mathbf{X}$ in a training set, $\Xi$, the version space is that subset of hypotheses, $\mathcal{H}_v$, that is consistent with these values. A hypothesis, $h$, is consistent with the values of $\mathbf{X}$ in $\Xi$ if and only if $h(\mathbf{X})=f(\mathbf{X})$ for all $\mathbf{X}$ in $\Xi$. We say that the hypotheses in $\mathcal{H}$ that are not consistent with the values in the training set a re ruled out by the training set.

We could imagine (conceptually only!) that we have devices for implementing every function in $\mathcal{H}$. An incremental training procedure could then be defined which presented each pattern in $\Xi$ to each of these functions and then eliminated those functions whose values for that pattern did not agree with its given value. At any stage of the process we would then have left some subset of functions that are consistent with the patterns presented so far; this subset is the version space for the patterns already presented. This idea is illustrated in Fig. 3.1 .

Consider the following procedure for classifying an arbitrary input pattern, $\mathbf{X}$ : the pattern is put in the same class $(0$ or 1$)$ as are the majority of the outputs of the functions in the version space. During the learning procedure, if this majority is not equal to the value of the pattern presented.

we say a mistake is made, and we revise the version space accordinglyeliminating all those (majority of the) functions voting incorrectly. Thus, whenever a mistake is made, we rule out at least half of the functions remaining in the version space.

How many mistakes can such a procedure make? Obviously, we can make no more than $\log _2(|\mathcal{H}|)$ mistakes, where $|\mathcal{H}|$ is the number of hypotheses in the original hypothesis set, $\mathcal{H}$. (Note, though, that the number of training patterns seen before this maximum number of mistakes is made might be much greater.) This theoretical (and very impractical!) result (due to [Littlestone, 1988]) is an example of a mistake bound-an important concept in machine learning theory. It shows that there must exist a learning procedure that makes no more mistakes than this upper bound. Later, we’ll derive other mistake bounds.

## 计算机代写|机器学习代写Machine Learning代考|Version Graphs

Boolean functions can be ordered by generality. A Boolean function, $f_1$, is more general than a function, $f_2$, (and $f_2$ is more specific than $f_1$ ), if $f_1$ has value 1 for all of the arguments for which $f_2$ has value 1 , and $f_1 \neq f_2$ For example, $x_3$ is more general than $x_2 x_3$ but is not more general than $x_3+x_2$.

We can form a graph with the hypotheses, $\left{h_i\right}$, in the version space as nodes. A node in the graph, $h_i$, has an arc directed to node, $h_j$, if and only if $h_j$ is more general than $h_i$. We call such a graph a version graph. In Fig. 3.2, we show an example of a version graph over a 3-dimensional input space for hypotheses restricted to terms (with none of them yet ruled out).

That function, denoted here by “1,” which has value 1 for all inputs. corresponds to the node at the top of the graph. (It is more general than any other term.) Similarly, the function ” 0 ,” is at the bottom of the graph. Just below “1,” is a row of nodes corresponding to all terms having just one literal, and just below them is a row of nodes corresponding to terms having two literals, and so on. There are $3^3=27$ functions altogether (the function “0,” included in the graph, is technically not a term). To make our portrayal of the graph less cluttered only some of the arcs are shown: each node in the actual graph has an arc directed to all of the nodes above it that are more general.

We use this same example to show how the version graph changes as we consider a set of labeled samples in a training set, $\Xi$. Suppose we first consider the training pattern $(1,0,1)$ with value 0 . Some of the functions in the version graph of Fig. 3.2 are inconsistent with this training pattern. These ruled out nodes are no longer in the version graph and are

shown shaded in Fig. 3.3. We also show there the three-dimensional cube representation in which the vertex $(1,0,1)$ has value 0 .

In a version graph, there are always a set of hypotheses that are maximally general and a set of hypotheses that are maximally specific. These are called the general boundary set ( $g b s)$ and the specific boundary set (sbs). respectively. In Fig. 3.4, we have the version graph as it exists after learning that $(1,0,1)$ has value 0 and $(1,0,0)$ has value 1 . The gbs and sbs are shown.

## MATLAB代写

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