[go: up one dir, main page]

TWI759731B - 機器學習方法 - Google Patents

機器學習方法 Download PDF

Info

Publication number
TWI759731B
TWI759731B TW109114083A TW109114083A TWI759731B TW I759731 B TWI759731 B TW I759731B TW 109114083 A TW109114083 A TW 109114083A TW 109114083 A TW109114083 A TW 109114083A TW I759731 B TWI759731 B TW I759731B
Authority
TW
Taiwan
Prior art keywords
model
training
feature
data
machine learning
Prior art date
Application number
TW109114083A
Other languages
English (en)
Other versions
TW202141327A (zh
Inventor
張志勇
武士戎
游國忠
呂立邦
吳佳駿
Original Assignee
淡江大學
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 淡江大學 filed Critical 淡江大學
Priority to TW109114083A priority Critical patent/TWI759731B/zh
Priority to US17/075,128 priority patent/US20210334701A1/en
Publication of TW202141327A publication Critical patent/TW202141327A/zh
Application granted granted Critical
Publication of TWI759731B publication Critical patent/TWI759731B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/0895Weakly supervised learning, e.g. semi-supervised or self-supervised learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • G06V10/242Aligning, centring, orientation detection or correction of the image by image rotation, e.g. by 90 degrees
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Human Computer Interaction (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Image Analysis (AREA)

Abstract

一種機器學習方法,包括:獲得訓練資料,訓練資料包括訓練特徵、多個訓練標籤及訓練權重;輸入訓練資料至第一機器學習模型,其中第一機器學習模型具有第一模型資料,第一模型資料包括第一模型特徵、多個第一模型標籤及多個第一模型權重,第一模型標籤以一對一的方式對應於第一模型權重;以及,利用訓練步驟訓練第一機器學習模型以獲得第二機器學習模型。訓練步驟包括:當第一模型特徵符合訓練特徵,並且第一模型標籤之一與任一個訓練標籤相同時,依據訓練權重調整與任一個訓練標籤相同的第一模型標籤對應的第一模型權重。

Description

機器學習方法
本案是關於機器學習方法。
近年來由於機器學習的應用蓬勃發展,例如自動駕駛、醫療影像偵測或人臉辨識等應用都有包括機器學習的技術,其中人臉辨識更是被廣泛應用在生活中。
目前的人臉辨識技術雖然能依據蒐集到的影像,透過擷取影像中的人臉特徵,從不同的影像當中辨識同一個人的人臉。但是這樣的技術仍然無法獲得人臉對應的人名,也就是目前的人臉辨識技術在資料蒐集的初期需依靠人工去標記人名,才能得知人臉對應的人名。換句話說,目前用於配對人臉與人名的機器學習方法仍處於半自動化學習的階段,而無法全自動化的進行機器學習。
在一些實施例,機器學習方法包括:獲得訓練資料,訓練資料包括訓練特徵、多個訓練標籤及訓練權重;輸入訓練資料至第一機器學習模型,其中第一機器學習模型具有第一模型資料,第一模型資料包括第一模型特徵、多個第一模型標籤及多個第一模型權重,第一模型標籤以一對一的方式對應於第一模型權重;以及,利用訓練步驟訓練第一機器學習模型以獲得第二機器學習模型。訓練步驟包括:當第一模型特徵符合訓練特徵,並且第一模型標籤之一與任一個訓練標籤相同時,依據訓練權重調整與任一個訓練標籤相同的第一模型標籤對應的第一模型權重。
綜上,在本案一些實施例,機器學習方法包括:獲得訓練資料,訓練資料包括訓練特徵、多個訓練標籤及訓練權重,並且當第一模型標籤之一與任一個訓練標籤相同時,依據訓練權重調整與任一個訓練標籤相同的第一模型標籤對應的第一模型權重,因此能訓練第一機器學習模型以獲得第二機器學習模型。
圖1為根據本案一些實施例所繪示之機器學習方法的流程圖。圖2為本案一些實施例所繪示之機器學習系統200的示意圖。請同時參照圖1及圖2,在一些實施例,機器學習系統200包括處理器210及資料庫220。處理器210用於依據機器學習方法來訓練第一機器學習模型,資料庫220用於儲存第一機器學習模型。機器學習方法包括以下步驟:訓練資料獲得步驟(步驟110);訓練資料輸入步驟(步驟120);以及,模型訓練步驟(步驟130)。
在一些實施例,訓練資料獲得步驟(圖1之步驟S110)包括:獲得訓練資料,訓練資料包括訓練特徵、多個訓練標籤及訓練權重。在一些實施例,處理器210用於獲得訓練資料。具體而言,訓練權重是一個數值,例如訓練權重是訓練標籤的總數之倒數,因此獲得訓練資料中的所有訓練標籤就能計算出對應的訓練權重。訓練資料獲得步驟(圖1之步驟S110)不限於獲得一個訓練資料,也能獲得多個訓練資料,各個訓練資料都各自包括一個訓練特徵、多個訓練標籤及一個訓練權重。需特別說明的是,不同訓練資料的訓練特徵可以相同也可以不相同,同理,適用於不同訓練資料的訓練標籤及訓練權重。在一些實施例,訓練標籤是人名,並且各個訓練標籤分別用於代表其對應的人名,例如訓練標籤是「A先生」、「B先生」及「E先生」,訓練權重是「1/3」。
圖3為根據本案一些實施例所繪示之人臉影像的示意圖。請參照圖3,在一些實施例,圖片300包括一個或多個人臉影像310,其中每個人臉影像310都有其各自對應的人臉特徵值,例如人臉特徵值是向量矩陣。具體而言,每個訓練特徵對應於各自的人臉集,人臉集包括一個或多個人臉影像310,因此利用人臉影像310的人臉特徵值能計算出訓練特徵,例如訓練特徵是「128x1」維度的向量矩陣。對於不同訓練資料的訓練特徵,各個訓練特徵是以一對一的方式對應於各自的人臉集。在一些實施例,訓練資料如下表1所示:
表1:
訓練資料
訓練特徵 訓練標籤 訓練權重
Figure 02_image001
128x1
A先生   1/3
B先生
E先生
其中,訓練特徵是「128x1」維度的向量矩陣,訓練標籤共有「3」個,分別是「A先生」、「B先生」及「E先生」,訓練權重是「1/3」。由於訓練權重是訓練標籤的總數「3」之倒數,因此訓練權重是「1/3」。
在一些實施例,訓練資料輸入步驟(圖1之步驟120)包括:輸入訓練資料至第一機器學習模型,其中第一機器學習模型具有第一模型資料,第一模型資料包括第一模型特徵、多個第一模型標籤及多個第一模型權重,第一模型標籤以一對一的方式對應於第一模型權重。在一些實施例,處理器210用於輸入訓練資料至第一機器學習模型。具體而言,機器學習模型(即,第一機器學習模型或後續段落中的第二機器學習模型、第三機器學習模型或其他相對應的機器學習模型)例如但不限於採用非監督式學習、支援向量機、聚類分析、人工神經網路或深度學習做為架構。在一些實施例,資料庫220用於儲存一個或多個機器學習模型。
在一些實施例,機器學習模型用於接收訓練資料或待辨識資料。機器學習模型具有多個模型資料,例如後續段落中的第一模型資料、第二模型資料、或其他的模型資料。各個模型資料分別包括一個模型特徵、多個模型標籤及多個模型權重,模型標籤以一對一的方式對應於模型權重。當輸入訓練資料至機器學習模型進行訓練時,機器學習模型依據訓練資料決定需訓練的模型資料,也就是更新模型資料中的模型特徵、模型標籤及模型權重。當輸入待辨識資料至機器學習模型時,機器學習模型依據待辨識資料決定需執行的模型資料,也就是從模型資料之中決定最高分的模型權重,並且輸出最高分的模型權重對應的模型標籤。因此,機器學習模型因為經歷不同的訓練而具有不同的模型資料,並且對應一個待辨識資料而輸出不同的模型標籤。
在一些實施例,模型訓練步驟(圖1之步驟130)包括:利用第一訓練步驟訓練第一機器學習模型以獲得第二機器學習模型。在一些實施例,處理器210利用第一訓練步驟訓練第一機器學習模型以獲得第二機器學習模型。
在一些實施例,第一訓練步驟包括:當第一模型特徵符合訓練特徵,並且第一模型標籤之一與任一個訓練標籤相同時,依據訓練權重調整與任一個訓練標籤相同的第一模型標籤對應的第一模型權重。具體而言,當第一模型特徵符合訓練特徵時,第一訓練步驟將依據第一模型特徵之中與訓練標籤相同的第一模型標籤,調整這種第一模型標籤對應的第一模型權重。因此,需調整的第一模型權重可以是一個也可以是多個,而調整第一模型權重的方法例如將調整前的第一模型權重與訓練權重之間的和值做為調整後的第一模型權重。在一些實施例,調整前與調整後的第一模型資料,如下表2所示:
表2:
調整前 調整後
第一模型標籤 第一模型權重 第一模型標籤 第一模型權重
A先生 1/2 A先生 1/2+1/3=5/6
B先生 1/3 B先生 1/3+1/3=2/3
C先生 1/4 C先生 1/4
D先生 1/5 D先生 1/5
其中,訓練資料請參照表1。調整前與調整後的第一模型標籤都是「A先生」、「B先生」、「C先生」及「D先生」。由於第一模型標籤「A先生」、「B先生」與訓練標籤相同,因此其對應的第一模型權重需依據訓練權重調整,例如第一模型標籤「A先生」的第一模型權重調整為「1/2+1/3=5/6」。而第一模型標籤「C先生」、「D先生」與訓練標籤不相同,因此其對應的第一模型權重不需調整。
在一些實施例,第一訓練步驟更包括:當第一模型特徵符合訓練特徵,並且訓練標籤之一與各個第一模型標籤皆不相同時,新增與各個第一模型標籤皆不相同的訓練標籤至第一模型資料以成為第一模型標籤之一,並且新增訓練權重至第一模型資料以成為第一模型權重之一。具體而言,當第一模型特徵符合訓練特徵時,第一訓練步驟將依據與第一模型資料之中的各個第一模型標籤不同的訓練標籤,新增這種訓練標籤及其對應的訓練權重以成為新增的第一模型標籤及新增的第一模型權重。需特別說明的是,新增的第一模型標籤的數量等於各個第一模型標籤皆不相同的訓練標籤的數量,並且對應新增的第一模型權重都等於訓練權重。例如新增兩個第一模型標籤時,對應新增的兩個第一模型權重都等於訓練權重。在一些實施例,新增前與新增後的第一模型資料,如下表3所示:
表3:
新增前 新增後
第一模型標籤 第一模型權重 第一模型標籤 第一模型權重
A先生 5/6 A先生 5/6
B先生 2/3 B先生 2/3
C先生 1/4 C先生 1/4
D先生 1/5 D先生 1/5
    E先生 1/3
其中,訓練資料請參照表1,新增前的第一模型資料請參照表2中調整後的第一模型資料。由於訓練標籤「E先生」與新增前的第一模型資料的各個第一模型標籤「A先生」、「B先生」、「C先生」及「D先生」都不相同。因此,新增訓練標籤「E先生」及其對應的訓練權重「1/3」至新增後的第一模型資料,所以新增後的第一模型資料包括第一模型標籤「E先生」及其對應的第一模型權重「1/3」。
需特別說明的是,表2及表3僅為示例而不用以限制調整及新增第一模型資料的順序。也就是,在一些實施例,第一訓練步驟也可以先新增第一模型資料,而後再調整第一模型資料,或著第一訓練步驟同時新增及調整第一模型資料。
在一些實施例,第二機器學習模型包括第二模型資料。第一訓練步驟更包括:第一模型特徵不符合該訓練特徵時,新增訓練資料以成為第二模型資料,第二模型資料包括第二模型特徵、多個第二模型標籤及多個第二模型權重,其中第二模型特徵等於訓練特徵,第二模型標籤以一對一的方式等於訓練標籤,第二模型權重都等於訓練權重。具體而言,當第一模型特徵不符合訓練特徵時,第一訓練步驟將訓練資料新增至第一機器學習模型以成為新增的第二模型資料,因此不包括第二模型資料的第一機器學習模型訓練能訓練成包括第二模型資料的第二機器學習模型。其中,訓練特徵做為第二模型特徵,各個訓練標籤分別做為不同的第二模型標籤,訓練權重做為各個第二模型權重,因此第一訓練步驟利用訓練資料就可以獲得第二模型資料。在一些實施例,第二模型資料如下表4所示:
表4:
第二模型資料
第二模型特徵 第二模型標籤 第二模型權重
Figure 02_image001
128x1
A先生 1/3
B先生 1/3
E先生 1/3
其中,訓練資料請參照表1。第二模型特徵是「128x1」維度的向量矩陣,第二模型標籤分別是「A先生」、「B先生」及「E先生」,第二模型權重都是「1/3」。
在一些實施例,第一訓練步驟更包括:依據餘弦相似度分群演算法,決定第一模型特徵是否符合訓練特徵。具體而言,決定第一模型特徵是否符合訓練特徵的方法例如但不限於餘弦相似度分群演算法、K近鄰演算法、模糊C平均分群演算法或DBSCAN聚類演算法。以餘弦相似度分群演算法為例,餘弦相似度分群演算法是計算第一模型特徵與訓練特徵之間的餘弦相似度。其中,當餘弦相似度大於閥值(例如,閥值是0.85)時,決定第一模型特徵符合訓練特徵。當餘弦相似度小於或等於閥值時,決定第一模型特徵不符合訓練特徵。
在一些實施例,當第一機器學習模型具有多個模型資料(假設第一模型資料數屬於這些模型資料之一)時,依據餘弦相似度分群演算法計算各個模型特徵與訓練特徵之間的餘弦相似度,再從大於閥值的餘弦相似度之中挑選出最大值,而後以最大值的餘弦相似度對應的模型資料做為需訓練的模型資料。例如,餘弦相似度是「0.95、0.9、0.5、0.1」且閥值是「0.85」時,大於閥值的餘弦相似度是「0.95、0.9」,因此挑選最大值的餘弦相似度「0.95」對應的模型資料做為需要被訓練資料訓練的模型資料。
在一些實施例,當第一機器學習模型具有多個模型資料(假設第二模型資料不屬於這些模型資料之一)時,第一機器學習模型依據餘弦相似度分群演算法計算各個模型特徵與訓練特徵之間的餘弦相似度,當各個餘弦相似度都小於或等於閥值時,代表第一機器學習模型中的各個模型資料都不適合被訓練資料訓練,因此新增訓練資料以做為第二資料至第一機器學習模型中。
需特別說明的是,在一些實施例,機器學習方法能輸入多個訓練資料至機器學習模型進行訓練,前述用於訓練第一機器學習模型以獲得第二機器學習模型的訓練步驟僅用於示例而非限制。例如,機器學習方法能依據另一個訓練資料,利用類似的訓練步驟將第二機器學習模型訓練成第三機器模型,或是將第一機器學習模型訓練成另一個第二機器學習模型。以此類推,於此不再贅述。
續參照圖3,在一些實施例,訓練資料獲得步驟(圖1之步驟S110)更包括:獲得多個人臉影像310;擷取各個人臉影像310的人臉特徵值;依據各個人臉特徵值,將人臉影像310聚類成多個人臉集;以及,依據人臉集之一對應的至少一人臉特徵值,獲得訓練特徵。
在一些實施例,圖片300包括一個或多個人臉影像310,並且圖片300具有校正軸向320。處理器210用於獲得圖片300,並且從圖片300之中擷取獲得人臉影像310。其中處理器210例如但不限於從資料庫220、機器學習系統200的外部或機器學習系統200之中的其他裝置(圖中未繪示)獲得圖片300。具體而言,從圖片300之中擷取獲得人臉影像310的方法例如但不限於Dlib函式庫、OpenCV函式庫、Dlib函式庫與OpenCV函式庫之組合或其他人臉影像擷取方法。例如Dlib函式庫與OpenCV函式庫之組合的人臉影像擷取方法,包括:首先,透過Dlib函式庫偵測圖片300之中的人臉影像310,並且擷取人臉影像310的四個端點座標,當人臉影像310是矩形時。而後,透過OpenCV函式庫的影像處理技術,依據人臉影像310的四個端點座標,將人臉影像310擷取出來。其中,OpenCV函式庫的影像處理技術包括人臉校正技術,人臉校正技術偵測人臉影像310中的眼睛、鼻子、嘴巴、下巴等特徵點的位置,決定人臉影像310與校正軸向320之間的歪斜角度,而後依據歪斜角度旋轉人臉影像310以獲得校正後的人臉影像310。
在一些實施例,處理器210擷取各個人臉影像310的人臉特徵值。例如,擷取校正後的人臉影像310的人臉特徵值。具體而言,擷取人臉影像310的人臉特徵值的方法例如但不限於基於卷積神經網路(Convolutional Neural Network)的深度學習方法、LBPH演算法或EigenFace演算法。例如基於卷積神經網路的深度學習方法能依據輸入的人臉影像310,輸出對應的人臉特徵值,人臉特徵值可以是高維度的特徵向量,例如「128x1」維度的向量矩陣。在一些實施例,卷積神經網路是採用FaceNet架構。
在一些實施例,處理器210依據各個人臉特徵值,將人臉影像310聚類成多個人臉集。換句話說,依據各個人臉影像310的人臉特徵值,將不同的人臉影像310分群於人臉集,其中各個人臉群例如但不限於包括一個或多個人臉影像310,並且一個人臉影像310只能分群於一個人臉集之中。在一些實施例,將人臉影像310聚類成多個人臉集的方法例如但不限於餘弦相似度分群演算法、K近鄰演算法、模糊C平均分群演算法或DBSCAN聚類演算法。例如,利用餘弦相似度分群演算法將人臉影像聚類成人臉。具體而言,餘弦相似度分群演算法是計算不同的人臉影像310的人臉特徵值之間的餘弦相似度,並且將餘弦相似度大於一閥值(例如,閥值是0.85)的兩個人臉特徵值分類在同一群,也就是將這兩個人臉特徵值分別對應的兩個人臉影像310分類在同一群的人臉集。反之,餘弦相似度分群演算法將餘弦相似度小於或等於閥值的兩個人臉特徵值分類在不同群,也就是將這兩個人臉特徵值分別對應的兩個人臉影像310分類在不同的兩個人臉集。計算不同的人臉影像310的人臉特徵值之間的餘弦相似度的方法,例如在多維度的向量空間中,每個人臉特徵值各自對應於一個向量,兩個人臉特徵值之間的餘弦相似度用於代表兩個向量之間的夾角,餘弦相似度的範圍可以是「1至-1」。餘弦相似度是「1」代表兩個向量之間的夾角是0度,餘弦相似度是「0」代表兩個向量之間的夾角是90度,餘弦相似度是「-1」代表兩個向量之間的夾角是180度。因此,當閥值是「0.85」時,對應的夾角大約是31.8度。也就是,當夾角介於0度至31.8度時,這兩個人臉特徵值是相似的,對應的兩個人臉影像310分類在同一群。反之,當夾角介於31.8度至180度時,這兩個人臉特徵值是不相似的,對應的兩個人臉影像310分類在不同群。
在一些實施例,處理器210依據人臉集之一對應的至少一人臉特徵值,獲得訓練特徵。具體而言,訓練特徵對應於各自的人臉集,人臉集包括一個或多個人臉影像310,因此依據人臉影像310的人臉特徵值即可獲得人臉集對應的訓練特徵。需特別說明的是,在一些實施例,當人臉集僅包括一個人臉影像310時,人臉集的訓練特徵是人臉影像310的人臉特徵值。在一些實施例,當人臉集包括多個人臉影像310時,人臉集的訓練特徵例如但不限於這些人臉影像310對應的多個人臉特徵值的平均值、中間值或其他運算方法獲得的值。
在一些實施例,訓練資料獲得步驟(圖1之步驟S110)更包括:獲得多個人名;利用人名做為訓練標籤,人名以一對一的方式對應於訓練標籤;以及,利用訓練標籤的總數之倒數做為訓練權重。
在一些實施例,處理器210獲得多個人名。處理器210例如但不限於從資料庫220、機器學習系統200的外部或機器學習系統200之中的其他裝置(圖中未繪示)獲人名。具體而言,例如會議的出席名單包括多個人名,因此從出席名單之中能擷取出人名。
在一些實施例,處理器210利用人名做為訓練標籤,人名以一對一的方式對應於訓練標籤。也就是,以人名做為訓練標籤,各個訓練標籤分別代表一個不同的人名。
在一些實施例,處理器210利用訓練標籤的總數之倒數做為訓練權重。也就是,計算訓練標籤的全部個數的倒數以獲得訓練權重。例如,訓練標籤的總數是「5」時,訓練標籤的總數之倒數是「1/5」,因此訓練權重是「1/5」。在一些實施例,處理器210獲得的人名的數量等於訓練標籤的數量。例如,會議的出席名單之中共有「5個人名」,處理器210依據會議的出席名單,獲得這「5個人名」,因此能計算出訓練權重是「1/5」。
在一些實施例,一個會議有其對應的出席名單及會議照片,出席名單包括參與會議的人的人名,會議照片不限於一張或是多張,並且會議照片包括參與會議的人的單人照片或多人合照。因此,訓練資料獲得步驟(圖1之步驟S110)能依據出席名單獲得訓練標籤及訓練權重,並且依據一張或是多張的會議照片獲得多個人臉影像310。也就是說,各個人臉影像310例如但不限於從同一張會議照片(圖片300)之中獲得。而後,訓練資料獲得步驟(圖1之步驟S110)將人臉影像310聚類成多個人臉集,因此能獲得各個人臉集對應的訓練特徵。所以,訓練資料獲得步驟(圖1之步驟S110)能依據會議的出席名單及會議照片,獲得一個或多個的訓練資料,其中訓練資料的數量等於人臉集的數量,訓練資料中的訓練特徵對應人臉集,各個訓練資料之間的訓練標籤是相同的,並且各個訓練資料之間的訓練權重是相同的。其中,人臉集的數量可等於或不等於人名的數量。需特別說明的是,會議的出席名單及會議照片僅為示例,訓練資料獲得步驟(圖1之步驟S110)並不以此為限。在一些實施例,獲得的是多個物件名字及具有一個或多個物件影像的圖片300時,其中物件影像與物件名字之間有對應關係,訓練資料獲得步驟(圖1之步驟S110)也能依據物件名字及具有物件影像的圖片300獲得訓練資料。
圖4為根據本案一些實施例所繪示之模型執行步驟的流程圖。請參照圖4,在一些實施例,機器學習方法更包括模型執行步驟,模型執行步驟包括:待辨識特徵獲得步驟(步驟410);待辨識特徵輸入步驟(步驟420);匹配資料獲得步驟(步驟430);以及,模型標籤輸出步驟(步驟440)。在一些實施例,處理器210能依據模型執行步驟運作第二機器學習模型。
在一些實施例,待辨識特徵獲得步驟(圖4之步驟410)包括:獲得待辨識特徵。其中,待辨識特徵可以是向量矩陣,例如待辨識特徵是「128x1」維度的向量矩陣。
在一些實施例,待辨識特徵獲得步驟(圖4之步驟410)包括:獲得待辨識人臉影像;擷取待辨識人臉影像的待辨識人臉特徵值;以及,利用待辨識人臉特徵值做為待辨識特徵。具體而言,待辨識特徵獲得步驟(圖4之步驟410)類似於訓練資料獲得步驟,其中待辨識人臉影像對應於人臉影像310,待辨識人臉特徵值對應於人臉特徵值。因此,當待辨識人臉影像只有一個時,待辨識人臉影像的待辨識人臉特徵值就是待辨識特徵。在一些實施例,當待辨識人臉影像有多個時,能依據餘弦相似度分群演算法將待辨識人臉影像聚類成多個待辨識人臉集,再獲得各個待辨識人臉集對應的待辨識特徵。
在一些實施例,待辨識特徵輸入步驟(圖4之步驟420)包括:輸入待辨識特徵至第二機器學習模型,其中第二機器學習模型具有多個模型資料。
在一些實施例,匹配資料獲得步驟(圖4之步驟430)包括:依據待辨識特徵,從模型資料之中選出匹配資料,匹配資料包括匹配特徵、多個模型標籤及多個模型權重,模型標籤以一對一的方式對應於模型權重,其中匹配特徵匹配於待辨識特徵。具體而言,依據待辨識特徵從模型資料之中選出匹配資料,代表從多個模型特徵中選出最匹配待辨識特徵的模型特徵,並且以這個模型特徵對應的模型資料做為匹配資料,其中各個模型特徵分別對應各自的模型資料。
在一些實施例,依據待辨識特徵從模型資料之中選出匹配資料的方法例如但不限於餘弦相似度分群演算法、K近鄰演算法、模糊C平均分群演算法、DBSCAN聚類演算法或上述方法之組合方法。例如依據K近鄰演算法從模型資料之中選出匹配資料。具體而言,依據K近鄰演算法計算最接近待辨識特徵的模型特徵,並且以最接近待辨識特徵的模型特徵做為匹配特徵。在一些實施例,匹配資料獲得步驟(圖4之步驟430)能依據餘弦相似度分群演算法驗證匹配特徵是否為最匹配待辨識特徵的模型特徵,具體而言,餘弦相似度分群演算法計算匹配特徵與待辨識特徵之間的餘弦相似度,當餘弦相似度大於閥值(例如,閥值是0.85)時,則匹配特徵是最匹配待辨識特徵的模型特徵。在一些實施例,當餘弦相似度小於或等於閥值時,則匹配特徵不是最匹配待辨識特徵的模型特徵,於此機器學習方法能依據前述的訓練資料獲得步驟(步驟110)、訓練資料輸入步驟(步驟120)及模型訓練步驟(步驟130)對第二機器學習模型重新訓練待辨識特徵所對應的模型資料。
在一些實施例,模型標籤輸出步驟(圖4之步驟440)包括:輸出最高分的模型權重對應的模型標籤。具體而言,由於匹配資料包括匹配特徵、多個模型標籤及多個模型權重,模型標籤以一對一的方式對應於模型權重。因此,最高分的模型權重代表的是匹配資料之中最高分的模型權重,並且這個最高分的模型權重對應於匹配資料之中的模型標籤。需特別說明的是,模型執行步驟用於依據待辨識特徵而輸出對應的模型標籤,也就是輸入待辨識特徵以執行第二機器學習模型,並利用第二機器學習模型獲得對應的模型標籤。在一些實施例,匹配資料如下表5所示:
表5:
匹配資料
模型標籤 模型權重
A先生 5/6
B先生 2/3
C先生 1/4
D先生 1/5
E先生 1/3
其中,在匹配資料之中,最高分的模型權重是「5/6」,因此最高分的模型權重對應的模型標籤是「A先生」。所以,依據模型執行步驟,第二機器模型輸出模型標籤「A先生」。
綜上,在本案一些實施例,機器學習方法包括:獲得訓練資料,訓練資料包括訓練特徵、多個訓練標籤及訓練權重,並且當第一模型標籤之一與任一個訓練標籤相同時,依據訓練權重調整與任一個訓練標籤相同的第一模型標籤對應的第一模型權重,因此訓練第一機器學習模型以獲得第二機器學習模型。在一些實施例,機器學習方法更包括模型執行步驟,模型執行步驟包括:獲得待辨識特徵,依據待辨識特徵從模型資料之中選出匹配資料,匹配資料包括匹配特徵、多個模型標籤及多個模型權重,其中匹配特徵匹配於待辨識特徵,而後再輸出最高分的模型權重對應的模型標籤。在一些實施例,因為訓練資料能以自動化的方式獲得,而不需利用人工做標記,因此機器學習方法能自動化訓練第一機器學習模型以獲得第二機器學習模型。在一些實施例,機器學習方法用於訓練配對人臉及人名的機器學習模型。
S110~S130:步驟 200:機器學習系統 210:處理器 220:資料庫 300:圖片 310:人臉影像 320:校正軸向 S410~S440:步驟
圖1為根據本案一些實施例所繪示之機器學習方法的流程圖。 圖2為根據本案一些實施例所繪示之機器學習系統的示意圖。 圖3為根據本案一些實施例所繪示之人臉影像的示意圖。 圖4為根據本案一些實施例所繪示之模型執行步驟的流程圖。
S110~S130:步驟

Claims (10)

  1. 一種機器學習方法,包括: 一訓練資料獲得步驟,獲得一訓練資料,該訓練資料包括一訓練特徵、多個訓練標籤及一訓練權重; 一訓練資料輸入步驟,輸入該訓練資料至一第一機器學習模型,其中該第一機器學習模型具有一第一模型資料,該第一模型資料包括一第一模型特徵、多個第一模型標籤及多個第一模型權重,該些第一模型標籤以一對一的方式對應於該些第一模型權重;及 一模型訓練步驟,利用一訓練步驟訓練該第一機器學習模型以獲得一第二機器學習模型; 其中,該訓練步驟包括:當該第一模型特徵符合該訓練特徵,並且該些第一模型標籤之一與任一該訓練標籤相同時,依據該訓練權重調整與任一該訓練標籤相同的該第一模型標籤對應的該第一模型權重。
  2. 如請求項1所述的機器學習方法,其中該訓練步驟更包括:依據一餘弦相似度分群演算法,決定該第一模型特徵是否符合該訓練特徵。
  3. 如請求項1所述的機器學習方法,其中該訓練步驟更包括:當該第一模型特徵符合該訓練特徵,並且該些訓練標籤之一與各該第一模型標籤皆不相同時,新增與各該第一模型標籤皆不相同的該訓練標籤至該第一模型資料以成為該些第一模型標籤之一,並且新增該訓練權重至該第一模型資料以成為該些第一模型權重之一。
  4. 如請求項1所述的機器學習方法,其中該第二機器學習模型包括一第二模型資料,該訓練步驟更包括:該第一模型特徵不符合該訓練特徵時,新增該訓練資料以成為該第二模型資料,該第二模型資料包括一第二模型特徵、多個第二模型標籤及多個第二模型權重,其中該第二模型特徵等於該訓練特徵,該些第二模型標籤以一對一的方式等於該些訓練標籤,該些第二模型資料都等於該訓練權重。
  5. 如請求項1所述的機器學習方法,其中該訓練資料獲得步驟更包括: 獲得多個人臉影像; 擷取各該人臉影像的一人臉特徵值; 依據各該人臉特徵值,將該些人臉影像聚類成多個人臉集;及 依據該些人臉集之一對應的該至少一人臉特徵值,獲得該訓練特徵。
  6. 如請求項5所述的機器學習方法,其中,利用一餘弦相似度分群演算法,將該些人臉影像聚類成該些人臉集。
  7. 如請求項1所述的機器學習方法,其中該訓練資料獲得步驟更包括: 獲得多個人名; 利用該些人名做為該些訓練標籤,該些人名以一對一的方式對應於該些訓練標籤;及 利用該些訓練標籤的總數之倒數做為該訓練權重。
  8. 如請求項1所述的機器學習方法,更包括一模型執行步驟,該模型執行步驟包括: 獲得一待辨識特徵; 輸入該待辨識特徵至該第二機器學習模型,其中該第二機器學習模型具有多個模型資料; 依據該待辨識特徵,從該些模型資料之中選出一匹配資料,該匹配資料包括一匹配特徵、多個模型標籤及多個模型權重,該些模型標籤以一對一的方式對應於該些模型權重,其中該匹配特徵匹配於該待辨識特徵;及 輸出最高分的該模型權重對應的該模型標籤。
  9. 如請求項8所述的機器學習方法,其中獲得該待辨識特徵的步驟包括: 獲得一待辨識人臉影像; 擷取該待辨識人臉影像的一待辨識人臉特徵值;及 利用該待辨識人臉特徵值做為該待辨識特徵。
  10. 如請求項8所述的機器學習方法,其中,利用一K近鄰演算法,從該些模型資料之中選出該匹配資料。
TW109114083A 2020-04-27 2020-04-27 機器學習方法 TWI759731B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW109114083A TWI759731B (zh) 2020-04-27 2020-04-27 機器學習方法
US17/075,128 US20210334701A1 (en) 2020-04-27 2020-10-20 Machine learning method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW109114083A TWI759731B (zh) 2020-04-27 2020-04-27 機器學習方法

Publications (2)

Publication Number Publication Date
TW202141327A TW202141327A (zh) 2021-11-01
TWI759731B true TWI759731B (zh) 2022-04-01

Family

ID=78222477

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109114083A TWI759731B (zh) 2020-04-27 2020-04-27 機器學習方法

Country Status (2)

Country Link
US (1) US20210334701A1 (zh)
TW (1) TWI759731B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11717728B1 (en) * 2022-02-28 2023-08-08 Acushnet Company Golf ball having markings spaced from a centerline plane
JP2024077442A (ja) * 2022-11-28 2024-06-07 富士通株式会社 対象検出プログラム、装置、及び機械学習モデル生成方法
CN116167347B (zh) * 2023-03-29 2025-07-29 支付宝(杭州)信息技术有限公司 表格型交易数据的深度学习方法及装置、介质、设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI415010B (zh) * 2009-12-03 2013-11-11 Chunghwa Telecom Co Ltd Face recognition method based on individual blocks of human face
CN105468760A (zh) * 2015-12-01 2016-04-06 北京奇虎科技有限公司 对人脸图片进行标注的方法和装置
TWI579773B (zh) * 2015-06-30 2017-04-21 芋頭科技(杭州)有限公司 一種人臉圖像識別方法
CN107918636A (zh) * 2017-09-07 2018-04-17 北京飞搜科技有限公司 一种人脸快速检索方法、系统
TW201828156A (zh) * 2017-01-19 2018-08-01 阿里巴巴集團服務有限公司 圖像識別方法、度量學習方法、圖像來源識別方法及裝置
US20180300540A1 (en) * 2017-04-14 2018-10-18 Koninklijke Philips N.V. Person identification systems and methods

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10210246B2 (en) * 2014-09-26 2019-02-19 Oracle International Corporation Techniques for similarity analysis and data enrichment using knowledge sources
CN106548210B (zh) * 2016-10-31 2021-02-05 腾讯科技(深圳)有限公司 基于机器学习模型训练的信贷用户分类方法及装置
US10496369B2 (en) * 2017-07-31 2019-12-03 Allegro Artificial Intelligence Ltd System and method for incremental annotation of datasets

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI415010B (zh) * 2009-12-03 2013-11-11 Chunghwa Telecom Co Ltd Face recognition method based on individual blocks of human face
TWI579773B (zh) * 2015-06-30 2017-04-21 芋頭科技(杭州)有限公司 一種人臉圖像識別方法
CN105468760A (zh) * 2015-12-01 2016-04-06 北京奇虎科技有限公司 对人脸图片进行标注的方法和装置
TW201828156A (zh) * 2017-01-19 2018-08-01 阿里巴巴集團服務有限公司 圖像識別方法、度量學習方法、圖像來源識別方法及裝置
US20180300540A1 (en) * 2017-04-14 2018-10-18 Koninklijke Philips N.V. Person identification systems and methods
CN107918636A (zh) * 2017-09-07 2018-04-17 北京飞搜科技有限公司 一种人脸快速检索方法、系统

Also Published As

Publication number Publication date
TW202141327A (zh) 2021-11-01
US20210334701A1 (en) 2021-10-28

Similar Documents

Publication Publication Date Title
CN110135249B (zh) 基于时间注意力机制和lstm的人体行为识别方法
KR102174595B1 (ko) 비제약형 매체에 있어서 얼굴을 식별하는 시스템 및 방법
TWI759731B (zh) 機器學習方法
CN110738161A (zh) 一种基于改进生成式对抗网络的人脸图像矫正方法
WO2020186886A1 (zh) 一种人脸识别模型的生成方法及设备
CN114270417B (zh) 能够更新注册人脸模板的人脸识别系统及方法
CN109902615B (zh) 一种基于对抗网络的多个年龄段图像生成方法
CN109815826A (zh) 人脸属性模型的生成方法及装置
WO2023124278A1 (zh) 图像处理模型的训练方法、图像分类方法及装置
CN112001347A (zh) 一种基于人体骨架形态与检测目标的动作识别方法
CN105631404B (zh) 对照片进行聚类的方法及装置
CN106682578A (zh) 基于眨眼检测的人脸识别方法
WO2019153175A1 (zh) 基于机器学习的遮挡人脸识别系统、方法及存储介质
CN110321801A (zh) 一种基于自编码网络的换衣行人重识别方法及系统
CN114519863B (zh) 人体重识别方法、人体重识别装置、计算机设备及介质
WO2021169754A1 (zh) 构图提示方法、装置、存储介质及电子设备
CN110188630A (zh) 一种人脸识别方法和相机
CN110516533A (zh) 一种基于深度度量的行人再辨识方法
CN103020589A (zh) 一种单训练样本人脸识别方法
CN114612990A (zh) 一种基于超分辨率的无人机人脸识别方法
CN110135361A (zh) 一种基于红外摄像头下的多姿态人脸识别方法
CN113963237A (zh) 模型训练、戴口罩状态检测方法、电子设备及存储介质
CN109635647A (zh) 一种基于约束条件下的多图片多人脸的聚类方法
CN111291780A (zh) 一种跨域网络训练及图像识别方法
CN110490027B (zh) 人脸特征提取训练方法及系统