🚀 Hypencoder模型
本模型是基於超網絡的信息檢索模型,可將文本轉換為向量並輸出相關性得分,適用於信息檢索場景。
🚀 快速開始
使用預訓練的Hypencoders作為獨立模型
from hypencoder_cb.modeling.hypencoder import Hypencoder, HypencoderDualEncoder, TextEncoder
from transformers import AutoTokenizer
dual_encoder = HypencoderDualEncoder.from_pretrained("jfkback/hypencoder.6_layer")
tokenizer = AutoTokenizer.from_pretrained("jfkback/hypencoder.6_layer")
query_encoder: Hypencoder = dual_encoder.query_encoder
passage_encoder: TextEncoder = dual_encoder.passage_encoder
queries = [
"how many states are there in india",
"when do concussion symptoms appear",
]
passages = [
"India has 28 states and 8 union territories.",
"Concussion symptoms can appear immediately or up to 72 hours after the injury.",
]
query_inputs = tokenizer(queries, return_tensors="pt", padding=True, truncation=True)
passage_inputs = tokenizer(passages, return_tensors="pt", padding=True, truncation=True)
q_nets = query_encoder(input_ids=query_inputs["input_ids"], attention_mask=query_inputs["attention_mask"]).representation
passage_embeddings = passage_encoder(input_ids=passage_inputs["input_ids"], attention_mask=passage_inputs["attention_mask"]).representation
passage_embeddings_single = passage_embeddings.unsqueeze(1)
scores = q_nets(passage_embeddings_single)
passage_embeddings_double = passage_embeddings.repeat(2, 1).reshape(2, 2, -1)
scores = q_nets(passage_embeddings_double)
✨ 主要特性
這是一個Hypencoder雙編碼器,包含文本編碼器和Hypencoder兩個主幹。文本編碼器將項目轉換為768維向量,而Hypencoder將文本轉換為一個小型神經網絡,該網絡以文本編碼器的768維向量為輸入,最終輸出相關性得分。
模型變體
我們發佈了論文中使用的四個模型。除了我們稱為q-nets的小型神經網絡具有不同數量的隱藏層外,每個模型都是相同的。
📚 詳細文檔
這是論文 Hypencoder: Hypernetworks for Information Retrieval 中的官方模型。若要使用此模型,請查看 Github 頁面,其中包含所需代碼和模型運行細節。
📄 許可證
本項目採用Apache 2.0許可證。
📖 引用
BibTeX:
@misc{killingback2025hypencoderhypernetworksinformationretrieval,
title={Hypencoder: Hypernetworks for Information Retrieval},
author={Julian Killingback and Hansi Zeng and Hamed Zamani},
year={2025},
eprint={2502.05364},
archivePrefix={arXiv},
primaryClass={cs.IR},
url={https://arxiv.org/abs/2502.05364},
}
📦 模型信息
屬性 |
詳情 |
基礎模型 |
google-bert/bert-base-uncased |
數據集 |
microsoft/ms_marco |
語言 |
英語 |
庫名稱 |
transformers |
管道標籤 |
特徵提取 |