<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
      交個朋友吧

      基于大模型的電信網絡詐騙預警技術研究

      學習論文:基于大模型的電信網絡詐騙預警技術研究

      image

      研究背景與核心問題

      1. 問題現狀
        • 電信網絡詐騙案件數量持續上升(2017-2021年全國案件超28萬件,詐騙罪占比36.53%),詐騙手段快速迭代導致傳統基于知識庫的預警技術效果有限。
        • 當前難點:詐騙話術冗長、線索分散(平均1182字,最長超6000字),人工特征提取效率低且無法適應新型詐騙變種。
      2. 技術契機
        • 大模型(如ChatGPT)在few-shot/zero-shot任務中表現優異,為少樣本詐騙文本分類提供新思路。

      關鍵技術方法

      基于大模型的詐騙文本分類框架

      • 總體流程:

        語音輸入 → 語音轉寫 → 主題分類(貸款相關?) → 特征判定(多要素分解) → 綜合判定
        

      image

      • 主題分類:過濾非貸款對話(如閑聊、業務辦理),減少計算量。
      • 特征判定:將復雜詐騙判別分解為粒度更小的子任務(如判定“宣傳話術”“要求交費”等特征)。

      核心創新點

      • 特征提取自動化
        • 采用句向量聚類技術:
          • 使用嵌入模型 bge-large-zh-v1.5 提取句向量,對152份詐騙樣本的6874個短句聚類(K-means, k=30)。
          • 聚類結果分為三類:貸款相關(如“還款”“凍結解凍”)、對話相關(如“回復聯系”)、無主題(雜亂文本)。
          • 替代人工拆解特征,提升效率與一致性。
      • 提示詞自動生成與優化(APE方法)
        • 步驟:
          1. 大模型基于模板生成初始提示詞(填充正負樣本)。
          2. 評分篩選(公式:Score = 0.6 * Recall + 0.4 * Precision,側重召回率)。
          3. 多輪迭代:對高分提示詞進行語義變體重采樣。
        • 解決提示詞人工編寫耗時、質量不穩定的問題。

      分類器構建

      手工特征方案

      • 提煉貸款詐騙7大特征(如“無抵押宣傳”“要求交費”“操作出錯”等),設計ICIO框架提示詞(指令-背景-輸入-輸出)。

        image

        image

      • 分類規則:加權投票(特征權重25-40),累計權重≥40判定為詐騙。

      貸款詐騙7大特征
      1. 宣傳話術
        • 使用“無抵押、免征信、低利率、快速放款”等虛假廣告誘導受害者。
      2. 陌生關系
        • 對話雙方為陌生人關系(如“客服與客戶”),排除熟人稱呼(如“某師傅”“某總”)。
      3. 要求下載App
        • 以辦理貸款手續為由,要求受害者下載指定App或登錄網站。
      4. 要求交費
        • 編造“認證還款、保證金、手續費、刷流水”等理由要求轉賬。
      5. 操作出錯
        • 受害者操作時必然“出錯”(如賬戶凍結、貸款失敗),為后續詐騙鋪墊。
      6. 解凍賬戶
        • 以“解凍賬戶”為由要求二次交費(如“再次轉賬方可繼續貸款”)。
      7. 要求截圖
        • 受害者交費后被要求提供“電子回執單、短信截圖”等作為“憑證”。
      特征權重與判定規則
      • 權重分配(用于綜合判定):

        特征 權重
        宣傳話術 35
        操作出錯 40
        解凍賬戶 35
        要求交費 25
        要求下載App 20
        要求截圖 20
        陌生關系 10
      • 判定規則
        累計權重 ≥40 即判定為貸款詐騙。

      實際數據分布

      在152個貸款詐騙樣本中,各特征出現比例:

      • 陌生關系:100%(所有詐騙樣本均偽裝陌生關系)
      • 要求交費:62.5%
      • 操作出錯:48.6%
      • 要求截圖:44.0%
      • 要求下載App:38.1%
      • 宣傳話術:23.6%
      • 解凍賬戶:35.5%

      說明:單一樣本通常不會包含全部特征(詐騙分多階段進行),但權重較高的特征(如“操作出錯”“解凍賬戶”)更具判別性。

      自動聚類特征方案

      • 聚類生成15個貸款詐騙的特征,劃分為高權重特征(如“凍結解凍”“截圖”)和低權重特征。
      • 分類規則:累計權重≥45判定為詐騙。

      自動聚類特征方案的核心是通過無監督學習替代人工特征拆解,解決傳統方法效率低、一致性差的問題:

      1. 任務目標
        自動識別詐騙文本中的高頻語義片段,形成可量化判別的特征集合。
      2. 技術路線
        句向量提取 → 無監督聚類 → 特征權重分配 → 綜合判定
      實現步驟

      1. 數據預處理

      • 原始數據:152個貸款詐騙樣本的語音轉寫文本(平均長度1182字)。
      • 短句切分:
        • 按標點符號分割文本,過濾長度<5字符或>30字符的句子。
        • 得到6874個有效短句作為聚類輸入。

      2. 句向量提取

      • 嵌入模型:采用bge-large-zh-v1.5(當前最優中文文本嵌入模型之一)。
      • 向量維度:1024維向量表示每個短句的語義特征。

      3. K-means聚類

      • 聚類參數k=30(根據經驗設定)。

      • 距離度量:余弦相似度(更適合文本向量)

      • 聚類結果:

        image

      聚類測試代碼,感覺效果不是很好:

      import re
      import numpy as np
      from sentence_transformers import SentenceTransformer
      from sklearn.cluster import KMeans
      from sklearn.decomposition import PCA
      import matplotlib
      # 設置matplotlib后端以避免PyCharm兼容性問題
      matplotlib.use('Agg')
      import matplotlib.pyplot as plt
      import seaborn as sns
      
      
      class FraudTextCluster:
          def __init__(self, k=30, min_len=5, max_len=30):
              """
              初始化聚類器
              :param k: 聚類數量(默認為30)
              :param min_len: 最短句子長度(字符數)
              :param max_len: 最長句子長度(字符數)
              """
              self.k = k
              self.min_len = min_len
              self.max_len = max_len
              # 加載中文嵌入模型(論文使用的bge-large-zh-v1.5)
              self.model = SentenceTransformer('D:\\llms\\bge-large-zh-v1.5')
      
          def preprocess(self, texts):
              """
              文本預處理:分割句子并過濾無效短句
              :param texts: 原始文本列表(每個元素為一個詐騙樣本)
              :return: 有效短句列表
              """
              short_sentences = []
              for text in texts:
                  # 按標點符號分割句子
                  sentences = re.split(r'[。?!;,]', text)
                  for sent in sentences:
                      # 過濾長度不符合要求的句子
                      if self.min_len <= len(sent) <= self.max_len:
                          short_sentences.append(sent.strip())
              return short_sentences
      
          def extract_embeddings(self, sentences):
              """
              提取句向量
              :param sentences: 短句列表
              :return: 句向量矩陣 (n_samples, 1024)
              """
              return self.model.encode(sentences, normalize_embeddings=True)
      
          def cluster(self, embeddings):
              """
              K-means聚類
              :param embeddings: 句向量矩陣
              :return: 聚類標簽和中心點
              """
              # 獲取樣本數量(嵌入矩陣的第一維)
              n_samples = len(embeddings)
              if not isinstance(n_samples, int):
                  raise ValueError("embeddings 的長度應該是一個整數")
      
              # 動態調整聚類數量
              k = min(int(self.k), n_samples)  # 確保聚類數不超過樣本數
      
              # 動態調整PCA維度
              if n_samples > 50:
                  pca = PCA(n_components=50)
                  reduced_emb = pca.fit_transform(embeddings)
                  used_emb = reduced_emb
              else:
                  # 樣本數不足50時,不進行降維
                  used_emb = embeddings
      
              # K-means聚類
              kmeans = KMeans(
                  n_clusters=k,
                  init='k-means++',
                  n_init=10,
                  max_iter=300,
                  tol=1e-4,
                  random_state=42
              )
              labels = kmeans.fit_predict(used_emb)
              return labels, kmeans.cluster_centers_
      
          def analyze_clusters(self, sentences, labels):
              """
              分析聚類結果
              :param sentences: 短句列表
              :param labels: 聚類標簽
              :return: 聚類分析字典
              """
              cluster_dict = {}
              for i in range(max(labels) + 1):
                  cluster_dict[i] = []
      
              for sent, label in zip(sentences, labels):
                  cluster_dict[label].append(sent)
      
              return cluster_dict
      
          def visualize_clusters(self, embeddings, labels):
              """
              可視化聚類結果(降維到2D)
              :param embeddings: 句向量
              :param labels: 聚類標簽
              """
              # 降維到2D
              pca = PCA(n_components=2)
              vis_emb = pca.fit_transform(embeddings)
      
              plt.figure(figsize=(12, 8))
              sns.scatterplot(
                  x=vis_emb[:, 0],
                  y=vis_emb[:, 1],
                  hue=labels,
                  palette="viridis",
                  alpha=0.7,
                  s=50
              )
              plt.title("Sentence Clustering Visualization")
              plt.xlabel("PCA Component 1")
              plt.ylabel("PCA Component 2")
              plt.legend(title='Cluster', bbox_to_anchor=(1.05, 1), loc='upper left')
              plt.tight_layout()
              # 保存圖像到文件而不是直接顯示,以避免PyCharm兼容性問題
              plt.savefig('clustering_result.png', dpi=300, bbox_inches='tight')
              print("聚類結果已保存到 clustering_result.png")
              plt.close()  # 關閉圖形以釋放內存
      
          def full_pipeline(self, texts):
              """
              完整聚類流程
              :param texts: 原始文本列表
              :return: 聚類結果字典
              """
              # 1. 預處理
              sentences = self.preprocess(texts)
              print(f"預處理完成,得到{len(sentences)}個有效短句")
      
              if len(sentences) == 0:
                  print("警告:未獲得有效短句,請檢查輸入數據")
                  return {}
      
              # 2. 提取句向量
              embeddings = self.extract_embeddings(sentences)
              print(f"句向量提取完成,維度:{embeddings.shape}")
      
              # 3. 聚類
              labels, centers = self.cluster(embeddings)
              print(f"聚類完成,共生成{len(set(labels))}個簇")
      
              # 4. 分析結果
              cluster_data = self.analyze_clusters(sentences, labels)
      
              # 5. 可視化(可選)
              if len(sentences) > 1:  # 至少需要2個樣本才能可視化
                  self.visualize_clusters(embeddings, labels)
      
              return cluster_data
      
      
      # ====================== 使用示例 ====================== #
      if __name__ == "__main__":
          # 模擬論文中的詐騙文本數據(實際應替換為真實數據)
          sample_texts = [
              "您的賬戶因操作失誤被凍結,需轉賬5000元解凍才能繼續貸款",
              "銀行卡異常凍結,請掃碼支付解凍費,否則無法提現",
              "貸款審核需要驗證還款能力,請先繳納2000元保證金",
              "系統檢測到風險,需要您提供身份證照片和銀行卡截圖",
              "下載我們的APP即可申請無抵押貸款,秒批秒到賬",
              "請稍等,正在為您處理貸款申請,可能需要幾分鐘時間",
              "您好,我是XX銀行客服,請問有什么可以幫您?",
              "麻煩提供下您的姓名和手機號,我們需要登記信息",
              "貸款已審批通過,但需要先支付手續費才能放款",
              "您的賬戶存在異常操作,請立即聯系客服處理"
          ]
      
          # 初始化聚類器(參數與論文一致)
          clusterer = FraudTextCluster(k=30, min_len=5, max_len=30)
      
          # 運行完整流程
          results = clusterer.full_pipeline(sample_texts)
      
          # 打印聚類結果(每個簇的前3個句子)
          print("\n聚類結果示例:")
          for cluster_id, sentences in results.items():
              print(f"\nCluster {cluster_id} (樣本數: {len(sentences)}):")
              for i, sent in enumerate(sentences[:3]):
                  print(f"  - {sent}")
                  
      輸出:
      預處理完成,得到21個有效短句
      句向量提取完成,維度:(21, 1024)
      聚類完成,共生成21個簇
      聚類結果已保存到 clustering_result.png
      
      聚類結果示例:
      
      Cluster 0 (樣本數: 1):
        - 系統檢測到風險
      
      Cluster 1 (樣本數: 1):
        - 您的賬戶存在異常操作
      
      Cluster 2 (樣本數: 1):
        - 貸款已審批通過
      
      Cluster 3 (樣本數: 1):
        - 請掃碼支付解凍費
      
      Cluster 4 (樣本數: 1):
        - 需要您提供身份證照片和銀行卡截圖
      
      Cluster 5 (樣本數: 1):
        - 請先繳納2000元保證金
      
      Cluster 6 (樣本數: 1):
        - 可能需要幾分鐘時間
      
      Cluster 7 (樣本數: 1):
        - 請立即聯系客服處理
      
      Cluster 8 (樣本數: 1):
        - 請問有什么可以幫您
      
      Cluster 9 (樣本數: 1):
        - 否則無法提現
      
      Cluster 10 (樣本數: 1):
        - 秒批秒到賬
      
      Cluster 11 (樣本數: 1):
        - 麻煩提供下您的姓名和手機號
      
      Cluster 12 (樣本數: 1):
        - 貸款審核需要驗證還款能力
      
      Cluster 13 (樣本數: 1):
        - 下載我們的APP即可申請無抵押貸款
      
      Cluster 14 (樣本數: 1):
        - 我們需要登記信息
      
      Cluster 15 (樣本數: 1):
        - 我是XX銀行客服
      
      Cluster 16 (樣本數: 1):
        - 需轉賬5000元解凍才能繼續貸款
      
      Cluster 17 (樣本數: 1):
        - 正在為您處理貸款申請
      
      Cluster 18 (樣本數: 1):
        - 但需要先支付手續費才能放款
      
      Cluster 19 (樣本數: 1):
        - 銀行卡異常凍結
      
      Cluster 20 (樣本數: 1):
        - 您的賬戶因操作失誤被凍結
      

      image

      4. 特征權重分配

      • 高權重特征(5類,權重=20):
        資金周轉(3)、出錯(9)、截圖(10)、凍結解凍(24)、提現(27) (直接對應詐騙關鍵環節)
      • 低權重特征(10類,權重=10):
        其他貸款相關類別(如還款、審核、身份證等)
      • 判定規則:累計權重 ≥45 即判定為詐騙。
      提示詞自動生成(APE方法)

      針對每個聚類特征,自動生成優化提示詞:

      1. 生成模板:

        "請找出‘特征句子’和非特征句子的區別,生成一個prompt用于檢測特征句子。示例:  
        特征句:[正樣本1]、[正樣本2]...  
        非特征句:[負樣本1]、[負樣本2]..."
        
      2. 優化流程:

        • 初始生成:用聚類結果中的正/負樣本填充模板,生成候選提示詞。
          • 舉例:如“賬戶被凍結需轉賬解凍”
            • 正樣本(詐騙話術):
              “您的賬戶因操作失誤被凍結,需轉賬5000元解凍”
              “銀行卡異常凍結,請掃碼支付解凍費”
            • 負樣本(正常對話):
              “系統卡頓請稍后重試”
              “網絡延遲導致交易失敗”
        • 評分篩選
          • 測試效果,例如:
            • 召回率(Recall)= 75%(正確識別15/20個真實“凍結解凍”句)
            • 精確率(Precision)= 75%(20個判定結果中15個正確)
          • 計算得分:Score = 0.6×85% + 0.4×75% = 81%
          • 結果:該提示詞進入Top 5候選(需與其他生成提示詞比較得分)。。
        • 迭代優化:對高分提示詞語義變體重采樣(如調整措辭、擴充描述)。
      3. 最終提示詞示例:

        "請在文本中查找涉及賬戶凍結、解凍要求的句子,典型話術如‘需轉賬解凍’‘賬戶被凍結’。  
        輸出格式:JSON數組,包含原文句子、判斷理由、是否特征句。"
        

      實驗與結果

      1. 數據預處理

        • 數據來源:944條真實語音對話 → 過濾為667條文本(含152條貸款詐騙數據)。
        • 預處理:
          • 語音轉寫糾錯(GLM-4-9B模型增強可讀性)。
          • 隱私脫敏(Qwen2.5-14B-Instruct檢測敏感信息,人工核驗)。
        • 標注:5名標注員3輪標注(獨立-交叉-合并),主題分類首輪平均F1=0.810。
      2. 關鍵實驗結果

        • 主題分類:召回率84.9%,精確率72.2%,F1=0.782(接近人工標注水平)。
        • 手工特征分類:召回率79.6%,精確率87.6%,F1=0.834。
        • 自動聚類特征分類:召回率81.6%,精確率84.9%,F1=0.832(與手工方案性能相當且優于人工首輪標注)。
      3. 對比優勢

        方案 召回率 精確率 F1值
        人工首輪標注 79.6% 82.4% 0.810
        手工特征 79.6% 87.6% 0.834
        自動聚類特征 81.6% 84.9% 0.832

      應用價值與展望

      1. 實際意義
        • 少量樣本高效預警:僅需數十個樣本構建分類器(APE),快速響應新型詐騙變種(傳統方法需更新知識庫)。
        • 全流程優化:自動化特征提取和提示詞生成將人工介入環節減少50%以上,顯著提升處理效率。
      2. 未來方向
        • 擴展至其他詐騙類型(如冒充客服、投資詐騙)。
        • 優化聚類算法特征權重分配策略。
      posted @ 2025-09-04 23:01  PamShao  閱讀(417)  評論(1)    收藏  舉報
      主站蜘蛛池模板: 成人国产精品中文字幕| 国产AV福利第一精品| 国产网红主播精品一区| 国产人妻大战黑人20p| 十八禁午夜福利免费网站| 午夜射精日本三级| 国产成人精品午夜在线观看| 18禁黄网站免费| 国产精品美女黑丝流水| 露脸一二三区国语对白| 亚洲人成网线在线播放VA| 亚洲综合一区二区国产精品| 18禁黄网站免费| 天堂www在线中文| 日韩中文字幕高清有码| 亚欧成人精品一区二区乱| 久久一日本道色综合久久| 亚洲偷自拍国综合| 亚洲色拍拍噜噜噜最新网站| 久久久婷婷成人综合激情| 在线观看特色大片免费视频| 亚洲精品国精品久久99热| 日本少妇自慰免费完整版| 91青青草视频在线观看| 亚洲国产另类久久久精品| 一级女性全黄久久片免费| 色噜噜狠狠色综合成人网| 久久精品不卡一区二区| 亚洲高清有码中文字| 精品人妻码一区二区三区| 日本高清不卡一区二区三| 日韩精品一区二区午夜成人版 | 国产欧美日韩精品a在线观看| 亚洲sm另类一区二区三区| 亚洲一区在线成人av| 蜜臀久久99精品久久久久久| 激情综合网激情五月伊人| 成人午夜在线观看刺激| 午夜福利影院不卡影院| 成在人线av无码免费看网站直播| 国产精品国产三级国快看|