为什么80%的码农都做不了架构师?>>>   

<?php
/**
* 数据分析引擎
* 分析向量的元素 必须和基准向量的元素一致,取最大个数,分析向量不足元素以0填补。
* 求出分析向量与基准向量的余弦值
* @author Foyon
*/
/**
* 获得向量的模
* @param unknown_type $array 传入分析数据的基准点的N维向量。|eg:array(1,1,1,1,1);
*/
function getMarkMod($arrParam){
$strModDouble = 0;
foreach($arrParam as $val){
$strModDouble += $val * $val;
}
$strMod = sqrt($strModDouble);
//是否需要保留小数点后几位
return $strMod;
}
/**
* 获取标杆的元素个数
* @param unknown_type $arrParam
* @return number
*/
function getMarkLenth($arrParam){
$intLenth = count($arrParam);
return $intLenth;
}
/**
* 对传入数组进行索引分配,基准点的索引必须为k,求夹角的向量索引必须为 'j'.
* @param unknown_type $arrParam
* @param unknown_type $index
* @ruturn $arrBack
*/
function handIndex($arrParam, $index = 'k'){
foreach($arrParam as $key => $val){
$in = $index.$key;
$arrBack[$in] = $val; 
}
return $arrBack;
}
/**
* @param unknown_type $arrMark标杆向量数组(索引被处理过)
* @param unknown_type $arrAnaly 分析向量数组 (索引被处理过) |array('j0'=>1,'j1'=>2....)
* @param unknown_type $strMarkMod标杆向量的模
* @param unknown_type $intLenth 向量的长度
*/
function getCosine($arrMark, $arrAnaly, $strMarkMod ,$intLenth){
$strVector = 0;
$strCosine = 0;
for($i = 0; $i < $intLenth; $i++){
$strMarkVal = $arrMark['k'.$i];
$strAnalyVal = $arrAnaly['j'.$i];
$strVector += $strMarkVal * $strAnalyVal;
}
$arrAnalyMod = getMarkMod($arrAnaly); //求分析向量的模
$strFenzi = $strVector;
$strFenMu = $arrAnalyMod * $strMarkMod;
$strCosine = $strFenzi / $strFenMu;
if(0 !== (int)$strFenMu){
$strCosine = $strFenzi / $strFenMu;
}
return $strCosine;
}
?>

转载于:https://my.oschina.net/foyon/blog/77995

php-数据分析 余弦相似度实现相关推荐

  1. php数据分析引擎,PHP数据分析引擎计算余弦相似度算法示例

    php 的 PHP数据分析引擎计算余弦相似度算法示例 本文实例讲述了PHP数据分析引擎计算余弦相似度算法.分享给大家供大家参考,具体如下: 关于余弦相似度的相关介绍可参考百度百科: /** * 数据分 ...

  2. 基于大数据分析架构设计采用基于协同过滤推荐+余弦相似度算法+springboot+vue.js 实现新闻推荐系统

    针对海量的新闻资讯数据,如何快速的根据用户的检索需要,完成符合用户阅读需求的新闻资讯推荐?本篇文章主要采用余弦相似度及基于用户协同过滤算法实现新闻推荐,通过余弦相似度算法完成针对不同新闻数据之间的相似 ...

  3. 余弦相似度和欧氏距离_欧氏距离和余弦相似度

    余弦相似度和欧氏距离 Photo by Markus Winkler on Unsplash Markus Winkler在Unsplash上拍摄的照片 This is a quick and str ...

  4. 相似度算法 php,PHP计算余弦相似度算法

    这篇文章主要介绍了PHP数据分析引擎计算余弦相似度算法,结合具体实例形式分析了php计算余弦相似度的操作步骤与相关实现技巧,需要的朋友可以参考下 本文实例讲述了PHP数据分析引擎计算余弦相似度算法.分 ...

  5. 使用余弦相似度算法计算文本相似度-数学

    20211201 也就是效果 皮尔逊>余弦>欧式 余弦相似度的局限 皮尔逊的优势,相当于是改进版余弦相似度 欧式与 余弦 欧式侧重于直线距离 归一化之后的欧式和余弦的效果也不同 比如 0, ...

  6. 使用Keras计算余弦相似度(Cosine Similarity)

    因为Merge函数在Keras新版本中已经不再使用了,在计算批次余弦相似度时,需要自定义函数.余弦相似度定义如下: 要计算两个向量相似度有如下步骤: 分别计算两个向量l2范式,计算两个向量的点乘 点乘 ...

  7. [DeeplearningAI笔记]序列模型2.3-2.5余弦相似度/嵌入矩阵/学习词嵌入

    5.2自然语言处理 觉得有用的话,欢迎一起讨论相互学习~Follow Me 2.3词嵌入的特性 properties of word embedding Mikolov T, Yih W T, Zwe ...

  8. 英文关键词计算tf-idf 余弦相似度_TFIDF原理与实践

    TF-IDF原理 TF-IDF通常应用于文本关键词提取.要提取一个文章的关键词,一个容易想到的思路就是找到出现次数最多的几个词.这是因为如果某个词很重要,它应该在这篇文章中多次出现.于是,我们进行&q ...

  9. python余弦相似度

    余弦相似度 在NLP的任务里,会对生成两个词向量进行相似度的计算,常常采用余弦相似度公式计算. 余弦相似度用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异的大小.余弦值越接近1,就表明夹角越接近 ...

  10. Jackcard相似度和余弦相似度(向量空间模型)的java实现

    版权声明:本文为博主原创文章,地址:http://blog.csdn.net/napoay,转载请留言. 总结Jackcard相似度和余弦相似度. 一.集合的Jackcard相似度 1.1Jackca ...

最新文章

  1. c#课程设计---猜猜看游戏
  2. phpcms发布新闻到数据库_Phpcms V9网站从本地上传到服务器需要修改的地方小结
  3. 解析ArcFace源码
  4. python编程少儿游戏编程_少儿编程课堂|python – 用游戏学编程
  5. windows下扩展yaf,并生成yaf框架文件(亲测)
  6. PAT 1079. Total Sales of Supply Chain
  7. P4370-[Code+#4]组合数问题2【数学,堆】
  8. surface pro 5 加AD域后,人脸识别选项是灰色按钮,无法使用
  9. 线段树之单点更新,区域求和
  10. android:inputType 参数详解
  11. 【服务器】【个人网盘】宝塔安装NextCloud
  12. vue实现卡片式上下滑动_Vue实现table上下移动功能示例
  13. bitvise ssh client 连接linux,推荐SSH客户端Bitvise SSH Client
  14. JAVA 学习第三天 Scanner顺序\选择\循环结构!
  15. [linux] Linux网络之TCP协议详解
  16. plotnine数据可视化手册
  17. python爬虫遇到验证码、输入验证码后提醒验证码错误_爬虫遇到头疼的验证码?Python实战讲解弹窗处理和验证码识别...
  18. 算法可以申请专利么_国内提供计算机视觉(CV)算法岗位的公司名单
  19. 10次机会 js 猜数_用JS实现简单的猜数小游戏
  20. 点成分享| 低温冷冻保存的技术研究(一)

热门文章

  1. FilterDispatcher is deprecated!
  2. (转)Geth控制台使用及Web3.js使用实战
  3. 用python的字典实现简单的通讯录
  4. JSON 之 SuperObject(6): 方法
  5. Fbric、Ansible、Docker、Chaos Monkey:DevOps工具的年中回顾
  6. jquery 选择器,模糊匹配
  7. 20130320java基础学习笔记-dos命令及java临时环境变量配置
  8. 手把手教你在ubuntu上安装LAMP
  9. D3DCOLOR与D3DXCOLOR
  10. Android支持横行滚动的ListView控件