Machine Learning-聚类(Clustering)(一)-K均值算法

之前机器学习系列的所有文章讲得都是监督学习(supervised learning),今天我们来讲一讲无监督学习(unsupervised learning)。本文覆盖Coursera Machine Learning Week 8的内容,将会介绍一个无监督学习算法-K均值聚类算法(K-means Algorithm for clustering)

K-means Algorithm
无监督学习和监督学习最大的不同是他不需要对样本数据集打标签,而是只根据样本数据分析其内在规律而自动进行簇分类。直观意义上的理解:比如我们有这样一堆样本数据,他的分布如下图:
clustering_1
事先我们并没有对样本数据打标签以标识它属于哪个分类,通过聚类算法,我们希望这堆看上去很容易被分开的数据能够自动分类。那么具体怎么做呢?

对于K个分类的聚类算法而言,步骤如下:

  • 1).首先,我们先随机选取K个样本点,我们称之为“簇中心”(cluster centroids),如下图所示:
    clustering_2
  • 2).对每一个簇中心(1-K),我们找到所有离该中心最近的样本点,并且给它涂上不同的颜色,如下图所示:
    clustering_3
  • [……]

    继续阅读

    iPhone7听筒声音太小

    来来来,今天来写一篇无聊的文章。哈哈。
    前几天晚上接到一个电话(杭州某知名独角兽公司的技术面试),发现对方说话声音特别小,没聊几句就挂了。当时还以为是对方信号不好,对此还跟同事吐槽了一番。第二天到公司又接了一个外卖电话,发现根本听不清对方在说什么。然后发现听筒声音太小了,调到最大也还算很小。心想,完了,手机坏了!!!当时的第一反应是软件问题,感觉重启之后应该就好了,然而重启并没有卵用。于是上网百度,把能搜到的各种方法都试过了,比如在设置里开启“消除噪音”或者“助听器”模式,全都不行。此时就开始怀疑是硬件坏了,那就只能去报修了,但是心想着做工这么精细的苹果不至于没用几个月听筒就坏了吧?感觉不太可能啊。又过了好几天依然毫无头绪,无计可施,就差把手机恢复出厂设置了,但这么做的时间成本实在太高,不到万不得已是不会尝试的。今晚灵机一动,会不会跟耳机的插拔有关?(为什么会想到这个?这可能来源于程序员查bug的直觉,因为耳机插拔的时候会切换播放模式,系统会自动调整音量)于是抱着试一试的心态这样操作了一下:先插入耳机然后打通电话,把音量调到最大。然后再拔掉耳机,再用听筒就发现音量恢复正常了!!!简直[……]

    继续阅读

    在这个浮躁的世界里我们该如何过得“心安理得”?

    昨天打开知乎看到了一个几年前的老问题:“努力了七年却依旧被中产阶级家庭子女完爆,我该如何调整心态?”作者的经历特别像是十几年前一个叫麦子的网友写得那篇很火的文章:《我奋斗了18年才和你坐在一起喝咖啡》,大意是吐槽一个从农村出来的大学生如何艰难地在大城市打拼生活的。我第一次读到这篇文章应该是在高中,在《读者》文摘上看到的,说实话当时的我根本没有看懂,或者准确地来说是根本不能感同身受。唯一的共鸣,可能只是来自于年少时惯有的那种类似于“政治正确”般的愤青式的批判,除了同情,别无其他。那个时候就已经在讨论为什么这个社会这么现实,这么不公平?为什么一些在某些人看来唾手可得的东西,我却需要付出巨大的努力?而在十几年后的今天,“阶层固化”,“寒门再难出贵子”这样的论调再次沉渣泛起,而且反响更强烈。不过今天的我再次面对这个问题时,已经不像十年前那个十六七岁的毛头小伙子那么’愤青’了,我会很平和地看待这个问题。我深刻地知道并不是我们所处的这个时代太糟糕了,而是不平等,不公平才是这个世界本来的面目,每个时代都这样。很遗憾的是,从小到大接受的填鸭式的教育让我们很多人失去了独立思考的能力,毕竟在十几年的校园时[……]

    继续阅读

    我是如何戒烟的

    UPDATED ON: 2018/12/20 戒烟一年半

    从清明节决定戒烟到现在已经整整两个月了,这期间一根烟都没有抽过,我是真的戒了。有人会说才两个月你就敢说自己戒了?在我看来戒烟成功的标志应该是忘了自己曾经抽过烟,不需要再等待某个时刻的到来,戒了就是戒了,不管戒了多久。倘若你总是惦记着那个时间点,那么你早晚会复吸。因为你并没有忘记香烟,所以一过了那个时间点,你可能会不自觉地想挑战一下自己到底有没有戒烟成功。一旦那么做了,你又复吸了。我知道戒烟是一个很艰难的过程,这其中的心酸和不易没有经历过的人是不能体会的。看看上一篇戒烟失败的文章就能略知一二了,字里行间透露出的沮丧、痛苦现在看来依然扎心,不忍多读。这次戒烟之前我已经断断续续地戒过几次了,然而每一次都没能超过一个礼拜。虽然失败了好几次,但是我并没有放弃,内心深处还是想着早晚得把它戒了。去年农历新年许了几个愿望,其中一个就是戒烟,许下的愿望是要兑现的。年后我一直在寻找合适的时机去做这件事,一直拖着没执行,直到四五月份春暖花开才开始真正行动起来。

    我们为什么要吸烟?
    在讨论戒烟之前,我们先思考一个问题:“我们为什么需要吸烟?”。很多[……]

    继续阅读

    Machine Learning-支持向量机(SVM-Support Vector Machines)

    好久没有更新文章了,距离上一篇文章已经快大半个月了。主要是最近这段时间太忙了,在两个项目之间来回切换,再加上好多同事要离职,组里有点动荡。其实在5月5号那天我就一口气提前把整个course都学完了,主要是每个周末都要空出来完成作业好烦(虽然不做作业我也没啥好干的),那还不如一下子全部做完吧。全部学下来感觉最难的两部分内容就是神经网络和支持向量机了,我这里说的难,指的是真正理解这两个算法,知道他们的工作原理,甚至是理解他们背后的数学原理。如果你仅仅为了完成课后的assignment,那这两部分的内容其实也是很easy的。课程中一涉及到算法背后的原理,感觉Andrew Ng讲得不够清楚,他只会告诉你用什么样的公式去计算,但不会告诉你为什么要用这个公式,以及这个公式是怎么来的。当然,我这么说并不是质疑Andrew Ng讲得不好,而是这门课设计的初衷就是为了让更多人的学会机器学习,而不管你有没有数学背景,所以Andrew Ng一直在说don’t worry about the math,don’t worry about the math…哈哈
    本来这篇文章是要写Week6的内容的,但是我[……]

    继续阅读