<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 智能計算 > 設計應用 > 拿企業(yè)知識圖(KG)來(lái)訓練模型

拿企業(yè)知識圖(KG)來(lái)訓練模型

作者:高煥堂 時(shí)間:2024-05-13 來(lái)源:EEPW 收藏


本文引用地址:http://dyxdggzs.com/article/202405/458682.htm

1 前言

在上一期里,親自動(dòng)手訓練了注意力(Attention) 機制。由于A(yíng)ttention機制是當今大語(yǔ)言模型(LLM)的核心。于是,可以拿各種知識或數據來(lái)訓練Attention機制。例如,在人人享用LLM的生成( 創(chuàng )作) 能力之余,如何化解其過(guò)多幻覺(jué)(Hallucination)的問(wèn)題也很受關(guān)注。于是,本期就拿(Knowledge Graph,KG)的知識來(lái)讓Attention 機制學(xué)習。也作為L(cháng)LM 與KG 完美結合的基礎。

2 LLM與KG的結合

在LLM帶動(dòng)的大模型風(fēng)潮下,各企業(yè)的致勝策略有那些呢? 大模型可比喻為野獸( 如野貓),于是致勝之道即是:蓄牧。也就是:馴服野獸。企業(yè)人士可以發(fā)咒語(yǔ)(Prompt)來(lái)力求能馴服、駕馭野獸??墒?,僅僅透過(guò)語(yǔ)言(文句)溝通,經(jīng)常力道有限、效率不佳。例如,在A(yíng)I繪圖大模型(如Stable Diffusion ),盡管您用了LoRA、ControlNet等,且努力發(fā)咒語(yǔ),其生成作品,其不滿(mǎn)意的也常十之八九。于是有些人士,就建立企業(yè)自用的繪圖Decoder 模型( 如GAN 模型) 來(lái)幫忙。簡(jiǎn)而言之,世界級大模型擅長(cháng)于“畫(huà)龍”,但貧于“點(diǎn)睛”,因而常畫(huà)出龍身鳳眼或龍身蛇眼等創(chuàng )作。于是,企業(yè)人士就可以訓練企業(yè)自己的Decoder 模型去做好關(guān)鍵性的“點(diǎn)睛”任務(wù)。

為什么需要自用的Decoder模型去點(diǎn)睛,而不是由人去點(diǎn)睛呢?理由是:人與大模型之前主要依賴(lài)語(yǔ)句( 咒語(yǔ)) 溝通,效果不佳。而Decoder與大模型可直接傳遞作品, 高效互動(dòng)、協(xié)作。于是, 在繪圖、影音領(lǐng)域,GAN很適合做為Decoder, 來(lái)幫Diffusion大模型做<點(diǎn)睛>的協(xié)作任務(wù)。而在語(yǔ)言文辭( 如QA)領(lǐng)域,基于知識圖(Knowledge Graph,簡(jiǎn)稱(chēng)KG) 的模型很適合當做Decoder,來(lái)幫忙LLM 大模型做<點(diǎn)睛> 的協(xié)作任務(wù),如圖1 所示。

1715592841365952.png

圖1

引自:https://arxiv.org/pdf/2306.08302

LLM與KG的結合,有助于降低LLM的幻覺(jué)風(fēng)險。LLM的幻覺(jué)現象源于:缺乏準確性(accuracy)、缺乏可解釋性(explainability)和缺乏可控性(governance)。

此時(shí),是實(shí)體(Entity)相互關(guān)聯(lián)的集合,其將企業(yè)專(zhuān)家的經(jīng)驗直覺(jué)、相關(guān)數據與其涵意(Semantics)和上下文(Context)連結起來(lái),就更易于理解和共享,非常有助于彌補上述的LLM三項缺點(diǎn)。LLM與KG由很多種結合方式,如圖2所示。

image.png

image.png

image.png

圖2

引自:https://medium.com/@sradhakrishnan_37036/navigating-aisreality-the-role-of-kgs-and-llms-in-fact-checking-c93f1abfb214

LLM天生非常善解文句和人意,它使用語(yǔ)意搜尋從KG中檢索相關(guān)信息,讓人人能直接提問(wèn)(Prompt) 來(lái)獲得符合企業(yè)實(shí)況的回復。因而讓LLM 產(chǎn)生更精確、準確且與上下文相符合的輸出,也防止了偏見(jiàn)和幻覺(jué)。

3 復習知識圖(KG)

一個(gè)圖(Graph)是一組節點(diǎn)(Nodes),它們表示系統中的實(shí)體(Entities)的集合。然后,透過(guò)邊(Edge)的連接來(lái)表示這些節點(diǎn)之間的關(guān)系( 即實(shí)體之間的關(guān)系。節點(diǎn)可以代表任何形式的個(gè)體,例如人、企業(yè)、城市、機場(chǎng)等等,如圖3所示。

image.png

圖3

引自:https://www.nvidia.com/en-us/glossary/networkx/

這是有關(guān)于飛機場(chǎng)的KG,其中的兩個(gè)節點(diǎn)分別表示洛杉磯機場(chǎng)(LAX),以及圣荷西機場(chǎng)(SJC)。而其邊代表航班( 如Flight 123)。

4 “KG + Attention”訓練范例

茲以KG 來(lái)建立海峽兩岸的機場(chǎng)及航班數據,其中有兩種節點(diǎn):機場(chǎng)和城市,如圖4所示。

1715593201397193.png

圖4

于是,就可以拿這KG 里真實(shí)知識,來(lái)訓練一個(gè)Attention機制( 模型),來(lái)掌握這項關(guān)系。就能與LLM協(xié)作,來(lái)掌握之真實(shí)的知識,例如:虹橋機場(chǎng)位于上海。也能獲知上海有兩個(gè)主要機場(chǎng):虹橋機場(chǎng)和浦東機場(chǎng)。

茲撰寫(xiě)下述程序碼:

# att_airport.py

import torch

import torch.nn as nn

nodes=[‘松山機場(chǎng)’,’虹橋機場(chǎng)’,’浦東機場(chǎng)’,’

小港機場(chǎng)’,’臺北’,’上?!?’高雄’]

nx={w : i for i, w in enumerate(nodes)}

xn={nx[w]: w for w in nx}

#定義模型

class SelfAttention(nn.Module):

def __init__(self, d):

super().__init__()

self.W_q = nn.Linear(d, 16)

self.W_k = nn.Linear(d, 16)

self.W_v = nn.Linear(d, d)

def forward(self, q, k, v):

Q, K, V = self.W_q(q), self.W_k(k), self.W_

v(v)

scores = torch.matmul(Q, K.transpose(-2, -1))

A = torch.softmax(scores, dim=-1)

return torch.matmul(A, V)

# 初始化模型、損失函數和優(yōu)化器

model = SelfAttention(len(nodes))

opt = torch.optim.Adam(model.parameters(),

lr=0.001)

loss_fn = nn.MSELoss()

dx = torch.tensor([nx[‘ 臺北’], nx[‘ 上?!痌,

nx[‘高雄’], nx[‘上?!痌])

dt = torch.tensor([nx[‘松山機場(chǎng)’], nx[‘虹橋機場(chǎng)’],

nx[‘小港機場(chǎng)’], nx[‘浦東機場(chǎng)’]])

X = nn.functional.one_hot(dx, len(nodes)).float()

T = nn.functional.one_hot(dt, len(nodes)).float()

# 訓練模型

print(‘n 開(kāi)始訓練...’)

for ep in range(3001):

opt.zero_grad()

loss = loss_fn(model(X,X,X), T)

loss.backward()

opt.step()

if(ep%1000==0): print(f’ep={ep}, Loss: {loss.

item():.4f}’)

# 預測

tx = torch.tensor([nx[‘臺北’], nx[‘上?!痌])

h = nn.functional.one_hot(tx, len(nodes)).float()

probs = model(h, h, h)

print(‘n----- 預測 -----’)

for i in range(2):

for j in range(7):

if(probs[i][j] > 0.25):

print(xn[tx.detach().numpy()[i]]+ ‘ 有:’,

nodes[j])

#END

這建立一個(gè)SelfAttention 模型,讓它學(xué)習“城市”與“機場(chǎng)”實(shí)體之間的對應關(guān)系?,F在就來(lái)執行這個(gè)程序,展開(kāi)訓練3000 回合。訓練完畢,就可以輸入“城市”名稱(chēng),由這模型回答其所有的< 機場(chǎng)> 名稱(chēng),如下:

1715593316773725.png

以上基于簡(jiǎn)單KG 來(lái)舉例說(shuō)明 KG 與Attention 機制的結合??梢詮臋C場(chǎng)找城市,也可以從城市找機場(chǎng)。

5 結束語(yǔ)

LLM因基于歸納法及統計自回歸算法,其天生具有創(chuàng )意和幻覺(jué)特質(zhì)。而KG 含有專(zhuān)家的智慧,也表達企業(yè)的真實(shí)(Facts ),很適合拿來(lái)訓練Attention或Transformer模型,以便過(guò)濾LLM所生成的作品,降低幻覺(jué)。于是,LLM畫(huà)龍、企業(yè)KG來(lái)點(diǎn)睛,兩者天作之合。

(本文來(lái)源于《EEPW》2024.5)



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>