行为分类算法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了行为分类算法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1943字,纯文字阅读大概需要3分钟。
内容图文
根据两个用户的行为记录
[
[ 0, 1, 4, 9 ],
[ 8, 0, 7, 2 ]
]
,找出中间记录[4,0.5,5.5,5.5],生成特征
[
[ 0, 1, 0, 1 ],
[ 1, 0, 1, 0 ]
]
求出特征出现概率
[1/2,1/2,1/2,1/2]
输入新的行为,更具中间记录,生成特征,更具特征概率,新的行为和旧的行为是一类的概率为贝叶斯联合概率
const execMathExpress=require(‘exec-mathexpress‘); //贝叶斯计算公式function execByes(gArr){ const arr1=[] const arr2=[] const Obj={} for(let i=0;i<gArr.length;i++){ arr1.push(‘P‘+i) arr2.push(‘(1-P‘+i+‘)‘) Obj[‘P‘+i]=gArr[i]; } const str1=arr1.join(‘*‘); const str2=arr2.join(‘*‘); const str=str1+‘/(‘+str1+‘+‘+str2+‘)‘; return execMathExpress(str,Obj).toString(); } class People { constructor(keys){ this.keys=keys; this.data=[] } learn(item){ this.data.push(item); } getFeature(item){ const arr=[]; const den=this.data.length; for(let i=0;i<this.keys.length;i++){ let pNum=0; for(let j=0;j<den;j++){ const d=this.data[j]; if(item[i]>d[i]){ pNum++; } } if(pNum>den/2){ arr[i]=1; }else{ arr[i]=0; } } return arr; } think(){ const den=this.data.length; for(let i=0;i<this.keys.length;i++){ let pNum=0; for(let j=0;j<den;j++){ const d=this.data[j]; if(item[i]>d[i]){ pNum++; } } if(pNum>den/2){ arr[i]=1; }else{ arr[i]=0; } } } getOrder(item){ const arr=this.getFeature(item,this.keys); console.log(arr) console.log(execByes(arr)) return execByes(arr); } } const d=new People([‘show‘,‘click‘,‘a‘,‘time‘]) function randomArr(){ const arr=[]; for(let i=0;i<4;i++){ const n=0|Math.random()*10; arr.push(n) } return arr } const rect=[ [ 0, 1, 4, 9 ], [ 8, 0, 7, 2 ], [ 9, 9, 1, 8 ], [ 1, 0, 6, 7 ], [ 1, 3, 7, 5 ], [ 5, 5, 0, 9 ], [ 7, 6, 0, 4 ], [ 5, 5, 2, 9 ], [ 6, 2, 9, 5 ], [ 3, 5, 3, 3 ] ]; for(let i=0;i<4;i++){ rect.push(randomArr()) } rect.forEach(function (item) { d.learn(item) }) console.log(d) d.getOrder(randomArr()); d.getOrder(randomArr()); d.getOrder(randomArr()); d.getOrder(randomArr()); d.getOrder(randomArr()); d.getOrder(randomArr()); d.getOrder(randomArr());
原文:https://www.cnblogs.com/caoke/p/12628514.html
内容总结
以上是互联网集市为您收集整理的行为分类算法全部内容,希望文章能够帮你解决行为分类算法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。