TWI689841B - 資料加密、機器學習模型訓練方法、裝置及電子設備 - Google Patents
資料加密、機器學習模型訓練方法、裝置及電子設備 Download PDFInfo
- Publication number
- TWI689841B TWI689841B TW107116749A TW107116749A TWI689841B TW I689841 B TWI689841 B TW I689841B TW 107116749 A TW107116749 A TW 107116749A TW 107116749 A TW107116749 A TW 107116749A TW I689841 B TWI689841 B TW I689841B
- Authority
- TW
- Taiwan
- Prior art keywords
- matrix
- encryption
- dimensional
- data
- target
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computer Security & Cryptography (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Algebra (AREA)
- Medical Informatics (AREA)
- Probability & Statistics with Applications (AREA)
- Operations Research (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Complex Calculations (AREA)
Abstract
公開一種資料加密方法,包括:基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣;基於PCA演算法對所述目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣;將所述加密矩陣傳輸至建模服務端,由所述建模服務端將所述加密矩陣作為訓練樣本訓練機器學習模型。
Description
本說明書涉及電腦應用領域,尤其涉及一種資料加密、機器學習模型訓練方法、裝置及電子設備。
隨著網際網路技術的飛速發展,使用者的個人資料的網路化和透明化已經成為不可阻擋的大趨勢。對於一些面向使用者提供網際網路服務的服務平臺而言,可以通過採集使用者日常產生的服務資料,收集到海量的使用者資料。而這些使用者資料對於服務平臺的運營方來說,是非常珍貴的“資源”,服務平臺的運營方可以通過資料採擷和機器學習,從這些“資源”中挖掘出大量有價值的資訊。例如,在實際應用中,可以結合具體業務場景,從這些海量使用者資料中提取出若干個維度的資料特徵,並將提取出的這些特徵作為訓練樣本,通過特定的機器學習演算法進行訓練構建機器學習模型,然後在該業務場景下應用訓練完成的該機器學習模型,來指導業務運營。
本說明書提出一種資料加密方法,所述方法包括: 基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣; 基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述M值; 將所述加密矩陣傳輸至建模服務端;其中,所述加密矩陣用於訓練機器學習模型。 可選的,所述基於PCA演算法對所述目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,還包括: 對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理; 計算零均值化處理後的所述目標矩陣對應的協方差矩陣; 計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量; 將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣; 將所述目標矩陣與所述投影矩陣相乘,得到所述N*K維的加密矩陣。 可選的,還包括: 將所述投影矩陣作為加密矩陣在本地進行儲存。 可選的,所述基於PCA演算法對所述目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,包括: 判斷本地是否儲存了所述投影矩陣; 如果本地儲存了所述投影矩陣,則將所述N*M維的目標矩陣與所述投影矩陣相乘,得到所述N*K維的加密矩陣; 如果本地未儲存所述投影矩陣,則基於PCA演算法對所述目標矩陣進行加密計算,得到所述N*K維的加密矩陣。 可選的,還包括: 如果所述資料特徵的維度發生變化,或者所述資料特徵表徵的含義發生變化,基於PCA演算法重新對所述目標矩陣進行加密計算,並基於重新計算得到的所述投影矩陣,對本地儲存的投影矩陣進行更新。 本說明書還提出一種資料加密裝置,所述裝置包括: 產生模組,基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣; 計算模組,基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述M值; 傳輸模組,將所述加密矩陣傳輸至建模服務端;其中,所述加密矩陣用於訓練機器學習模型。 可選的,所述計算模組: 對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理; 計算零均值化處理後的所述目標矩陣對應的協方差矩陣; 計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量; 將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣; 將所述目標矩陣與所述投影矩陣相乘,得到所述N*K維的加密矩陣。 可選的,還包括: 儲存模組,將所述投影矩陣作為加密矩陣在本地進行儲存。 可選的,所述計算模組進一步: 判斷本地是否儲存了所述投影矩陣; 如果本地儲存了所述投影矩陣,則將所述N*M維的目標矩陣與所述投影矩陣相乘,得到所述N*K維的加密矩陣; 如果本地未儲存所述投影矩陣,則基於PCA演算法對所述目標矩陣進行加密計算,得到所述N*K維的加密矩陣。 可選的,還包括: 更新模組,如果所述資料特徵的維度發生變化,或者所述資料特徵表徵的含義發生變化,基於PCA演算法重新對所述目標矩陣進行加密計算,並基於重新計算得到的所述投影矩陣,對本地儲存的投影矩陣進行更新。 本說明書還提出一種機器學習模型訓練方法,所述方法包括 接收資料提供方服務端傳輸的加密矩陣;其中,所述加密矩陣為所述資料提供方服務端基於PCA演算法針對N*M維的目標矩陣進行加密計算,得到的N*K維的加密矩陣;所述K值小於所述M值; 將所述加密矩陣作為訓練樣本訓練機器學習模型。 可選的,所述將所述加密矩陣作為訓練樣本訓練機器學習模型,包括: 將所述加密矩陣作為訓練樣本,與本地的訓練樣本進行融合,並基於融合後的訓練樣本訓練機器學習模型。 本說明書還提出一種機器學習模型訓練裝置,所述裝置包括 接收模組,接收資料提供方服務端傳輸的加密矩陣;其中,所述加密矩陣為所述資料提供方服務端基於PCA演算法針對N*M維的目標矩陣進行加密計算,得到的N*K維的加密矩陣;所述K值小於所述M值; 訓練模組,將所述加密矩陣作為訓練樣本訓練機器學習模型。 可選的,所述訓練模組: 將所述加密矩陣作為訓練樣本,與本地的訓練樣本進行融合,並基於融合後的訓練樣本訓練機器學習模型。 本說明書還提出一種機器學習模型訓練系統,所述系統包括: 資料提供方服務端,基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣,並基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述M值;以及,將所述加密矩陣傳輸至建模服務端; 建模服務端,基於所述加密矩陣訓練機器學習模型。 可選的,所述建模服務端進一步: 將所述加密矩陣作為訓練樣本,與本地的訓練樣本進行融合,並基於融合後的訓練樣本訓練機器學習模型。 本說明書還提出一種電子設備,包括: 處理器; 用於儲存機器可執行指令的記憶體; 其中,通過讀取並執行所述記憶體儲存的與資料加密的控制邏輯對應的機器可執行指令,所述處理器被促使: 基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣; 基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述M值; 將所述加密矩陣傳輸至建模服務端;其中,所述加密矩陣用於訓練機器學習模型。 本說明書還提出一種電子設備,包括: 處理器; 用於儲存機器可執行指令的記憶體; 其中,通過讀取並執行所述記憶體儲存的與機器學習模型訓練的控制邏輯對應的機器可執行指令,所述處理器被促使: 接收資料提供方服務端傳輸的加密矩陣;其中,所述加密矩陣為所述資料提供方服務端基於PCA演算法針對N*M維的目標矩陣進行加密計算,得到的N*K維的加密矩陣;所述K值小於所述M值; 將所述加密矩陣作為訓練樣本訓練機器學習模型。 本說明書中,通過基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣,並基於PCA演算法對該目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,然後將該加密矩陣傳輸至建模服務端,由該建模服務端將該加密矩陣作為訓練樣本訓練機器學習模型; 一方面,由於在將基於PCA演算法加密後的加密矩陣傳輸至建模服務端後,建模服務端基於加密後的加密矩陣,通常無法還原出原始的目標矩陣,因而能夠最大程度的對使用者的隱私資料進行隱私保護,避免將資料樣本提交至建模服務端進行模型訓練的過程中造成使用者的隱私洩露; 另一方面,由於基於PCA演算法對上述目標矩陣進行加密計算後,得到的加密矩陣中的維度少於原始的目標矩陣,因此可以降低在向建模服務端傳輸資料樣本時的傳輸開銷;而且,由於使用PCA演算法對上述目標矩陣進行加密計算時,能夠最大程度保留原始資料樣本中的信息量,因此在將加密後的加密矩陣傳輸至建模服務端進行模型訓練時,仍然能夠保證模型訓練的精度。
在大數據時代,通過對海量資料進行挖掘,可以獲得各種形式的有用資訊,因此資料的重要性不言而喻。不同的機構都擁有各自的資料,但是任何一家機構的資料採擷效果,都會受限於其自身擁有的資料數量和種類。針對該問題,一種直接的解決思路是:多家機構相互合作,將資料進行共用,從而實現更好的資料採擷效果,實現共贏。 然而對於資料擁有方而言,資料本身是一種具有很大價值的資產,而且出於保護隱私、防止洩露等需求,資料擁有方往往並不願意直接把資料提供出來,這種狀況導致“資料共用”在現實中很難實際運作。因此,如何在充分保證資料安全的前提下實現資料共用,已經成為行業內備受關注的問題。 在本說明書中,旨在提出一種基於PCA演算法對建模所需的原始使用者資料進行加密,來對原始的使用者資料進行隱私保護,並最大程度保留原始使用者資料中的信息量,從而可以在不犧牲建模精度的前提下,兼顧對使用者的隱私保護的技術方案。 在實現時,可以從建模所需的N條資料樣本中分別提取出N個維度的資料特徵,並基於該N條資料樣本,以及分別對應於該N條資料樣本的M個維度的資料特徵,產生一個N*M維的目標矩陣。 當產生上述N*M維的目標矩陣後,可以基於PCA演算法對該目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,並將該加密矩陣作為訓練樣本傳輸至建模服務端;其中,K的取值小於M的取值。 上述建模服務端在收到該加密矩陣後,可以將該加密矩陣作為訓練樣本訓練機器學習模型;比如,可以將上述加密矩陣與其本地的訓練樣本進行融合,然後基於融合後的訓練樣本來訓練機器學習模型。 一方面,由於在將基於PCA演算法加密後的加密矩陣傳輸至建模服務端後,建模服務端基於加密後的加密矩陣,通常無法還原出原始的目標矩陣,因而能夠最大程度的對使用者的隱私資料進行隱私保護,避免將資料樣本提交至建模服務端進行模型訓練的過程中造成使用者的隱私洩露; 另一方面,由於基於PCA演算法對上述目標矩陣進行加密計算後,得到加密矩陣中的維度少於原始的目標矩陣,因此可以降低在向建模服務端傳輸資料樣本時的傳輸開銷;而且,由於使用PCA演算法對上述目標矩陣進行加密計算時,能夠最大程度保留原始資料樣本中的信息量,因此在將加密後的加密矩陣傳輸至建模服務端進行模型訓練時,仍然能夠保證模型訓練的精度。 下面通過具體實施例並結合具體的應用場景進行詳細描述。 請參考圖1,圖1是本說明書一實施例提供的一種資料加密方法,應用於資料提供方服務端,執行以下步驟: 步驟102,基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣; 步驟104,基於PCA演算法對所述目標矩陣進行降維計算,得到加密後的N*K維的加密矩陣;其中,所述K值小於所述M值; 步驟106,將所述加密矩陣傳輸至建模服務端;其中,所述加密矩陣用於訓練機器學習模型。 上述資料提供方服務端,可以與建模服務端進行對接,向上述建模服務端提供建模所需的資料樣本; 例如,在實際應用中,上述資料提供方和建模方可以分別對應不同的運營方,資料提供方可以將採集到的使用者資料作為資料樣本,傳輸至上述建模方來完成資料建模;比如,上述建模方可以是Alipay的資料運營平臺,而上述資料提供方可以是與Alipay的資料運營平臺對接的諸如協力廠商銀行、快遞公司等面向使用者提供網際網路服務的服務平臺。 在初始狀態下,資料提供方的服務端可以在後臺收集使用者日常產生的使用者資料,並從收集到的這些使用者資料中採集N條使用者資料作為資料樣本,並基於採集到的這些資料樣本產生一個初始化的資料樣本集合。 例如,在示出的一種實施方式中,可以從收集到的這些使用者資料中,採集出N條涉及使用者隱私的敏感性資料,然後基於這些敏感性資料產生一個初始化的資料樣本集合。 其中,採集到的上述N條資料樣本的具體數量,在本說明書中不進行特別限定,本領域技術人員可以基於實際的需求進行設置。 上述使用者資料的具體形態,取決於具體的業務場景以及建模需求,在本說明書中也不進行特別限定;例如,在實際應用中,如果希望創建出一個用於對使用者發起的支付交易進行風險評估的評分卡模型,那麼在這種業務場景下,上述使用者資料則可以是基於使用者通過支付使用者端產生的交易資料。 當基於採集到的N條資料樣本產生上述資料樣本集合後,上述資料提供方服務端還可以對該資料樣本集合中的資料樣本進行預處理。 其中,對上述資料樣本集合中的資料樣本進行預處理,通常包括對上述資料樣本集合中的資料樣本進行資料清洗、補充缺省值、歸一化處理或者其它形式的預處理過程。通過對資料樣本集合中的資料樣本進行預處理,可以將採集到的資料樣本轉換成適宜進行模型訓練的標準化的資料樣本。 當對上述資料樣本集合中的資料樣本預處理完成後,上述資料提供方服務端可以從上述資料樣本集合中的各資料樣本中,分別提取出M個維度的資料特徵; 其中,提取出的上述M個維度的資料特徵的數量,在本說明書中不進行特別限定,本領域技術人員可以基於實際的建模需求進行選擇。 另外,提取出的資料特徵的具體類型,在本說明書中也不進行特別限定,本領域技術人員可以基於實際的建模需求,從上述資料樣本中實際所包含的資訊中來人工選定; 例如,在一種實施方式中,上述建模方可以基於實際的建模需求,預先選定M個維度的資料特徵,然後將選定的資料特徵提供給上述資料提供方,由上述資料提供方從上述資料樣本中來提取與各個維度的資料特徵對應的資料特徵取值。 當資料提供方提取出與上述資料樣本集合中的各資料樣本中,分別提取出M個維度的資料特徵後,可以基於提取出的M個維度的資料特徵對應的資料特徵取值,為各資料樣本分別產生一個資料特徵向量,然後基於各資料樣本的資料特徵向量,構建出一個N*M維的目標矩陣。 其中,在實現時,上述M維的資料特徵,可以對應於上述目標矩陣的行,也可以對應於上述目標矩陣的列,在本說明書中不進行特別限定。 例如,請參見圖2,以上述M維的資料特徵對應於上述目標矩陣的行為例,上述目標矩陣可以表示成如圖2所示的形式。在圖2所示的目標矩陣中,每一列表示一條資料樣本,每一行表示由M個維度的資料特徵構成的一個特徵向量。 當上述資料提供方的服務端基於N條資料樣本,以及分別對應於該N條資料樣本的M個維度的資料特徵,產生N*M維的目標矩陣後,可以基於PCA演算法對上述目標矩陣進行加密計算,得到一個N*K維的加密矩陣。 由於經過PCA降計算的後的加密矩陣,通常無法被還原成原始的目標矩陣,因而加密後得到的上述加密矩陣,則是一個經過加密的加密矩陣。通過這種方式,能夠最大程度的對使用者的隱私資料進行隱私保護。 請參見圖3,圖3為本說明書示出的一種基於PCA演算法對上述目標矩陣進行加密計算的流程,包括如下步驟: 步驟302,對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理; 所謂零均值化處理,是指將一組數值中的每個數值,減去該組數值的均值的過程。在本說明書中,對上述目標矩陣中與上述M個維度的資料特徵對應的向量中的取值,分別進行零均值化處理,是指與上述M個維度的資料特徵對應的向量中的各個取值,分別減去該向量中所有取值的平均值的過程。 在實現時,可以將上述目標矩陣中與上述M個維度的資料特徵對應的向量依次選定為目標向量,然後計算該目標向量中各個取值的平均值,然後將該目標向量中各個取值,分別減去該平均值。 例如,以圖2中示出的目標矩陣為例,可以計算圖2中的目標矩陣中的每一行的平均值,然後將每一行中的各個數值,依次減去該行的平均值。 步驟304,計算零均值化處理後的所述目標矩陣對應的協方差矩陣; 所述協方差矩陣,是指由目標矩陣中各個向量中的各個取值之間的協方差構成的矩陣。 在計算零均值化處理後的上述目標矩陣的協方差矩陣時,可以分別計算與上述M個維度的資料特徵對應的向量,與上述目標矩陣中其它維度的資料特徵對應的向量之間的協方差,然後基於計算得到的協方差,產生一個由計算得到的協方差構成的協方差矩陣。 其中,需要說明的是,關於協方差矩陣的具體計算過程,在本說明書中不再結合具體的示例進行詳細描述,本領域技術人員在將本說明書中記載的技術方案付諸實現時,可以參考相關技術中的記載;例如,本領域技術人員可以利用一些諸如matlab等成熟的工具,來計算上述目標矩陣的協方差矩陣。 步驟306,計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量; 當計算出上述目標矩陣的協方差矩陣後,可以進一步計算該協方差矩陣的特徵值,以及與各個特徵值對應的特徵向量。其中,協方差矩陣的特徵值,通常取決於協方差矩陣的階數;比如,對於一個N*M的協方差矩陣而言,其特徵值為N*M個。 在計算上述協方差矩陣的特徵值以及特徵向量時,首先可以將上述協方差矩陣的特徵多項式,然後求出該特徵多項式的全部根;此時求出的每一個根都是一個特徵值。當求出全部特徵值後,可以將該特徵值代入到與該協方差矩陣對應的線性方程組進行求解,得到與各個特徵值對應的特徵向量。 其中,需要說明的是,關於協方差矩陣的特徵值和與特徵值對應的特徵向量的具體計算過程,在本說明書中不再結合具體的示例進行詳細描述,本領域技術人員在將本說明書中記載的技術方案付諸實現時,可以參考相關技術中的記載;例如,本領域技術人員可以利用一些諸如matlab等成熟的工具,來計算上述協方差矩陣特徵值以及對應於特徵值的特徵向量。 步驟308,將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣; 當計算出上述協方差矩陣的所有特徵值,以及與各個特徵值對應的特徵向量後,可以進一步對各個特徵向量按照其對應的特徵值的大小進行排序;比如,按照由大到小的順序進行排序。當按照特徵值的取值大小對各個特徵向量進行排序完成後,可以提取出特徵值最大的K個特徵向量,產生一個M*K維的投影矩陣。 其中,上述K的取值,可以是一個小於上述M值的取值,在實際應用中,上述K的取值具體可以由本領域人員結合實際的需求進行人工指定。 步驟310,將所述目標矩陣與所述投影矩陣相乘,得到加密後的所述N*K維的加密矩陣。 上述M*K維的投影矩陣,即為最終對原始的目標矩陣進行加密的投影矩陣。在基於該M*K維的投影矩陣,對原始的N*M的目標矩陣進行加密時,具體可以將原始的高維度的目標矩陣,映射到一個低維度的投影矩陣空間中。 在實現時,將上述原始的N*M的目標矩陣映射到上述M*K維的投影矩陣空間,具體可以通過將上述原始的N*M的目標矩陣與上述M*K維的投影矩陣相乘來實現(即線性投影);其中,上述原始的N*M的目標矩陣與上述M*K維的投影矩陣相乘,可以採用右乘也可以採用左乘; 比如,假設上述M個維度的資料特徵作為上述目標矩陣的列時,可以通過將上述原始的N*M的目標矩陣與上述M*K維的投影矩陣進行右乘計算,將上述原始的N*M的目標矩陣映射到上述M*K維的投影矩陣空間;那麼,在實現時,也可以通過將上述原始的N*M的目標矩陣與上述M*K維的投影矩陣進行左乘,然後對左乘結果進行轉置,將上述原始的N*M的目標矩陣映射到上述M*K維的投影矩陣空間。 當將上述原始的N*M的目標矩陣映射到上述M*K維的投影矩陣空間後,可以得到一個N*K維的加密矩陣。此時,該加密矩陣即為經過上述M*K維的映射矩陣進行加密後的資料樣本。 其中,在示出的一種實施方式中,上述資料提供方服務端,在通過以上示出的計算過程,計算出上述N*K維的投影矩陣後,還可以將該投影矩陣作為加密矩陣在本地進行儲存。 後續上述資料提供方服務端,再次收集到最新的N條資料資料樣本,並基於該N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生了N*M維的矩陣後,可以判斷本地是否儲存了上述投影矩陣; 如果本地儲存了上述投影矩陣,可以直接使用已經儲存的上述投影矩陣,對上述N*M的矩陣進行加密,具體的加密過程不再贅述。 當然,如果本地未儲存上述投影矩陣,那麼可以按照以上描述的基於PCA演算法的降維過程,重新對上述加密矩陣進行加密計算,產生上述投影矩陣。 另外,需要說明的是,在實際應用中,如果上述M個維度的資料特徵的維度發生變化(比如增加了新的維度的資料特徵,或者刪減了其中部分維度的資料特徵),或者上述M個維度的資料特徵中的全部或者部分維度的資料特徵所表徵的含義發生變化,那麼此時上述資料提供方可以基於以上描述的基於PCA演算法的加密計算過程,重新計算出上述投影矩陣,並使用重新計算出的投影矩陣對本地應儲存的投影矩陣進行更新。 通過這種方式,可以在建模所需的資料特徵發生更新時,及時的對本地儲存的已失效的加密矩陣進行更新,從而可以避免利用已失效的加密矩陣對原始的目標矩陣進行加密,而造成的資料信息量的損失影響建模精度。 在本說明書中,當按照以上示出的基於PCA演算法的加密計算過程對所述目標矩陣進行降維計算,得到了加密後的N*K維的加密矩陣後,上述資料提供方服務端可以將該加密矩陣作為訓練樣本,傳輸至與上述資料提供方對接的建模服務端。 而建模服務端在收到上述資料提供方服務端傳輸的上述加密矩陣後,建模服務端可以將該加密矩陣作為訓練樣本訓練機器學習模型; 其中,在示出的一種實施方式中,上述建模服務端具體可以將上述加密矩陣,與本地儲存的訓練樣本進行融合,然後基於融合後的訓練樣本,來聯合訓練機器學習模型。 請參見圖4,圖4為本說明書示出的一種融合多方資料樣本進行聯合建模的示意圖。 在一種場景下,上述建模方可以是Alipay的資料運營平臺,而上述資料提供方可以包括與Alipay的資料運營平臺對接的諸如銀行、協力廠商金融機構等面向使用者提供網際網路服務的服務平臺。在實際應用中,由於Alipay的資料運營平臺對於上述資料提供方而言,是一個非授信的協力廠商,因此上述資料提供方直接將本地的使用者交易資料提供給Alipay的資料運營平臺進行資料建模,可能在資料傳輸環節中造成使用者隱私洩露的問題。在這種情況下,各資料提供方可以基於PCA演算法對基於上述投影矩陣對基於原始的交易資料樣本產生的N*M維的目標矩陣進行加密計算,得到一個N*K維的加密矩陣,然後作為訓練樣本傳輸給Alipay的資料運營平臺。而Alipay的資料運營平臺可以將接收到的由各個資料提供方提供的訓練樣本,與當地語系化的資料樣本進行融合,然後基於融合後的訓練樣本來訓練機器學習模型;比如,基於銀行以及協力廠商金融機構提供的使用者交易資料,與Alipay的資料運營平臺中當地語系化的使用者交易資料進行融合,聯合訓練處一個用於對使用者的交易進行風險評估的評分卡模型。 其中,需要說明的是,上述機器學習模型的具體類型,在本說明書中不進行特別限定;例如,在實際應用中,上述機器學習模型具體可以是基於有監督的機器學習演算法(比如回歸演算法)搭建的有監督的預測模型;比如,基於使用者的支付交易資料,訓練出的用於評估使用者的交易風險的評分卡模型;也可以基於無監督的機器學習演算法(比如k-means演算法)搭建的無監督的分類模型;比如,基於使用者的點擊以及訪問資料,訓練出的用於向使用者有針對性的投放廣告或者頁面內容的推薦模型。 當基於以上示出的建模方式,訓練出上述機器學習模型後,後續上述資料提供方,仍然可以基於上述投影矩陣,對基於採集到的資料樣本以及相關資料特徵構建的資料矩陣進行加密,然後傳輸至上述機器學習模型進行計算,得到模型的輸出結果;比如,以上述機器學習模型為基於使用者的支付交易資料,訓練出的用於評估使用者的交易風險的評分卡模型為例,上述資料提供方可以基於上述投影矩陣,對基於採集到的使用者的交易資料構建的資料矩陣進行加密計算,然後作為輸入資料傳輸至上述評分卡模型,得到與每筆交易對應的風險評分。 上面為本說明書實施例提供的一種資料加密方法,請參見圖5,基於同樣的思路,本說明書實施例提供的一種機器學習模型訓練方法,應用於建模服務端,執行以下步驟: 步驟502,接收資料提供方服務端傳輸的加密矩陣;其中,所述加密矩陣為所述資料提供方服務端基於PCA演算法針對N*M維的目標矩陣進行加密計算,得到的N*K維的加密矩陣;所述K值小於所述M值; 步驟504,將所述加密矩陣作為訓練樣本訓練機器學習模型。 其中,圖5中示出的各步驟中的技術特徵對應的實施過程,在本實施例中不再贅述,可以參照以上實施例的記載。 通過以上各實施例可知,通過基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣,並基於PCA演算法對該目標矩陣進行加密計算,得到N*K維的加密矩陣,然後將該加密矩陣傳輸至建模服務端,由該建模服務端將該加密矩陣作為訓練樣本訓練機器學習模型; 一方面,由於在將基於PCA演算法加密後的加密矩陣傳輸至建模服務端後,建模服務端基於加密後的加密矩陣,通常無法還原出原始的目標矩陣,因而能夠最大程度的對使用者的隱私資料進行隱私保護,避免將資料樣本提交至建模服務端進行模型訓練的過程中造成使用者的隱私洩露; 另一方面,由於基於PCA演算法對上述目標矩陣進行加密計算後,得到的加密矩陣中的維度少於原始的目標矩陣,因此可以降低在向建模服務端傳輸資料樣本時的傳輸開銷; 而且,由於使用PCA演算法對上述目標矩陣進行加密計算時,能夠最大程度保留原始資料樣本中的信息量,因此在將加密後的加密矩陣傳輸至建模服務端進行模型訓練時,仍然能夠保證模型訓練的精度。 與上述方法實施例相對應,本說明書還提供了一種資料加密裝置的實施例。 本說明書的資料加密裝置的實施例可以應用在電子設備上。裝置實施例可以通過軟體實現,也可以通過硬體或者軟硬體結合的方式實現。以軟體實現為例,作為一個邏輯意義上的裝置,是通過其所在電子設備的處理器將非揮發性記憶體中對應的電腦程式指令讀取到記憶體中運行形成的。從硬體層面而言,如圖6所示,為本說明書的資料加密裝置所在電子設備的一種硬體結構圖,除了圖6所示的處理器、記憶體、網路介面、以及非揮發性記憶體之外,實施例中裝置所在的電子設備通常根據該電子設備的實際功能,還可以包括其他硬體,對此不再贅述。 圖7是本說明書一示例性實施例示出的一種資料加密裝置的方塊圖。 請參考圖7,所述資料加密裝置70可以應用在前述圖6所示的電子設備中,包括有:產生模組701、計算模組702、傳輸模組703。 其中,產生模組701,基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣; 計算模組702,基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述M值; 傳輸模組703,將所述加密矩陣傳輸至建模服務端;其中,所述加密矩陣用於訓練機器學習模型。 在本實施例中,所述計算模組702: 對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理; 計算零均值化處理後的所述目標矩陣對應的協方差矩陣; 計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量; 將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣; 將所述目標矩陣與所述投影矩陣相乘,得到所述N*K維的加密矩陣。 在本實施例中,所述裝置還包括: 儲存模組704(圖7中未示出),將所述投影矩陣作為加密矩陣在本地進行儲存。 在本實施例中,所述計算模組702進一步: 判斷本地是否儲存了所述投影矩陣; 如果本地儲存了所述投影矩陣,則將所述N*M維的目標矩陣與所述投影矩陣相乘,得到所述N*K維的加密矩陣; 如果本地未儲存所述投影矩陣,則基於PCA演算法對所述目標矩陣進行加密計算,得到所述N*K維的加密矩陣。 在本實施例中,所述裝置70還包括: 更新模組705(圖7中未示出),如果所述資料特徵的維度發生變化,或者所述資料特徵表徵的含義發生變化,基於PCA演算法重新對所述目標矩陣進行加密計算,並基於重新計算得到的所述投影矩陣,對本地儲存的投影矩陣進行更新。 與上述方法實施例相對應,本說明書還提供了一種機器學習模型訓練裝置的實施例。 本說明書的機器學習模型訓練裝置的實施例可以應用在電子設備上。裝置實施例可以通過軟體實現,也可以通過硬體或者軟硬體結合的方式實現。以軟體實現為例,作為一個邏輯意義上的裝置,是通過其所在電子設備的處理器將非揮發性記憶體中對應的電腦程式指令讀取到記憶體中運行形成的。從硬體層面而言,如圖8所示,為本說明書的機器學習模型訓練裝所在電子設備的一種硬體結構圖,除了圖8所示的處理器、記憶體、網路介面、以及非揮發性記憶體之外,實施例中裝置所在的電子設備通常根據該電子設備的實際功能,還可以包括其他硬體,對此不再贅述。 圖9是本說明書一示例性實施例示出的一種資料加密裝置的方塊圖。 請參考圖9,所述機器學習模型訓練裝置90可以應用在前述圖8所示的電子設備中,包括有:接收模組901、訓練模組902。 其中,接收模組901,接收資料提供方服務端傳輸的加密矩陣;其中,所述加密矩陣為所述資料提供方服務端基於PCA演算法針對N*M維的目標矩陣進行加密計算,得到的N*K維的加密矩陣;所述K值小於所述M值; 訓練模組902,將所述加密矩陣作為訓練樣本訓練機器學習模型。 在本實施例中,所述訓練模組902進一步: 將所述加密矩陣作為訓練樣本,與本地的訓練樣本進行融合,並基於融合後的訓練樣本訓練機器學習模型。 上述裝置中各個模組的功能和作用的實現過程具體詳見上述方法中對應步驟的實現過程,在此不再贅述。 對於裝置實施例而言,由於其基本對應於方法實施例,所以相關之處參見方法實施例的部分說明即可。以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分佈到多個網路單元上。可以根據實際的需要選擇其中的部分或者全部模組來實現本說明書方案的目的。本領域普通技術人員在不付出創造性勞動的情況下,即可以理解並實施。 上述實施例闡明的系統、裝置、模組或單元,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為電腦,電腦的具體形式可以是個人電腦、膝上型電腦、蜂窩電話、相機電話、智慧型電話、個人數位助理、媒體播放機、導航設備、電子郵件收發設備、遊戲控制台、平板電腦、可穿戴設備或者這些設備中的任意幾種設備的組合。 與上述方法實施例相對應,本說明書還提供一種機器學習模型訓練系統的實施例。 該機器學習模型訓練系統,可以包括資料提供方服務端和建模服務端。 其中,上述資料提供方服務端,可以基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣,並基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述M值;以及,將所述加密矩陣傳輸至建模服務端; 上述建模服務端,基於所述加密矩陣訓練機器學習模型。 在本實施例中,所述建模服務端進一步: 將所述加密矩陣作為訓練樣本,與本地的訓練樣本進行融合,並基於融合後的訓練樣本訓練機器學習模型。 與上述方法實施例相對應,本說明書還提供了一種電子設備的實施例。該電子設備包括:處理器以及用於儲存機器可執行指令的記憶體;其中,處理器和記憶體通常通過內部匯流排相互連接。在其他可能的實現方式中,所述設備還可能包括外部介面,以能夠與其他設備或者部件進行通信。 在本實施例中,通過讀取並執行所述記憶體儲存的與圖1示出的上述資料加密的控制邏輯對應的機器可執行指令,所述處理器被促使: 基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣; 基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述M值; 將所述加密矩陣傳輸至建模服務端;其中,所述加密矩陣用於訓練機器學習模型。 在本例中,通過讀取並執行所述記憶體儲存的與圖1示出的資料加密的控制邏輯對應的機器可執行指令,所述處理器還被促使: 對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理; 計算零均值化處理後的所述目標矩陣對應的協方差矩陣; 計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量; 將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣; 將所述目標矩陣與所述投影矩陣相乘,得到加密後的所述N*K維的加密矩陣。 在本例中,通過讀取並執行所述記憶體儲存的與圖1示出的資料加密的控制邏輯對應的機器可執行指令,所述處理器還被促使: 將所述投影矩陣作為加密矩陣在本地進行儲存。 在本例中,通過讀取並執行所述記憶體儲存的與圖1示出的資料加密的控制邏輯對應的機器可執行指令,所述處理器還被促使: 判斷本地是否儲存了所述投影矩陣; 如果本地儲存了所述投影矩陣,則將所述N*M維的目標矩陣與所述投影矩陣相乘,得到所述N*K維的加密矩陣; 如果本地未儲存所述投影矩陣,則基於PCA演算法對所述目標矩陣進行加密計算,得到所述N*K維的加密矩陣。 在本例中,通過讀取並執行所述記憶體儲存的與資料加密的控制邏輯對應的機器可執行指令,所述處理器還被促使: 如果所述資料特徵的維度發生變化,或者所述資料特徵所表徵的含義發生變化,基於PCA演算法重新對所述目標矩陣進行加密計算,並基於重新計算得到的所述投影矩陣,對本地儲存的投影矩陣進行更新。 與上述方法實施例相對應,本說明書還提供了另一種電子設備的實施例。該電子設備包括:處理器以及用於儲存機器可執行指令的記憶體;其中,處理器和記憶體通常通過內部匯流排相互連接。在其他可能的實現方式中,所述設備還可能包括外部介面,以能夠與其他設備或者部件進行通信。 在本實施例中,通過讀取並執行所述記憶體儲存的與圖5中示出的機器學習模型訓練的控制邏輯對應的機器可執行指令,所述處理器被促使: 接收資料提供方服務端傳輸的加密矩陣;其中,所述加密矩陣為所述資料提供方服務端基於PCA演算法針對N*M維的目標矩陣進行加密計算,得到的N*K維的加密矩陣;所述K值小於所述M值; 將所述加密矩陣作為訓練樣本訓練機器學習模型。 在本實施例中,通過讀取並執行所述記憶體儲存的與圖5中示出的機器學習模型訓練的控制邏輯對應的機器可執行指令,所述處理器還被促使: 將所述加密矩陣作為訓練樣本,與本地的訓練樣本進行融合,並基於融合後的訓練樣本訓練機器學習模型。 本領域技術人員在考慮說明書及實踐這裡公開的發明後,將容易想到本說明書的其它實施方案。本說明書旨在涵蓋本說明書的任何變型、用途或者適應性變化,這些變型、用途或者適應性變化遵循本說明書的一般性原理並包括本說明書未公開的本技術領域中的公知常識或慣用技術手段。說明書和實施例僅被視為示例性的,本說明書的真正範圍和精神由下面的申請專利範圍指出。 應當理解的是,本說明書並不局限於上面已經描述並在附圖中示出的精確結構,並且可以在不脫離其範圍進行各種修改和改變。本說明書的範圍僅由所附的申請專利範圍來限制。 上述對本說明書特定實施例進行了描述。其它實施例在所附申請專利範圍的範圍內。在一些情況下,在申請專利範圍中記載的動作或步驟可以按照不同於實施例中的順序來執行並且仍然可以實現期望的結果。另外,在附圖中描繪的過程不一定要求示出的特定順序或者連續順序才能實現期望的結果。在某些實施方式中,多工處理和並行處理也是可以的或者可能是有利的。 以上所述僅為本申請的較佳實施例而已,並不用以限制本申請,凡在本申請的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本申請保護的範圍之內。
102、104、106、302、304、306、308、310‧‧‧步驟70‧‧‧資料加密裝置701‧‧‧產生模組702‧‧‧計算模組703‧‧‧傳輸模組90‧‧‧機器學習模型訓練裝置901‧‧‧接收模組902‧‧‧訓練模組
圖1是本說明書一實施例示出的一種資料加密方法的流程圖; 圖2是本說明書一實施例示出的N*M維的目標矩陣示意圖; 圖3是本說明書一實施例示出的基於PCA演算法對上述目標矩陣進行機密計算的流程圖; 圖4是本說明書一實施例示出的一種融合多方資料樣本進行聯合建模的示意; 圖5是本說明書一實施例示出的一種機器學習模型訓練方法的流程圖; 圖6是本說明書一實施例提供的承載所述資料加密裝置的電子設備所涉及的硬體結構圖; 圖7是本說明書一實施例提供的所述資料加密裝置的的邏輯方塊圖; 圖8是本說明書一實施例提供的承載所述機器學習模型訓練裝置的電子設備所涉及的硬體結構圖; 圖9是本說明書一實施例提供的所述機器學習模型訓練裝置的邏輯方塊圖。
Claims (16)
- 一種資料加密方法,所述方法包括:基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣;基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述M值;將所述加密矩陣傳輸至建模服務端;其中,所述加密矩陣用於訓練機器學習模型;其中所述基於PCA演算法對所述目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,還包括:對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理;計算零均值化處理後的所述目標矩陣對應的協方差矩陣;計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量;將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣;將所述目標矩陣與所述投影矩陣相乘,得到加密後的所述N*K維的加密矩陣。
- 如申請專利範圍第1項所述的方法,還包括: 將所述投影矩陣作為加密矩陣在本地進行儲存。
- 如申請專利範圍第2項所述的方法,所述基於PCA演算法對所述目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,包括:判斷本地是否儲存了所述投影矩陣;如果本地儲存了所述投影矩陣,則將所述N*M維的目標矩陣與所述投影矩陣相乘,得到所述N*K維的加密矩陣;如果本地未儲存所述投影矩陣,則基於PCA演算法對所述目標矩陣進行加密計算,得到所述N*K維的加密矩陣。
- 如申請專利範圍第2項所述的方法,還包括:如果所述資料特徵的維度發生變化,或者所述資料特徵表徵的含義發生變化,基於PCA演算法重新對所述目標矩陣進行加密計算,並基於重新計算得到的所述投影矩陣,對本地儲存的投影矩陣進行更新。
- 一種資料加密裝置,所述裝置包括:產生模組,基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣;計算模組,基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述 M值;傳輸模組,將所述加密矩陣傳輸至建模服務端;其中,所述加密矩陣用於訓練機器學習模型;其中所述計算模組進一步:對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理;計算零均值化處理後的所述目標矩陣對應的協方差矩陣;計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量;將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣;將所述目標矩陣與所述投影矩陣相乘,得到所述N*K維的加密矩陣。
- 如申請專利範圍第5項所述的裝置,還包括:儲存模組,將所述投影矩陣作為加密矩陣在本地進行儲存。
- 如申請專利範圍第6項所述的裝置,所述計算模組進一步:判斷本地是否儲存了所述投影矩陣;如果本地儲存了所述投影矩陣,則將所述N*M維的目 標矩陣與所述投影矩陣相乘,得到所述N*K維的加密矩陣;如果本地未儲存所述投影矩陣,則基於PCA演算法對所述目標矩陣進行加密計算,得到所述N*K維的加密矩陣。
- 如申請專利範圍第6項所述的裝置,還包括:更新模組,如果所述資料特徵的維度發生變化,或者所述資料特徵表徵的含義發生變化,基於PCA演算法重新對所述目標矩陣進行加密計算,並基於重新計算得到的所述投影矩陣,對本地儲存的投影矩陣進行更新。
- 一種機器學習模型訓練方法,所述方法包括接收資料提供方服務端傳輸的加密矩陣;其中,所述加密矩陣為所述資料提供方服務端基於PCA演算法針對N*M維的目標矩陣進行加密計算,得到的N*K維的加密矩陣;所述K值小於所述M值;將所述加密矩陣作為訓練樣本訓練機器學習模型;其中所述基於PCA演算法對所述目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,還包括:對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理;計算零均值化處理後的所述目標矩陣對應的協方差矩陣;計算所述協方差矩陣的特徵值以及與所述特徵值對應 的特徵向量;將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣;將所述目標矩陣與所述投影矩陣相乘,得到加密後的所述N*K維的加密矩陣。
- 如申請專利範圍第9項所述的方法,所述將所述加密矩陣作為訓練樣本訓練機器學習模型,包括:將所述加密矩陣作為訓練樣本,與本地的訓練樣本進行融合,並基於融合後的訓練樣本訓練機器學習模型。
- 一種機器學習模型訓練裝置,所述裝置包括接收模組,接收資料提供方服務端傳輸的加密矩陣;其中,所述加密矩陣為所述資料提供方服務端基於PCA演算法針對N*M維的目標矩陣進行加密計算,得到的N*K維的加密矩陣;所述K值小於所述M值;訓練模組,將所述加密矩陣作為訓練樣本訓練機器學習模型;其中所述基於PCA演算法對所述目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,還包括:對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理;計算零均值化處理後的所述目標矩陣對應的協方差矩 陣;計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量;將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣;將所述目標矩陣與所述投影矩陣相乘,得到加密後的所述N*K維的加密矩陣。
- 如申請專利範圍第11項所述的裝置,所述訓練模組:將所述加密矩陣作為訓練樣本,與本地的訓練樣本進行融合,並基於融合後的訓練樣本訓練機器學習模型。
- 一種機器學習模型訓練系統,所述系統包括:資料提供方服務端,基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣,並基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述M值;以及,將所述加密矩陣傳輸至建模服務端;建模服務端,基於所述加密矩陣訓練機器學習模型;其中所述基於PCA演算法對所述目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,還包括:對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理; 計算零均值化處理後的所述目標矩陣對應的協方差矩陣;計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量;將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣;將所述目標矩陣與所述投影矩陣相乘,得到加密後的所述N*K維的加密矩陣。
- 如申請專利範圍第13項所述的系統,所述建模服務端進一步:將所述加密矩陣作為訓練樣本,與本地的訓練樣本進行融合,並基於融合後的訓練樣本訓練機器學習模型。
- 一種電子設備,包括:處理器;用於儲存機器可執行指令的記憶體;其中,通過讀取並執行所述記憶體儲存的與資料加密的控制邏輯對應的機器可執行指令,所述處理器被促使:基於N條資料樣本以及分別對應於所述N條資料樣本的M個維度的資料特徵產生N*M維的目標矩陣;基於PCA演算法對所述目標矩陣進行加密計算,得到N*K維的加密矩陣;其中,所述K值小於所述M值; 將所述加密矩陣傳輸至建模服務端;其中,所述加密矩陣用於訓練機器學習模型;其中所述基於PCA演算法對所述目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,還包括:對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理;計算零均值化處理後的所述目標矩陣對應的協方差矩陣;計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量;將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣;將所述目標矩陣與所述投影矩陣相乘,得到加密後的所述N*K維的加密矩陣。
- 一種電子設備,包括:處理器;用於儲存機器可執行指令的記憶體;其中,通過讀取並執行所述記憶體儲存的與機器學習模型訓練的控制邏輯對應的機器可執行指令,所述處理器被促使:接收資料提供方服務端傳輸的加密矩陣;其中,所述加密矩陣為所述資料提供方服務端基於PCA演算法針對 N*M維的目標矩陣進行加密計算,得到的N*K維的加密矩陣;所述K值小於所述M值;將所述加密矩陣作為訓練樣本訓練機器學習模型;其中所述基於PCA演算法對所述目標矩陣進行加密計算,得到加密後的N*K維的加密矩陣,還包括:對所述目標矩陣中與所述M個維度的資料特徵對應的向量中的取值分別進行零均值化處理;計算零均值化處理後的所述目標矩陣對應的協方差矩陣;計算所述協方差矩陣的特徵值以及與所述特徵值對應的特徵向量;將計算得到的所述特徵向量按照對應的特徵值的大小進行排序,並提取特徵值最大的K個特徵向量產生M*K維的投影矩陣;將所述目標矩陣與所述投影矩陣相乘,得到加密後的所述N*K維的加密矩陣。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
??201710647102.6 | 2017-08-01 | ||
CN201710647102.6 | 2017-08-01 | ||
CN201710647102.6A CN109327421A (zh) | 2017-08-01 | 2017-08-01 | 数据加密、机器学习模型训练方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201911108A TW201911108A (zh) | 2019-03-16 |
TWI689841B true TWI689841B (zh) | 2020-04-01 |
Family
ID=65233415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107116749A TWI689841B (zh) | 2017-08-01 | 2018-05-17 | 資料加密、機器學習模型訓練方法、裝置及電子設備 |
Country Status (8)
Country | Link |
---|---|
US (1) | US11257007B2 (zh) |
EP (1) | EP3627759B1 (zh) |
CN (1) | CN109327421A (zh) |
AU (2) | AU2018310377A1 (zh) |
CA (1) | CA3058498A1 (zh) |
SG (1) | SG11201909193QA (zh) |
TW (1) | TWI689841B (zh) |
WO (1) | WO2019024772A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI780881B (zh) * | 2021-08-27 | 2022-10-11 | 緯創資通股份有限公司 | 瑕疵檢測模型的建立方法及電子裝置 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109101801B (zh) * | 2018-07-12 | 2021-04-27 | 北京百度网讯科技有限公司 | 用于身份认证的方法、装置、设备和计算机可读存储介质 |
CN109165249B (zh) * | 2018-08-07 | 2020-08-04 | 阿里巴巴集团控股有限公司 | 数据处理模型构建方法、装置、服务器和用户端 |
CN112183565B (zh) * | 2019-07-04 | 2023-07-14 | 创新先进技术有限公司 | 模型训练方法、装置及系统 |
CN110704850B (zh) * | 2019-09-03 | 2022-05-10 | 华为技术有限公司 | 人工智能ai模型的运行方法和装置 |
US20210150042A1 (en) * | 2019-11-15 | 2021-05-20 | International Business Machines Corporation | Protecting information embedded in a machine learning model |
CN111062487B (zh) * | 2019-11-28 | 2021-04-20 | 支付宝(杭州)信息技术有限公司 | 基于数据隐私保护的机器学习模型特征筛选方法及装置 |
CN110909216B (zh) * | 2019-12-04 | 2023-06-20 | 支付宝(杭州)信息技术有限公司 | 检测用户属性之间的关联性的方法及装置 |
US11444774B2 (en) * | 2020-01-08 | 2022-09-13 | Tata Consultancy Services Limited | Method and system for biometric verification |
CN111461191B (zh) * | 2020-03-25 | 2024-01-23 | 杭州跨视科技有限公司 | 为模型训练确定图像样本集的方法、装置和电子设备 |
CN113469366B (zh) * | 2020-03-31 | 2024-06-18 | 北京观成科技有限公司 | 一种加密流量的识别方法、装置及设备 |
CN111401479B (zh) * | 2020-04-17 | 2022-05-17 | 支付宝(杭州)信息技术有限公司 | 多方联合对隐私数据进行降维处理的方法和装置 |
CN111983994B (zh) * | 2020-08-13 | 2021-08-20 | 杭州电子科技大学 | 一种基于复杂工业化工过程的v-pca故障诊断方法 |
CN112270415B (zh) * | 2020-11-25 | 2024-03-22 | 矩阵元技术(深圳)有限公司 | 一种加密机器学习的训练数据准备方法、装置和设备 |
CN113298289A (zh) * | 2021-04-14 | 2021-08-24 | 北京市燃气集团有限责任公司 | 一种对燃气用户的燃气用气量进行预测的方法及装置 |
CN113268755B (zh) * | 2021-05-26 | 2023-03-31 | 建投数据科技(山东)有限公司 | 一种对极限学习机的数据的处理方法、装置及介质 |
CN113592097B (zh) * | 2021-07-23 | 2024-02-06 | 京东科技控股股份有限公司 | 联邦模型的训练方法、装置和电子设备 |
EP4381427A1 (en) * | 2021-08-04 | 2024-06-12 | Google LLC | Principal component analysis |
CN113988308B (zh) * | 2021-10-27 | 2024-07-05 | 东北大学 | 一种基于延迟补偿机制的异步联邦梯度平均方法 |
CN117035297B (zh) * | 2023-08-02 | 2024-04-19 | 瀚能科技有限公司 | 一种基于大数据的园区智能任务分配方法及系统 |
CN118211254B (zh) * | 2024-05-22 | 2024-09-03 | 苏州元脑智能科技有限公司 | 加密存储方法、解密提取方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110307424A1 (en) * | 2010-06-10 | 2011-12-15 | Wen Jin | Determination of training set size for a machine learning system |
CN105303197A (zh) * | 2015-11-11 | 2016-02-03 | 江苏省邮电规划设计院有限责任公司 | 一种基于机器学习的车辆跟车安全自动评估方法 |
CN105488539A (zh) * | 2015-12-16 | 2016-04-13 | 百度在线网络技术(北京)有限公司 | 分类模型的生成方法及装置、系统容量的预估方法及装置 |
CN105787557A (zh) * | 2016-02-23 | 2016-07-20 | 北京工业大学 | 一种计算机智能识别的深层神经网络结构设计方法 |
CN105893331A (zh) * | 2016-03-28 | 2016-08-24 | 浙江工业大学 | 一种基于主成分分析算法的道路交通时间序列上数据压缩方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6954744B2 (en) * | 2001-08-29 | 2005-10-11 | Honeywell International, Inc. | Combinatorial approach for supervised neural network learning |
WO2008015586A2 (en) * | 2006-08-02 | 2008-02-07 | Fotonation Vision Limited | Face recognition with combined pca-based datasets |
JP5451302B2 (ja) * | 2009-10-19 | 2014-03-26 | キヤノン株式会社 | 画像処理装置及び方法、プログラム及び記憶媒体 |
US8984034B2 (en) * | 2010-09-28 | 2015-03-17 | Schneider Electric USA, Inc. | Calculation engine and calculation providers |
CN102982349B (zh) * | 2012-11-09 | 2016-12-07 | 深圳市捷顺科技实业股份有限公司 | 一种图像识别方法及装置 |
US20160132787A1 (en) | 2014-11-11 | 2016-05-12 | Massachusetts Institute Of Technology | Distributed, multi-model, self-learning platform for machine learning |
CN104573720B (zh) * | 2014-12-31 | 2018-01-12 | 北京工业大学 | 一种无线传感器网络中核分类器的分布式训练方法 |
US10395180B2 (en) * | 2015-03-24 | 2019-08-27 | International Business Machines Corporation | Privacy and modeling preserved data sharing |
KR20190032433A (ko) * | 2016-07-18 | 2019-03-27 | 난토믹스, 엘엘씨 | 분산 머신 학습 시스템들, 장치, 및 방법들 |
-
2017
- 2017-08-01 CN CN201710647102.6A patent/CN109327421A/zh active Pending
-
2018
- 2018-05-17 TW TW107116749A patent/TWI689841B/zh active
- 2018-07-27 SG SG11201909193Q patent/SG11201909193QA/en unknown
- 2018-07-27 EP EP18840540.1A patent/EP3627759B1/en active Active
- 2018-07-27 CA CA3058498A patent/CA3058498A1/en active Pending
- 2018-07-27 AU AU2018310377A patent/AU2018310377A1/en not_active Abandoned
- 2018-07-27 WO PCT/CN2018/097339 patent/WO2019024772A1/zh unknown
-
2019
- 2019-09-30 US US16/587,977 patent/US11257007B2/en active Active
-
2021
- 2021-08-19 AU AU2021218153A patent/AU2021218153A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110307424A1 (en) * | 2010-06-10 | 2011-12-15 | Wen Jin | Determination of training set size for a machine learning system |
CN105303197A (zh) * | 2015-11-11 | 2016-02-03 | 江苏省邮电规划设计院有限责任公司 | 一种基于机器学习的车辆跟车安全自动评估方法 |
CN105488539A (zh) * | 2015-12-16 | 2016-04-13 | 百度在线网络技术(北京)有限公司 | 分类模型的生成方法及装置、系统容量的预估方法及装置 |
CN105787557A (zh) * | 2016-02-23 | 2016-07-20 | 北京工业大学 | 一种计算机智能识别的深层神经网络结构设计方法 |
CN105893331A (zh) * | 2016-03-28 | 2016-08-24 | 浙江工业大学 | 一种基于主成分分析算法的道路交通时间序列上数据压缩方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI780881B (zh) * | 2021-08-27 | 2022-10-11 | 緯創資通股份有限公司 | 瑕疵檢測模型的建立方法及電子裝置 |
Also Published As
Publication number | Publication date |
---|---|
CN109327421A (zh) | 2019-02-12 |
EP3627759A4 (en) | 2020-06-17 |
AU2021218153A1 (en) | 2021-09-09 |
WO2019024772A1 (zh) | 2019-02-07 |
EP3627759A1 (en) | 2020-03-25 |
US11257007B2 (en) | 2022-02-22 |
SG11201909193QA (en) | 2019-11-28 |
CA3058498A1 (en) | 2019-02-07 |
EP3627759B1 (en) | 2021-07-14 |
TW201911108A (zh) | 2019-03-16 |
US20200034740A1 (en) | 2020-01-30 |
AU2018310377A1 (en) | 2019-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI689841B (zh) | 資料加密、機器學習模型訓練方法、裝置及電子設備 | |
WO2021120888A1 (zh) | 一种基于隐私数据进行模型训练的方法及系统 | |
CN109308418B (zh) | 一种基于共享数据的模型训练方法及装置 | |
WO2021114911A1 (zh) | 用户风险评估方法及装置、电子设备、存储介质 | |
CN109426861A (zh) | 数据加密、机器学习模型训练方法、装置及电子设备 | |
CN107704930B (zh) | 基于共享数据的建模方法、装置、系统及电子设备 | |
US20200319927A1 (en) | Method and device for virtual resource allocation, modeling, and data prediction | |
US20170124336A1 (en) | Computer-Implemented System And Method For Automatically Identifying Attributes For Anonymization | |
CN108984733B (zh) | 跨域数据融合方法、系统以及存储介质 | |
CN111428887B (zh) | 一种基于多个计算节点的模型训练控制方法、装置及系统 | |
US11500992B2 (en) | Trusted execution environment-based model training methods and apparatuses | |
US11495145B2 (en) | Method and system for selectively encrypting dataset | |
He et al. | A privacy-preserving decentralized credit scoring method based on multi-party information | |
CN112948889B (zh) | 在数据隐私保护下执行机器学习的方法和系统 | |
CN116976884A (zh) | 一种基于云存储与nfc的交易数据处理方法 | |
US20240171550A1 (en) | Recommendation engine using fully homomorphic encryption | |
CN115758271A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
Sumathi et al. | Scale-based secured sensitive data storage for banking services in cloud | |
Arulmozhi et al. | Securing Health Records Using Quantum Convolutional Neural Network | |
Cao et al. | User-Friendly Privacy-Preserving Blockchain-based Data Trading. | |
US20230274310A1 (en) | Jointly predicting multiple individual-level features from aggregate data | |
CN117240497A (zh) | 用户账户异常评估方法、装置、计算机设备、存储介质 | |
Naveh | Privacy-Enhanced AI Models for Personalized Recommendations | |
Doshi | Privacy preserving machine learning | |
CN115374469A (zh) | 物品信息推荐方法、装置、电子设备和计算机可读介质 |