当前位置:首页 » 操作系统 » pr的算法

pr的算法

发布时间: 2023-05-04 01:44:02

㈠ 网站PR的计算公式!

假设一个由4个页面组成的小团体:A,B, C 和 D。如果所有页面都链向A,那么A的PR(PageRank)值将是B,C 及 D的和。

PR(A) = PR(B) + PR(C) + PR(D)

继续假设B也有链接到C,并且D也有链接到包括A的3个页面。一个页面不能投票2次。所以B给每个页面半票。以同样的逻辑,D投出的票只有三分之一算到了A的 PageRank 上。

PR(A) =PR(B) /2+PR(C) /1+PR(D)/3

换句话说,根据链处总数平分一个页面的PR值。

PR(A) =PR(B) /L(B)+PR(C) /L(C)+PR(D)/L(D)

最后,所有这些被换算为一个百分比再乘上一个系数q。由于下面的算法,没有页面的PageRank会是0。所以,Google通过数学系统给了每个页面一个最小值1−q。

PR(A) =(PR(B) /L(B)+PR(C) /L(C)+PR(D)/L(D)+...+PR(N)/L(N))q+1-q

所以一个页面的 PageRank 是由其他页面的PageRank计算得到。Google 不断的重复计算每个页面的 PageRank。如果您给每个页面一个随机 PageRank 值(非0),那么经过不断的重复计算,这些页面的 PR 值会趋向于正常和稳定。这就是搜索引擎使用它的原因。

其中,PR(A):指网页A的佩奇等级(PR值)

PR(B)、PR(C)...PR(N)表示链接网页A的网页N的佩奇等级(PR)。N是链接的总数,这个链接可以使来自任何网站的导入链接(反向链接)。

L(N):网页N往其他网站链接的数量(网页N的导出链接数量)

q:阻尼系数,介于0-1之间,google设为0.85.

从上面的公式我们可以看到网页A的PR是由链接它的其他网页L(N)所决定的。在网页L(N)中如果有一个链接指向网页A,那么A就得到了一个“投票气而这个投票来自网上任何一张网页。每个“投票”都是表示一份“支持”。越多的链接指向网页A,网页A的PR值或者等级就越高。没有链接就是没有一个网页支持A。

但是不同网页的PR值不同,所以不同的网页给网页A的投票权重是不一样的。

完整的PR值计算方法

这个方程式引入了随机浏览的概念,即有人上网无聊随机打开一些页面,点一些链接。一个页面的PageRank值也影响了它被随机浏览的概率。为了便于理解,这里假设上网者不断点网页上的链接,最终到了一个没有任何链出页面的网页,这时候上网者会随机到另外的网页开始浏览。

㈡ PR的算法介绍

PageRank
基本思想:如果网页T存在一个指向网页A的连接,则表明T的所有者认为A比较重要,从而把T的一部分重要性得分赋予A。这个重要性得分值为:PR(T)/C(T)
其中PR(T)为T的PageRank值,C(T)为T的出链数,则A的PageRank值为一系列类似于T的页面重要性得分值的累加。
PR(A)=(1-d)+d(PR(t1)/C(t1)+…+PR(tn)/C(tn))
A代表页面A
PR(A)则代表页面A的PR值
d为阻尼指数。通常认为d=0.85
t1…tn 代表链接向页面A的页面t1到tn
C代表页面上的外链接数目。C(t1)即为页面t1上的外链接数目
从计算公式可以看到,计算PR值必须使用迭代计算才能得到。
优点:是一个与查询无关的静态算法,所有网页的PageRank值通过离线计算获得;有效减少在线查询时的计算量,极大降低了查询响应时间。
不足:人们的查询具有主题特征,PageRank忽略了主题相关性,导致结果的相关性和主题性降低;另外,PageRank有很严重的对新网页的歧视。
Topic-Sensitive
(主题敏感的PageRank)
基本思想:针对PageRank对主题的忽略而提出。核心思想:通过离线计算出一个PageRank向量集合,该集合中的每一个向量与某一主题相关,即计算某个页面关于不同主题的得分。主要分为两个阶段:主题相关的PageRank向量集合的计算和在线查询时主题的确定。
优点:根据用户的查询请求和相关上下文判断用户查询相关的主题(用户的兴趣)返回查询结果准确性高。
不足:没有利用主题的相关性来提高链接得分的准确性。
Hilltop
基本思想:与PageRank的不同之处:仅考虑专家页面的链接。主要包括两个步骤:专家页面搜索和目标页面排序。 优点:相关性强,结果准确。 不足:专家页面的搜索和确定对算法起关键作用,专家页面的质量决定了算法的准确性,而专家页面的质量和公平性难以保证;忽略了大量非专家页面的影响,不能反映整个Internet的民意;当没有足够的专家页面存在时,返回空,所以Hilltop适合对于查询排序进行求精。

㈢ 网站的“pr”是什么意思,怎么提高“pr”

因为现在短视频的崛起,任何企业,任何工作室或者个人都需要剪辑大量的视频来包装品牌,发抖音,发朋友圈,发淘宝等自媒体渠道做展示。因为每天都要更新并发布新内容,所以剪辑师根本招不够,供需失衡就造成了剪辑师高薪水(无论是找工作还是自己在家里接私单,月收入轻松过万,两三万也是稀松平常。)【推荐一个免费“短视频剪辑后期”学习网址】:
www.huixueba.net/web/AppWebClient/AllCourseAndResourcePage?type=1&tagid=313&zdhhr-11y04r-1738352354462753267

而且剪辑这个技术并不需要高超的电脑技术,也不需要美术音乐造诣,基本都是固定套路,要什么风格的片要什么节奏,经过三四个月的培训可以轻松掌握。但凡有点电脑基础,会用鼠标拖拽,会点击图标,会保存,除非自己不想学,没有学不会的。但要学好学精,自制能力相对较弱的话,建议还是去好点的培训机构,实力和规模在国内排名前几的大机构,推荐王氏教育。

在视频剪辑这块,【王氏教育】是国内的老大,每个城市都是总部直营的连锁校区。跟很多其它同类型大机构不一样的是:王氏教育每个校区都是实体面授,老师是手把手教,而且有专门的班主任从早盯到晚,爆肝式的学习模式,提升会很快,特别适合0基础的学生。王氏教育全国直营校区面授课程试听【复制后面链接在浏览器也可打开】:
www.huixueba.com.cn/school/yingshi?type=2&zdhhr-11y04r-1738352354462753267

大家可以先把【绘学霸】APP下载到自己手机,方便碎片时间学习——绘学霸APP下载: www.huixueba.com.cn/Scripts/download.html

㈣ PR的算法

***********************************************************
* Function Name:
* i = IndexKMP();
*
* Parameters:
* char *S - 主串或文本串
* char *P - 模式串
* int pos - 起始查询的位置
*
* Return Value:
* int
*
* Description:
* 一般的kmp算法实现模式匹配.
************************************************************************/
int IndexKMP(const char* S, const char* P, int pos)
{ // 利用模式串P的next函数求P在主串S中第pos个字符之后的位置的KMP算法
// 其中, P非空, 1≤pos≤strlen(S)
assert(S && P && "Primary String S or Pattern P is NULL in IndexKMP()!\n");

int i = pos - 1, j = 0; // 从第1个字符开始,i为主串的索引,j为模式串的索引
int n = strlen(S), m = strlen(P); // 取串长度

if (n < m) return 0; // 隐含条件:模式串的长度必须小于或等于主串的长度

assert((pos >= 1) && (pos <= n) &&
"Parameter pos is not in the domain[1, strlen] in IndexKMP()!\n");

int *next = NULL; // 生成next数组空间
next = (int*)malloc((m + 1) * sizeof(int)); // m+1是为了防止在get_next()函数中内存访问溢出
assert(next && "Allocate memory for next[] failed in IndexKMP()!\n!");

/* Preprocessing */
get_next(P, m, next); // 创建next数组___next数组访问越界

#ifdef _DEBUG
printf("\nNext[]:\n");
for (int x = 0; x < m; ++x)
{
printf("%d\t", next[x]);
}
printf("\n");
#endif

#ifdef _DEBUG
int iCount = 0;
#endif
/* Searching */
while (i <= n - m + j && j < m)
{
if (S[i] == P[j] || j == -1)
{ // 不失配继续比较后续字符
#ifdef _DEBUG
if (j != -1) iCount++;
#endif
++i;
++j;
}
else
{ // 模式串向右移动(特点:S的i指针不回溯,从P的k位置开始匹配)
#ifdef _DEBUG
iCount++;
#endif
j = next[j];
}
}

free(next); next = NULL;

if (j == m)
{
#ifdef _DEBUG
printf("匹配时KMP算法的比较次数为:");
PRi(iCount);
#endif
return (i - m + 1); // 匹配成功
}
else
{
#ifdef _DEBUG
printf("失配时KMP算法的比较次数为:");
PRi(iCount);
#endif
return 0; // 匹配不成功
}
} // IndexKMP

热点内容
python写入数据库 发布:2025-05-16 23:19:11 浏览:698
修复系统时什么配置好 发布:2025-05-16 22:52:07 浏览:803
逆战脚本挂机 发布:2025-05-16 22:30:01 浏览:936
java随机产生数 发布:2025-05-16 22:25:52 浏览:256
java任务管理 发布:2025-05-16 22:17:02 浏览:572
安卓如何修改cpu 发布:2025-05-16 21:58:20 浏览:366
pythonainb 发布:2025-05-16 21:45:56 浏览:857
淘汰服务器可以做家用电脑吗 发布:2025-05-16 21:41:31 浏览:844
游程编码c语言 发布:2025-05-16 21:26:51 浏览:587
帝来哪个配置值得购买 发布:2025-05-16 21:12:29 浏览:463