混合切词
<p>杉果国庆最后一天,这里有你没发现的好游戏推荐
h:最后一天|||杉果|||这里|||有你|||没发|||好游|||推荐
j:国庆|||最后|||一天|||这里|||发现|||游戏|||推荐</p>
<p>我报道︱大家各种积分都在兑换奖品,你知道汉阴党员积分制兑换什么吗?
h:你知道|||我报|||大家|||各种|||积分|||兑换|||奖品|||汉阴|||党员|||什么
j:报道|||大家|||各种|||积分|||兑换|||奖品|||知道|||汉阴|||党员|||什么</p>
<p>腾讯爱奇艺优酷20多部网剧集体扑街,《白夜追凶》之后再无爆款?
h:白夜追凶|||爱奇艺|||腾讯|||优酷|||20|||多部|||网剧|||集体|||扑街|||之后
q:腾讯|||20|||多部|||剧集|||集体|||扑街|||白夜|||追凶|||之后</p>
<p>《无敌破坏王2》不够无敌,“圈地自萌”的迪士尼无缘10亿+
h:无敌破坏王2|||圈地自萌|||迪士尼|||10亿|||不够|||无敌|||无缘
q:迪士尼|||无敌|||破坏|||不够|||圈地|||无缘|||10</p>
<p>12星座暗恋你的人会主动表白吗?
h:12星座|||暗恋|||人会|||主动|||表白
q:12|||星座|||暗恋|||会主|||主动|||表白</p>
<p>玩过《我的世界》中国版,我想今后玩家可能都不会再玩盗版了
h:我的世界|||玩过|||中国|||我想|||今后|||玩家|||可能|||不会|||盗版
q:世界|||中国|||今后|||玩家|||可能|||不会|||盗版</p>
<p>聪明的女人最好命
h:聪明的|||女人|||最好
q:聪明|||女人|||最好</p>
<p>新兵下连不适应怎么办?这6个锦囊拿走不谢!
h:怎么办?|||新兵|||下连|||不适|||锦囊|||拿走|||不谢
q:怎么办|||新兵|||不适|||适应|||怎么|||锦囊|||拿走</p>
<p>绝地求生又要凉凉?玩家最高在线跌破百万,海岛图还被改的面目全非
h:绝地求生|||面目全非|||凉凉|||玩家|||最高|||在线|||跌破|||百万|||海岛
q:面目全非|||绝地|||求生|||凉凉|||玩家|||最高|||在线|||跌破|||破百|||百万</p>
<p>还在等什么?薛之谦带你抢购618万元免单机会
h:618万|||什么?|||薛之谦|||还在|||抢购|||免单|||机会</p>
<p>ApplePay不是一种支付技术而是一个生态圈
h:applepay|||生态圈|||不是|||一种|||支付|||技术|||而是|||一个
q:applepay|||生态圈|||不是|||一种|||支付|||技术|||而是|||一个|||生态</p>
<p>注意!这里有网文拍烂片的5个大坑
h:注意!|||这里|||网文|||烂片|||大坑
q:注意|||这里|||网文|||烂片|||大坑</p>
<p>《千里江山图》后,故宫历代青绿山水画特展《江山秋色图》接棒
h:千里江山图|||江山秋色图|||青绿山水|||故宫|||历代|||特展|||接棒
q:山水画|||千里|||江山|||故宫|||历代|||青绿|||绿山|||山水|||特展|||秋色</p>
<p>两周100万人参与,新增40万用户,拆解支付宝小程序运营招式
h:100万|||40万|||支付宝|||小程序|||两周|||人参|||新增|||用户|||拆解|||运营
q:100|||支付宝|||两周|||人参|||参与|||新增|||40|||用户|||拆解|||支付</p>
<p>第248期|真迹只能被认知,无法被证明
h:第2|||48|||真迹|||只能|||认知|||无法|||证明</p>
<p>爱上轻熟女,让男人更享受生活
h:爱上|||轻熟|||让男|||享受|||生活
j:爱上--轻--熟女--,--让--男人--更--享受--生活
Q:爱--上--轻--熟女------让--男人--更--享受--生活</p>
<p>是时候和孩子在2017年到来前,一起做个总结了 词根问题
是时候|||017|||孩子|||在2|||到来|||一起|||做个|||总结 在2是一个对象</p>
<p>为什么你总是无法提高自己的情商?
h:为什么|||总是|||无法|||提高|||自己|||的情</p>
<p>修改的代码
PandoraSearch\SearchAndRecommentdation\SentenceSegmentation\MixedSegmentation.py</p>
<pre><code>
def computeBlockScore(terms):
scoresum = 0.0
counter = 0.0
temp_li=[]
for t in terms:
text = t.getRawText()
if re.match(mapManager.pattern,text):
continue
if t.getConceptNumber() == 0 and t.getObjectNumber() == 0:
weight=1000
else:
weight = t.getWeight()
temp_li.append(text)
if weight > 20000:
scoresum += 2000
else:
tlen = len(text)
factor = computeWordLenScoreFactor(tlen)
scoresum += weight * factor
counter += 1
score=0.0
if counter > 0:
score= scoresum / counter
# print ','.join(temp_li),score
return score
def computeWordLenScoreFactor(word_len):
if word_len == 1:
return 0.1
elif word_len == 2:
return 1.0
elif word_len == 3:
return 1.2
else:
return 1.6
def mixedSentenceSegmentation(input_text, filterPSGList=None, isDebug=False):
145行
if len(or_term1) == 1 and get_primary_lang(or_term1[0].getRawText()) == 'english':
score1 = 2
score2 = 0
else:
score1 = computeBlockScore(or_term1)
print 'or_term1-->', score1
score2 = computeBlockScore(or_term2)
print 'or_term2-->',score2</code></pre>