很可惜 T 。T 您現在還不是作者身份,不能自主發(fā)稿哦~
如有投稿需求,請把文章發(fā)送到郵箱tougao@appcpx.com,一經錄用會有專人和您聯(lián)系
咨詢如何成為春羽作者請聯(lián)系:鳥哥筆記小羽毛(ngbjxym)
“ 簡單聊聊搜索引擎相關的內容。”
好久沒有聊關于模型、算法相關的內容了。之前分享過圍繞機器學習的常見算法,比如《層次聚類模型》、《K-means聚類模型》、《線性回歸模型》、《邏輯回歸模型》、《樸素貝葉斯分類》等。
四年前,我也主導做過一款金融垂直搜索引擎的產品,對搜索有一些簡單的了解。因此后面會嘗試分享幾篇搜索推薦相關的算法,本篇以搜索的基礎原理切入,簡單聊聊搜索的基礎內容,適合小白入門。
是的,提到搜索引擎,我想大家應該都能想到【百度】、【谷歌】,他們都是搜索引擎。
例如上圖,左側呈現的內容便是搜索結果list。
其實,還有一種搜索引擎,雖然大家也一直在用,但真的關注過嘛?例如像京東的商品搜索:
因此,總結下來,搜索引擎主要包括兩類:一類是類似百度、Google這種的專門的搜索引擎,搜索即公司的主要業(yè)務;另一類是作為網站內部的一個功能模塊,用于服務主流業(yè)務的。
目前專職做搜索引擎的公司,其實也不是很多了,國內主要就是百度、搜狗搜索、360搜索這些,行業(yè)的集中度已經很高了。(下圖僅供參考)
但網站內部的搜索功能,基本每家公司都在做,大家但凡使用的成熟一點的互聯(lián)網APP或者網站,都會提供搜索服務,搜索已經成為信息檢索的主流手段了。不信大家打開手機的美團、知乎、騰訊視頻等等,首頁核心位置都會提供搜索入口。
專業(yè)的搜索引擎和站內搜索功能,異同點有哪些呢?
差異點:主要是兩者的檢索目標內容是有差別的。專業(yè)搜索引擎更加綜合,目標是滿足用戶對于信息(尤其是文本信息)的檢索訴求;站內搜索主要的檢索對象基本就是網站的服務內容。視頻網站搜索的就是視頻,外賣網站搜索的就是店鋪,電商網站搜索的就是商品等。由于檢索的內容、不同網站的業(yè)務目標都有差別,因此各個網站內部的搜索邏輯肯定也是千差萬別。
相同點:就是都是搜索引擎。核心的技術及大的框架都是基本一致的。
下面我們聊聊一個搜索服務的核心流程都有哪些。
(1)數據的獲取+處理
對于專門的搜索引擎來講,數據及信息的獲取主要指的是爬蟲的操作。即下圖的sp左側部分。
各位朋友有沒有想過,百度可以實時返回你查詢的關鍵詞或者句子,是怎么做到的呢?比如你百度搜索【數據科學】,是實時去全網上全找一圈嗎?當然不是。哪怕計算資源再多、計算效率再快,也不可能在短時間內告訴你靠譜的結果。
因此,為了解決效率的問題,所有的搜索引擎都是提前將各類網站的數據爬下來,進行處理加工,等待用戶的查詢操作。
這里需要做的數據處理加工工作其實是非常多的,比如需要對網頁的重復內容進行去重,比如需要對所有的網頁進行文本解析、語義識別,比如需要對文本進行索引的建立以便于后續(xù)的關鍵詞檢索等等。這里就不展開了,后面我們有機會逐一分享。
而對于網站內部的搜索功能模塊來講,數據的獲取其實是比較容易的,不需要爬取,都是自己公司數據庫中現成的數據。我們以電商網站的搜索舉例,要搜索的都是商品,因此主要針對商品數據進行處理就好。而商品的數據肯定有商品表,基礎信息已經很豐富了,足夠滿足搜索的基礎應用。相對專業(yè)搜索引擎而言,數據處理的難度是小了很多。
(2)搜索query解析
無論用戶是否進行搜索,上面的第一個環(huán)節(jié)都是需要做的基礎工作。當用戶進行搜索操作時,需要進行的處理的是本環(huán)節(jié):query解析。
所謂的query解析,就是理解和分析用戶輸入的搜索語句(query),到底是個啥意思。
比如輸入【數據科學家的主要工作內容是啥】,搜索引擎只是冷冰冰的機器,它是不理解這句話是啥含義的,那它怎么能給你靠譜的答案呢?
其實很多朋友也能想到,直接基于關鍵詞進行匹配唄~是的,大的邏輯沒毛病,但是真正落地就會發(fā)現,有很多細節(jié)問題。
比如,關鍵詞匹配,那首先我得知道【數據科學家的主要工作內容是啥】有哪些關鍵詞對不?這就得進行分詞了。所謂的分詞,就是對query進行切分為符合常識的關鍵詞,這是典型的NLP(自然語言處理)中的知識內容。比如上面切分成【數據】+【科學】+【家的】+【主要】……還是【數據】+【科學家】+……這是完全不一樣的。
再比如下面的【研究生物學】的切分,更是五花八門了。分詞相關的NLP算法,后面詳細分享,這里只是拋個磚。
再比如,【數據科學家的主要工作內容是啥】這句話,其中有【的】、【是啥】這種詞,如果進行關鍵詞匹配是不是會有影響?畢竟這種語氣詞既沒有啥重要性,在網頁中出現的頻率又高。這里就涉及了核心關鍵詞的提取、權重判斷等。
再比如下面這個搜索【我和我的爺輩】,可能是我輸入錯了,但是query猜出我可能搜的是【我和我的父輩】,進行了糾正,如果一根筋的搜索,是不可能出來這個結果的。
綜上,在query解析這個環(huán)節(jié),主要需要搞定的是用戶輸入的語句,如何對語句進行處理,使得機器能夠理解語句的含義,便于后續(xù)高效地搜索到相關的結果。
當然,基于關鍵詞是比較基礎的了,現在更多地朝著知識圖譜、問答的方向邁進,更加符合真正的搜索需求。
(3)內容檢索召回+排序
上面兩個環(huán)節(jié),一個環(huán)節(jié)是從服務端出發(fā),進行數據的處理加工;一個環(huán)節(jié)是從用戶端出發(fā),進行用戶搜索語句的理解。
下面就到了第三個重要環(huán)節(jié):基于處理后的用戶的搜索內容,到處理完的庫中檢索結果,把相關的內容都找出來,并按照一定的規(guī)則進行排序。
這個內容是搜索引擎的核心內容。因此不同的公司、不同網站的搜索引擎邏輯都會差別比較大,而排序邏輯更是千差萬別。
需要排序這個事情應該比較好理解,理論上,我們是給匹配到檢索內容的結果進行打分,分值高的排在前面。用戶肯定是想要看到最相關、或者我們想讓用戶看到最重要的內容在前面,越往后用戶看到的幾率越小。
因此,針對如何提升排序這個事情,就誕生了一個專門的行業(yè)、職位:SEO優(yōu)化(Search Engine Optimization),即提升相關內容的網站排名。對于淘寶賣家而言,需要提升自己家商品在淘寶天貓的搜索排名,會進行各種關鍵詞、指標的優(yōu)化;網站為了提升自己的百度搜索排名,也會進行各種標題等優(yōu)化。
所以為了保障網站的排名公平,防止大家針對排序規(guī)則鉆空子,往往各家網站的搜索排序規(guī)則、打分權重等都是比較保密的。
(4)搜索結果呈現
最后一個環(huán)節(jié),主要就是產品功能層面的內容了,即針對搜索返回的排序好的結果,進行良好的產品化呈現。
比如知乎搜索【薇婭】:
在首頁(綜合)模塊都是各類型搜索結果的top合集:包括討論相關的內容、問答相關的內容、視頻相關等。這種呈現方式是多類型網站比較主流的混合呈現方式。因此,對于搜索而言,每種不同方式也是一個單獨的搜索引擎,然后不同的結果進行產品化的merge。
當然,隨著技術的越發(fā)完善,用戶體驗不斷提升,搜索也會有了各種特型呈現。比如我們在百度搜索【北京青島】:
這里不再是按照上面的環(huán)節(jié)進行單純的檢索,而是對某些特定類型的關鍵詞進行了特殊化呈現,這屬于在基礎搜索服務上的補充。上面這個案例的規(guī)則應該是用戶輸入的query中包含2個城市名稱,則觸發(fā)該特型呈現。感興趣的朋友可以自己試試【山東山西】、【中國日本】、【北京深圳青島】等,都是沒有特型的,哈哈。
特型呈現對于用戶的體驗而言是巨大的提升,但對于搜索引擎而言,需要不斷的積累,不斷地增加,是個很長期的事情。
當然,不止搜索引擎有特型,其他網站內部搜索也是可以有特型呈現的。比如下面淘寶搜索某個品牌名稱,除了商品list,還會增加旗艦店店鋪的大流量入口(雖然這是個廣告位)。
關于搜索相關的技術內容,今天就先介紹這些。搜索涉及的內容非常龐大,不是一篇文章可以講清楚的,這篇文章主要目的是對搜索的整體框架有個簡單的了解,明白搜索的基礎工作原理。后面有機會我們再一一展開,分享更多細節(jié)的內容。也是比較有趣的。
今天的文章就這些,感謝大家關注~
-END-
本文為作者獨立觀點,不代表鳥哥筆記立場,未經允許不得轉載。
《鳥哥筆記版權及免責申明》 如對文章、圖片、字體等版權有疑問,請點擊 反饋舉報
我們致力于提供一個高質量內容的交流平臺。為落實國家互聯(lián)網信息辦公室“依法管網、依法辦網、依法上網”的要求,為完善跟帖評論自律管理,為了保護用戶創(chuàng)造的內容、維護開放、真實、專業(yè)的平臺氛圍,我們團隊將依據本公約中的條款對注冊用戶和發(fā)布在本平臺的內容進行管理。平臺鼓勵用戶創(chuàng)作、發(fā)布優(yōu)質內容,同時也將采取必要措施管理違法、侵權或有其他不良影響的網絡信息。
一、根據《網絡信息內容生態(tài)治理規(guī)定》《中華人民共和國未成年人保護法》等法律法規(guī),對以下違法、不良信息或存在危害的行為進行處理。
1. 違反法律法規(guī)的信息,主要表現為:
1)反對憲法所確定的基本原則;
2)危害國家安全,泄露國家秘密,顛覆國家政權,破壞國家統(tǒng)一,損害國家榮譽和利益;
3)侮辱、濫用英烈形象,歪曲、丑化、褻瀆、否定英雄烈士事跡和精神,以侮辱、誹謗或者其他方式侵害英雄烈士的姓名、肖像、名譽、榮譽;
4)宣揚恐怖主義、極端主義或者煽動實施恐怖活動、極端主義活動;
5)煽動民族仇恨、民族歧視,破壞民族團結;
6)破壞國家宗教政策,宣揚邪教和封建迷信;
7)散布謠言,擾亂社會秩序,破壞社會穩(wěn)定;
8)宣揚淫穢、色情、賭博、暴力、兇殺、恐怖或者教唆犯罪;
9)煽動非法集會、結社、游行、示威、聚眾擾亂社會秩序;
10)侮辱或者誹謗他人,侵害他人名譽、隱私和其他合法權益;
11)通過網絡以文字、圖片、音視頻等形式,對未成年人實施侮辱、誹謗、威脅或者惡意損害未成年人形象進行網絡欺凌的;
12)危害未成年人身心健康的;
13)含有法律、行政法規(guī)禁止的其他內容;
2. 不友善:不尊重用戶及其所貢獻內容的信息或行為。主要表現為:
1)輕蔑:貶低、輕視他人及其勞動成果;
2)誹謗:捏造、散布虛假事實,損害他人名譽;
3)嘲諷:以比喻、夸張、侮辱性的手法對他人或其行為進行揭露或描述,以此來激怒他人;
4)挑釁:以不友好的方式激怒他人,意圖使對方對自己的言論作出回應,蓄意制造事端;
5)羞辱:貶低他人的能力、行為、生理或身份特征,讓對方難堪;
6)謾罵:以不文明的語言對他人進行負面評價;
7)歧視:煽動人群歧視、地域歧視等,針對他人的民族、種族、宗教、性取向、性別、年齡、地域、生理特征等身份或者歸類的攻擊;
8)威脅:許諾以不良的后果來迫使他人服從自己的意志;
3. 發(fā)布垃圾廣告信息:以推廣曝光為目的,發(fā)布影響用戶體驗、擾亂本網站秩序的內容,或進行相關行為。主要表現為:
1)多次發(fā)布包含售賣產品、提供服務、宣傳推廣內容的垃圾廣告。包括但不限于以下幾種形式:
2)單個帳號多次發(fā)布包含垃圾廣告的內容;
3)多個廣告帳號互相配合發(fā)布、傳播包含垃圾廣告的內容;
4)多次發(fā)布包含欺騙性外鏈的內容,如未注明的淘寶客鏈接、跳轉網站等,誘騙用戶點擊鏈接
5)發(fā)布大量包含推廣鏈接、產品、品牌等內容獲取搜索引擎中的不正當曝光;
6)購買或出售帳號之間虛假地互動,發(fā)布干擾網站秩序的推廣內容及相關交易。
7)發(fā)布包含欺騙性的惡意營銷內容,如通過偽造經歷、冒充他人等方式進行惡意營銷;
8)使用特殊符號、圖片等方式規(guī)避垃圾廣告內容審核的廣告內容。
4. 色情低俗信息,主要表現為:
1)包含自己或他人性經驗的細節(jié)描述或露骨的感受描述;
2)涉及色情段子、兩性笑話的低俗內容;
3)配圖、頭圖中包含庸俗或挑逗性圖片的內容;
4)帶有性暗示、性挑逗等易使人產生性聯(lián)想;
5)展現血腥、驚悚、殘忍等致人身心不適;
6)炒作緋聞、丑聞、劣跡等;
7)宣揚低俗、庸俗、媚俗內容。
5. 不實信息,主要表現為:
1)可能存在事實性錯誤或者造謠等內容;
2)存在事實夸大、偽造虛假經歷等誤導他人的內容;
3)偽造身份、冒充他人,通過頭像、用戶名等個人信息暗示自己具有特定身份,或與特定機構或個人存在關聯(lián)。
6. 傳播封建迷信,主要表現為:
1)找人算命、測字、占卜、解夢、化解厄運、使用迷信方式治??;
2)求推薦算命看相大師;
3)針對具體風水等問題進行求助或咨詢;
4)問自己或他人的八字、六爻、星盤、手相、面相、五行缺失,包括通過占卜方法問婚姻、前程、運勢,東西寵物丟了能不能找回、取名改名等;
7. 文章標題黨,主要表現為:
1)以各種夸張、獵奇、不合常理的表現手法等行為來誘導用戶;
2)內容與標題之間存在嚴重不實或者原意扭曲;
3)使用夸張標題,內容與標題嚴重不符的。
8.「飯圈」亂象行為,主要表現為:
1)誘導未成年人應援集資、高額消費、投票打榜
2)粉絲互撕謾罵、拉踩引戰(zhàn)、造謠攻擊、人肉搜索、侵犯隱私
3)鼓動「飯圈」粉絲攀比炫富、奢靡享樂等行為
4)以號召粉絲、雇用網絡水軍、「養(yǎng)號」形式刷量控評等行為
5)通過「蹭熱點」、制造話題等形式干擾輿論,影響傳播秩序
9. 其他危害行為或內容,主要表現為:
1)可能引發(fā)未成年人模仿不安全行為和違反社會公德行為、誘導未成年人不良嗜好影響未成年人身心健康的;
2)不當評述自然災害、重大事故等災難的;
3)美化、粉飾侵略戰(zhàn)爭行為的;
4)法律、行政法規(guī)禁止,或可能對網絡生態(tài)造成不良影響的其他內容。
二、違規(guī)處罰
本網站通過主動發(fā)現和接受用戶舉報兩種方式收集違規(guī)行為信息。所有有意的降低內容質量、傷害平臺氛圍及欺凌未成年人或危害未成年人身心健康的行為都是不能容忍的。
當一個用戶發(fā)布違規(guī)內容時,本網站將依據相關用戶違規(guī)情節(jié)嚴重程度,對帳號進行禁言 1 天、7 天、15 天直至永久禁言或封停賬號的處罰。當涉及欺凌未成年人、危害未成年人身心健康、通過作弊手段注冊、使用帳號,或者濫用多個帳號發(fā)布違規(guī)內容時,本網站將加重處罰。
三、申訴
隨著平臺管理經驗的不斷豐富,本網站出于維護本網站氛圍和秩序的目的,將不斷完善本公約。
如果本網站用戶對本網站基于本公約規(guī)定做出的處理有異議,可以通過「建議反饋」功能向本網站進行反饋。
(規(guī)則的最終解釋權歸屬本網站所有)