摘要:
K-means algorithm initialize K-means算法中有一步为随机初始化cluster centroids,这步如何进行,我们将介绍一种运行比较好的方法,这种方法比其它初始化的方法都好 如何random initialize 如右图所示,两个不同的random initial 阅读全文
摘要:
类似于linear regression,K-means算法也optimization objective或者是试图使cost function求最小值。 了解K-means算法的optimization objective有助于我们(1)调试算法时,看算法是否运行正确(在本节中可以看到)(2)使算 阅读全文
摘要:
k-means算法是目前最流行的,用得最多的一种clustering算法 K-means算法 如果我们想要将上图中的绿色的点分为两类,首先随机的选取两个cluster centroids(聚类中心),然后迭代(循环)地做两件事:cluster assignment和move centroids(图1 阅读全文
摘要:
unsupervised learning 上面是监督学习与无监督学习的比较,监督学习的training set是一组带label(y)的训练集,而无监督学习不带有label(y)。 上图中的监督学习求出决策线,用来区别正负样本点; clustering是unsupervised learning算 阅读全文
摘要:
使用SVM包来求θ,选择C与核函数 我们使用已经编写好的软件包(这些软件包效率高,用得多,是经无数人证明已经很好的可以使用的软件包)来求θ,而不是自己去编写软件来求它们(就像我们现在很少编写软件来求x½).经常使用的是liblinear和libsvm 虽然不用我们自己来写optimize函数,但是需 阅读全文
摘要:
将所有的样本都选做landmarks 一种方法是将所有的training data都做为landmarks,这样就会有m个landmarks(m个trainnign data),这样features就是某个x(可以是trainning data/cross validation data/test 阅读全文
摘要:
应用kernels来进行非线性分类 非线性分类:是否存在好的features的选择(而不是多项式)--f1,f2,f3.... 上图是一个非线性分类的问题,前面讲过,我们可以应用多项式(features)来构造hypothesis来解决复杂的非线性分类问题。 我们将x1,x2,x1x2.....替换 阅读全文
摘要:
向量内积 uTv = vTu为两个二维向量的内积,它等于p*||u||(其中p为向量v在向量u上的投影长度,是有+/-之分的,||u||为向量u的长度也称为范数),它是一个实数(是一个标量)。 如上图所示,当u与v之间的夹角小于90度时,p为正的;当u与v之间的夹角大于90度时,p为负的。 SVM的 阅读全文
摘要:
在SVM中,增加安全的间距因子 那么增加了这个间距因子后,会出现什么样的结果呢,我们将C设置为很大(C=100000) SVM决策边界 当我们将C设置得很大进,要想SVM的cost function最小,则要使蓝色框里面的term=0,即当y(i)=1时,θTx(i)>=1;当y(i)=0时,θTx 阅读全文
摘要:
很多学习算法的性能都差不多,关键不是使用哪种学习算法,而是你能得到多少数据量和应用这些学习算法的技巧(如选择什么特征向量,如何选择正则化参数等) SVM在解决非线性问题上提供了强大的方法。 logistic regression的h(x) 如果y=1,则我们希望h(x)接近于1,即希望θTx要远远大 阅读全文