??xml version="1.0" encoding="utf-8" standalone="yes"?>
F QXQ?F QXQ?S Qi=1Q?QMQ?br />׃每个个体的遗传概率是由其适应度大来控制的,所以这U调整适应度的Ҏ(gu)p够限制群体中个别个体的大量增加,从而维护了(jin)体的多h,q就?jin)一U小生境的进化环境?br />下面介绍一个基于小生境概念的遗传算法。这个算法的基本思想是:(x)首先两两比较体中各个个体之间的距离Q若q个距离在预先的距离L 之内的话Q在比较两者之间的适应度大,q对其中适应D低的个体施加一个较强的|函敎ͼ极大地降低其适应度,q样Q对于在预先指定的某一距离L之内的两个个体,其中较差的个体经处理后其适应度变得更差,他在后面的进化过E被淘汰的概率就极大。也是_(d)在距L 内将只存在一个优良个体,从而既l护?jin)群体的多样性,又得各个个体之间保持一定的距离Qƈ使得个体能够在整个约束的I间中分散开来,q样实C(jin)一U小生境遗传法?br />q个生境算法的描述如下Q?br />法 NicheGA Q?Q设|进化代数计数器Q随机生成M个初始群体P(yng)QtQ,q求出各个个体的适应度F Qi=1Q?QMQ。(2Q?依据各个个体的适应度对其进行降序排列,记忆前N个个体(N<MQ?(3) 选择法。对体P(yng)QtQ进行比例选择q算Q得到P QtQ。(4Q交叉选择。对选择的个体集合P QtQ?作单点交叉运,得到P QtQ。(5Q变异运。对P QtQ作均匀变异q算Q得到P QtQ。(6Q小生境淘汰q算。将W(5Q步得到的M个个体和W(2Q步所记忆的N个个体合q在一P得到一个含有M+N 个个体的新群体;对着M+N个个体,按照下式得到两个个体x 和x 之间的v明距:(x)|| x - x ||= ( )当|| x - x ||<LӞ比较个体x 和个体x 的适应度大,q对其中适应度较低的个体处以|函敎ͼ(x) Fmin(x Qx )=PenaltyQ?Q依据这M+N个个体的新适应度对各个个体q行降序排列Q记忆前N个个体。(8Q终止条件判断。若不满终止条Ӟ则:(x)更新q化代数记忆器t t+1Q?q将W(7Q步排列中的前M个个体作为新的下一代群体P(yng)(t),然后转到W(3Q步Q若满l止条gQ则Q输?gu)结果,法l束?br />[例] Shubert 函数的全局最优化计算?br />min f(x , x )={ } { }
s.t. -10 x 10Qi=1Q?Q?br />上述函数共有760个局部最优点Q其中有18个是全局最优点Q全局最优点处的目标函数值是f Qx Q?x Q?-186.731?br />用上q小生境遗传法求解该例题时Q可用下式进行目标函数值到个体适应度的变换处理Q?br />FQx Q?x Q?
L=202Q二q制~码串长度,其中每个变量?0位二q制~码来表C)(j)
M=50
T=500
p =0.1
p =0.1
L=0.5(生境之间的距离参数)
Penlty=10 Q罚函数Q?br />使用上述参数q行?0ơ,试算Q每ơ都可得到许多全局最优解下表为其中一ơ运所得到的最好的18个个体。从该表可以看出Q从生境的角度来数Q该法得到?jin)一个较好的l果。上q算法的特点保证?jin)在一个函数峰内只存在一个较优的个体Q这h一个函数峰是一个小生境?br />Z生境遗传算法的Shubert函数优化法计算l果
个体标号 x x fQx Q?x Q?br />1 5.4828 4.8581 -186.731
2 5.4830 -7.7083 -186.731
3 4.8581 5.4831 -186.731
4 4.8581 -7.0838 -186.731
5 -4.4252 -7.4983 -186.731
6 -7.0832 -7.0838 -186.731
7 5.4827 -1.4249 -186.731
8 0.8580 5.4831 -186.731
9 4.8580 -0.8009 -186.730
10 -0.8009 -7.7084 -186.730
11 -0.8009 4.8581 -186.730
12 -7.7088 -0.7999 -186.730
13 -7.7088 -7.0831 -186.730
14 -1.4256 -0.8009 -186.730
15 -0.8011 -1.4252 -186.730
16 -7.7075 5.4834 -186.730
17 -7.7088 4.8579 -186.730
18 -7.0825 -1.4249 -186.730
下面再介l一U隔d生境技术的遗传法
隔离生境技术的基本概念?qing)进化策略依照自然界的地理隔L?遗传算法的初始体分ؓ(f)几个子群?子群体之间独立进?各个子群体的q化快慢?qing)规模取决于各个子群体的q_适应水^.׃隔离后的子群体彼此独?界限分明,可以对各个子体的进化过E灵zL制。生物界?竞争不仅存在于个体之?U群作ؓ(f)整体同样存在着竞争,适者生存的法则在种这一层次上同样适用.在基于隔ȝ生境技术中,是通过种的规模同种个体^均适应值相联系来实C胜劣汰、适者生存这一机制?子群体^均适应值高,则其体规模大,反之,体规模小.生物界在q化q程?适应环境的物U能得到更多的繁D机?其后代不断地增多,但这U增加不是无限制?否则׃(x)引v生态环境的p.在遗传算法中,体的M规模是一定的,Z(jin)保证体中物U的多样?必限制某些子体的规?U子体中所允许的最大规模ؓ(f)子群体最大允许规?maximum allowed scale),Cؓ(f)S .生物界中同样?x)出现某些物U因不适应环境数量逐渐减少,直至灭绝的现?在隔d生境机制?Z(jin)保持体的多h?有时需要有意识C护某些子体,使之不会(x)q早地被淘汰,q保持一定的q化能力.子群体的q化能力是和子群体的规模相联pȝ,要保证子体的进化能?必须规定每一子群体生存的最规?UCؓ(f)子群体最生存规?minimum live scale),Cؓ(f)S .在群体进化过E中,如果某一子群体在规定的代数内,持箋表现最?应该使这个子体灭绝,代之以搜索空间的新解,q一最劣子体灭绝的机?定义为劣U不z?the worst die).子群体在q化q程?如果出现两个子群体相似或相同的现?则去掉其中的一?代之以搜索空间的新解,q种{略UCؓ(f)同种互斥或种内竞?intraspecific competition).解群中出现的新的子群?在进化的初期往往无法同已l得到进化的其它子群体相竞争,如果不对此施加保?q些新解往往在进化的初期p淘汰?q显然是我们所不希望的.Z(jin)解决q个问题,必须Ҏ(gu)产生的解加以保护,q种保护新解的策略叫q弱保护(immature protection).子群体在q化q程?如果收敛到或接近局部最优解,?x)出现进化停滞的现?此时应当以某U概率将该子体L,代之以搜索空间的新解,此种{略UCؓ(f)新老更?the new superseding the old).在进化过E中,表现最优的个体q化为最优解的概率最?应当使它充分q化,故新老更替策略不能用于最优子体,q种做法UCؓ(f)优种保留(the best live).优种保留可以作用于最好的一个子体,也可以作用于最好的几个子群?
Z隔离生境技术的遗传法步骤
1)~码:针对具体问题,选择合适的~码Ҏ(gu),完成问题解空间向遗传法解空间的转化.
2)产生初始体:随机产生N个初始个?
3)初始体隔离:N个初始个体均分给K个子体,每个子群体含有的个体数均为N/K.
4)计算适应?计算体中所有个体的适应?q保存适应值最高的个体.
5)定子群体规?子群体的规模同子体的^均适应值相?子群体的q_适应D?其在下一代中拥有的个体就多;反之,在下一代中拥有的个体就?但数目必Lx大允许规模和最保护规模的限制,即第t+1代第k个子体的规模n (t+1)满S ≤n (t+1) ≤S .
定子群体规模的具体Ҏ(gu)如下,首先l每个子体都预分配S 个个?剩下的个体根据子体的^均适应值利用赌轮法选择,直到ȝ体数量辑ֈN为止.子群体的q_适应g般可单取为f (t)= (1)
式中f (t)为t代第k个子体的^均适应?f (t)为t代第k个子体中第i个个体的适应? n (t+1)为t代第k个子体的规?子群体kWt+1代的规模n (t+1)为:(x)
n (t+1)=N . f (t)/ Q?Q?br />子群体规模的定也可以根据其q_适应水^用赌轮法定.
6)保护解除判定:对群体中施加保护的群?q行保护解除判定,Ҏ(gu)保护解除条件的,撤除保护.
7)劣种不活判定:对解中没有保护而连l几代表现又最差的体,予以剔除q生等规模的新子群?
8)同种互斥判定:随机挑选出两个子群?依据某种原则判定其相似程?Ҏ(gu)相似条件的两个子群?L其中的一?产生同等规模的新?
9)新老更替判?判定解群中是否存在已l进化停滞的子群?如果?q行新老更?产生同等规模的新?但对包含最优个体的子群体要保留(最优保留机?.
10)重新计算适应?Ҏ(gu)产生的子体计算适应性?q施加幼׃护措?
11)子群体进?׃子群体的规模同其在群体中的^均表现水q相联系,故子体的规模是不断变化?
Ҏ(gu)公式(2)定的规?选择出子体的繁D个?利用交叉和变异算子生下一代解?
12)收敛性判?如果满收敛性条?或已l进化了(jin)规定的代?则结束进化过E?否则q回W?步?br />除了(jin)上面的还有下面几U常用的的小生境法Q?br />1 定性拥挤算?br />定性拥挤(Deterministic crowding, DCQ算法由Mahfoud 提出。该法属于拥挤法范畴Q采用子个体与父个体直接q行竞争的模式,竞争的内容包括适应值和个体之间的距R算法的q程如下Q?br />定性拥挤算法(重复G 代)(j)
重复下列步骤N/2ơ:(x)
Q?Q用攑֛的方式随机选择两个父个体p 和p ?br />Q?Q对其进行杂交和变异Q生两个个体c 和c ?br />Q?Q如果[d(p Qc )+d(p Qc )] [d(p Qc )+d(p Qc )]Q则
如果fQc Q?gt;fQp Q?则用c 代替p Q否则保留p ?br />如果fQc Q?gt;fQp Q,则用c 替换p Q否则保留p ?br />如果fQc Q?gt;fQp Q,则用c 替换p Q否则保留p ?br />如果fQc Q?gt;fQp Q,则用c 替换p Q否则保留p ?br />其中QN 是种规模,的dQiQjQ是个体i 和个体j 之间的距R?br />2 限制锦标赛算?br />限制锦标赛选择QRestricted tournament selection RTSQ算法由Harik 提出。该法属于拥挤法范畴Q采用了(jin)个体与种中其它个体q行竞争的模式,竞争的内容包括适应值和个体之间的距R该法的过E如下:(x)
限制锦标赛算法(重复G代)(j)
重复下列步骤N/2ơ:(x)
Q?Q 用有放回的方式随机选择两个父个体p 和p ?br />Q?Q 对其进行杂夹和变异Q生两个子个体c 和才c ?br />Q?Q 分别ؓ(f)c 和c从当前的U群中随机的选择出w个个体?br />Q?Q?不失一般性,设d 和d 分别是w个个体的中与c 和c 距离最q的两个个体?br />Q?Q?如果fQc Q?gt;fQd Q,则用c 替d 换,否则保留d ?br />如果fQc Q?gt;fQd Q,则用c 替换d Q否则保留d ?br />3多小生境拥挤法
多小生境拥挤法QMulti-niche crowdingQMNCQ由Cedeno提出。该法属拥挤算法的范畴Q采用种中的若q个体相互竞争的模式Q竞争的内容包括适应值和个体之间的距R竞争选择出的老个体被C体生的子个体替换。算法的q程如下Q?br />多小生境拥挤法Q重复G 代)(j)
重复下列步骤N/2ơ:(x)
Q?Q 用有放回的方式随机选父个体p ?br />Q?Q 从U群中随机选择C 个体作ؓ(f)p 的交配候选集Q从中选出与p 最接近的个体p ?br />Q?Q 对p 和p q行杂交和变异,产生两个个体c 和c ?br />Q?Q 分别ؓ(f)c 和c 从中当前U群中各随机选择出C 个体,每群个体包含w个个体?br />Q?Q 每一个体都选出一个与对应字个体距Lq的个体。这样就为每个个体生了(jin)C 个替换候选个体?br />Q?Q 不׃般性,设d 和d 是两个替换候选集中适应值最低的个体?br />Q?Q 用c 替换d Q用c 替换d ?br />Cedeno q给Z(jin)C Qw和C 的最优参数倹{C 应该在区间[2Q?]内,C 和w臛_应该两倍于用户希望扑ֈ的全局C数。该法的步?提出?jin)一中基于试探性的Ҏ(gu)的限制交配策略?br />4 标准适应值共享算?br />标准适应值共享算法(Standard fitness sharing SHQ由Goldberg 和Richardson 提出。该法属于适应值共享算法范_(d)事先需要给?gu)I间中小生境的半径,q假设解I间中峰半径均相同。算法的q程如下Q?br />标准的适应值共享算法(重复G 代)(j)
Q?Q 计种中个体之间的共享函数值shQd Q?br />shQd Q?
其中Q?是事先给出的峰半径,d 是个体i和个体j之间的距, 是控制共享函数Ş状的参数Q一般取 =1Q线形共享函敎ͼ(j)。两个个体之间共享函数D大,则两个个体越接近?br />Q?Q 计种中个体的小生境数m
m =
其中QN 是种规模。个体的生境数大Q则该个体周围绕着多其它个体?br />Q?Q 计种中个体׃n后的适应值f
f =f / m
Q?Q 用个体׃n后的适应D行选择Q杂交和变异出新的个体,生成C代种?br />Deb和Goldberg 在假设解I间中峰均匀分布q且峰半径相同的前提下,提出计算峰半径的计算公式。此外它们还提供?jin)一U基于峰半径的限制交配策略,从而保证所有的杂交均在同一物种q行Q确保了(jin)后代和父母的均属于同一生境。标准适应值共享算法计距ȝ旉复杂度ؓ(f)OQN Q?br />5 清除法
清除QClearingQ算法由Petrowski 提出。该法属于适应值共性算法范_(d)事先需要给?gu)I间的小生境半径 Q重要参敎ͼ(j)和小生境的容?Q次要参敎ͼ(j)Qƈ假设解空间中峰值半径均相同。算法的q程如下Q?br />清除法QGQ?br />Q?Q 按照适应值对个体q行降序排列?br />Q?Q 将W一个体指定为第一个小生境中心(j)?br />Q?Q 从W二个个体开始顺序执行下列步骤到最后一个个体:(x)
Q?.1Q如果当前个体到所有已指定生境中?j)的距离均大于,则该个体被指定?f)一个新的小生境中心(j)。该个成Z胜者?br />Q?.2Q如果当前个体到某个已指定的生境中?j)的距离于Qƈ且该生境个数小于,则该个体加入到该生境中去,该小生境的个体L增加1。该个体成ؓ(f)优胜者?br />Q?.3Q其它个体均为失败者?br />Q?.4Q维持所有优胜者的适应度不变,所有失败者的适应值置??br />Q?Q用个体修改后的适应D行选择Q杂交和变异出新个体Q生成新一代种?br />清除法计算距离的时间复杂度为OQkNQ,其中k是该法l持的小生境数量。如果将优胜者的生境数看ؓ(f)一Q而将p|者的生境看作无I大Q则清除法也可看作标准适应值共享算法的改进?br />6 l合适应值共享的自适应k均Dcȝ?br />l合适应值共享的自适应法k均Dcȝ法(Adaptive k-mean clustering with fitness sharingQ算法由Yin 和German提出。该法属于适应值共性算法范_(d)事先需要给?gu)I间中小生境中新建的最距?和小生境中的个体到该生境中?j)之间的最大距?。解I间中峰半径可能不相同。算法的q程如下Q结合适应值共享的自适应k均值均cȝ法(重复G代)(j)
Q?Q 按照适应值对个体q行降序排列?br />Q?Q? 产生在[1QN]之间的随机整数kQ初始小生境个数Q?br />Q?Q 将前k个个体分别放入不同的生境中q成为小生境中心(j)。确保所?生境中?j)间距离大?Q如果不能满一条gQ则合ƈ生境,新的生境中?j)就是该生境中所有个体的中心(j)?br />Q?Q 对于其它N-k个个体中的每一个,计算其与当前所有想生境中心(j)之间 的距R如果距d?Q则生成新的生境,该个体成为新生境的中心(j)。否则将该个体安排到距离最q的生境中厅R据需要确保所有小生境中心(j)间的距离均大?Q如果不能满一条gQ则需要合q小生境?br />Q?Q 所有个体均被安|完毕后Q固定小生境的中?j),所有个体按照最?
距离原则安排到最q的生境中厅R?br />Q?Q 计计种个体的生境数m
m =n - n Qd /2 Q?若x C
其中Qn 是第c个小生境中包含个个体LQd 是个体i与它归属的小生境中心(j)之间的距,x 是第i个个体,C Wc 个小生境的个体基Q?是控制函数Ş状的参数Q通常 =1?br />Q?Q 用公式计算个体׃n后的适应倹{?br />Q?Q 用个体׃n后的适应D行选择Q杂交和变异出新的个体,生成C 代个体种?br />l合适应值共享的自适应性k均Dcȝ法计距ȝ旉复杂度ؓ(f)OQKnQ?br />7 动态小生境׃n法
动态小生境׃n方法(Dynamic niche sharingQ是由Miller和Shaw 提出。该法属于适应值共享算法范_(d)事先需要给?gu)I间中小生境的半?和小生境的数量k。算法的q程如下Q?br />动态小生境׃n法Q重复G代)(j)
Q?Q 按照适应值对个体q行降序排列?br />Q?Q 将W一个个体指定ؓ(f)W一个小生境中心(j)?br />Q?Q 从W二个个体开始顺序执行下列步骤到最后一个个体:(x)
Q?.1Q如果当前个体与所有已指定的小生境中心(j)之间的距d?Q而且已指定的生境数量小于kQ则形成一个新的小生境Q该个体成ؓ(f)新小生境的中?j)?br />Q?.2Q如果当前个体与所有小生境中心(j)之间的距d大于 Q而且已指定的生境数量不于kQ则该个体成为独立个体?br />Q?Q?对于那些属于某个生境的个体Q其生境数是它所属的生境中个体的数量。对于那些独立个体,采用公式计算生境数?br />Q?Q?用公式计个体共享后的适应倹{?br />Q?Q?用共享后的适应D行选择Q杂交和变异出新的个体,生成C代种。动态小生境׃n法计算距离的时间复杂度为OQKnQ?br />8 自适应生境算?br />自适应生境算法(Adaptive nickingQ由Goldberg ?Wang 提出。该法属于适应值共享算法范_(d)事先需要给?gu)I间中小生境的半?和小生境的数量k。算法包含两个分别被UCؓ(f)֮和商家的个体,利用q两个个体群的共同演化实现多C化的目的。顾客群cM于其它适应值共享算法中的种,而商家群则代表搜索空间中峰的集合。商家群的个体数量k略大于其它适应值共享算法中的小生境?wi)立功能。顾客群中的个体的适应g其它适应值共享算法中个体的适应值相同,而商家群中的个体的适应值是属于该商家所有顾客的适应g和?br />法需要首先在搜烦(ch)I间中随机放|商家群的个体,其余的过E如下;
自适应生境算法(重复G 代)(j)
Q?Q 将每一个顾客群中的个体都安排到最q的商家中去?br />Q?Q 计所有顾客的生境数Q其归属的商家所拥有的顾客数量)(j)?br />Q?Q 用公式计算֮的个体׃n后的适应倹{?br />Q?Q 用֮中个体׃n后的适应值尽?j)选择Q杂交和变异出新的个体,生成C代顾客群?br />Q?Q 顺序选择每一个商家群中的个体q对其进行变异操作以产生新的商家。如果新商家的适应值比老商家的适应高,而且与其它商家之间的距离均小于,则新商家代替老商家。否则进行另外一ơ变异操作,直到产生可以替换的新商家或变异操作的ơ数过指定的最大变异ؓ(f)止?br />自适应生境算法计距ȝ旉的复杂度为O(Kn).
from: http://qbwh.com/viewthread_123913.html
内容摘要Q?BR>目前中文|站在整个互联网中的影响q比较小Q这主要是由于中文网站M的水qI技术上Q内容上Q都q相对落后造成的,最主要的表现有Q?BR>
SEO的目的是通过一些简单的{略Q让|站自n的水q_互联|中有一个真实的体现?BR>|站l构设计中面向搜索引擎的优化注意事项包括Q?/P>
Q注意:(x)本网站设计本w就利用?jin)其中一些方法)(j)?Google{新一带搜索引擎的优势之一在于不仅索引量很大,而且q将最好的l果排在搜烦(ch)l果的最前面Q具体的原理可以参?A >Google の秘?- PageRank 徹底解説一文,PageRank单的说类gU技论文中的引用机制Q谁的论文被引用ơ数多,谁就是权威。在互联|上PageRank是Z|页中相互链接关pȝ分析得出的?BR>
此外Q从计算Ҏ(gu)角度阐述PageRank机制q有q篇文章Q?A >http://pr.efactory.de/里面有更详细的PageRank法说明和各U清晰的型个案分析Q?BR>
比如Q子中D条的重要?BR>B <=> A => C
Vs
B <=> A <=> C Q好Q?BR>
面数量因素Q?BR>B <=> A <=> C
Vs
F <=\ /=> G
B <=> A <=> C Q好Q?BR>D <=/ \=> E
一个意想不到的l论Q?BR>(B <=> A <=> C) ( E <=> D <=> F)
Vs
(B <=> A <=> C) <=> ( E <=> D <=> F)
PageRank升高的只是被链接?个首A(ch)和DQ而网站子面的PageRankq_?x)略有下降。同Ӟ(x)一个网站进入Google的烦(ch)引量大其受cM因素影响小?BR>PageRank不对U的面互链Q?BR>Google?x)用BadRank之类的算法进行纠正,而且一个网늝有来自“与其自w不相称”的高PageRank站点的链接,而自w又~少_数量和质量的反相链接的话Q其PageRank?x)自动降低?f)0QA(pr=7) <=> B(pr=0)
单的说就是:(x)偶尔要被权威站点反相链接不算敎ͼ要被_多的权威站点引用才能提高自n|页的PageRank?BR>Web链分析法lDQ南京大学论文)(j) 更多论文可以通过搜烦(ch)Q“filetype:pdf google pagerank anchor text bayesian”得?/P>
在互联网的vz中Q最重要的就是互联互通,不被其他|站引用的网站就是“信息孤岛”。“酒好也怕藏的深”,也许q话说v来有点像垃圾邮gq告Q但事实是q样。所以如果做|站的目的不是孤芌赏,需要积极的推广自己的网站?SPAN style="FONT-WEIGHT: bold">
通过搜烦(ch)引擎推广自己需要注意以下几个方面:(x)
另外在推q自q站之前也?dng)R先需要了(jin)解自q站目前在一些搜索引擎中的知名度Q原理非常简单,可以参?A >如何评h(hun)|站的h?/A>一文?/P>
|站推广只是手段Q如何突出内宏V让需要相关信息的用户能够快的找C的网站才是目的,PageRank高ƈ不代表像Yahoo!q样的门L(fng)点就能在所有搜索结果中排名靠前Q因为搜索引擎的l果是搜索关键词在页面中的匹配度和页面的PageRank相结合的排名l果。因此第二个要点Q如何突出关键词?BR>
HTTP/1.1 200 OK Date: Wed, 28 Jan 2004 12:58:54 GMT Server: Apache/1.3.29 (Unix) mod_gzip/1.3.26.1a PHP/4.3.4 X-Powered-By: PHP/4.3.4 Set-Cookie: phpBB_data=a%3A0%3A%7B%7D; expires=Thu, 27-Jan-2005 12:58:54 GMT; path=/; Set-Cookie: phpBB_sid=09f67a83ee108ecbf11e35bb6f36fcec; path=/; Content-Encoding: gzip Cache-Control: private, pre-check=0, post-check=0, max-age=0 Expires: 0 Pragma: no-cache Connection: close Content-Type: text/htmlZ(jin)避免隐私问题QGooglebot可以通过寚w面http header中的session id和session cookieq行一些甄别,q样很多需要认证信息的论坛内容无法进入烦(ch)引了(jin)?BR>M上说Google喜欢新的Q静(rn)态的内容。因此无Z效率上讲q是方便搜烦(ch)引擎收录Q用内容发布系l将|站内容发布成静(rn)态网都是非常必要的Q从某种E度上说google friendly = anonymous cache friendly?BR>比如Qhttp://www.chedong.com/phpMan.php/man/intro/3
|站设计不仅仅只是被动的q合搜烦(ch)引擎的烦(ch)引,更重要是充分利用搜烦(ch)引擎带来的流量进行更深层ơ的用户行ؓ(f)分析。目前,来自搜烦(ch)引擎关键词统计几乎是各种WEB日志分析工具的标准功能,怿商业日志l计工具在这斚w应该?x)有更强化的实现。WEB日志l计q个功能如此重要Q以至于新的RedHat 8中已l将日志分析工具webalizer作ؓ(f)标准的服务器配置应用之一?BR>
以Apache/webalizerZQ具体的做法如下Q?通过q样讄webalizerl计时就?x)将HTTP_REFERER中来自搜索引擎的URL中的keyword提取出来Q比如:(x)所有来?google.com链接中,参数q的值都被作ؓ(f)关键词统计下来:(x)Q从汇ȝ计结果中Q就可以发现用户是根据什么关键词扑ֈ你的ơ数Q以?qing)找C的用h感兴的是那些关键词{,q一步的Q在webalizer中有讄q可以将l计l果倒出成CSV格式的日志,便于以后导入数据库进行历史统计,做更深层ơ的数据挖掘{?/P>
以前通过WEB日志的用户分析主要是单的Z日志中的讉K旉/IP地址来源{,很明显,Z搜烦(ch)引擎关键词的l计能得到的分析l果更丰富、更直观。因此,搜烦(ch)引擎服务的潜在商业h(hun)值几乎是不言而喻的,也许q也?A >Yahoo! Altavista{传l搜索引擎网站在门户模式后重新开始重视搜索引擎市(jng)场的原因Q看?A >Google的年度关键词l计q道了(jin)Q在互联|上有谁比搜索引擎更?jin)解用户对什么更感兴呢Q?BR>
L(fng)本站的反盔R接统计:(x)http://www.chedong.com/log/2003_6.log
需要注意的是:(x)׃Google针对Windows 2000中的IE使用的是UTF-8方式的编码,因此很多l计有时候需要在UTF-8方式下查看才是正字W显C。从l计中能够感受到Q在使用水^比较高的IT开发h员中Google已经成ؓ(f)最常用的搜索引擎。而用百度的用户也已l大大超q了(jin)传统的搜狐,新浪{门L(fng)点,因此传统门户|站在搜索引擎上的优势将是非常脆q。而从技术的发展势来看Q以后还?x)有更多的利用互联网媒体做更深层ơ数据挖掘的服务模式出现Q?BR>
转蝲自cnblog.org——“突发”文字可能揭C社?x)趋?/SPAN>
在“新U学家?New Scientist)在线杂志上,公布?jin)康奈尔大学的一个新研究成果Q引人注目,也许与Google 收购Pyra 的动机有兟?/SPAN>
q所大学的计机U学?Jon Klenberg 开发了(jin)一个计机法Q能够识别一文章中某些文字的“突发”增长,而且他发玎ͼq些“突发”增长的文字可以用来快速识别最新的势和热炚w题,因此能够更有效地{选重要信息。过d多搜索技术都采用?jin)简单计文?词组出现频率的方法,却忽略了(jin)文字使用增加的速率?/SPAN>
Jon 特别指出Q这U方法可以应用到大量Weblog上,以跟t社?x)趋势,q对商业应用也很有潜力。例如,q告商可以从成千上万的个人Blog 中快速找到潜在的需求风。而且只要Blog 覆盖话题范围_大(实际上发展趋势确实如此)(j)Q这Ҏ(gu)术对政治、社?x)、文化和l济{领域也都会(x)有实际意义了(jin)?/SPAN>
虽然Google 新闻的内部算法至今没有公开Q但是h们猜这U完全由机器所搜集的头条新d当不是Google搜烦(ch)引擎中惯用的鸽子法Q很可能与这U“突发”判断算法有兟뀂如此说来,Google收购Blog工具供应商的丑֊实q有更深层次的远见了(jin)?/SPAN>
- NewScientist.com news,
- q没有写完这些介l,?SlashDot 上也看到?jin)很多有兌个发现的讨?/SPAN>
输出cMQ?BR>
[1]Google Free Search _______________________________ Google Search
(_) Search WWW (_) Search chedong.com
??[2]站点地图 / Site Map [3]?a?/ Guest Book [4]意见反馈 /
Feed Back
...
References
Visible links
1. http://www.google.com/services/free.html
2. http://www.chedong.com/sitemap.html#sitemap
3. http://www.chedong.com/guestbook/
4. http://www.chedong.com/formmail.htm
...
Hidden links:
50. http://www.chedong.com/bbcweb/
...
搜烦(ch)引擎的宗旨在于提取互联网中质量最好的内容提供l用PM有利于帮助用戯得相对公正,优质内容的策略都是搜索引擎追求目标。PageRank是一个非常好的策略,但是q所有策略都是基于非常复杂的法?BR>从搜索引擎看来什么是互联|中“好”的内容呢?
参考资料:(x)
面向Google搜烦(ch)引擎的网站设计优?BR>http://www.google-search-engine-optimization.com/
如何评h(hun)一个网站的人气
http://www.chedong.com/tech/link_pop_check.html
如何提高|站在Google中的排名——面向搜索引擎的q告模式
http://www.chedong.com/tech/google_ads.html
如何提高|站在Google中的排名——面向搜索引擎的|站链接设计
http://www.chedong.com/tech/google_url.html
Google不断改进相应的算法:(x)HillTop
Hilltop: A Search Engine based on Expert Documents
Google の秘?- PageRank 徹底解説
http://www.kusastro.kyoto-u.ac.jp/~baba/wais/pagerank.html
q篇文章是在?Google PageRank"的时候查到的Q这文章不仅有一个算法说明,也是一个Google的weblogQ记录了(jin)很多关于Google的新d一些市(jng)场动态信息?BR>Google 的秘? PageRank d解说 中文?/A>
更详l的PageRank法说明Q?BR>http://pr.efactory.de/
WEB日志l计工具AWStats的用:(x)增加?jin)Unicode的解码和中国主要门户搜烦(ch)的定?/A>
http://www.chedong.com/tech/awstats.html
Robots的说明:(x)
http://bar.baidu.com/robots/
http://www.google.com/bot.html
搜烦(ch)引擎通过一U程序robotQ又UspiderQ,自动讉K互联|上的网ƈ获取|页信息。?zhn)可以在(zhn)的网站中创徏一个纯文本文g robots.txtQ在q个文g中声明该|站中哪些内容可以被robot讉KQ哪些不可以?/P>
反Google站点Q观点也很有?BR>http://www.google-watch.org/
关于Google的WebLog
http://google.blogspace.com/
搜烦(ch)引擎相关论坛
http://searchengineforums.com/
http://searchenginewatch.com
http://www.webmasterworld.com/
1 引言
兌规则挖掘发现大量数据中项集之间有的兌或相兌pR它在数据挖掘中是一个重要的NQ最q几q已被业界所q泛研究?/FONT>
兌规则挖掘的一个典型例子是购物分析。关联规则研I有助于发现交易数据库中不同商品Q项Q之间的联系Q找出顾客购买行为模式,如购C(jin)某一商品对购买其他商品的影响。分析结果可以应用于商品货架布局、货存安排以?qing)根据购买模式对用户q行分类?/FONT>
Agrawal{于1993q首先提Z(jin)挖掘֮交易数据库中w间的兌规则问题[AIS93b]Q以后诸多的研究人员对关联规则的挖掘问题q行?jin)大量的研究。他们的工作包括对原有的法q行优化Q如引入随机采样、ƈ行的思想{,以提高算法挖掘规则的效率Q对兌规则的应用进行推qѝ?/FONT>
最q也有独立于Agrawal的频集方法的工作[HPY00]Q以避免频集Ҏ(gu)的一些缺P探烦(ch)挖掘兌规则的新Ҏ(gu)。也有一些工作[KPR98]注重于对挖掘到的模式的h(hun)D行评伎ͼ他们提出的模型徏议了(jin)一些值得考虑的研I方向?/FONT>
2 基本概念
设I={i1,i2,..,im}是项集,其中ik(k=1,2,?m)可以是购物篮中的物品Q也可以是保险公司的֮。设d相关的数据D是事务集Q其中每个事务T是项集,使得TÍI。设A是一个项集,且AÍT?/FONT>
兌规则是如下Ş式的逻辑蕴涵QA Þ BQAÌI, AÌIQ且A∩B=F。关联规则具有如下两个重要的属性:(x)
支持? P(A∪B)Q即A和Bq两个项集在事务集D中同时出现的概率?/FONT>
|信? P(B|A)Q即在出现项集A的事务集D中,wB也同时出现的概率?/FONT>
同时满最支持度阈值和最置信度阈值的规则UCؓ(f)则。给定一个事务集DQ挖掘关联规则问题就是生支持度和可信度分别大于用户l定的最支持度和最可信度的关联规则,也就是生强规则的问题?/FONT>
3 兌规则U类
1) Z规则中处理的变量的类别,兌规则可以分ؓ(f)布尔型和数值型?/FONT>
布尔型关联规则处理的值都是离散的、种cd的,它显CZ(jin)q些变量之间的关pR?/FONT>
数值型兌规则可以和多l关联或多层兌规则l合hQ对数值型字段q行处理Q将其进行动态的分割Q或者直接对原始的数据进行处理,当然数值型兌规则中也可以包含U类变量?/FONT>
2) Z规则中数据的抽象层次Q可以分为单层关联规则和多层兌规则?/FONT>
在单层关联规则中Q所有的变量都没有考虑到现实的数据是具有多个不同的层次的?/FONT>
在多层关联规则中Q对数据的多层性已l进行了(jin)充分的考虑?/FONT>
3) Z规则中涉?qing)到的数据的l数Q关联规则可以分为单l的和多l的?/FONT>
在单l关联规则中Q我们只涉及(qing)到数据的一个维Q如用户购买的物?/FONT>
在多l关联规则中Q要处理的数据将?x)涉及(qing)多个维?/FONT>
4 法lD
4.1 l典的频集算?/FONT>
Agrawal{于1994q提Z(jin)一个挖掘顾客交易数据库中项集间的关联规则的重要Ҏ(gu) [AS94a, AS94b]Q其核心(j)是基于两阶段频集思想的递推法。该兌规则在分cM属于单维、单层、布?yu)(dng)关联规则?/FONT>
所有支持度大于最支持度的项集称为频J项集,U频集?/FONT>
4.1.1 法的基本思想
首先扑և所有的频集Q这些项集出现的频繁性至和预定义的最支持度一栗然后由频集产生强关联规则,q些规则必须满最支持度和最可信度?/FONT>
挖掘兌规则的M性能q一步决定,W二步相对容易实现?/FONT>
4.1.2 Apriori核心(j)法分析
Z(jin)生成所有频集,使用?jin)递推的方法。其核心(j)思想要描q如下:(x)
(1) L1 = {large 1-itemsets};
(2) for (k=2; Lk-1¹F; k++) do begin
(3) Ck=apriori-gen(Lk-1); //新的候选集
(4) for all transactions tÎD do begin
(5) Ct=subset(Ck,t); //事务t中包含的候选集
(6) for all candidates cÎ Ct do
(7) c.count++;
(8) end
(9) Lk={cÎ Ck |c.count³minsup}
(10) end
(11) Answer=∪kLk;
首先产生频繁1-wL1Q然后是频繁2-wL2Q直到有某个rg得Lr为空Q这时算法停止。这里在Wkơ@环中Q过E先产生候选k-w的集合CkQCk中的每一个项集是对两个只有一个项不同的属于Lk-1的频集做一?k-2)-q接来生的。Ck中的w是用来生频集的候选集Q最后的频集Lk必须是Ck的一个子集。Ck中的每个元素需在交易数据库中进行验证来军_其是否加入LkQ这里的验证q程是算法性能的一个瓶颈。这个方法要求多ơ扫描可能很大的交易数据库,卛_果频集最多包?0个项Q那么就需要扫描交易数据库10遍,q需要很大的I/O负蝲?/FONT>
可能产生大量的候选集,以及(qing)可能需要重复扫描数据库Q是Apriori法的两大缺炏V?/FONT>
4.1.3 法的优?/FONT>
Z(jin)提高法的效率,Mannila{引入了(jin)修剪技术来减小候选集Ck的大[MTV94]Q由此可以显著地改进生成所有频集算法的性能。算法中引入的修剪策略基于这样一个性质Q一个项集是频集当且仅当它的所有子集都是频集。那么,如果Ck中某个候选项集有一?k-1)-子集不属于Lk-1Q则q个w可以被修剪掉不再被考虑Q这个修剪过E可以降低计所有的候选集的支持度的代仗?/FONT>
4.2 改进的频集算?/FONT>
4.2.1散列
该算法由Park{在1995q提出[PCY95b]。通过实验发现L频繁w的主要计是在生成频J?wL2上,Park是利用q个性质引入散列技术来改进产生频繁2w的方法?/FONT>
其基本思想是:(x)当扫描数据库中每个事务,由C1中的候?w产生频繁1wL1ӞҎ(gu)个事务生所有的2wQ将它们散列到散列表l构的不同桶中,q增加对应的桶计敎ͼ在散列表中对应的桶计C于支持度阈值的2w不可能是频繁2wQ可从候?w中删除,q样可大大压羃?jin)要考虑?w?/FONT>
4.2.2 事务压羃
Agrawal{提出压~进一步P代扫描的事务数的Ҏ(gu)[AS94b, HF95]。因Z包含MKw的事务,不可能包含Q何(K+1Q项集,可对q些事务加上删除标志,扫描数据库时不再考虑?/FONT>
4.2.3 杂凑
一个高效地产生频集的基于杂凑的法由Park{提出[PCY95a]。通过实验我们可以发现L频集主要的计是在生成频J?-wLk上,Park{就是利用了(jin)q个性质引入杂凑技术来改进产生频繁2-w的方法?/FONT>
4.2.4 划分
Savasere{设计了(jin)一个基于划分的法[SON95]Q这个算法先把数据库从逻辑上分成几个互不相交的块,每次单独考虑一个分块ƈ对它生成所有的频集Q然后把产生的频集合qӞ用来生成所有可能的频集Q最后计这些项集的支持度。这里分块的大小选择要得每个分块可以被攑օdQ每个阶D只需被扫描一ơ。而算法的正确性是由每一个可能的频集臛_在某一个分块中是频集保证的。上面所讨论的算法是可以高度q行的,可以把每一分块分别分配l某一个处理器生成频集。生频集的每一个@环结束后Q处理器之间q行通信来生全局的候选k-w。通常q里的通信q程是算法执行时间的主要瓉Q而另一斚wQ每个独立的处理器生成频集的旉也是一个瓶颈。其他的Ҏ(gu)q有在多处理器之间共享一个杂凑树(wi)来生频集。更多的关于生成频集的ƈ行化Ҏ(gu)可以在文献[AS96]中找到?/FONT>
4.2.5 选样
基本思想是在l定数据的一个子集挖掘。对前一遍扫描得到的信息Q仔l地l合分析Q可以得C个改q的法QMannila{先考虑?jin)这一点[MTV94]Q他们认为采h发现规则的一个有效途径。随后又由Toivonenq一步发展了(jin)q个思想[Toi96]Q先使用从数据库中抽取出来的采样得到一些在整个数据库中可能成立的规则,然后Ҏ(gu)据库的剩余部分验证这个结果。Toivonen的算法相当简单ƈ显著地减了(jin)I/O代h(hun)Q但是一个很大的~点是产生的结果不_Q即存在所谓的数据扭曲(data skew)。分布在同一面上的数据时常是高度相关的Q可能不能表C整个数据库中模式的分布Q由此而导致的是采?%的交易数据所p的代价可能同扫描一遍数据库相近?/FONT>
4.2.6 动态项集计?/FONT>
Brin{hl出该算法[BMUT97]。动态项集计数技术将数据库划分ؓ(f)标记开始点的块。不象Apriori仅在每次完整的数据库扫描之前定新的候选,在这U变形中Q可以在M开始点d新的候选项集。该技术动态地评估以被计数的所有项集的支持度,如果一个项集的所有子集以被确定ؓ(f)频繁的,则添加它作ؓ(f)新的候选。结果算法需要的数据库扫描比Apriori ?/FONT>
4.3 FP-?wi)频集算?/FONT>
针对Apriori法的固有缺PJ. Han{提Z(jin)不生候选挖掘频J项集的Ҏ(gu)—FP-?wi)频集算法[HPY00]。采用分而治之的{略Q在l过W一遍扫描之后,把数据库中的频集压羃q一频J模式树(wi)QF(tun)P-treeQ,同时依然保留其中的关联信息,随后再将FP-tree分化成一些条件库Q每个库和一个长度ؓ(f)1的频集相养I然后再对q些条g库分别进行挖掘。当原始数据量很大的时候,也可以结合划分的Ҏ(gu),使得一个FP-tree可以攑օd中。实验表明,FP-growth对不同长度的规则都有很好的适应性,同时在效率上较之apriori法有巨大的提高?/FONT>
4.4 多层兌规则挖掘
对于很多的应用来_(d)׃数据分布的分散性,所以很隑֜数据最l节的层ơ上发现一些强兌规则。当我们引入概念层次后,可以在较高的层ơ上q行挖掘[HF95, SA95]。虽然较高层ơ上得出的规则可能是更普通的信息Q但是对于一个用h说是普通的信息Q对于另一个用户却未必如此。所以数据挖掘应该提供这样一U在多个层次上进行挖掘的功能?/FONT>
多层兌规则的分c:(x)Ҏ(gu)规则中涉?qing)到的层ơ,多层兌规则可以分?f)同层兌规则和层间关联规则?/FONT>
多层兌规则的挖掘基本上可以沿用“支持度-可信度”的框架。不q,在支持度讄的问题上有一些要考虑的东ѝ?/FONT>
同层兌规则可以采用两种支持度策略:(x)
1) l一的最支持度。对于不同的层次Q都使用同一个最支持度。这样对于用户和法实现来说都比较的Ҏ(gu)Q但是弊端也是显然的?/FONT>
2) 递减的最支持度。每个层ơ都有不同的最支持度Q较低层ơ的最支持度相对较小。同时还可以利用上层挖掘得到的信息进行一些过滤的工作?/FONT>
层间兌规则考虑最支持度的时候,应该Ҏ(gu)较低层次的最支持度来定?/FONT>
4.5 多维兌规则挖掘
对于多维数据库而言Q除l内的关联规则外Q还有一cdl的兌规则。例如:(x)
q龄QXQ?0...30”)(j) 职业QX,“学生”)(j)==> 购买(XQ“笔记本?sh)脑?
在这里我们就涉及(qing)C个维上的数据Q年龄、职业、购买?/FONT>
Ҏ(gu)是否允许同一个维重复出现Q可以又l分为维间的兌规则Q不允许l重复出玎ͼ(j)和合维兌规则Q允许维在规则的左右同时出现Q?/FONT>
q龄QXQ?0...30”)(j) 购买(XQ“笔记本?sh)脑? ==> 购买(XQ“打印机?
q个规则是混合l关联规则?/FONT>
在挖掘维间关联规则和混合l关联规则的时候,q要考虑不同的字D늧c:(x)U类型和数值型?/FONT>
对于U类型的字段Q原先的法都可以处理。而对于数值型的字D,需要进行一定的处理之后才可以进行[KHC97]。处理数值型字段的方法基本上有以下几U:(x)
1) 数值字D被分成一些预定义的层ơ结构。这些区间都是由用户预先定义的。得出的规则也叫做静(rn)态数量关联规则?/FONT>
2) 数值字D|据数据的分布分成?jin)一些布?yu)(dng)字Dc(din)每个布?yu)(dng)字D都表示一个数值字D늚区间Q落在其中则?Q反之ؓ(f)0。这U分法是动态的。得出的规则叫布?yu)(dng)数量关联规则?/FONT>
3) 数值字D被分成一些能体现它含义的区间。它考虑?jin)数据之间的距离的因素。得出的规则叫基于距ȝ兌规则?/FONT>
4) 直接用数值字D中的原始数据进行分析。用一些统计的Ҏ(gu)Ҏ(gu)值字D늚D行分析,q且l合多层兌规则的概念,在多个层ơ之间进行比较从而得Z些有用的规则。得出的规则叫多层数量关联规则?/FONT>
5 展望
对于兌规则挖掘领域的发展,W者认为可以在如下一些方向上q行深入研究Q在处理极大量的数据Ӟ如何提高法效率Q对于挖掘迅速更新的数据的挖掘算法的q一步研IӞ在挖掘的q程中,提供一U与用户q行交互的方法,用L(fng)领域知识l合在其中;对于数值型字段在关联规则中的处理问题;生成l果的可视化Q等{?/FONT>
参考文?/FONT>
[AIS93b] R. Agrawal, T. Imielinski, and A. Swami. Mining association rules between sets of items in large databases. Proceedings of the ACM SIGMOD Conference on Management of data, p.p. 207-216, May 1993.
[AS94a] R. Agrawal, and R. Srikant. Fast algorithms for mining association rules in large database. Technical Report FJ9839, IBM Almaden Research Center, San Jose, CA, Jun. 1994.
[AS94b] R. Agrawal, and R. Srikant. Fast algorithms for mining association rules. In Proc. 1994 Int. Conf. Very Large Databases(VLDB?4), Sep. 1994.
[AS96] R. Agrawal, and J. Shafer. Parallel mining of association rules: Design, Implementation, and Experience. IEEE Trans. Knowledge and data engineering, 8:962-969, Jan. 1996.
[BMUT97] S. Brin, R. Motwani, J. D. Ullman, and S. Tsur. Dynamic itemset counting and implication rules for market basket data. In ACM SIGMOD International Conference On the Management of Data, p.p. 255-264, May 1997.
[HF95] J, Han and Y. Fu. Discovery of multiple-level association rules from large databases. In Proc. 1995 Int. Conf. Very Large Databases(VLDB?5), p.p. 402-431, Sep. 1995.
[HPY00] J.Han,J.Pei, and Y.Yin.Mining. Frequent patterns without candidate generation. In Proc. 2000 ACM-SIGMOD Int. Conf. Management of Data (SIGMOD?0), p.p. 1-12, May 2000.
[KHC97] M. Kamber, J. Han, J. Chang. Metarule-guided mining of multi-dimensional association rules using data cubes. In Proc. 1997 Int. Conf. Khowledge Discovery and Data Mining(KDD?7), p.p. 207-210, Aug. 1997
[KPR98] J. Kleinberg, C. Papadimitriou, and P. Raghavan. Segmentation problems. Proceedings of the 30th Annual Symposium on Theory of Computing, ACM. Sep. 1998.
[MTV94] H. Mannila, H. Toivonen, and A. Verkamo. Efficient algorithm for discovering association rules. AAAI Workshop on Knowledge Discovery in Databases, p.p. 181-192, Jul. 1994.
[PCY95a] J. S. Park, M. S. Chen, and P. S. Yu. An effective hash-based algorithm for mining association rules. Proceedings of ACM SIGMOD International Conference on Management of Data, p.p. 175-186, May 1995.
[PCY95b] J. S. Park, M. S. Chen, and P. S. Yu. Efficient parallel data mining of association rules. 4th International Conference on Information and Knowledge Management, Baltimore, Maryland, Nov. 1995.
[SA95] R. Srikant, and R. Agrawal. Mining generalized association rules. Proceedings of the 21st International Conference on Very Large Database, p.p. 407-419, Sep.1995.
[SON95] A. Savasere, E. Omiecinski, and S. Navathe. An efficient algorithm for mining association rules in large databases. Proceedings of the 21st International Conference on Very Large Database, p.p. 432-443, Sep. 1995.
[Toi96] H. Toivonen. Sampling large databases for association rules. Proceedings of the 22nd International Conference on Very Large Database, Bombay, India, p.p. 134-145, Sep. 1996.
转自Q?A >http://www.dmresearch.net/survey/association_rule_survey.htm