【菜狗的記錄】模糊聚類最大樹、圖神經網絡、大模型量化——20250627

每日學習過程中記錄的筆記,從各個網站整理下來,用于當日復盤。

如果其中的知識點能幫到你,也很榮幸呀。

-------------------------------------------------------20250622-------------------------------------------------------------

🐱1、模糊聚類最大樹算法

【機器學習筆記37】模糊聚類分析(基于最大生成樹)-CSDN博客

🐕模糊關系:假設論域UV(論域指的事件中所有感興趣的研究對象的非空集合),設U×V的一個模糊子集R是U到V的模糊關系,其隸屬函數映射為UR?:U×V→[0,1],隸屬度R(x,y)稱為(x,y)關于模糊關系R的相關程度。例如身高和體重就是模糊關系。

🐕在模糊集合論中,元素的隸屬關系不再是簡單的“是”或“否”,而是用一個介于0和1之間的實數來表示,稱為隸屬度。模糊子集可以進行交并補運算。

🐕將模糊關系用模糊矩陣表述,類似馬爾可夫隨機過程的轉移概率。

????????模糊矩陣的合成運算和矩陣乘法類似,只是在具體的運算中原先的元素乘元素編程取最小值,原先的乘積相加變為求最大值。

🐕模糊矩陣的λ截距矩陣,這個定義比較簡單,矩陣中的每個元素大于λ則為1,否則為0。舉例如下:

模糊關系的聚類分析

🐕基于模糊矩陣的等價關系

則R是模糊等價矩陣。

🐕模糊矩陣的分類

由于等價關系代表著集合上的一個分類,因此在模糊聚類中,我們對模糊矩陣取不同的λ截距,就可以取不同的分類。

🐕模糊聚類算法步驟

🐕最大樹:想象一群人(元素),兩兩之間的“關系強度”用0~1的數值表示(如友情深淺)。

  • 目標:用盡可能少的“強關系”連接所有人,形成一棵樹。

  • 方法

    1. 按關系強度從高到低排序所有可能的連接。

    2. 依次選擇邊,如果連接后不會形成環,就保留。

    3. 直到所有人連通為止。

以上進行聚類操作,進而得到模糊集的聚類。


-------------------------------------------------------20250623-------------------------------------------------------------

🐱2、圖神經網絡

圖神經網絡GNN綜述匯報(先淺淺入個門)_嗶哩嗶哩_bilibili

基礎概念

🐕圖神經網絡是指使用神經網絡學習圖結構數據,提取挖掘圖結構數據的特征和模式,滿足聚類、分類、預測、分割、生成等圖學習任務需求的算法總和。

🐕圖數學定義:節點、邊、關聯網絡

🐕圖數據特點:節點之間距離無法歐氏距離測量。

🐕圖任務分類

🐕圖數據存儲

🐕圖屬性更新

🐕圖池化信息

🐕基本GNN模型

🐕GNN模型分類

🐕GCN圖卷積神經網絡

GNN與網絡嵌入

🐕GNN的研究與圖嵌入或網絡嵌入(network embedding)密切相關。網絡編碼旨在將網絡節點表示為低維向量表示,以維護網絡拓撲結構和節點內容信息,并且便與后續圖像和數據分析任務,如分類、聚類等。

與此同時,GNN是一種深度學習模型,旨在以端到端方式解決與圖結構相關的任務。

🐕GNN與網絡嵌入的主要區別在于,GNN是針對各種任務而設計的一組神經網絡模型,而網絡嵌入涵蓋了針對同一任務的各種方法。因此,GNNs可以通過一個圖形自動編碼器框架來解決網絡嵌入問題。另一方面,網絡嵌入還包含其他非深度學習方法,如矩陣分解、隨機游走等。

GNN與Graph Kernel

🐕Graph Kernel歷來是解決圖分類問題的主要技術。這些方法使用一個核函數來度量圖對之間的相似性,那么這樣基于核的算法(如支持向量機)就可以用于圖的監督學習。與GNN類似,Graph Kernel可以通過映射函數將圖或節點嵌入到向量空間中。不同的是,這個映射函數是確定性的,而不是可學習的。由于Graph Kernel方法采用兩兩相似度計算,因此存在較大的計算瓶頸。一方面,GNN直接根據所提取的圖表示進行圖分類,因此比Graph Kernel方法效率高得多。

為什么推薦系統不用GNN?

為什么最近幾年,沒人在推薦系統里去玩 GNN 模型,GNN 是涼透了嗎? - 知乎

🐕推薦系統的優化要明確優化是怎么得到效果的,收益來源于樣本、特征、模型三者中一個或者多個。如下圖兩個方面的提升。

🐕GNN能夠提供——信息利用能力的增強。例如從中心節點擴展到周圍節點,學習了二跳、三跳關聯關系的學習能力。利用知識圖譜點之間的拓撲結構,把拓撲結構蘊含的關系信息編碼到embedding,進而提供收益。

①對用戶行為信息豐富的推薦系統,例如抖音、小紅書,用戶之間具有協同關系,能夠充分表征內容相似性,不需要知識和屬性的連接補充相似性。不需要GNN的信息增量。

②對于純知識型的推薦系統,例如豆瓣、IMDB、知網。網站中知識的鏈接是非常重要的,知識間二度、三度的關聯也是有價值的。而且它缺乏足夠多的用戶互動信息來覆蓋表達物品之間的相似性,那么GNN就是有價值的。

-------------------------------------------------------20250625-------------------------------------------------------------

🐱3、深度互學技術

模型蒸餾算法

🐕模型越來越大,參數很多,涉及更高效的模型能夠解決。

🐕設計預訓練的大網絡是老師,向小網絡傳遞知識(平滑后的概率估計),提高小網絡性能。單向知識傳遞。小網絡模仿大網絡類別概率,表現比大網絡更好的性能。但是小網絡的反饋不能優化。

🐕本質原因:不需要一個大專家學習所有東西,而是學生學習+從老師那里學到一些東西,能夠降低參數量,增強泛化能力,能夠適應新的數據。

深度互學習

🐕小網絡之間相互學習,三人行必有我師。

互學習算法也很容易擴展到多網絡學習和半監督學習場景中。當有K個網絡時,深度互學習學習每個網絡時將其余K-1個網絡分別作為教師來提供學習經驗。另外一種策略是將其余K-1個網絡融合后得到一個教師來提供學習經驗 。

其中,多網絡互學習中多個獨立教師(DML)的性能會優于融合教師(DML_e),就像多個老師教要比一個會的多的老師教更好。

-------------------------------------------------------20250626-------------------------------------------------------------

大模型量化技術

由于RTX 3090顯卡的顯存為24GB,而Qwen3-30B-A3B模型非常大,直接運行可能會遇到顯存不足的問題。因此,需要采用一些優化和量化技術來減少顯存占用。


安裝必要的庫:

pip install torch transformers

量化技術可以顯著減少模型的顯存占用。常見的量化方法包括INT8量化混合精度量化(FP16/FP32)。

INT8量化

INT8量化是將32位浮點數(FP32)模型的參數和激活值轉換為8位整數(INT8)的過程,旨在減少模型的計算復雜度和內存占用,從而提升推理速度。

使用bitsandbytes進行INT8量化。bitsandbytes是一個流行的庫,用于對模型進行INT8量化。

from transformers import AutoModelForCausalLM, AutoTokenizer
import torchmodel_name = "Qwen/Qwen3-30B-A3B"# Load the model and tokenizer
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name,torch_dtype=torch.float16,  # Use float16 for mixed precisiondevice_map="auto",  # Automatically map the model to available devicesload_in_8bit=True,  # Load the model in 8-bit precision
)# Prepare the input
prompt = "Give me a short introduction to large language model."
inputs = tokenizer(prompt, return_tensors="pt").to("cuda")# Generate text
with torch.no_grad():generated_ids = model.generate(**inputs, max_new_tokens=512)
output_text = tokenizer.decode(generated_ids[0], skip_special_tokens=True)print(output_text)
混合精度訓練

混合精度訓練(Mixed Precision Training)可以減少顯存占用,同時保持模型的性能。可以通過torch.cuda.amp自動混合精度工具來實現:

from torch.cuda.amp import autocastwith autocast():generated_ids = model.generate(**inputs, max_new_tokens=512)
output_text = tokenizer.decode(generated_ids[0], skip_special_tokens=True)print(output_text)
優化輸入和生成參數

減少輸入序列長度和生成的新標記數量可以顯著減少顯存占用。例如,將max_new_tokens設置為一個較小的值,如512或1024

generated_ids = model.generate(**inputs, max_new_tokens=512)
使用多GPU并行

使用多GPU并行來分攤顯存壓力。可以通過torch.nn.DataParallel;torch.nn.parallel.DistributedDataParallel來實現:

import torch
from torch.nn.parallel import DistributedDataParallel as DDP# Assume you have multiple GPUs
model = model.to("cuda")
model = DDP(model, device_ids=[0, 1, 2, 3])  # Example for 4 GPUs# Generate text
generated_ids = model.generate(**inputs, max_new_tokens=512)
output_text = tokenizer.decode(generated_ids[0], skip_special_tokens=True)print(output_text)

——小狗照亮每一天

20250627

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/912121.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/912121.shtml
英文地址,請注明出處:http://en.pswp.cn/news/912121.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

《短劇平臺開發指南:技術方案、核心功能與行業趨勢》

一、短劇行業現狀與系統開發價值 近年來,短劇市場呈現爆發式增長,成為數字內容領域的新風口。數據顯示,2023年國內短劇市場規模已突破300億元,用戶規模達到4.5億。這種以"短、平、快"為特點的內容形式,憑借…

[FPGA]嵌入式系統FPGA設計資源

嵌入式系統FPGA設計資源 一、供應商 https://www.altera.com- Altera FPGA 供應商網站 https://www.altera.com/events/northamerica/intel-soc-fpga-developer-forum/overview.html- SoC 開發人員論壇 https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/li…

ClickHouse 可觀測性最佳實踐

ClickHouse 介紹 ClickHouse 是一款高性能、列式存儲的開源分析型數據庫,專為在線分析處理(OLAP)場景設計。它能夠處理海量數據,支持實時查詢和復雜的數據分析,具備極高的讀寫性能和數據壓縮能力。ClickHouse 提供了強…

Android Framework設置時間為24小時制

文章目錄 定位源碼實現附錄12 小時制與 24 小時制的詳細解析一、基本定義與核心區別二、轉換方法與示例三、應用場景與文化差異四、延伸知識:特殊計時制與歷史背景 目的是把設置中使用默認語言區域關掉,并把使用24小時制打開 如下圖為原始的:…

基于STM32設計的掃地機器人

一、前言 1.1 項目介紹 【1】項目開發背景 隨著社會節奏的加快和人們生活方式的改變,智能家居產品逐漸走入千家萬戶。作為智能清潔系統的重要組成部分,掃地機器人憑借其自動化、高效性和便捷性,成為現代家庭中不可或缺的智能設備之一。傳統…

什么是接口測試?

2025最新Jmeter接口測試從入門到精通(全套項目實戰教程) 接口測試概念 接口測試是項目測試的一部分,它測試的主要對象是接口,是測試系統組件間接口的一種測試。接口測試主要用于檢測外部系統與所測系統之間以及內部各系統之間的交…

JDY-23藍牙模塊與電腦的連接方式

JDY-23藍牙模塊支持多種連接方式,包括SPP(串口通信)模式和BLE(低功耗藍牙)模式。以下是與電腦連接的具體方法: 1. 通過SPP模式連接 JDY-23模塊支持SPP協議,可以通過串口與電腦通信。以下是連接…

【網絡】Linux 內核優化實戰 - net.core.rmem_max

目錄 參數作用與原理默認值與查看方法調整場景與方法適用場景調整方法 與其他參數的協同性能影響與注意事項典型案例總結 net.core.rmem_max 是 Linux 內核中控制 套接字接收緩沖區(Receive Buffer)最大允許值 的參數。它與 net.core.rmem_default&#…

設計模式 | 工廠模式

工廠模式(Factory Pattern) 是創建型設計模式的核心成員,它通過將對象創建的邏輯封裝起來,實現了創建與使用的解耦。本文將深入探討工廠模式的核心思想、實現技巧以及在C中的高效實現方式。 為什么需要工廠模式? 在軟…

數字孿生技術驅動UI前端變革:從靜態展示到動態交互的飛躍

hello寶子們...我們是艾斯視覺擅長ui設計、前端開發、數字孿生、大數據、三維建模、三維動畫10年經驗!希望我的分享能幫助到您!如需幫助可以評論關注私信我們一起探討!致敬感謝感恩! 在數字化轉型的深水區,數字孿生技術正以破竹之勢重構 UI 前端的技術邏輯與設計理念…

Django實戰:自定義中間件實現全鏈路操作日志記錄

文章目錄 一、中間件介紹激活中間件生命周期 二、自定義中間件中間件鉤子函數基于類的中間件 三、實戰案例操作日志功能參考資料 一、中間件 介紹 在 Django 中,中間件(Middleware)是一組輕量級、底層的插件系統,用于全局地改變…

Java編程之迭代器模式(Iterator Pattern)

引言: 走進圖書館,你站在一排書架前,想要瀏覽書籍。你會一格格地從左到右翻閱書籍,而不是去研究書架是什么。 一本書一本書地翻,才知道書架上藏了什么書,研究書架的構造是不知道書籍的內容的。 這種“逐本…

ARM64 linux系統的一般執行過程

1、正在運行的用戶進程X 2、發生異常(包括系統調用等),CPU完成的工作:把當前程序指針寄存器PC放入ELR_EL1寄存器,把PSTATE放入SPSR_EL1寄存器,把異常產生的原因放在ESR_EL1寄存器,將異常向量表…

Vue3+ element 實現導入導出

一、導入功能相關代碼分析 相關變量定義 importVisible:這是一個ref類型的響應式變量,用于控制導入對話框的顯示與隱藏,初始值為false。當用戶點擊 “導入” 按鈕時,會嘗試將其值設為true來顯示導入對話框,若出現異常則…

Git安裝(純小白版)

一、Git安裝 1. 簡介 Git是一款免費開源的分布式版本控制系統,常用于軟件開發。它能記錄文件在不同時間的改動,讓用戶在需要時查看、恢復舊版本。支持多人協作開發,多人可同時修改項目文件,Git會處理好沖突。開發者能在本地創建…

cocos2 本地根據文本內容生成二維碼

cocos2 本地根據文本內容生成二維碼 之前做了一個功能,就是cocos2小游戲,結算頁面需要有一個二維碼,二維碼內容是一個網址,這個網址需要根據用戶游玩分數確定訪問哪個網址,但是這個小游戲是單機小游戲,不連…

87.xilinx FPGA讀取器件id方法

dout數據高位先出msb module chip_id_reader(input clk,input reset,output [56:0] dna_value,output dna_valid );reg [6:0] bit_count;reg [56:0] dna_shift_reg;reg dna_read;reg dna_shift;wire dna_out;// 實例化DNA_PORT原語DNA_PORT #(.SIM_DNA_VALUE(57h123456789ABCD…

AcWing--數據結構(二)

Trie 樹 用來高效的快速存儲和查找字符串集合的數據結構 如存儲:abcdef,abdef,aced,... 從根節點開始存儲,從前往后存儲,看是否有a,沒有就創建,依次存儲。 一般在最后一個字符打個標記,意思就是當前字符…

論基于架構的軟件設計方法(ABSD)及應用

2025年3月22日作 題目 基于架構的軟件設計(Architecture-Based Software Design, ABSD)方法以構成軟件架構的商業、質量和功能需求等要素來驅動整個軟件開發過程。ABSD是一個自頂向下,遞歸細化的軟件開發方法,它以軟件系統功能的…

【Docker基礎】Docker容器管理:docker exec詳解

目錄 1 docker exec命令概述 1.1 命令定位與作用 1.2 與相似命令對比 2 基本語法與參數解析 2.1 完整命令語法 2.2 核心參數詳解 2.2.1 -i, --interactive 2.2.2 -t, --tty 2.2.3 -d, --detach 2.2.4 -e, --env 2.2.5 -u, --user 2.2.6 -w, --workdir 3 典型使用場…