์ด๋ ต๊ณ ๋ณต์กํ ๋ชจ๋ธ์ด ์๋ ๊ธฐ๋ณธ ํธ๋ฆฌ๋ชจ๋ธ์ด ์ฑ๋ฅ์ด ๋ ์ข์ ๊ฒฝ์ฐ๊ฐ ์๋ค.
๋ ์ธ๊ธฐ์๋ ๋ถ์คํ ๋ชจ๋ธ์ธ Light GBM, XG boost์ Tree๋ชจ๋ธ์ ๊ณ ๋ํํ ๊ฒ์ด๊ณ ,
๋ ๋ํ ํ๋ก์ ํธ์์ ์ฌ์ฉํ๋ ๋ชจ๋ธ์ด๊ธฐ์ ๋ค์ ํ ๋ฒ ์ ํํ ์ดํดํด๋ณด๊ณ ์ StatQuest: Decision Trees๋ฅผ ๋ณด๊ณ ์ ๋ฆฌํด๋ดค๋ค.
* ์ด ๊ธ์ StatQuest: Decision Trees๋ฅผ ๋ณด๊ณ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค. *
0. Decision Tree
Decision Tree๋ ๋ถ๋ฅ ๊ท์น์ ํตํด ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฅ, ํ๊ทํ๋ ์ง๋ ํ์ต ๋ชจ๋ธ ์ค ํ๋์ด๋ค.
ํ ๋ฒ์ ๋ถ๊ธฐ ๋๋ง๋ค ๋ณ์ ์์ญ์ ๋ ๊ฐ๋ก ๊ตฌ๋ถํ๋ฉฐ, ์ง๋ฌธ์ด๋ ์ ๋ต์ ๋ ธ๋(Node)๋ผ๊ณ ๋ถ๋ฆฐ๋ค.
๋งจ ์ฒ์ ๋ถ๋ฅ ๊ธฐ์ค์ Root Node,
์ค๊ฐ ๋ถ๋ฅ ๊ธฐ์ค์ Intermediate Node,
๋งจ ๋ง์ง๋ง ๋ ธ๋๋ฅผ Terminal Node ํน์ Leaf Node๋ผ๊ณ ํ๋ค.
๊ฒฐ์ ํธ๋ฆฌ์ ๊ธฐ๋ณธ ์์ด๋์ด๋ Leaf Node๊ฐ ๊ฐ์ฅ ์์ด์ง ์์ ์ํ๋ก ์์ ํ ๋ถ๋ฅ๋๋ ๊ฒ, ์ฆ ๋ณต์ก์ฑ(entropy)์ด ๋ฎ๋๋ก ๋ง๋๋ ๊ฒ์ด๋ค.
StatQuest: Decision Trees ์์๋ Yes/No ๋ฐ์ดํฐ, ์ซ์ ๋ฐ์ดํฐ ๋ฐ ์์ ๋ฐ์ดํฐ์ ์ธ ๊ฐ์ง ๋ฐ์ดํฐ ์ ํ์ ๋ํ Decision Tree๋ฅผ ๊ตฌ์ถํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋ค.
1. ์์ (Classfication - Yes/No)
ํ ํ๋ํ๋๊ฐ ํ์ ํ ๋ช
์ ์ง๋จ ๋ฐ์ดํฐ์ธ๋ฐ, 'Chest Pain', 'Good Blood Circulation', 'Blocked Arteries'์ ์ ๋ฌด(Yes / No)๋ฅผ ๊ฐ์ง๊ณ Heart Desease๋ฅผ ์์ธกํ๊ณ ์ ํ๋ค.
์ด๋, ์ผ๋ฐ์ ์ผ๋ก ์์ธก์ ์ฐ์ด๋ ๋ฐ์ดํฐ ์ด์ Feature, ์์ธกํ๊ณ ์ ํ๋ ์ด์ Target์ด๋ผ๊ณ ํ๋ค.
Decision Tree๋ ๋ฐ์ดํฐ์ Feature ๋ค์ ์ค๋ฌด๊ณ ๊ฐ์ฒ๋ผ ํ๋์ฉ ์ง๋ฌธํ์ฌ,
์ต์ข
์ ์ผ๋ก Target์ ์์ธกํ๋ ๋ฐฉ๋ฒ์ด๋ค. ์๋ฅผ ๋ค์ด,
- Chest Pain ์ด ์๋๊ฐ?
- ์๋ค๋ฉด, Good Blood Circulation๋ ์๋๊ฐ?
- ๊ทธ๋ฆฌ๊ณ Blocked Arteries๋ ์๋๊ฐ?
- ๋ค ์๋ค๋ฉด ์ต์ข ์ ์ผ๋ก, Heart Desease๋ ์๋ค!
๋ผ๊ณ ์์ธกํ๋ ์์ด๋ค.
Feature ๋ค์ ์์ฐจ์ ์ผ๋ก ๋ฌผ์ด๋ณด๊ณ , ๊ทธ์ ๋ฐ๋ผ ๋ถ๊ธฐ๋ฅผ ๋๋๋ ๊ฒ(Yes ๋๋ No)์ด ํน์ง์ด๋ค.
์ด ๋ชจ์์ด ๋ง์น Tree ๊ฐ๋ค๊ณ ํ์ฌ, ์ด๋ฆ๋ Decsion Tree ์ธ ๊ฒ์ด๋ค. ํํธ, ์ด๋ฐ ๋ชจ๋ธ์ ๋๊ตฐ๊ฐ์๊ฒ ์ค๋ช ํ๊ธฐ๋ ์ฝ๋ค. ์ง๋ฌธ์ ๋ฐ๋ผ๊ฐ๊ณ , ๋ต์ ํ๋์ฉ ์ป๋ค ๋ณด๋ฉด, Tree์ ๋, ์ฆ Leaf์ ๋๋ฌํ๊ฒ ๋๊ณ , ์ฌ๊ธฐ์ ์ต์ข ์ ์ธ ๋ต์ ์ป์ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ์ , ์ง๋ฌธ๋ง ์ ๋ฐ๋ผ๊ฐ๋ฉด ๋๋ค.
๊ทผ๋ฐ, ์ค๋ฌด๊ณ ๊ฐ๋ ๊ทธ๋ ์ง๋ง, ๋ '์ง๋ฌธ'์ ์ํด์ผ ํ๋ค. ์ฆ, ์ด๋ค Feature ์์๋ก ๋จผ์ ์ง๋ฌธํ ์ง์ ์ ํํจ์ ๋ฐ๋ผ ์ต์ข ์์ธก์ด ๋ฌ๋ผ์ง๋ค. ์๋ฅผ ๋ค์ด, ํ์์ Chest Pain์ ๋ฌผ์ด๋ณด๊ณ ๋ค์์ Good Blood Circulation ๋ฅผ ๋ฌผ์ด๋ณด๋ ๊ฒ๊ณผ Good Blood Circulation์ ๋ฌผ์ด๋ณด๊ณ Chest Pain์ ๊ทธ๋ค์์ ๋ฌผ์ด๋ณด๋ ๊ฒ์ด ์์ธก์ด ๋ฌ๋ผ์ง๋ค. ์ฐ๋ฆฌ๋ ์์ธก ๋ชจ๋ธ์ ๋ง๋๋ ๊ฒ์ด๋ฏ๋ก, ์ ์์ธกํ๋ ๊ฒ์ด ์ค์ํ๊ณ , ๋ฐ๋ผ์, ๋ฌผ์ด๋ณผ Feature์ ์์๊ฐ ์ฃผ ์ด์๊ฐ ๋๋ค.
๊ทธ๋ ๋ค๋ฉด ๋ฌผ์ด๋ณผ Feature์ ์์๋ ์ด๋ป๊ฒ '์' ์ ํ๋๊ฐ?
๋ค์ ๋งํ๋ฉด, ์ด๋ค ๋ฐฉ์์ผ๋ก Decision Tree๋ฅผ ๋ง๋๋๊ฐ?
2. Decision Tree ๋ง๋๋ ๋ฒ (Feature ์์ ์ ํ๊ธฐ)
๋ฆฌํ ๋ ธ๋ ์ค ์ด๋ ๊ฒ๋ 100% "์" ๋๋ 100% "์๋์ค"๊ฐ ์๋๊ธฐ ๋๋ฌธ์ ๋ชจ๋ "impure" ํ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋๋ค.
๋ฃจํธ ๋ ธ๋๋ฅผ ๊ฒฐ์ ํ๋ ค๋ฉด ์ด๋ค ๋ถ๋ฆฌ๊ฐ ๊ฐ์ฅ ์ข์์ง ์๊ณ ์ถ๋ค.
์ฆ, "impurity"๋ฅผ ์ธก์ ํ๊ณ ๋น๊ตํ ๋ฐฉ๋ฒ์ด ํ์ํ๋ค. → Gini Index ์ฌ์ฉ
Leaf Node์ Gini impurity๋ ๋ค์๊ณผ ๊ฐ์ด ๊ณ์ฐํ๋ค.
Leaf Node ์ Gini impurity = 1 - (yes ์ ํ๋ฅ )^2 - (no ์ ํ๋ฅ )^2
Gini impurity (GI) = 1 — P(Yes)² — P(No)²
์๋ฅผ ๋ค์ด, Chest Pain์ผ๋ก ํ์๋ค์ Yes, No๋ก ๋ถ๋ฅํ๊ณ ,
๋ถ๋ฅ๋ ํ์๋ค์ Heart Disease๋ก ์ต์ข ๋ถ๋ฅํ๋ค๊ณ ํด๋ณด์. ๊ทธ๋ฆฌ๊ณ ๊ทธ ๊ฒฐ๊ณผ๊ฐ ๋ค์๊ณผ ๊ฐ๋ค๊ณ ํ์.
Chest Pain์ด๋ผ๋ Feature๋ Heart Disease์ ์ ๋ฌด๋ฅผ ํ๊ฐ๋ฆํ๋๋ฐ ์ค์ํ ์ง๋ฌธ์ด์์๊น?
์ด๋ฅผ ์์นํํด์ ํํํด์ฃผ๋ ๊ฒ์ด Gini impurity์ด๋ค. ๋จผ์ ์ผ์ชฝ์ Leaf Node์ Gini impurity๋ฅผ ๊ณ์ฐํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
์ค๋ฅธ์ชฝ์ Leaf Node์ Gini impurity๋ฅผ ๊ณ์ฐํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
์ ๋ฆฌํ๋ฉด, ๋ Leaf Node์ Gini Impurity๋ ๋ค์๊ณผ ๊ฐ๋ค.
์ต์ข ์ ์ผ๋ก, ์ด Feature์ Gini Impuritiy๋ฅผ ๊ณ์ฐํด์ผ ํ๋๋ฐ, ์ด๋ ๋ค์๊ณผ ๊ฐ์ด ๊ณ์ฐํ๋ค.
ํด๋น Feature ์ Gini Impurity = Yes Node(์ผ์ชฝ) ์ Gini Impurity + No Node(์ค๋ฅธ์ชฝ) ์ Gini Impurity
์ด๋, ๋ Leaf Node์ ๋ฐ์ดํฐ ๊ฐ์๊ฐ ๋ค๋ฆ์ ๊ณ ๋ คํ์ฌ, weight average๋ฅผ ๊ณฑํด์ผ ํ๋ค.
์ ์ฒด ๋ฐ์ดํฐ 144+159๋ฅผ ํด๋น ๋ฐ์ดํฐ 144์ 159์ ๊ฐ๊ฐ ๋๋ ํ weight ๊ฐ์ ๊ณฑํด์ฃผ๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
์ด๋ ๊ฒ ํด์ ์ป๊ฒ ๋ Chest Pain์ Gini Impurity ๊ฐ์ 0.364์ด๋ค.
์ด๋ฐ ์์ผ๋ก, ๋ชจ๋ Feature ๋ค์ Gini Impurity ๊ฐ์ ๊ตฌํด๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
์ด ์ค Good Blood Circulation ์ด 0.360์ผ๋ก ์ ์ผ ๋ฎ์ Gini Impurity ๊ฐ์ ๊ฐ๋ ๊ฒ์ ์ ์ ์๋ค. ๋ฐ๋ผ์, ๋ค์๊ณผ ๊ฐ์ด ์ด๋ฅผ ๋งจ ์ฒ์ ๋ฌผ์ด๋ณด๋ Feature๋ก ๋๋ค.
๊ทธ๋ฆฌ๊ณ , ์ด์ ๋ค์์ Chest Pain์ ๋ฌผ์ด๋ณผ์ง, ์๋๋ฉด Blocked Arteries๋ฅผ ๋ฌผ์ด๋ณผ์ง ๊ฒฐ์ ํด์ผ ํ๋ค.
์ด ์ญ์ ์ง๊ธ ํ ๊ณผ์ ์ ๊ทธ๋๋ก ์ ์ฉํ๋ค.
์ฆ, Feature์ Gini Impurity๋ฅผ ๊ณ์ฐํ์ฌ, ์์ Gini Impurity ๊ฐ์ ๊ฐ๋ Feature๋ฅผ ๋ค์ Node์ ์ง๋ฌธ Feature๋ก ๋๋ฉด ๋๋ค.
Blocked Arteries ๊ฐ 0.29๋ก ๋ ์์ผ๋ฏ๋ก
- ๋ค์์ Good Blood Circulation์ ๊ฐ์ก๋๊ฐ?
- (Yes ์ธ ๊ฒฝ์ฐ) Blocked Arteries์ ๊ฐ์ก๋๊ฐ?
์์ผ๋ก Decision Tree ๊ฐ ๋ง๋ค์ด์ง๋ค.
๊ทธ๋ฆฌ๊ณ ์ต์ข ์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ด Chest Pain์ ์ ๋ฌด๋ฅผ ๋ฌผ์ด๋ณด๋ฉฐ, ํ์ชฝ์ Leaft Node๊น์ง ๋๋ฌํ๊ฒ ๋๋ค.
ํ์ชฝ์ ์์ฑ๋์๋ค.
์์ง ์ฑ์์ง์ง ์์ Node ์ค ํ๋๋ฅผ ๋ณด์.
์ด ๊ฒฝ์ฐ, Chest Pain์ผ๋ก ๋ฌผ์ด๋ณด๋ ๊ฒ(๋ถ๊ธฐ๋ฅผ ๋๋๋ ๊ฒ)์ Gini Impurity (0.29) ๋ณด๋ค, ์ ๋ฌผ์ด๋ณด๋ ๊ฒ์ด Gini Impurity (0.2)๋ก ๋ ๋ฎ๊ธฐ ๋๋ฌธ์, ์ ๋๋๋ ๊ฒ ๋ซ๋ค๊ณ ๋ณธ๋ค. ๋ฐ๋ผ์ ์ ์์ฒด๊ฐ Leaf Node ๊ฐ ๋๋ค.
์ ํํ๋ ๋ค์์ ๊ท์น์ ๋ฐ๋ผ์ ๋ง๋ ๋ค.
1. ์์ง ์ง๋ฌธํ์ง ์์ Feature ์ Gini Impurity Score๋ฅผ ๊ณ์ฐํ๋ค.
2. Feature ์ Gini Impurity Score ๋ณด๋ค Leaf Node ๊ทธ ์์ฒด์ Gini Impurity Score ๊ฐ ๋ ๋ฎ๋ค๋ฉด, ๋ถ๊ธฐ๋ฅผ ๋ง๋ค์ง ์๊ณ , ํ์ฌ Node ๊ฐ Leaf Node๊ฐ ๋๋ค.
3. 2์ ๊ฒฝ์ฐ๊ฐ ์๋๋ผ๋ฉด, Gini Impurity Score๊ฐ ๊ฐ์ฅ ๋ฎ์ Feature ๋ก ๋ถ๊ธฐ๋ฅผ ๋๋๋ค.
4. Tree ๊ฐ ์์ฑ๋ ๋ ๊น์ง 2,3 ์ ๋ชจ๋ Leaf Node ์ ๋ฐ๋ณตํ๋ค.
์ด๋ฌํ ๊ณผ์ ์ ๋ชจ๋ Leaf Node๋ฅผ ๋ฐ๋ผ๊ฐ๋ฉฐ ๋ชจ๋ ๊ณผ์ ์ ๊ฑฐ์น๊ฒ ๋๋ฉด ๋ค์๊ณผ ๊ฐ์ Tree Model ์ด ์์ฑ๋๋ค.
3. Regression์ ๊ฒฝ์ฐ๋ ์ด๋ป๊ฒ ํ ๊น? (Numeric Data)
์ง๊ธ๊น์ง๋ Yes/No, Binary Data๋ฅผ ์ฌ์ฉํ๋ค. ์ฆ classification ๋ฌธ์ ์๋ค๊ณ ๋ณผ ์ ์๋ค.
๊ทธ๋ ๋ค๋ฉด, Numeric Data๋ฅผ ์ฌ์ฉํ์ฌ Regression ๋ฌธ์ ์ผ ๊ฒฝ์ฐ๋ ์ด๋ป๊ฒ ํ ๊น?
์๋ฅผ ๋ค์ด, ํ์์ weight๋ก heart disease๋ฅผ ์์ธกํด์ผ ํ๋ค๊ณ ํด๋ณด์.
์ด๋ด ๋๋ ๋ค์๊ณผ ๊ฐ์ด ์งํํ๋ค.
1. ํ์์ Weight ๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค.
2. ํ์์ ๊ทธ ๋ค์ ํ์ Weight ์ฌ์ด์ ํ๊ท ๊ฐ์ค์น๋ฅผ ๊ตฌํ๋ค.
๊ฐ ํ๊ท ๊ฐ์ค์น์ ๋ํ Impurity๋ฅผ ๊ณ์ฐํ๋ค.
3. '์ด ๊ฐ๋ณด๋ค ํฐ๊ฐ?' ๊ฐ ์ผ์ข
์ ์ง๋ฌธ(feature) ๊ฐ ๋๋ค. ์ด ์ง๋ฌธ์ ํตํด Gini Impurity ๋ฅผ ๊ตฌํ ์์๋ค.
4. ์ญ์ ๊ฐ์ฅ ์์ Gini Impurity ์์๋๋ก Tree ๋ฅผ ๋ง๋ ๋ค.
1. 155์ 180 ์ฌ์ด ํ๊ท ์ 167.5 ๋ค. ์ด ๊ฐ๋ณด๋ค ํฐ์ง ์์์ง ๋ฌผ์ด๋ณธ ๋ค, ํด๋น ์ง๋ฌธ์ Gini Impurity๋ฅผ ๊ตฌํ๋ค.
2. ์ด๋ฐ ์์ผ๋ก ๊ตฌํ, ๊ฐ ์ง๋ฌธ๋ค ์ค, Gini Impurity ๊ฐ ๊ฐ์ฅ ์์ ์ง๋ฌธ์ ๋จผ์ ์ง๋ฌธํ๋๋ก Tree๋ฅผ ๋ง๋ ๋ค.
205๋ GI๊ฐ ๊ฐ์ฅ ๋ฎ๋ค. ๋ฐ๋ผ์ ์ด๊ฒ์ ๊ฐ์ค์น์ ํํต/๋๋งฅ ์ฐจ๋จ์ ๋น๊ตํ๋ ๋ฐ ์ฌ์ฉํ๋ ์ปท์คํ ๋ฐ Impurity ๊ฐ์ด๋ค.
์ด๋ ๊ฒ ์ต์ข ์ ์ผ๋ก ๋ค ๋ง๋ค๊ณ ๋๋ฉด, Yes or No ์์ ์ง๋ฌธ์ด ์๋, < 159, < 200 ๋ฑ ๋ถ๋ฑ์์ ์ง๋ฌธ์ผ๋ก Tree์ Node ๋ค์ ์ฑ์ธ ๊ฒ์ด๋ค.
4. Ranked data
Ranked data๋ numeric data์ ์ ์ฌํ์ง๋ง, ๊ฐ๋ฅํ ๋ชจ๋ ์์์ ๋ํ impurity scores๋ฅผ ๊ณ์ฐํ๋ค.
* ํ๋์, ๋นจ๊ฐ์ ๋๋ ๋ น์์ ๋ํ ๋ถ์๋ฌผ ์ ์๋ ๋ชจ๋ ์ฌ๋์ ํฌํจํ๋ฏ๋ก ๊ณ์ฐํ ํ์๊ฐ ์๋ค.
5. ํ๊ณ
- ๋ง์ฝ ์ํ์ ์ฌ์ด์ฆ๊ฐ ํฌ๋ฉด ํจ์จ์ฑ ๋ฐ ๊ฐ๋ ์ฑ์ด ๋จ์ด์ง๋ค.
- ๊ณผ์ ํฉ์ผ๋ก ์๊ณ ๋ฆฌ์ฆ ์ฑ๋ฅ์ด ๋จ์ด์ง ์ ์๋ค.
- ์ด๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด์ ํธ๋ฆฌ์ ํฌ๊ธฐ๋ฅผ ์ฌ์ ์ ์ ํํ๋ ํ๋์ด ํ์ํ๋ค.
- ํ ๋ฒ์ ํ๋์ ๋ณ์๋ง์ ๊ณ ๋ คํ๋ฏ๋ก ๋ณ์๊ฐ ์ํธ์์ฉ์ ํ์ ํ๊ธฐ๊ฐ ์ด๋ ต๋ค.
- ๊ฒฐ์ ํธ๋ฆฌ๋ Hill Climbing ๋ฐฉ์ ๋ฐ Greedy ๋ฐฉ์์ ์ฌ์ฉํ๊ณ ์๋ค.
- ์ผ๋ฐ์ ์ธ Greedy ๋ฐฉ์์ ์๊ณ ๋ฆฌ์ฆ์ด ๊ทธ๋ ๋ฏ์ด ์ด ๋ฐฉ์์ ์ต์ ์ ํด๋ฅผ ๋ณด์ฅํ์ง๋ ๋ชปํ๋ค.
- ์ฝ๊ฐ์ ์ฐจ์ด์ ๋ฐ๋ผ (๋ ์ฝ๋์ ๊ฐ์์ ์ฝ๊ฐ์ ์ฐจ์ด) ํธ๋ฆฌ์ ๋ชจ์์ด ๋ง์ด ๋ฌ๋ผ์ง ์ ์๋ค.
- ๋ ๋ณ์๊ฐ ๋น์ทํ ์์ค์ ์ ๋ณด๋ ฅ์ ๊ฐ๋๋ค๊ณ ํ์ ๋, ์ฝ๊ฐ์ ์ฐจ์ด์ ์ํด ๋ค๋ฅธ ๋ณ์๊ฐ ์ ํ๋๋ฉด ์ดํ์ ํธ๋ฆฌ ๊ตฌ์ฑ์ด ํฌ๊ฒ ๋ฌ๋ผ์ง ์ ์๋ค.
- ์ด ๊ฐ์ ๋ฌธ์ ๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด ๋ฑ์ฅํ ๋ชจ๋ธ์ด ๋ฐ๋ก Random forest์ด๋ค.
- ๊ฐ์ ๋ฐ์ดํฐ์ ๋ํด ์์ฌ๊ฒฐ์ ๋๋ฌด๋ฅผ ์ฌ๋ฌ ๊ฐ ๋ง๋ค์ด ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์ข ํฉํด ์์ธก ์ฑ๋ฅ์ ๋์ด๋ ๊ธฐ๋ฒ์ด๋ค.
๋ง์น๋ฉฐ
์ง๋ ๋ฉด์ ์์ Gini impurity, impurity์ ๋ํด ๋ฌผ์ด๋ณธ ์ ์ด ์๋๋ฐ ์ ๋๋ก ๋ต์ ํ์ง ๋ชปํ ์ ์ด ์๋ค. ์ฌ์ค ์์ง๋ ์ ์ดํด๊ฐ ์ ๋๋ ๋ถ๋ถ์ด ์์ด์, ๋ค์์ impurity์ ๋ํด ์ ๋ฆฌํด๋ณด๊ณ ์ ํ๋ค.