LFM
1.0.0
이는 LFM의 오픈 소스 구현을 만들기 위한 시도입니다. 이는 비공개 소스이기 때문에 분명히 공식 저장소는 아닙니다. 참고자료로 사용하고 있는 논문을 아래에 링크합니다. 원본 기사에서 모델에 대해 자세히 알아보세요.
$ pip3 install -U lfm-torch
import torch
from lfm_torch . model import LFModel
from loguru import logger
# Instantiate and test the model
if __name__ == "__main__" :
batch_size , seq_length , embedding_dim = 32 , 128 , 512
token_dim , channel_dim , expert_dim , adapt_dim , num_experts = (
embedding_dim ,
embedding_dim ,
embedding_dim ,
128 ,
4 ,
)
model = LFModel (
token_dim , channel_dim , expert_dim , adapt_dim , num_experts
)
input_tensor = torch . randn (
batch_size , seq_length , embedding_dim
) # 3D text tensor
output = model ( input_tensor )
logger . info ( "Model forward pass complete." )
향상된 적응형 처리 및 동적 상태 업데이트를 위해 Liquid Neural Networks, Transformer 주의 메커니즘 및 전문가 혼합(MoE)을 결합한 새로운 신경 아키텍처입니다. 매우 실험적이고 초기입니다! 여기서는 훈련 스크립트를 작성 중입니다. 여전히 라마의 토크나이저와 같은 실제 토크나이저가 필요하지만 현재는 그 수준에 도달하고 있습니다. 이 문제를 도와주실 수 있다면 알려주세요.
순서도 TB
하위 그래프 "액체 변압기"
입력["입력 시퀀스"] --> TL["변환기 계층"]
하위 그래프 "변압기 레이어"
방향 TB
MHA["다중 머리 주의"] --> LC["액체 세포"]
LC --> MOE["전문가 혼합"]
MOE --> LN["Layer Norm + Residual"]
끝
하위 그래프 "액체 셀 세부정보"
방향 LR
HS["숨겨진 상태"] --> WH["W_h 선형"]
입력2["입력"] --> WI["W_in 선형"]
WH --> 추가((+))
위스콘신 --> 추가
추가 -> 실행["활성화"]
행위 --> LN2["LayerNorm"]
LN2 --> DO["드롭아웃"]
끝
하위 그래프 "MoE 세부정보"
방향 TB
Input3["입력"] --> Gate["게이팅 네트워크"]
입력3 --> E1["전문가 1"]
입력3 --> E2["전문가 2"]
입력3 --> E3["전문가 N"]
게이트 --> 빗["가중 조합"]
E1 --> 빗
E2 --> 빗
E3 --> 빗
끝
TL --> 출력["출력 순서"]
끝
import torch
from loguru import logger
from lfm_torch . liquid_t_moe import LiquidTransformer
# Example usage
if __name__ == "__main__" :
seq_len , batch_size , embed_size = 10 , 2 , 64
num_heads , num_experts , expert_size , num_layers = 8 , 4 , 64 , 6
# Create the model
model = LiquidTransformer ( embed_size , num_heads , num_experts , expert_size , num_layers )
# Example input tensor
x = torch . randn ( seq_len , batch_size , embed_size )
# Forward pass
output = model ( x )
logger . info ( f"Model output shape: { output . shape } " )
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.