Heim > Technologie-Peripheriegeräte > KI > Mit der Integration von mehr als 200 verwandten Studien ist hier die neueste Übersicht über das große Modell „Lebenslanges Lernen'.

Mit der Integration von mehr als 200 verwandten Studien ist hier die neueste Übersicht über das große Modell „Lebenslanges Lernen'.

WBOY
Freigeben: 2024-09-02 15:24:40
Original
981 Leute haben es durchsucht
整合 200 多项相关研究,大模型「终生学习」最新综述来了

Die AIxiv-Kolumne ist eine Kolumne zur Veröffentlichung akademischer und technischer Inhalte auf dieser Website. In den letzten Jahren sind in der AIxiv-Kolumne dieser Website mehr als 2.000 Berichte eingegangen, die Spitzenlabore großer Universitäten und Unternehmen auf der ganzen Welt abdecken und so den akademischen Austausch und die Verbreitung wirksam fördern. Wenn Sie hervorragende Arbeiten haben, die Sie teilen möchten, können Sie gerne einen Beitrag leisten oder uns für die Berichterstattung kontaktieren. Einreichungs-E-Mail: liyazhou@jiqizhixin.com; zhaoyunfeng@jiqizhixin.com

Die Autoren dieses Artikels stammen alle aus dem Team von Professor Ma Qianli von der South China University of Technology, und ihr Labor ist maschinelles Lernen und Data Dig the lab. Die drei Co-Erstautoren der Arbeit sind der Doktorand Zheng Junhao, der Masterstudent Qiu Shengjie und der Masterstudent Shi Chengming. Ihre Hauptforschungsrichtungen umfassen große Modelle und lebenslanges Lernen. Der korrespondierende Autor ist Professor Ma Qianli (Mitherausgeber von IEEE/). ACM TASLP). In den letzten Jahren hat das Team von Professor Ma Qianli zahlreiche Forschungsarbeiten im Zusammenhang mit Zeitreihen/NLP/Empfehlungssystem in renommierten internationalen Fachzeitschriften (wie TPAMI usw.) und auf führenden internationalen akademischen Konferenzen (wie NeurIPS, AAAI, IJCAI, ACL, Umfangreiche Kooperationen mit namhaften Universitäten und wissenschaftlichen Forschungseinrichtungen im In- und Ausland.

Da die Anwendung großer Sprachmodelle in verschiedenen Bereichen immer weiter zunimmt, stellt sich die Frage, wie diese Modelle in die Lage versetzt werden können, sich kontinuierlich an Änderungen in Daten, Aufgaben und Benutzerpräferenzen anzupassen zu einem zentralen Thema werden. Herkömmliche Trainingsmethoden für statische Datensätze können den dynamischen Anforderungen der realen Welt nicht mehr gerecht werden.

Um diese Herausforderung zu lösen, wurde die Technologie des lebenslangen Lernens oder des kontinuierlichen Lernens ins Leben gerufen. Es ermöglicht großen Sprachmodellen, während ihres Arbeitslebens kontinuierlich zu lernen und sich anzupassen, zuvor erlernte Informationen beizubehalten und gleichzeitig neues Wissen zu integrieren und katastrophales Vergessen (katastrophales Vergessen) zu verhindern.

Kürzlich untersuchten, organisierten und fassten Forscher der South China University of Technology die Methode des lebenslangen Lernens und ihre Entwicklungsaussichten für große Sprachmodelle (LLMs) zusammen und fassten sie zusammen eine umfassende und aktuelle Rezension.

整合 200 多项相关研究,大模型「终生学习」最新综述来了

  • Papiertitel: Towards Lifelong Learning of Large Language Models: A Survey
  • Institution: Südchina University of Technology University
  • Papieradresse: https://arxiv.org/abs/2406.06391
  • Projektadresse: https://github .com/ qianlima-lab/awesome-lifelong-learning-methods-for-llm

Abbildung 1 zeigt die Anwendung von lebenslangem Lernen in großer Sprache Modelle Analogie zum menschlichen Lernprozess. Die Abbildung zeigt die Entwicklung des Menschen und großer Sprachmodelle beim lebenslangen Lernen über zwei parallele Lernpfade.

整合 200 多项相关研究,大模型「终生学习」最新综述来了

Menschliches Lernen

1. Gehen: Der Mensch beginnt mit dem Lernen von den grundlegendsten Fähigkeiten (wie dem Gehen).
2. Fahrrad fahren: Mit fortschreitendem Lernen erlernen Menschen komplexere Fähigkeiten (z. B. Fahrradfahren).
3. Auto fahren: Mit der Zeit können Menschen komplexere und fortgeschrittenere Fähigkeiten erlernen (z. B. Autofahren).

Jeder Schritt stellt den Prozess dar, durch den Menschen in einem lebenslangen Lernprozess weiterhin neue Fähigkeiten und Kenntnisse erwerben.

Großes Sprachmodelllernen (LLMs Learning)

1. Neue Sprache (Neu Sprache): Große Sprachmodelle beginnen mit dem Erlernen neuer Sprachen (z. B. dem Erlernen der Verarbeitung verschiedener natürlicher Sprachen).
2. Neue Domäne: Als nächstes lernt das Modell neues Domänenwissen (z. B. die Erweiterung von der Verarbeitung natürlicher Sprache bis zum medizinischen Bereich).
3. Neue Informationen: Letztendlich kann das Modell neue Informationen lernen und integrieren, egal ob es sich um Sprache oder Domäne handelt.

Jeder Schritt stellt den Prozess des großen Sprachmodells dar, das Wissen im lebenslangen Lernprozess kontinuierlich zu erweitern und zu aktualisieren. Dieses Diagramm betont den Prozess des lebenslangen Lernens: Lebenslanges Lernen ist ein kontinuierlicher Prozess, der eine schrittweise Entwicklung von der Grundausbildung zur Fortgeschrittenen umfasst. Lebenslanges Lernen ist nicht nur eine einfache Anhäufung von Wissen, sondern ein dynamischer und sich entwickelnder Prozess.

In den letzten Jahren ist lebenslanges Lernen zu einem immer beliebteren Forschungsthema geworden, und es sind groß angelegte Umfragen zum lebenslangen Lernen neuronaler Netze entstanden. Die meisten vorhandenen Forschungsarbeiten konzentrieren sich hauptsächlich auf verschiedene Anwendungsszenarien des lebenslangen Lernens von Faltungs-Neuronalen Netzen (CNN) und des lebenslangen Lernens von graphischen neuronalen Netzen. Allerdings konzentriert sich nur ein kleiner Teil der Literatur auf das lebenslange Lernen von Sprachmodellen. Obwohl einige neuere Übersichten die neueste Literatur zum lebenslangen Lernen gesammelt haben, deckt keine davon Szenarien wie kontinuierliche Textklassifizierung, kontinuierliche Erkennung benannter Entitäten, kontinuierliche Beziehungsextraktion und kontinuierliche maschinelle Übersetzung ab. Auch über abrufbasiertes lebenslanges Lernen wird wenig diskutiert .

Dieser Review ist die erste umfassende und systematische Untersuchung von Methoden des lebenslangen Lernens für große Sprachmodelle ausgehend von 12 Szenarien.

Insgesamt umfassen die Hauptbeiträge der Rezension:

  • Romanklassifizierung: Einführung Es wurde ein detaillierter strukturierter Rahmen entwickelt, der die umfangreiche Literatur zum lebenslangen Lernen in 12 Szenarien unterteilt.
  • Universelle Techniken: Gemeinsame Techniken für alle Situationen des lebenslangen Lernens wurden identifiziert und vorhanden. Die Literatur ist in verschiedene unterteilt technische Gruppen in jedem Szenario;
  • Zukünftige Richtungen: Schwerpunkt auf einigen neuen Technologien wie Modellerweiterung und Datenauswahl, die in der Zeit vor LLM weniger erforscht wurden.

1. Einleitung

Diese Rezension ist systematisch zusammengefasst Die vorhandenen Technologiemethoden für lebenslanges Lernen sind in zwei Kategorien unterteilt: internes Wissen und externes Wissen in Abbildung 2.

整合 200 多项相关研究,大模型「终生学习」最新综述来了

  • 內部知識是指透過完全或部分訓練將新知識吸收到模型參數中,包括連續預訓練和連續微調。
  • 外部知識是指在不更新模型參數的情況下,將維基百科或應用程式介面等外部資源中的新知識納入模型,包括基於檢索的終身學習和基於工具的終身學習。

內部知識(Internal Knowledge)

1.連續預訓練(Continual Pretraining):

  • 連續垂直領域預先訓練(Continual Vertical Domain Pretraining):針對特定垂直領域(如金融、醫療保健等)進行的連續預訓練。
  • 連續語言領域預訓練(Continual Language Domain Pretraining):針對自然語言和程式語言進行的連續預訓練。
  • 連續時間領域預訓練(Continual Temporal Domain Pretraining):針對時間相關資料(如時間序列資料)的連續預訓練。

2. 連續微調(Continual Finetuning):

  • 特定任務(Task Specific):

  • 連續文字分類(Continual Text Classification):針對文字分類任務進行的連續微調。
  • 連續命名實體辨識(Continual Named Entity Recognition):針對命名實體辨識任務進行的連續微調。
  • 連續關係抽取(Continual Relation Extraction):針對關係抽取任務進行的連續微調。
  • 連續機器翻譯(Continual Machine Translation):針對機器翻譯任務進行的連續微調。

  • 任務無關(Task Agnostic):

連續指令微調(Continual Instruction-Tuning):透過指令微調實現模型的連續學習。
  • 連續知識編輯(Continual Knowledge Editing):針對知識更新進行的連續學習。
  • 連續對齊(Continual Alignment):針對模型與新任務對齊進行的連續學習。

外部知識(External Knowledge)

.基於檢索的終身學習(Retrieval-Based Lifelong Learning):透過檢索外部知識庫實現的終身學習。

2. 工具為基礎的終身學習(Tool-Based Lifelong Learning):透過呼叫外部工具實現的終身學習。

二、終身學習概況


終身學習的目標是從一系列任務中學習一個語言模型,透過輸入自然語言,產生目標輸出。具體來說,對於生成任務,如問答,輸入和輸出分別代表問題和答案;對於機器翻譯任務,輸入和輸出代表來源語言和目標語言;對於文字分類任務,輸入為文字內容,輸出為類別標籤;自迴歸語言模型的預訓練任務,輸入為一系列的詞元,輸出為對應的下一個詞元。

2.2 評估指標


    整體表現(Overall Measurement):包括平均準確率(AA)和平均增量準確率(AIA)。 AA 是指模型在學習所有任務後的平均表現,而 AIA 則考慮了每個任務學習後的歷史變化。
  • 穩定性測量(Stability Measurement):包括遺忘測量(FGT)和向後轉移(BWT)。 FGT 評估舊任務的平均表現下降,而 BWT 評估舊任務的平均表現變化。
  • 適應性測量(Plasticity Measurement):包含向前轉移(FWD),即模型在新任務上表現的平均提升。

2.3 通用技術

t-1 到Task t
)時的災難性遺忘問題。以下是每種方法的解釋:

整合 200 多项相关研究,大模型「终生学习」最新综述来了

(a) 基於重播的方法(Replay-Based Methods):

  • 意義:這種方法透過在訓練新任務時重播先前任務的數據,來鞏固模型對舊任務的記憶。通常,重播的資料會被儲存在一個緩衝區(Buffer)中,並與目前任務的資料一起用於訓練。主要包括:

–經驗重播(Experience Replay):透過保存一部分舊任務的資料樣本,並在訓練新任務時將這些資料重新用於訓練,從而減少遺忘的發生。

–生成重播(Generative Replay):不同於保存舊數據,這種方法利用生成模型來創建偽樣本,從而在新任務的訓練中引入舊任務的知識。

  • 圖示:圖3 顯示了從Task t-1 到Task t 的過程,模型在訓練Task t 時,使用了緩衝區中的舊資料(Input t-1 )。

(b) 以正規化為基礎的方法(Regularization-Based Methods):

  • 意義:這種方法透過對模型參數施加正規化約束,來防止模型在學習新任務時對舊任務參數的過度調整。正則化約束可以幫助模型保留對舊任務的記憶。主要包括:

–權重正則化(Weight Regularization):透過對模型參數施加額外的約束,限制新任務訓練時對重要權重的修改,以此保護舊任務的知識。例如,L2 正規化和彈性權重鞏固(Elastic Weight Consolidation,EWC)就是常見的技術。

–特徵正則化(Feature Regularization):正則化不僅可以作用於權重,還可以透過限制模型在特徵空間中的表現,確保新舊任務之間的特徵分佈保持穩定。

  • 圖示:圖3 顯示了從Task t-1 到Task t 的過程,模型在訓練Task t 時,透過參數正規化來維持對Task t-1 的效能。

(c) 以架構為基礎的方法(Architecture-Based Methods):

整合 200 多项相关研究,大模型「终生学习」最新综述来了

  • 意義:這種方法著重於調整模型結構,以便無縫整合新任務,同時盡量減少對先前所學知識的干擾。主要包括圖4 中的六種方法:

–(a) 提示詞微調(Prompt Tuning):透過在模型的輸入前加上「軟提示詞」(Soft Prompts) ,以引導模型的生成或分類任務。這種方法只需要調整少量的參數(即提示詞),而不需要改變模型的主幹結構。

–(b) 前綴微調(Prefix Tuning):在輸入序列的前綴部分添加訓練好的可調參數,這些參數被插入到Transformer 層的自註意力機制中,幫助模型更好地捕捉上下文資訊。

–(c) 低秩適應(LoRA,Low-Rank Adaptation):LoRA 透過在特定層級增加低秩矩陣來適應新的任務,而不需要改變大模型的主要權重。這種方法大大減少了參數調整的數量,同時保持了模型的性能。

–(d) 適配器(Adapters):Adapters 是插入到模型不同層之間的可訓練模組,這些模組能夠在不改變原有模型權重的情況下,透過少量的附加參數來適應新任務。通常應用在 FFN(Feed Forward Network)和 MHA(Multi-Head Attention)部分。

–(e) 專家混合(Mixture of Experts):透過選擇性地啟動某些 「專家」 模組來處理不同的輸入,這些專家模組可以是模型中的特定層或子網路。 Router 模組負責決定哪個專家模組需要啟動。

–(f) 模型擴充(Model Expansion):透過新增圖層(New Layer)來擴充模型的容量,而保留原有的層(Old Layer)。這種方法允許模型逐漸增加其容量,以適應更複雜的任務需求。

  • 圖示:圖3 中顯示了從Task t-1 到Task t 的過程,模型在學習新任務時,部分參數被凍結(Frozen),而新增的模組用於訓練新任務(Trainable)。

(d) 以蒸餾為基礎的方法(Distillation-Based Methods):


意義:這種方法透過知識蒸餾(Knowledge Distillation),將舊模型的知識傳遞給新模型。在訓練新任務時,新模型不僅學習當前任務的數據,還要模仿舊模型對舊任務的輸出,從而保持舊任務的知識。主要包括:


–從新數據蒸餾(Distillation from New Data):學生模型在教師模型的指導下學習新任務,透過蒸餾舊模型的知識來減少對舊知識的遺忘。

–從舊數據蒸餾(Distillation from Old Data):利用教師模型在舊數據上的表現來引導學生模型對新任務的學習,從而達到保留舊知識的效果。
  • –從偽舊資料蒸餾(Distillation from Pseudo-Old Data):透過產生偽舊資料(Pseudo-Old Data),讓學生模型在學習新任務時保持對舊知識的記憶。
圖示:圖3 顯示了從Task
t-1
到Task
t 的過程,模型在訓練新任務時,透過模仿舊模型的預測結果來保持對舊任務的知識。

三、連續預訓練

經驗重播、知識蒸餾、參數高效微調、模型擴展和再加熱等技術已顯示出良好的前景。

3.1 連續垂直領域預訓練

(Continual Vertical Domain Pretraining)旨在透過在一系列領域特定的資料集上連續訓練語言模型,確保模型在多個垂直領域或任務中表現出色,同時保留先前獲得的知識。
主要方法:
  • 1. 參數高效率微調(Parameter-Efficient Fine-Tuning):
  • 範例:CorpusBrain++ 採用骨幹- 適配器架構和經驗重播策略來應對現實世界中的知識密集型語言任務。

範例:Med-PaLM 透過使用少量範例引入醫學領域的指令提示調優。

  • 2. 模型擴展(Model Expansion):
  • 範例:ELLE 採用功能保留的模型擴展策略,透過靈活擴展現有預訓練語言模型的寬度和深度來提高知識獲取和整合的效率。

範例:LLaMA Pro 透過擴展 Transformer 區塊並使用新語料庫進行微調,在通用使用、程式設計和數學任務中表現出色。

  • 3. 再預熱(Re-warming):



範例:Gupta 等提出的策略,透過引入新資料集時調整學習率,防止長期訓練期間學習率過低,從而提高適應新資料集的效果。

4. 資料選擇(Data Selection):


範例:RHO-1 透過選擇性語言模型(SLM)訓練,優先選擇對訓練過程有更大影響的標記。

範例:EcomGPT-CT 透過半結構化電子商務資料增強模型在領域特定任務中的表現。
  • 3.2 連續語言領域預訓練領域預訓練(Continual Language Domain Pretraining)旨在使語言模型能夠不斷整合新數據,並適應不斷變化的語言領域而不遺忘先前的知識。 主要方法:1. 架構調整方法(Architecture-Based Methods):範例:Yadav 等透過引入教師強制機制改進提示調優,創建一組提示引導模型在新任務上的微調。 範例:ModuleFormer 和 Lifelong-MoE 使用專家混合(MoE)方法,透過模組化和動態增加模型容量來增強 LLM 的效率和適應性。

2. 再預熱(Re-warming):




範例:Ibrahim 等提出的再預熱方法,透過在訓練新資料時暫時增加學習率,幫助模型更快適應新語言。

3.3 連續時間領域預訓練

主要挑戰:整合 200 多项相关研究,大模型「终生学习」最新综述来了

1. 表現下降:Lazaridou 等的研究顯示,模型在未來資料上的表現顯著下降,凸顯了LLM 在時間泛化上的困難。 2. 有限改進:Röttger 等發現,雖然時間適應在掩碼語言模型任務上有輕微改進,但與單純的領域適應相比,對下游任務性能的提升並不顯著。 透過這些方法和研究,作者展示了連續預訓練在不同維度上的方法和挑戰,並強調了在垂直領域、語言領域和時間域中應用終身學習的必要性和有效性。 四、連續微調連續預訓練可增強大語言模型的內部可增強大語言模型的內部訓練可增強大語言模型的內部訓練可增強大語言模型的內部訓練可增強大語言模型的內部訓練可增強大語言模型的內部訓練可增強大語言模型的內部訓練可增強大語模型知識,在此基礎上,連續微調增強了大語言模型的內部知識,並使大語言模型適應特定任務,如文本分類、命名實體識別、關係提取、機器翻譯或一般生成任務,如指令調整、知識編輯和與人類偏好對齊。為了應對災難性遺忘和任務幹擾等挑戰,採用了蒸餾、重播、正則化、基於架構和基於梯度的方法等技術。作者在圖 5 中對 7 種連續微調場景進行了說明。
這張圖展示了七種不同類型的任務如何透過連續學習在大語言模型中實現。以下是每個部分的詳細解釋:

(a) 連續文本分類

  • 範例:連續文字分類任務透過逐步引入新的分類類別(如Intent: Transfer -> Intent: Credit Score -> Intent: Fun Fact)來訓練模型,使其能夠適應不斷變化的分類需求。

(b) 連續命名實體辨識

  • 例如:連續命名實體辨識任務展示如何在識別特定實體的同時,逐步引入新的實體類型(如Athlete -> Sports Team -> Politician),使模型能夠在識別新的實體時仍保持對舊實體的識別能力。

(c) 連續關係抽取

  • 連續關係抽取任務透過不斷引入新的關係類型(如Relation: Founded By -> Relation: State or Province of Birth -> Relation: Country of Headquarters),展示了模型如何逐步擴展其關係抽取能力。

(d) 連續知識編輯

Which club does Cristiano Ronaldo currently play for? -> Where was the last Winter Olympics held?)。


(e) 連續機器翻譯
連續機器翻譯任務透過逐步擴展模型對不同語言的翻譯能力(如English -> Chinese, English -> Spanish, English -> French),展示了模型在多語言環境中的適應能力。


(f) 連續指令微調
連續指令微調任務透過逐步引入新的指令類型(如Summarization -> Style Transfer -> Mathematics),訓練模型在多種任務類型下的表現能力。


(g) 連續對齊

Concise and Organized -> Positive Sentiment),展示了模型在不同道德和行為標準下的連續學習能力。

五、外在知識

整合 200 多项相关研究,大模型「终生学习」最新综述来了

基於檢索的終身學習(Retrieval-Based Lifelong Learning)

  • 介紹:隨著世界資訊的不斷變化:隨著世界資訊的不斷變化擴大和快速發展,根據歷史資料訓練的靜態模型很快就會過時,無法理解或產生有關新發展的內容。基於檢索的終身學習解決了大型語言模型從外部來源獲取和吸收最新知識的關鍵需求,在需要時,模型透過檢索這些外部資源,來補充或更新其知識庫。這些外部資源提供了一個龐大的當前知識庫,為增強預訓練 LLM 的靜態特性提供了重要的補充資產。
  • 範例:圖中的這些外部資源是模型能夠存取並檢索的。透過存取外部資訊來源,如維基百科、書籍、資料庫等,模型能夠更新自身的知識,並在遇到新資訊時作出適應。

工具的終身學習(Tool-Based Lifelong Learning)

  • 介紹:基於工具的終身學習源於將其功能擴展到靜態知識之外並使其能夠與環境動態交互的必要性。在現實世界的應用中,模型往往需要執行一些任務,這些任務涉及直接文本生成或解釋之外的操作。
  • 範例:圖中模型利用這些工具來擴展和更新自身的能力,透過與外部工具的互動來實現終身學習。例如,模型可以透過應用程式介面來取得即時數據,或透過實體工具與外部環境互動,以此來完成特定任務或獲取新知識。

六、討論與結論


  • 災難性遺忘(Catastrophic Forgetting):這是終身學習的核心挑戰之一,新資訊的引入可能會覆蓋模型之前學到的內容。
  • 可塑性- 穩定困境(Plasticity-Stability Dilemma):在保持模型的學習能力和穩定性之間找到平衡非常關鍵,這直接影響模型獲取新知識的能力,同時保留其廣泛的通用能力。
  • 昂貴的計算成本(Expensive Computation Cost):全量微調大語言模型的運算需求可能非常高。
  • 模型權重或預訓練資料的不可用性:由於隱私、專有限製或商業許可,原始訓練資料或模型權重往往不可用於進一步的改進。

6.2 目前趨勢


從特定任務到通用任務:研究逐漸從專注於特定任務(如文本分類、命名實體識別)轉向更廣泛的通用任務,如指令調優、知識編輯等。
從全量微調到部分微調:鑑於全量微調的高資源消耗,部分微調策略(如 Adapter 層、Prompt 調優、LoRA)變得越來越受歡迎。

從內部知識到外部知識:為了克服頻繁的內部更新限制,越來越多的策略採用外部知識源,如檢索增強生成(Retrieval-Augmented Generation)和工具學習,使模型能夠動態存取和利用當前的外部資料。
  • 6.3 未來方向



多模態終身學習:將文字以外的多種模態(如圖像、視訊、音訊、時間序列資料、知識圖譜)整合到終身學習中,以開發更全面、更具適應性的模型。
高效終身學習:研究人員正致力於開發更有效率的策略來管理模型訓練和更新的運算需求,如模型剪枝、模型合併、模型擴展等方法。 一般終身學習:最終目標是使大語言模型能夠主動獲取新知識,並透過與環境的動態互動進行學習,不再僅僅依賴靜態資料集。 6.4 結論透過這些技術方法及其各自類別的詳細研究,本綜述旨在強調將終身學習能力整合到終身學習工具中,從而提高它們在現實世界應用中的適應性、可靠性和整體性能。同時為研究人員和工程師提供一個全面的視角,幫助他們更好地理解和應用終身學習技術,並推動大語言模型的進一步發展。如果對文章有興趣,可以查閱原始論文以了解更多研究內容。

Das obige ist der detaillierte Inhalt vonMit der Integration von mehr als 200 verwandten Studien ist hier die neueste Übersicht über das große Modell „Lebenslanges Lernen'.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:jiqizhixin.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage