分类: 机器学习

0

决策树

  机器学习中使用最多的算法莫过于神经网络与树形算法了,而树形算法的基础就是决策树(Decision Tree)。决策树是一种基本的分类与回归方法,相对于神经网络这种黑箱,决策树容易理解,并且运行速度快。但由于其结构较为简单,故预测能力有限,无法与强监督学习模型相提并论,需要进一步的优化。 概述  决策树的思想与我们在日常生活中进行判断或决策的过程类似。下面

0

K-Means聚类算法

  K-Means聚类算法(k-means clustering algorithm)是一种无监督学习算法。它可以通过多次迭代,将一系列无标记的数据根据它们的特征分布划分为$k$个子集,使得子集内部元素之间的相异度尽可能低,而不同子集元素相异度尽可能高。我们称这样的子集为簇(cluster),而将数据划分为簇的过程称为聚类。 算法思想  假设我们有一组无标记

0

支持向量机(四)

  到目前为止,我们把SVM优化问题化为了更容易解决的对偶问题,并且使用核函数及正则化来改善它的特性。现在我们只需解决这个对偶问题就可以得到最优间隔分类器,可以说是“万事具备,只欠东风”了。我们先将第三章节得到的对偶问题搬运过来: \begin{eqnarray} \max_{\alpha}\ &&\theta_{\cal{D}}(\alpha)=\sum_{i=1}^m\a

0

支持向量机(三)

  支持向量机的强大不止在于它能在特征空间找到合适的超平面将正负样本分开并保持最大间隔,通过引入核函数,它还能在更高维,甚至无限维空间中对样本进行分离,以此来解决非线性的问题。 核特征映射  在之前的推导中,我们使用的一直是样本的原始特征$x$,并通过线性平面$w^Tx+b$进行分割。但如果样本是线性不可分的,我们就需要先将特征映射到更高维空间,再分离正负样

0

支持向量机(二)

  上一章节我们将SVM的目标转换为了一个带不等式约束条件的优化问题,现在我们的目标就是解决这个优化问题。在此我们先将SVM及最优间隔分类器放一放,来看看一般约束优化问题的求解方法。 约束优化问题等式约束优化问题  等式优化问题一般描述如下: \begin{split} \min_x\ &f(x)\\ {\rm s.t.}\ &h_i(x)=0,\ i=1

0

支持向量机(一)

  支持向量机(Support Vector Machine)是一种强大的监督式学习算法。尽管目前深度学习非常流行,但这种经典的机器学习算法仍然有着非常大的研究价值,并且它在机器学习领域仍占有着一席之地。本次学习材料主要是CS229课程以及一些网上的资料。 SVM目标  为了引入SVM思想,我们来看一个二分类问题。假设我们有一组训练样本$\{(x_1,y_1

0

利用爬虫搜集数据

  训练数据对于机器学习来说是必不可少的,因此在每个机器学习任务之前都会有一个搜集数据的过程,这个搜集过程通常来说是枯燥且费时的。不像很多公司本身就是数据的生产者,对于我们普通学习者来说,能使用的大部分数据均来自于网络。我们可以从网页上手动获取所需的数据,复制粘贴到本地,然而这是相当麻烦的。通过python我们可以模拟浏览器对网页进行抓取,并自动筛选出所需要的数据,大大提高搜集

0

迁移学习

  作为一个苦逼的学生党,如果没有实验室或者公司支持,自己实践深度学习时经常会遇到一些困难:“自己网上搜集数据好麻烦,现成的数据集很多又都是要申请才能获得”;“破笔记本也太烂了,训练个两层CNN就要跑好几天,要达到满意的效果不知道要跑到猴年马月了”。在没有能力或者单纯不想从零开始训练模型时,迁移学习无疑是一大神器。我们可以从网上下载别人已经训练好的模型,将它们迁移到我们自己的任

0

Tensorflow学习(二)

  当我们学习一个新的编程语言时,输出的第一句话一定是“Hallo World”;当我们学习一个新的深度学习框架时,跑的第一个数据集一定是MNIST。这是Tensorflow官方教程的原话。MNIST是一个简单的计算机图像数据集,它由一系列大小为28×28的手写数字图像以及它们的标记组成(如下图所示),可以算是最简单的数据集之一啦。  本次学习会使用两种不同

0

Tensorflow学习(一)

  Tensorflow是一个强大的深度学习框架,通过它可以方便地配置、训练以及评估模型。本次学习材料主要是Tensorflow官方教程、Deeplearning.ai课程以及一些网上的资料,并会加上自己的一些理解及想法。此外,本次学习针对的是机器学习在Tensorflow中的应用,不会对其理论做过多的阐述。 理解Tensorflow  Tensorflow