php大数据量计算公式 php大数据量计算公式怎么用

PHP-大数据量怎么处理优化大数据的话可以进行以下操作:
减少对数据库的读?。?也就是减少调用数据库,
进行数据缓存 , 
利用数据库的自身优化技术,如索引等
精确查询条件,有利于提高查找速度
大数据算法:分类算法KNN算法,即K近邻(K Nearest Neighbour)算法,是一种基本的分类算法 。其主要原理是:对于一个需要分类的数据,将其和一组已经分类标注好的样本集合进行比较 , 得到距离最近的K个样本,K个样本最多归属的类别,就是这个需要分类数据的类别 。下面我给你画了一个KNN算法的原理图 。
【php大数据量计算公式 php大数据量计算公式怎么用】 图中,红蓝绿三种颜色的点为样本数据,分属三种类别、、。对于待分类点,计算和它距离最近的5个点(即K为5),这5个点最多归属的类别为(4个点归属 , 1个点归属),那么的类别被分类为。
KNN的算法流程也非常简单,请看下面的流程图 。
KNN算法是一种非常简单实用的分类算法,可用于各种分类的场景,比如新闻分类、商品分类等 , 甚至可用于简单的文字识别 。对于新闻分类 , 可以提前对若干新闻进行人工标注 , 标好新闻类别,计算好特征向量 。对于一篇未分类的新闻,计算其特征向量后,跟所有已标注新闻进行距离计算,然后进一步利用KNN算法进行自动分类 。
读到这你肯定会问 , 如何计算数据的距离呢?如何获得新闻的特征向量呢?
KNN算法的关键是要比较需要分类的数据与样本数据之间的距离,这在机器学习中通常的做法是:提取数据的特征值 , 根据特征值组成一个n维实数向量空间(这个空间也被称作特征空间),然后计算向量之间的空间距离 。空间之间的距离计算方法有很多种,常用的有欧氏距离、余弦距离等 。
对于数据和,若其特征空间为n维实数向量空间,即, , 则其欧氏距离计算公式为
这个欧式距离公式其实我们在初中的时候就学过,平面几何和立体几何里两个点之间的距离,也是用这个公式计算出来的,只是平面几何(二维几何)里的n=2,立体几何(三维几何)里的n=3 , 而机器学习需要面对的每个数据都可能有n维的维度,即每个数据有n个特征值 。但是不管特征值n是多少,两个数据之间的空间距离的计算公式还是这个欧氏计算公式 。大多数机器学习算法都需要计算数据之间的距离,因此掌握数据的距离计算公式是掌握机器学习算法的基础 。
欧氏距离是最常用的数据计算公式,但是在文本数据以及用户评价数据的机器学习中,更常用的距离计算方法是余弦相似度 。
余弦相似度的值越接近1表示其越相似 , 越接近0表示其差异越大,使用余弦相似度可以消除数据的某些冗余信息,某些情况下更贴近数据的本质 。我举个简单的例子 , 比如两篇文章的特征值都是:“大数据”“机器学习”和“极客时间”,A文章的特征向量为(3, 3, 3),即这三个词出现次数都是3;B文章的特征向量为(6, 6, 6),即这三个词出现次数都是6 。如果光看特征向量,这两个向量差别很大,如果用欧氏距离计算确实也很大 , 但是这两篇文章其实非常相似,只是篇幅不同而已,它们的余弦相似度为1,表示非常相似 。
余弦相似度其实是计算向量的夹角,而欧氏距离公式是计算空间距离 。余弦相似度更关注数据的相似性,比如两个用户给两件商品的打分分别是(3, 3)和(4, 4),那么两个用户对两件商品的喜好是相似的 , 这种情况下,余弦相似度比欧氏距离更合理 。

推荐阅读