[心得] 我做了一個幾何語義模型引擎(PipeOwl)

看板Soft_Job (軟體人)作者 (無聞)時間3周前 (2026/02/19 20:35), 編輯推噓1(1015)
留言16則, 4人參與, 3周前最新討論串1/1
最近把之前做的 pipowl(minimal SBERT)重構了一下 變成一個比較乾淨的幾何語義引擎,叫做 PipeOwl 老實說也不是什麼很大的模型 比較像是我自己在研究語義結構時拆出來的一層 --- 它在做什麼? 不是大型 Transformer, 也沒有接 decoding 端。 目前的形式是: 把模型壓成 .npy 向量場 然後用幾何方式做語義運算 核心公式: score = α·base + β·delta_scalar 整體是: 純 Python 不跑大型 Transformer 推理 可以嵌入 CLI / API / Chatbot / IME 本地語義比對速度接近輸入法候選 比較像是一個: embedding 運算層 + 語義場資料 --- 為什麼做這個? 其實只是想試試看: 語義模型一定要是黑箱 end-to-end 嗎? 如果把模型壓成向量場, 讓語義變成可以觀測、可以組合的結構, 會發生什麼事? 目前還在摸索中, 尤其是拿掉 sentence-transformers 之後, 訓練方式跟主流就完全不同了。 算是一個方向性的嘗試 --- 已知問題 / 還在實驗的地方 1.目前向量還沒做 norm1(正規化方式還在想要不要全場一致處理) 2.β·delta_scalar 這一層,可能改成降維後當作 loss 場會更合理,還沒完整實測 3.「語義」這類型的詞score有點高 可能觸發後要RAG名詞解釋 --- Hugging Face https://huggingface.co/WangKaiLin/PipeOwl 一些 benchmark 圖和筆記 https://hackmd.io/@galaxy4552/BkpUEnTwbl --- -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.73.51.159 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1771504516.A.EC4.html

02/20 01:11, 3周前 , 1F
早期在沒有Bert的時代,就有一堆類似工作。word2vec時代,
02/20 01:11, 1F

02/20 01:11, 3周前 , 2F
都有許多變形了。只在特定垂直領域,訓練短語級別,如果只
02/20 01:11, 2F

02/20 01:11, 3周前 , 3F
是計算量比較低,可以做語意計算,看不出有什麼特別新的東
02/20 01:11, 3F

02/20 01:11, 3周前 , 4F
西。
02/20 01:11, 4F

02/20 01:16, 3周前 , 5F
不使用 transformer或BERT,做短語embedding,其實早期大
02/20 01:16, 5F

02/20 01:16, 3周前 , 6F
家都玩得蠻多了。
02/20 01:16, 6F

02/20 01:59, 3周前 , 7F
看了一下,基底是用BGE 做詞彙embedding,將預先計算的結
02/20 01:59, 7F

02/20 01:59, 3周前 , 8F
果重複使用。就是用空間換時間啊。說不用S-Bert太牽強啦,
02/20 01:59, 8F

02/20 01:59, 3周前 , 9F
還不是有用。
02/20 01:59, 9F

02/20 02:04, 3周前 , 10F
最後benchmark只比時間,太取巧了吧,只比時間。你用儲存
02/20 02:04, 10F

02/20 02:04, 3周前 , 11F
空間換時間,當然時間上會硬贏阿。
02/20 02:04, 11F

02/20 05:15, 3周前 , 12F
確實我是從 S-BERT/BGE 的 embedding 出發做升級
02/20 05:15, 12F

02/20 05:19, 3周前 , 13F
我也還在思考怎麼驗證 因為這是時間導向設計的沒錯
02/20 05:19, 13F

02/20 11:13, 3周前 , 14F
唉 好不容易有人分享個實在點的專案 鐵o伯又在硬聊了有
02/20 11:13, 14F

02/20 11:13, 3周前 , 15F
夠尬
02/20 11:13, 15F

02/22 07:32, 3周前 , 16F
Benchmark 挑有利的講是常識吧
02/22 07:32, 16F
文章代碼(AID): #1fbmE4x4 (Soft_Job)
文章代碼(AID): #1fbmE4x4 (Soft_Job)