精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

BM25Retriever 支持中文嗎?

發(fā)布于 2024-6-6 11:27
瀏覽
0收藏

llama_index 的BM25Retriever 基于Rank-BM25[1]的Okapi BM25。

Rank-BM25, 兩行代碼實(shí)現(xiàn)搜索引擎

Rank-BM25? 提供了多種BM25算法, 如Okapi BM25?, BM25L?, BM25+等。它的使用也非常簡單

安裝

pip install rank_bm25

初始化

以O(shè)kapi BM25為例

from rank_bm25 import BM25Okapi

corpus = [
    "Hello there good man!",
    "It is quite windy in London",
    "How is the weather today?"
]
# 分詞使用空格
tokenized_corpus = [doc.split(" ") for doc in corpus]

bm25 = BM25Okapi(tokenized_corpus)

查詢(文檔排名)

query = "windy London"
tokenized_query = query.split(" ")

doc_scores = bm25.get_scores(tokenized_query)
# array([0.        , 0.93729472, 0.        ])

??:Rank-BM25 不做任何文本預(yù)處理。如果想要做諸如轉(zhuǎn)換為小寫、停用詞移除、詞干提取等操作,需要自己實(shí)現(xiàn)。所以如果要進(jìn)行處理中文,就需要用到專業(yè)的中文分詞器了。

中文分詞器

分詞器是自然語言處理(NLP)中非常重要的工具,它們將連續(xù)的文本字符串分割成有意義的單元,通常是單詞或短語。中文分詞器的實(shí)現(xiàn)很多,如 jieba,SnowNLP,THULAC?, HanLP? 等,可以根據(jù)需要選擇,這里就以 jieba 為例。

安裝

pip install nltk jieba

下載停用詞

import nltk
nltk.download('stopwords')

import jieba
from typing import List

def chinese_tokenizer(text: str) -> List[str]:
    tokens = jieba.lcut(text)
    return [token for token in tokens if token not in stopwords.words('chinese')]

corpus = [
    "床前明月光",
    "疑是地上霜",
    "舉頭望明月",
    "低頭思故鄉(xiāng)",
]
tokenized_corpus = [chinese_tokenizer(doc) for doc in corpus]
bm25 = BM25Okapi(tokenized_corpus)
query = "床前明月光"
tokenized_query = chinese_tokenizer(query)

doc_scores = bm25.get_scores(tokenized_query)
doc_scores
# array([1.8621931, 0.       , 0.       , 0.       ])

BM25Retriever

BM25Retriever? 基于 Rank-BM25?,可以指定分詞方法,如果不指定,則使用默認(rèn)的tokenize_remove_stopwords。

from nltk.stem import PorterStemmer

def tokenize_remove_stopwords(text: str) -> List[str]:
    # lowercase and stem words
    text = text.lower()
    stemmer = PorterStemmer()
    words = list(simple_extract_keywords(text))
    return [stemmer.stem(word) for word in words]

如果想使用前面定義的chinese_tokenizer, 只需這樣做

from llama_index.retrievers.bm25 import BM25Retriever
from llama_index.core import Document
from llama_index.core.node_parser import SentenceSplitter
from llama_index.core.response.notebook_utils import display_source_node

documents = [Document(text="床前明月光"),
             Document(text="疑是地上霜"),
             Document(text="舉頭望明月"),
             Document(text="低頭思故鄉(xiāng)")]

splitter = SentenceSplitter(chunk_size=1024)
nodes = splitter.get_nodes_from_documents(documents)

retriever = BM25Retriever.from_defaults(
    nodes=nodes,
    similarity_top_k=2,
    tokenizer=chinese_tokenizer
)

nodes = retriever.retrieve("故鄉(xiāng)")
for node in nodes:
    display_source_node(node)

BM25Retriever 支持中文嗎?-AI.x社區(qū)

已知問題

昨天介紹了 DuckDBRetriever , 它基于DuckDB fts,于是不可避免地有以下幾個(gè)缺點(diǎn),

1. 不支持中文

2. 不能增量更新,只能重建索引BM25Retriever 的缺點(diǎn)是不能持久化,只能全部加載內(nèi)存中。

有沒有既可以持久化,又支持中文分詞,并且可以對索引進(jìn)行增加和刪除的呢?

BM25Retriever 支持中文嗎?-AI.x社區(qū)

BM25算法

Okapi BM25,一般簡稱 BM25 算法,在 20 世紀(jì) 70 年代到 80 年代,由英國一批信息檢索領(lǐng)域的計(jì)算機(jī)科學(xué)家發(fā)明。這里的 BM 是 “最佳匹配”(Best Match)的縮寫,Okapi 是第一個(gè)使用這種方法的信息獲取系統(tǒng)的名稱。在信息檢索領(lǐng)域,BM25 算法是工程實(shí)踐中舉足輕重的重要的 Baseline 算法。迄今為止距 BM25 的提出已經(jīng)過去三十多年,但是這個(gè)算法依然在很多信息檢索的任務(wù)中表現(xiàn)優(yōu)異,是很多工程師首選的算法之一。

BM25(Best Match 25)是一種用于信息檢索的統(tǒng)計(jì)算法,主要用于評估搜索詞(query)和文檔之間的相關(guān)性。它基于概率檢索模型,通過計(jì)算查詢詞與文檔之間的相關(guān)性得分來對文檔進(jìn)行排序。BM25算法的核心思想可以概括為以下幾點(diǎn):

1.查詢詞權(quán)重(IDF):BM25使用逆文檔頻率(Inverse Document Frequency,IDF)來衡量查詢詞的重要性。IDF的計(jì)算公式為:BM25Retriever 支持中文嗎?-AI.x社區(qū)

IDF公式其中,(N)是文檔集合中的文檔總數(shù),(n(qi))是包含查詢詞(qi)的文檔數(shù)量。IDF值越高,表示查詢詞在文檔集合中越稀有,其權(quán)重越大。

2.詞頻和文檔長度的標(biāo)準(zhǔn)化:BM25考慮到詞頻(TF)與相關(guān)性之間的關(guān)系是非線性的。為了平衡詞頻對得分的影響,引入了飽和函數(shù)和文檔長度因子。標(biāo)準(zhǔn)化后的詞頻公式為:

BM25Retriever 支持中文嗎?-AI.x社區(qū)

TF公式其中,(tf(qi, d))是查詢詞在文檔中的詞頻,(Ld)是文檔長度,(Lavg)是文檔集合中所有文檔的平均長度,(k1)和(b)是調(diào)節(jié)參數(shù)。

3.查詢詞頻率的加權(quán):如果查詢較長,某些詞在查詢中出現(xiàn)頻率較高,BM25還會(huì)考慮這些詞在查詢中的頻率,通過引入另一個(gè)調(diào)節(jié)參數(shù)(k3)來調(diào)整查詢詞頻率對得分的影響。

4.最終得分計(jì)算:BM25的最終得分是查詢中每個(gè)詞與文檔相關(guān)性得分的加權(quán)和。公式為:

BM25Retriever 支持中文嗎?-AI.x社區(qū)

Score其中,(R(qi, d))是查詢詞(qi)與文檔(d)的相關(guān)性得分。

BM25算法因其簡單、高效且效果良好,在搜索引擎和信息檢索系統(tǒng)中得到了廣泛應(yīng)用。它的參數(shù)(k1)、(b)和(k3)可以根據(jù)具體應(yīng)用場景進(jìn)行調(diào)整,以達(dá)到最佳的檢索效果。

標(biāo)簽
收藏
回復(fù)
舉報(bào)
回復(fù)
相關(guān)推薦
91av久久| 欧美一卡二卡在线观看| 日韩欧美国产一区二区在线播放| 国产另类第一区| 国产探花视频在线播放| 国内精品久久久久久久久久久| 九色精品国产蝌蚪| 成人精品高清在线| 久久亚洲精品小早川怜子66| 国产日韩成人内射视频| 视频污在线观看| 国产一区激情| 日韩一区二区中文字幕| 在线视频亚洲自拍| 日韩欧美国产另类| 国产探花在线精品一区二区| 欧美日韩激情小视频| 国产 高清 精品 在线 a| 国精产品一区一区二区三区mba| 日韩大尺度黄色| 99精品久久99久久久久| 久久久亚洲欧洲日产国码aⅴ| 亚洲综合123| 成人在线免费看黄| 九九精品视频在线看| 最近2019免费中文字幕视频三| 少妇人妻互换不带套| 国产三级在线看| 日本aⅴ亚洲精品中文乱码| 国产亚洲人成网站在线观看| 久久精品视频91| 色帝国亚洲欧美在线| 懂色av中文字幕一区二区三区| 欧美插天视频在线播放| 一级黄色免费毛片| 久草在线视频资源| 成人18视频在线播放| 成人欧美一区二区三区黑人| 欧美人禽zoz0强交| 亚洲一区网址| 欧美色另类天堂2015| 日韩av大全| 亚洲综合五月天婷婷丁香| 天天综合国产| 亚洲国产高清自拍| 哪个网站能看毛片| 91porn在线观看| 国产一区二区三区不卡在线观看| 欧美国产视频一区二区| 亚洲精品在线视频免费观看| 欧洲av一区二区| 亚洲乱码国产乱码精品精98午夜| 国产一级特黄a大片99| 日韩美一区二区| 日本一区二区免费高清| 日韩三级在线观看| 在线视频日韩欧美| 91麻豆精品国产综合久久久 | 在线精品视频一区二区三四| 午夜欧美性电影| 国产suv一区二区| 国产麻豆一精品一av一免费| 欧美亚洲第一页| 狂野欧美性猛交| 成人性生交大片免费看96| 色综合久久久网| 久久天天东北熟女毛茸茸| 日韩资源在线| 国产一区二区毛片| 91夜夜未满十八勿入爽爽影院| 日韩毛片在线播放| 97精品一区| 亚洲国产天堂久久综合| www.com黄色片| a在线视频v视频| 欧美日韩日本国产| 国产熟女高潮视频| www.久久.com| 疯狂做受xxxx欧美肥白少妇| 狠狠爱免费视频| 日本精品在线一区| 欧美一区永久视频免费观看| 91精品人妻一区二区三区四区| 精品三区视频| 欧美一卡在线观看| 7788色淫网站小说| 黑丝美女一区二区| 久久艳片www.17c.com| 国产精彩视频在线观看| 国产精品久久久久久久久妇女| 久久亚洲私人国产精品va| 精品无码久久久久久久| 四季av在线一区二区三区 | 激情高潮到大叫狂喷水| 卡通动漫国产精品| 91精品免费在线观看| 无遮挡又爽又刺激的视频| 欧美高清免费| 在线观看一区二区精品视频| 久久久精品高清| 麻豆精品蜜桃| 欧美大片在线观看一区| 少妇真人直播免费视频| 欧美91在线| 亚洲国产精品va在线看黑人 | 国产传媒欧美日韩成人精品大片| 日韩有码片在线观看| 国产特级黄色录像| 五月激情久久久| 欧美一区在线直播| 国产乱子伦精品无码码专区| 视频一区二区三区中文字幕| 国外成人在线直播| 最近中文字幕在线视频| 日韩成人伦理电影在线观看| 欧洲成人免费aa| wwwxxx亚洲| 日韩午夜av| 欧美做爰性生交视频| 国产偷拍一区二区| 国产激情视频一区二区在线观看| 92国产精品视频| 国产乱码精品一区二区三区精东 | 欧美日韩在线观看一区二区| 五月天激情视频在线观看| 青青热久免费精品视频在线18| 欧美sm美女调教| 潘金莲一级淫片aaaaaaa| 国产精品密蕾丝视频下载| 97视频免费观看| 国产专区第一页| 视频一区二区国产| 国内视频一区二区| 精品精品导航| 日韩一区二区三区精品视频| 懂色av蜜臀av粉嫩av永久| 日韩激情一区二区| 欧美极品色图| 日本视频在线| 亚洲综合免费观看高清在线观看| 99在线观看视频免费| 成人av影院在线观看| 疯狂欧美牲乱大交777| 韩国av中国字幕| 欧美精品一线| 国产v综合ⅴ日韩v欧美大片 | 日韩精品乱码免费| 欧美日韩大片一区二区三区| 色黄视频在线观看| 欧美影院一区二区| 在线观看你懂的视频| 成人在线视频你懂的| 另类图片亚洲另类| 99久久精品日本一区二区免费 | 五月天婷婷丁香| 成人综合婷婷国产精品久久蜜臀| 久久久久欧美| 麻豆91在线| 污片在线观看一区二区| 艹b视频在线观看| 欧美日韩精品一区二区视频| 欧美成人精品在线观看| 国产精品无码AV| 亚洲精品免费一二三区| 欧美韩国日本在线| 国产不卡一区| 国产成人精品免高潮在线观看| 天天操天天干天天操| 姬川优奈aav一区二区| 亚洲永久无码7777kkk| 中文字幕亚洲精品乱码| 国产成人激情视频| av大全在线免费看| 这里只有精品视频在线观看| 久久一二三四区| 久久婷婷国产综合国色天香 | 国产精品国码视频| 久久99九九| 国产成人福利夜色影视| 亚洲国产精品推荐| 天堂网中文字幕| 亚洲欧洲色图综合| 欧美视频第三页| 日韩综合精品| 国产91aaa| 亚洲mmav| 欧美人在线观看| 亚洲综合精品国产一区二区三区| 最新不卡av在线| 久久人妻少妇嫩草av无码专区 | 久久艳片www.17c.com| 三级小视频在线观看| 欧美日韩在线电影| 香蕉免费毛片视频| 国产91精品在线观看| 自慰无码一区二区三区| 粉嫩精品导航导航| 欧美国产日韩二区| 国模吧精品人体gogo| 福利一区视频在线观看| 成人午夜免费影院| 99视频在线精品| 人妻无码久久一区二区三区免费| 国产精品色婷婷在线观看| 精品激情国产视频| 一区二区三区精| 国产精品蜜臀在线观看| 九九九在线观看视频| 怕怕欧美视频免费大全| 91视频婷婷| 黑人精品视频| 色妞欧美日韩在线| 日韩黄色影片| 精品国产免费人成在线观看| 日韩成人一区二区三区| 中文字幕亚洲在| 性久久久久久久久久久久久久| 国产亚洲永久域名| 欧美久久综合性欧美| 欧美一区在线观看视频| 欧美夫妻性生活xx| 91看片在线观看| 亚洲男人天堂久| 波多野结衣mp4| 香港成人在线视频| www.狠狠爱| 久久se精品一区精品二区| 国产三区在线视频| 亚洲另类自拍| 欧美日韩另类丝袜其他| 丁香5月婷婷久久| 成人av蜜桃| 自拍网站在线观看| 在线亚洲男人天堂| 99久久久国产精品无码免费| 91精品1区2区| 中文字幕在线2021| 国产精品电影院| 国产一级淫片久久久片a级| 久久婷婷综合激情| theav精尽人亡av| av一区二区三区四区| av在线播放网址| 成人av电影在线| 欧美 日本 国产| 91免费在线视频观看| 91精品无人成人www| 日韩精品三区四区| 国产高清视频网站| 男女男精品视频| 成年人看的毛片| 青青草成人影院| 高清不卡日本v二区在线| 日韩高清在线观看一区二区| 91在线网站视频| 一区二区三区国产好| 粉嫩av四季av绯色av第一区| 欧美成人基地| 欧美精品二区三区四区免费看视频 | 精品欧美国产| 天堂综合在线播放| 韩国福利视频一区| 岛国av在线播放| xxx欧美精品| 成人无遮挡免费网站视频在线观看| 久久精品最新地址| 一色桃子av在线| 国产亚洲欧洲在线| 欧洲美女少妇精品| 九九久久综合网站| 国产拍在线视频| 国产成人综合久久| 国产激情综合| 国产精品中出一区二区三区| 久久99国产精一区二区三区| 亚洲一区二区四区| 女优一区二区三区| 色涩成人影视在线播放| 亚洲国产精品久久久天堂| 欧美日韩一区二 | 中国日韩欧美久久久久久久久| 国产高清一区二区三区视频 | 亚洲成人资源网| 一级黄色特级片| 国产精品一区二区黑丝| 成人区人妻精品一区二| 激情深爱一区二区| 五月婷婷激情久久| 激情五月婷婷综合| 精品无码国产一区二区三区51安| 国产亚洲精品7777| 国产精品高清无码在线观看| 国产精品国产三级国产a| 久久99久久98精品免观看软件 | 精品一区二区三区在线播放视频| 亚洲天堂av网站| 国产精品日韩成人| 日韩av电影网| 7777精品伊人久久久大香线蕉的 | 一区二区三区免费播放| 国产盗摄视频一区二区三区| www.狠狠爱| 香蕉乱码成人久久天堂爱免费| 91精品国产乱码久久久久| 日韩av资源在线播放| 黄色av中文字幕| 精品国产人成亚洲区| 国产黄色片在线观看| 高清在线视频日韩欧美| 日韩美女在线| 欧美极品视频一区二区三区| 韩国亚洲精品| 老司机久久精品| 久久精品免视看| 日本一区二区网站| 91精品国产一区二区三区香蕉| 国产在线免费观看| 国产91精品久久久| 成人资源在线播放| japanese在线播放| 久久精品国产亚洲aⅴ| 手机av在线网站| 日本一区二区三区四区在线视频| 亚洲色图欧美色| 精品免费在线观看| 精品久久久久久亚洲综合网站| 欧美va亚洲va香蕉在线| 免费黄网在线观看| 国产精品2018| 羞羞色国产精品网站| 日产精品高清视频免费| 国产精品久久久久久模特| 日批免费观看视频| 26uuu精品一区二区在线观看| 欧美国产精品一二三| 黑人极品videos精品欧美裸| 午夜精品久久久久久久爽 | 精品美女一区二区| 黄色在线免费网站| 久久久久久网站| 永久免费毛片在线播放| 动漫一区二区在线| 国产精品www.| 国产在线观看免费播放| 伊人夜夜躁av伊人久久| 国产xxxxxx| 欧美激情亚洲国产| 国产成人高清精品免费5388| 久久亚洲精品无码va白人极品| 国产91丝袜在线播放| 国产一级片免费看| 亚洲第一网站男人都懂| 老司机深夜福利在线观看| 国产伦一区二区三区色一情| 亚洲高清毛片| 99国产精品久久久久久| va亚洲va日韩不卡在线观看| 精品午夜福利在线观看| 亚洲黄页网在线观看| 亚洲啊v在线| 日韩精品伦理第一区| 久久精品国产久精国产爱| 国产精品视频一区二区三 | 九九热视频在线观看| 国产精品爱啪在线线免费观看| 一区二区三区四区视频免费观看 | 精品在线免费观看| 可以直接看的黄色网址| 欧美精品一区二区三区很污很色的| а√天堂中文资源在线bt| 日韩久久在线| 国产一区二区三区免费| 国产无精乱码一区二区三区| 亚洲另类图片色| 欧美一级免费| 岛国大片在线播放| 国产日韩欧美制服另类| 国产精品一区二区人人爽| 久久久免费在线观看| 免费成人高清在线视频theav| 国产一伦一伦一伦| 亚洲一区二区三区不卡国产欧美| a片在线免费观看| 久久精品久久久久久| 成人性生交大片免费看96| 男人天堂成人在线| 亚洲女厕所小便bbb| 午夜影院在线视频| 久久久久久久国产精品| 少妇精品导航| 男人午夜视频在线观看| 午夜精品免费在线| 五月香视频在线观看| 国产亚洲福利社区| 另类综合日韩欧美亚洲| 日本一级黄色大片| 久久久精品电影| 国产探花在线精品| 亚洲天堂2024| 在线成人av影院|