วิธีการจำแนกเชิงสถิติ นั้น โดยหลักแล้วแบ่งเป็น 2 แบบได้แก่ วิธีการเชิงก่อกำเนิด (generative) และวิธีการเชิงจำแนก (discriminative) วิธีการเหล่านี้ใช้มาตรฐานในการสร้างแบบจำลองเชิงสถิติ ที่แตกต่างกัน อย่างไรก็ตาม วิธีการแบ่งอาจมีความแตกต่างกันไปตามแต่ละงานวิจัย เช่น Jebara (2004) harvtxt error: no target: CITEREFJebara2004 (help ) ได้แบ่งออกได้เป็น 3 ประเภทดังนี้
แบบจำลองก่อกำเนิด (generative model) เป็นการสร้างแบบจำลองเชิงสถิติตามการแจกแจงความน่าจะเป็นร่วม
P
(
X
,
Y
)
{\displaystyle P(X,Y)}
ของตัวแปรอิสระ ที่สังเกตได้ X และตัวแปรเป้าหมาย Y [ 1]
แบบจำลองจำแนก (discriminative model) เป็นการสร้างแบบจำลองเชิงสถิติตามการแจกแจงความน่าจะเป็นมีเงื่อนไข ของตัวแปรเป้าหมาย Y ของค่าที่สังเกตได้ x
P
(
Y
∣ ∣ -->
X
=
x
)
{\displaystyle P(Y\mid X=x)}
นอกจากนี้ มาตรการจำแนกประเภทที่คำนวณโดยไม่ใช้แบบจำลองความน่าจะเป็นก็ยังเรียกอย่างรวม ๆ ว่าเป็น "เชิงจำแนก" (discriminative)
สองประเภทหลังนี้อาจไม่ได้ถูกแบ่งแยกต่างกันเสมอไป[ 2] ใน Jebara (2004) harvtxt error: no target: CITEREFJebara2004 (help ) เรียกแยกว่าเป็น generative learning , conditional learning และ discriminative learning แต่ใน Ng & Jordan (2002) harvtxt error: no target: CITEREFNgJordan2002 (help ) ไม่ได้แยกความแตกต่างระหว่าง 2 ประเภทหลัง แต่เรียกรวมว่าเป็น generative classifier และ discriminative classifier [ 3] ในทำนองเดียวกันบางครั้งก็มีการเรียกแยกโดยเรียกตัวจำแนกโดยยืนพื้นแบบจำลองก่อกำเนิดว่า generative classifier และเรียกตัวจำแนกที่ใช้แบบจำลองจำแนกเรียกว่า discriminative classifier แต่อย่างหลังยังหมายถึงตัวแยกประเภทที่ไม่ได้ขึ้นอยู่กับแบบจำลองด้วย
ตัวอย่างมาตรฐานของทั้ง 2 แบบได้แก่
แบบจำลองก่อกำเนิด:
แบบจำลองจำแนก:
เมื่อนำไปใช้กับการจำแนกประเภท เป้าหมายคือการกำหนดฉลากกำกับ y (หรือการแจกแจงความน่าจะเป็นของฉลากกำกับ) จากการสังเกต x มี 3 วิธี
โดยวิธีแรกคือ ตัวจำแนกแบบไม่ใช้การแจกแจง (distribution-free classifier) คือทำคำนวณโดยตรงโดยไม่ต้องใช้การแจกแจงความน่าจะเป็น
วิธีที่สองคือแบบจำลองจำแนก (discriminative model) ซึ่งทำการคำนวณความน่าจะเป็นของป้ายกำกับจากค่าที่สังเกตได้
P
(
Y
|
X
=
x
)
{\displaystyle P(Y|X=x)}
ส่วนวิธีที่สามคือแบบจำลองก่อกำเนิด (generative model) ซึ่งหาการแจกแจงร่วม
P
(
X
,
Y
)
{\displaystyle P(X,Y)}
แล้วจึงคำนวณความน่าจะเป็นมีเงื่อนไข
P
(
Y
|
X
=
x
)
{\displaystyle P(Y|X=x)}
เทคนิคเหล่านีมีความน่าจะเป็นมากขึ้น แม้ว่าจะเป็นทางอ้อมมากขึ้นก็ตาม และสามารถใช้ความรู้โดเมนและทฤษฎีความน่าจะเป็นได้มากขึ้น ในทางปฏิบัติ มีทางเลือกวิธีการต่าง ๆ มากมายขึ้นอยู่กับปัญหาที่พิจารณาในการใช้งานจริง และก็สามารถใช้วิธีการแบบผสมผสานที่รวมข้อดีของหลายวิธีเข้าด้วยกันได้เช่นกัน
คำนิยาม
อีกวิธีในการจำแนกแบบจำลองคือคำจำกัดความแบบสมมาตรดังต่อไปนี้
แบบจำลองก่อกำเนิด คือแบบจำลองที่แสดงความน่าจะเป็นมีเงื่อนไข ของตัวแปร X ที่สังเกตได้ เมื่อให้ค่าวัตถุเป้าหมาย y เขียนแสดงได้เป็น
P
(
X
∣ ∣ -->
Y
=
y
)
{\displaystyle P(X\mid Y=y)}
[ 4]
แบบจำลองจำแนก คือแบบจำลองที่แสดงความน่าจะเป็นมีเงื่อนไขของตัวแปรเป้าหมาย Y เมื่อให้ค่าที่สังเกตได้ x เขียนแสดงได้เป็น
P
(
Y
∣ ∣ -->
X
=
x
)
{\displaystyle P(Y\mid X=x)}
[ 5]
แบบจำลองก่อกำเนิดใช้ค่าที่สังเกตได้และค่าวัตถุประสงค์
(
x
,
y
)
{\displaystyle (x,y)}
หรือเป็นไปได้ที่จะสร้างตัวอย่างแบบสุ่มของค่าที่สังเกตได้ x โดยให้ค่าเป้าหมาย y ในทางกลับกัน แบบจำลองจำแนก หรือตัวจำแนกแบบไม่ใช้การแจกแจง (ไม่ใช้แบบจำลอง) สามารถ ระบุค่าของตัวแปรเป้าหมาย Y เมื่อให้ค่าที่สังเกตได้ x [ 4]
ความแตกต่างระหว่างคำว่า classification และ discrimination นั้นละเอียดอ่อน ทั้งคู่สามารถแปลเป็น "การจำแนก" มักใช้สลับแทนกันได้ ดังนั้น การเรียกว่า discriminative classification นั้นจึงเป็นคำซ้ำซ้อน
คำว่า "แบบจำลองก่อกำเนิด" ยังหมายถึงแบบจำลองที่สร้างอินสแตนซ์ของตัวแปรขาออกในลักษณะที่ไม่เกี่ยวข้องโดยตรงกับการแจกแจงความน่าจะเป็นของตัวอย่างที่เป็นไปได้ของตัวแปรป้อนเข้า โครงข่ายปฏิปักษ์ก่อกำเนิด เป็นตัวอย่างหนึ่งของแบบจำลองก่อกำเนิดประเภทนี้ ซึ่งพิจารณาจากความคล้ายคลึงกันของค่าขาออกหนึ่ง ๆ กับค่าป้อนเข้าที่เป็นไปได้เป็นหลัก อย่างไรก็ตาม แบบจำลองดังกล่าวนี้ไม่ใช่ตัวแยกประเภท
ความสัมพันธ์ระหว่างแบบจำลอง
ในปัญหาการจำแนกประเภท ตัวแปรที่สังเกตได้ X มักจะเป็นค่าต่อเนื่อง ตัวแปรเป้าหมาย Y โดยทั่วไปจะเป็นค่าแบบไม่ต่อเนื่อง ที่ประกอบด้วยชุดของฉลากที่มีขอบเขตจำกัด และความน่าจะเป็นมีเงื่อนไข
P
(
Y
∣ ∣ -->
X
)
{\displaystyle P(Y\mid X)}
อาจตีความได้ว่าเป็นฟังก์ชันเป้าหมาย
f
: : -->
X
→ → -->
Y
{\displaystyle f\colon X\to Y}
สำหรับค่าป้อนเข้า X และค่าขาออก Y
คำจำกัดความทั้งสองของแบบจำลองก่อกำเนิดมีความสัมพันธ์กันอย่างใกล้ชิดเมื่อมีชุดป้ายกำกับที่มีขอบเขตจำกัด แบบจำลองการแจกแจงแบบมีเงื่อนไข
P
(
X
∣ ∣ -->
Y
=
y
)
{\displaystyle P(X\mid Y=y)}
แสดงถึงการแจกแจงของแต่ละฉลาก และแบบจำลองของการแจกแจงร่วมจะแสดงถึงการแจกแจงของค่าฉลาก
P
(
Y
)
{\displaystyle P(Y)}
และการแจกแจงค่าสังเกตการณ์สำหรับค่าฉลาก
P
(
X
∣ ∣ -->
Y
)
{\displaystyle P(X\mid Y)}
เขียนแสดงได้เป็น
P
(
X
,
Y
)
=
P
(
X
∣ ∣ -->
Y
)
P
(
Y
)
{\displaystyle P(X,Y)=P(X\mid Y)P(Y)}
ดังนั้นแล้ว แม้ว่าแบบจำลองของการแจกแจงความน่าจะเป็นร่วมจะมีข้อมูลมากกว่าแบบจำลองของการแจกแจงฉลากกำกับ (ซึ่งไม่รวมความถี่สัมพัทธ์ของฉลากกำกับ) ความแตกต่างนั้นค่อนข้างน้อยและก็ไม่ได้แยกความแตกต่างของทั้งสองเสมอไป
ถ้ามีการแจกแจงความน่าจะเป็นร่วม
P
(
X
,
Y
)
{\displaystyle P(X,Y)}
สามารถคำนวณได้ในรูปของการแจกแจงตามขอบ ของตัวแปรแต่ละตัว
P
(
X
)
=
∑ ∑ -->
y
P
(
X
,
Y
=
y
)
{\displaystyle P(X)=\sum _{y}P(X,Y=y)}
และ
P
(
Y
)
=
∫ ∫ -->
x
P
(
Y
,
X
=
x
)
{\displaystyle P(Y)=\int _{x}P(Y,X=x)}
(โดยที่ X มีความต่อเนื่อง ดังนั้นจึงใช้ปริพันธ์ ในขณะที่ Y ไม่ต่อเนื่อง จึงใช้เป็นผลรวมสะสม) การแจกแจงแบบมีเงื่อนไขทั้งสองแบบสามารถพบได้โดยใช้คำจำกัดความของความน่าจะเป็นมีเงื่อนไข :
P
(
X
∣ ∣ -->
Y
)
=
P
(
X
,
Y
)
/
P
(
Y
)
{\displaystyle P(X\mid Y)=P(X,Y)/P(Y)}
และ
P
(
Y
∣ ∣ -->
X
)
=
P
(
X
,
Y
)
/
P
(
X
)
{\displaystyle P(Y\mid X)=P(X,Y)/P(X)}
ถ้ามีแบบจำลองที่มีความน่าจะเป็นมีเงื่อนไขอันหนึ่ง และการแจกแจงความน่าจะเป็น
P
(
X
)
{\displaystyle P(X)}
และ
P
(
Y
)
{\displaystyle P(Y)}
ของการประมาณตัวแปร X และ Y แล้ว เราสามารถใช้ทฤษฎีบทของเบส์ เพื่อประมาณค่าความน่าจะเป็นแบบมีเงื่อนไขที่ตรงกันข้ามได้:
P
(
X
∣ ∣ -->
Y
)
P
(
Y
)
=
P
(
Y
∣ ∣ -->
X
)
P
(
X
)
{\displaystyle P(X\mid Y)P(Y)=P(Y\mid X)P(X)}
ตัวอย่างเช่นถ้าเรามีแบบจำลองก่อกำเนิด
P
(
X
∣ ∣ -->
Y
)
{\displaystyle P(X\mid Y)}
สามารถประมาณได้ว่า
P
(
Y
∣ ∣ -->
X
)
=
P
(
X
∣ ∣ -->
Y
)
P
(
Y
)
/
P
(
X
)
{\displaystyle P(Y\mid X)=P(X\mid Y)P(Y)/P(X)}
ในขณะที่ถ้ามีแบบจำลองจำแนก
P
(
Y
∣ ∣ -->
X
)
{\displaystyle P(Y\mid X)}
จะสามารถประมาณได้เป็น
P
(
X
∣ ∣ -->
Y
)
=
P
(
Y
∣ ∣ -->
X
)
P
(
X
)
/
P
(
Y
)
{\displaystyle P(X\mid Y)=P(Y\mid X)P(X)/P(Y)}
อย่างไรก็ตาม คำจำกัดความของทฤษฎีบทของเบส์ (การคำนวณความน่าจะเป็นมีเงื่อนไขหนึ่ง ๆ โดยใช้ความน่าจะเป็นมีเงื่อนไขอื่น) และความน่าจะเป็นมีเงื่อนไข (การคำนวณความน่าจะเป็นแบบมีเงื่อนไขโดยใช้การแจกแจงร่วม) มักจะเป็นที่สับสนกัน
เปรียบเทียบกับแบบจำลองจำแนก
ขั้นตอนวิธีเชิงก่อกำเนิดสร้างแบบจำลองเพื่อจำแนกสัญญาณโดยดูว่าข้อมูลนั้นเกิดขึ้นมาอย่างไร ข้อพิจารณาหลักคือดูว่าหมวดหมู่ใดมีแนวโน้มที่จะสร้างสัญญาณนี้มากที่สุด เมื่อพิจารณาจากสมมติฐานในส่วนการก่อกำเนิด ในทางกลับกัน ขั้นตอนวิธีแบบจำแนกเพียงแค่จำแนกสัญญาณที่พิจารณาโดยไม่ต้องสนใจว่าข้อมูลเกิดขึ้นมาอย่างไร กล่าวอีกนัยหนึ่ง ขั้นตอนวิธีการเชิงจำแนกสามารถนำมาใช้จำแนกหมวดหมู่ได้โดยตรงหลังจากทำการเรียนรู้ข้อมูล
p
(
y
|
x
)
{\displaystyle p(y|x)}
ในทางกลับกัน ขั้นตอนวิธีก่อกำเนิด จะทำการเรียนรู้
p
(
x
,
y
)
{\displaystyle p(x,y)}
และทำการแปลงเป็น
p
(
y
|
x
)
{\displaystyle p(y|x)}
แล้วจึงนำมาใช้จำแนกประเภทข้อมูล ข้อดีอย่างหนึ่งของขั้นตอนวิธีเชิงกำเนิดก็คือ
p
(
x
,
y
)
{\displaystyle p(x,y)}
สามารถใช้เพื่อสร้างข้อมูลใหม่ที่คล้ายกับข้อมูลที่มีอยู่ อย่างไรก็ตาม ขั้นตอนวิธีเชิงจำแนกบางแบบก็ได้แสดงให้เห็นว่าทำงานได้ดีกว่าขั้นตอนวิธีก่อกำเนิดบางแบบในงานการจำแนกประเภท[ 6]
แบบจำลองจำแนกไม่จำเป็นต้องสร้างแบบจำลองการแจกแจงของตัวแปรที่สังเกตได้ แต่ก็ไม่สามารถแสดงความสัมพันธ์ที่ซับซ้อนระหว่างตัวแปรที่สังเกตการณ์และตัวแปรเป้าหมายได้ อย่างไรก็ตาม โดยทั่วไปแล้ว แบบจำลองเหล่านี้ไม่จำเป็นต้องดีกว่าแบบจำลองทั่วไปสำหรับการจำแนกประเภทข้อมูล และ การวิเคราะห์การถดถอย โดยรวมแล้ว เทคนิคทั้งสองประเภทถูกมองว่าเป็นตัวช่วยเสริมกัน หรืออเป็นมุมมองที่แตกต่างกันของกระบวนการเดียวกัน[ 7]
แบบจำลองก่อกำเนิดเชิงลึก
เนื่องจากการที่เทคนิคการเรียนรู้เชิงลึก ได้รับความนิยมมากขึ้น จึงได้มีการพัฒนาวิธีการใหม่ที่เรียกว่า แบบจำลองก่อกำเนิดเชิงลึก (deep generative model, DGM) ขึ้นมา ซึ่งได้รวมแบบจำลองก่อกำเนิดและโครงข่ายประสาทเทียม เชิงลึก[ 8] [ 9] [ 10] โดยทั่วไปแล้ว ประสิทธิภาพของแบบจำลองเหล่านี้จะได้รับการปรับปรุงโดยการเพิ่มทั้งขนาดของโครงข่ายประสาทเทียมและขนาดของข้อมูลสำหรับฝึก[ 11]
แบบจำลองก่อกำเนิดเชิงลึกที่เป็นที่รู้จักทั่วไป เช่น ตัวเข้ารหัสอัตโนมัติแบบแปรผัน (VAE) โครงข่ายปฏิปักษ์ก่อกำเนิด (GAN) และแบบจำลองการถดถอยอัตโนมัติ ในยุคหลัง ๆ นี้ ยิ่งมีแนวโน้มไปสู่การสร้างแบบจำลองเชิงลึกขนาดใหญ่มากขึ้น[ 8] ตัวอย่างเช่น GPT-3 และ GPT-2 รุ่นก่อนหน้านั้นเป็นแบบจำลองภาษา ประสาทถดถอยอัตโนมัติที่มีพารามิเตอร์นับพันล้านตัว[ 12] ในขณะที่ BigGAN [ 13] และ VQ-VAE [ 14] ซึ่งใช้สำหรับการสร้างภาพนั้นมีพารามิเตอร์มากถึงหลายร้อยล้านตัว Jukebox เป็นแบบจำลองก่อกำเนิดขนาดใหญ่มากสำหรับสร้างเสียงเพลง มีพารามิเตอร์นับพันล้านตัว[ 15]
อ้างอิง
↑ Ng & Jordan (2002) harvtxt error: no target: CITEREFNgJordan2002 (help ) : "Generative classifiers learn a model of the joint probability,
p
(
x
,
y
)
{\displaystyle p(x,y)}
, of the inputs x and the label y , and make their predictions by using Bayes rules to calculate
p
(
y
∣ ∣ -->
x
)
{\displaystyle p(y\mid x)}
, and then picking the most likely label y .
↑ Jebara 2004 , 2.4 Discriminative Learning harvnb error: no target: CITEREFJebara2004 (help ) : "This distinction between conditional learning and discriminative learning is not currently a well established convention in the field."
↑ Ng & Jordan 2002 harvnb error: no target: CITEREFNgJordan2002 (help ) : "Discriminative classifiers model the posterior
p
(
y
|
x
)
{\displaystyle p(y|x)}
directly, or learn a direct map from inputs x to the class labels."
↑ 4.0 4.1 Mitchell 2015 harvnb error: no target: CITEREFMitchell2015 (help ) : "We can use Bayes rule as the basis for designing learning algorithms (function approximators), as follows: Given that we wish to learn some target function
f
: : -->
X
→ → -->
Y
{\displaystyle f\colon X\to Y}
, or equivalently,
P
(
Y
∣ ∣ -->
X
)
{\displaystyle P(Y\mid X)}
, we use the training data to learn estimates of
P
(
X
∣ ∣ -->
Y
)
{\displaystyle P(X\mid Y)}
and
P
(
Y
)
{\displaystyle P(Y)}
. New X examples can then be classified using these estimated probability distributions, plus Bayes rule. This type of classifier is called a generative classifier, because we can view the distribution
P
(
X
∣ ∣ -->
Y
)
{\displaystyle P(X\mid Y)}
as describing how to generate random instances X conditioned on the target attribute Y .
↑ Mitchell 2015 harvnb error: no target: CITEREFMitchell2015 (help ) : "Logistic Regression is a function approximation algorithm that uses training data to directly estimate
P
(
Y
∣ ∣ -->
X
)
{\displaystyle P(Y\mid X)}
, in contrast to Naive Bayes. In this sense, Logistic Regression is often referred to as a discriminative classifier because we can view the distribution
P
(
Y
∣ ∣ -->
X
)
{\displaystyle P(Y\mid X)}
as directly discriminating the value of the target value Y for any given instance X
↑ Ng & Jordan 2002 harvnb error: no target: CITEREFNgJordan2002 (help )
↑ Bishop, C. M.; Lasserre, J. (24 September 2007), "Generative or Discriminative? getting the best of both worlds", ใน Bernardo, J. M. (บ.ก.), Bayesian statistics 8: proceedings of the eighth Valencia International Meeting, June 2-6, 2006 , Oxford University Press, pp. 3–23, ISBN 978-0-19-921465-5
↑ 8.0 8.1 "Scaling up—researchers advance large-scale deep generative models" . Microsoft . April 9, 2020. สืบค้นเมื่อ 2020-07-24 .
↑ "Generative Models" . OpenAI . June 16, 2016. สืบค้นเมื่อ 2020-05-19 .
↑ Tomczak, Jakub (2022). Deep Generative Modeling . Cham: Springer. p. 197. doi :10.1007/978-3-030-93158-2 . ISBN 978-3-030-93157-5 . S2CID 246946335 .
↑ Kaplan, Jared; McCandlish, Sam. "Scaling Laws for Neural Language Models". arXiv :2001.08361 [stat.ML ].
↑ "Better Language Models and Their Implications" . OpenAI . February 14, 2019. สืบค้นเมื่อ 2020-07-24 .
↑ Brock, Andrew; Donahue, Jeff. "Large Scale GAN Training for High Fidelity Natural Image Synthesis". arXiv :1809.11096 [cs.LG ].
↑ Razavi, Ali; van den Oord, Aaron. "Generating Diverse High-Fidelity Images with VQ-VAE-2". arXiv :1906.00446 [cs.LG ].
↑ "Jukebox" . OpenAI . April 30, 2020. สืบค้นเมื่อ 2020-05-19 .