• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      Web頁(yè)面?zhèn)€性化搜索系統(tǒng)設(shè)計(jì)

      2015-03-02 12:13:57董富江
      軟件導(dǎo)刊 2015年1期
      關(guān)鍵詞:關(guān)鍵字頁(yè)面個(gè)性化

      董富江

      摘要:提出一個(gè)Web頁(yè)面?zhèn)€性化搜索系統(tǒng)架構(gòu),給出了系統(tǒng)中用戶個(gè)性化信息存儲(chǔ)方法;設(shè)計(jì)了關(guān)鍵字個(gè)性化推薦和頁(yè)面排名個(gè)性化算法。

      關(guān)鍵詞:Web頁(yè)面;個(gè)性化搜索系統(tǒng);個(gè)性化排名算法;關(guān)鍵詞:個(gè)性化

      DOIDOI:10.11907/rjdk.143631

      中圖分類號(hào):TP311.5

      文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào)文章編號(hào):16727800(2015)001007002

      0 引言

      目前的搜索引擎大多不具備個(gè)性化信息搜索能力,因?yàn)椴煌挠脩糨斎胂嗤臋z索詞,所得到的搜索結(jié)果基本上也相同,原因是搜索引擎主要依賴于關(guān)鍵詞:索引方式查詢信息,這種方法對(duì)于復(fù)雜的層次化結(jié)構(gòu)特征信息或非結(jié)構(gòu)化信息力不從心。如何提高信息獲取的精度和效率,滿足用戶的個(gè)性化需求,是信息搜索領(lǐng)域重要的研究方向。本文基于開源搜索引擎Nutch設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)個(gè)性化搜索系統(tǒng),具有頁(yè)面?zhèn)€性化排名和關(guān)鍵詞:個(gè)性化推薦功能。

      1 系統(tǒng)架構(gòu)

      圖1是基于開源搜索引擎Nutch實(shí)現(xiàn)的一個(gè)個(gè)性化搜索系統(tǒng)框架,具有索引更新、索引刪除、查詢優(yōu)化、網(wǎng)絡(luò)蜘蛛、分詞、索引庫(kù)、Nutch Core等模塊。

      圖1 基于Nutch的個(gè)性化搜索系統(tǒng)架構(gòu)

      這幾個(gè)模塊中除Nutch Core模塊外,其它模塊都是需要實(shí)現(xiàn)或配置的。圖1中的實(shí)線箭頭表示模塊間的調(diào)用關(guān)系,虛線箭頭表示調(diào)用是通過修改配置文件實(shí)現(xiàn)的。其中個(gè)性化信息庫(kù)模塊是為了收集、儲(chǔ)存?zhèn)€性化信息,并利用其設(shè)計(jì)個(gè)性化搜索。為了實(shí)現(xiàn)個(gè)性化搜索,需要對(duì)Nutch的搜索模塊進(jìn)行修改,將修改后的模塊稱為搜索優(yōu)化模塊。Nutch默認(rèn)的分詞模塊是英文的,因此在Nutch中配置了IKAnalyzer中文分詞器,在網(wǎng)頁(yè)抓取和信息檢索中實(shí)現(xiàn)中文分詞。

      用戶的個(gè)性化信息存儲(chǔ)使用了MySQL開源數(shù)據(jù)庫(kù)系統(tǒng),主要設(shè)計(jì)了以下幾個(gè)數(shù)據(jù)表:①用戶基本信息表:用來存儲(chǔ)用戶的基本信息,用戶每次使用搜索引擎進(jìn)行一次搜索,即更新最近訪問時(shí)間:②用戶搜索表:用來存儲(chǔ)用戶近期使用系統(tǒng)進(jìn)行的搜索信息;③用戶興趣表:用來存儲(chǔ)用戶某次搜索輸入的關(guān)鍵字:④用戶訪問url表:用來存儲(chǔ)用戶某次訪問的URL信息??紤]到系統(tǒng)的存儲(chǔ)壓力,要對(duì)每個(gè)用戶的搜索數(shù)量、關(guān)鍵字?jǐn)?shù)量及每個(gè)關(guān)鍵字對(duì)應(yīng)的URL數(shù)量進(jìn)行限制。例如可以將每個(gè)用戶的關(guān)鍵字存儲(chǔ)數(shù)限定為1 000個(gè),用戶查詢一個(gè)新的關(guān)鍵字時(shí),就將原有的1 000個(gè)里面最早存入的第一個(gè)關(guān)鍵字刪除,將新的關(guān)鍵字插入,對(duì)URL個(gè)數(shù)也采取這種限制辦法。

      2 頁(yè)面?zhèn)€性化排名算法

      Nutch自帶的頁(yè)面排序算法類似于Google的PageRank算法,計(jì)算公式如下:

      PR(A)=(1-d)+d(PR(1)/C(1)+…PR(n)/C(n))(1)

      本文設(shè)計(jì)的個(gè)性化排名算法基于用戶行為,用戶在一段時(shí)間內(nèi)對(duì)某頁(yè)面點(diǎn)擊次數(shù)越多,或者在某頁(yè)面停留時(shí)間越長(zhǎng),頁(yè)面得分越高。為了實(shí)現(xiàn)個(gè)性化頁(yè)面排名,本文在Nutch頁(yè)面排名算法的基礎(chǔ)上,結(jié)合數(shù)據(jù)庫(kù)存儲(chǔ)的用戶個(gè)性化信息,實(shí)現(xiàn)搜索結(jié)果的個(gè)性化排名。改進(jìn)后的頁(yè)面排名算法如下:

      PageScore(A)=w1×PR(A)+w2×PP(A)(2)

      其中w1和w2為權(quán)重,PR(A)為Nutch算法的頁(yè)面得分,PP(A)為根據(jù)用戶個(gè)性化信息計(jì)算出來的分值,計(jì)算方法如下:

      PP(A)=k1×visit_times(A)max(visit_times(doc))+k2×site_time(A)max(site_time(doc))+k3×visit_time(A)(3)

      其中k1、k2、k3為權(quán)重,visit_times為用戶近3個(gè)月訪問該頁(yè)面的次數(shù),max(visit_times(doc))為用戶近3個(gè)月訪問最多的網(wǎng)頁(yè)次數(shù);site_time為用戶近3個(gè)月在頁(yè)面停留的時(shí)長(zhǎng),max(site_time(doc))為用戶近3個(gè)月網(wǎng)頁(yè)停留最長(zhǎng)時(shí)間,visit_time為用戶最近一次訪問該頁(yè)面的時(shí)間,實(shí)際計(jì)算時(shí)將該時(shí)間轉(zhuǎn)換成整數(shù)。

      當(dāng)用戶輸入q查詢到相關(guān)頁(yè)面后,利用公式(2),結(jié)合用戶的歷史搜索信息,計(jì)算這些頁(yè)面的PP和PageScore,然后在Nutch源代碼中找到類DistributedAnalysisTool.java進(jìn)行修改。

      3 關(guān)鍵詞:個(gè)性化推薦

      3.1 用戶關(guān)鍵字矩陣生成

      利用數(shù)據(jù)庫(kù)表存儲(chǔ)的歷史訪問信息生成用戶關(guān)鍵字矩陣hq:

      w11w12…w1nw21w22…w2n…………wm1wm2…wmn(4)

      該矩陣為m行n列,代表該用戶近期進(jìn)行了m次搜索,并且在近期搜索了n個(gè)關(guān)鍵字。矩陣中wij計(jì)算方法如下:

      wij=0若用戶第i次搜索使用了關(guān)鍵字j1若用戶第i次搜索未使用關(guān)鍵字j(5)

      在實(shí)際中為了加快查詢速度,可以定期離線計(jì)算并保存該關(guān)鍵字矩陣和用戶模型。

      3.2 關(guān)鍵字個(gè)性化推薦

      用戶搜索的關(guān)鍵字出現(xiàn)在其興趣表中,該搜索q可以表示為:

      q={kw1,kw2,…kwn} (6)

      可以將歷史搜索中與該搜索相似度最大的搜索推薦給用戶,否則將關(guān)鍵詞:加入關(guān)鍵詞:集合。相似度計(jì)算方法如下:

      sim(q,hq(i))=cos(q,hq(i))=q×hq(i)|q|2×|hq(i)|2(7)

      其中hq(i)即為hq矩陣的第i行,為當(dāng)前用戶的第i次搜索。

      在實(shí)際設(shè)計(jì)中,向用戶推薦的搜索與用戶當(dāng)前搜索共同作用,可以更加精確地概括用戶的搜索傾向,進(jìn)一步縮小搜索范圍。

      4 系統(tǒng)實(shí)現(xiàn)

      在Windows下可以使用Cygwin和Nutch自帶的蜘蛛抓取頁(yè)面和建立索引,也可以通過一些設(shè)置,使得抓取的信息為某一個(gè)主題信息。抓取結(jié)束后可以使用Luke工具查看建立好的索引,也可以使用Luke工具進(jìn)行信息檢索。實(shí)現(xiàn)頁(yè)面?zhèn)€性化排名算法和關(guān)鍵字個(gè)性化推薦算法后,將Nutch重新進(jìn)行編譯,部署到JSP容器(如Tomcat)后即可進(jìn)行非個(gè)性化信息檢索。部署好后啟動(dòng)Tomcat,打開瀏覽器,輸入:http://localhost:8080/nutch,回車,即可看到Nutch搜索頁(yè)面。

      5 結(jié)語

      本文實(shí)現(xiàn)的頁(yè)面?zhèn)€性化排名和頁(yè)面?zhèn)€性化推薦算法具有一定的應(yīng)用價(jià)值。進(jìn)一步研究Nutch的實(shí)現(xiàn)機(jī)制和Web數(shù)據(jù)挖掘技術(shù),使用分布式技術(shù),以更好地實(shí)現(xiàn)信息的個(gè)性化搜索和個(gè)性化頁(yè)面推薦,提高檢索系統(tǒng)的性能,還有很多工作要做。

      猜你喜歡
      關(guān)鍵字頁(yè)面個(gè)性化
      大狗熊在睡覺
      刷新生活的頁(yè)面
      履職盡責(zé)求實(shí)效 真抓實(shí)干勇作為——十個(gè)關(guān)鍵字,盤點(diǎn)江蘇統(tǒng)戰(zhàn)的2021
      堅(jiān)持個(gè)性化的寫作
      文苑(2020年4期)2020-05-30 12:35:12
      成功避開“關(guān)鍵字”
      新聞的個(gè)性化寫作
      新聞傳播(2018年12期)2018-09-19 06:27:10
      上汽大通:C2B個(gè)性化定制未來
      滿足群眾的個(gè)性化需求
      基于用戶反饋的關(guān)系數(shù)據(jù)庫(kù)關(guān)鍵字查詢系統(tǒng)
      同一Word文檔 縱橫頁(yè)面并存
      亳州市| 海门市| 天镇县| 鄂托克旗| 仪陇县| 吉林市| 奉贤区| 浏阳市| 铜鼓县| 延长县| 永德县| 云安县| 深水埗区| 安泽县| 长白| 大名县| 镶黄旗| 嘉鱼县| 登封市| 博客| 凤庆县| 江达县| 康保县| 体育| 贡觉县| 长子县| 纳雍县| 江川县| 盘锦市| 灯塔市| 墨竹工卡县| 新乡县| 昌邑市| 兴安盟| 托克逊县| 泸西县| 江源县| 洪雅县| 鄂温| 五莲县| 汕尾市|