์บก์คํค์ ์งํํ๋ค๊ฐ ์ผ๋ฐ ์ถ์ฒ ์์คํ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํด์ ์นดํ ๊ณ ๋ฆฌ, ๋ฉ๋ด๋ช ์ ๋ํด์๋ง ์ ์ฌ๋ ๊ณ์ฐ์ ํ๋ค๊ฐ ์์ ์ค๋ช ์ ๋ํ ๋ฌธ์ฅ ์ ์ฌ๋์ ๋ฐ๋ผ ์ถ์ฒ์ ํ๋ฉด ์ข์ ๊ฒ ๊ฐ์์ ๋ฌธ์ฅ ์ ์ฌ๋๋ฅผ ํ๊ฐํ ์ ์๋ NLP ๋ชจ๋ธ์ ์ฐพ์๋ดค๋ค
SBERT์ ๋ํด ๋ด๊ฐ ์ ๋ฆฌํ ๊ธ๋ค !!
[๋ฉ๋ด๋ช + ์นดํ ๊ณ ๋ฆฌ + ์์ ์ค๋ช ]์ ๋ํ ํ๋ณด ํค์๋ ๋ฆฌ์คํธ๋ฅผ ์ถ์ถํ ํ, bi-encoder๋ฅผ ํ์ฉํด์ ํต์ฌ ํค์๋ ๋ฆฌ์คํธ๋ฅผ ์ถ์ถํ๋ค ! (sbert๋ฅผ ์ฌ์ฉํด์ ํ๋ณด ํค์๋ ๋ฆฌ์คํธ์ ๋ฌธ์ฅ์ ๋ํ ์๋ฒ ๋ฉ์ ์์ฑํ๊ณ ํด๋น ์๋ฒ ๋ฉ ๊ฒฐ๊ณผ์ ๋ํด ์ฝ์ฌ์ธ ์ ์ฌ๋ ๊ณ์ฐ์ ํ์ฌ ํต์ฌ ํค์๋ ์ถ์ถ )
๊ทธ๋ฆฌ๊ณ ๋ฉ๋ดํ ๋ฉ๋ด ์ค ์ ๋ ฅ๋ ๋ฉ๋ด์ ํค์๋ ๋ฆฌ์คํธ์ ๊ฐ์ฅ ์ ์ฌ๋๊ฐ ๋์ ๋ฉ๋ด ์์ผ๋ก ์ถ์ฒํด ์ค๋ค !
bi-encoder๋ฅผ ํ์ฉํด์ ํต์ฌ ํค์๋ ์ถ์ถ !! (ํ๋ณด ํค์๋ ๋ฆฌ์คํธ ์ถ์ถ → ํต์ฌ ํค์๋ ๋ฆฌ์คํธ ์ถ์ถ)
์ฐ์ ๊ฐ์์ (๊น๋ฐฅ์ฒ๊ตญ) ๊ฐ๊ฒ ๋ฉ๋ด๋ฅผ cvs ํ์ผ๋ก ๋ง๋ค๊ณ ์ฝ์ด์คฌ๋ค
[์ผ์ฑ๊น๋ฐฅ]์ ์์๋ก ๋ค์๋ฉด
1. food_name + food_category + food_description์ด ํ ๋ฌธ์ฅ์ผ๋ก ํฉ์น ํ, ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด ๋ฆฌ์คํธ ์์ฑ
['์ผ์ฑ๊น๋ฐฅ', '๊น๋ฐฅ', '๊น์', '๋ฐฅ๊ณผ', '๋ค์ํ', '์ผ์ฑ๋ฅผ', '๋ฃ์ด์', '๋ง๋ ', 'ํ๊ตญ์', '์ ํต์ ์ธ', '๊ฐ๋จํ', '๊น๋ฐฅ']
2. ํํ์ ๋ถ์๊ธฐ๋ฅผ ํตํด ๋ช ์ฌ๋ง ์ถ์ถ
['์ผ์ฑ', '๊น๋ฐฅ', '๊น๋ฐฅ', '๊น', '๋ฐฅ', '๋ค์', '์ผ์ฑ', 'ํ๊ตญ', '์ ํต', '๊น๋ฐฅ']....
3. ์์ด๋ฅผ ํ๊ธ๋ก ๋ณํ (๋ด๊ฐ ๋ง๋ ๋ฐ์ดํฐ์ ์ ๊ฒฝ์ฐ, ๋ชจ๋ ํ๊ธ๋ก ์ด๋ฃจ์ด์ ธ ์์)
['์ผ์ฑ', '๊น๋ฐฅ', '๊น๋ฐฅ', '๊น', '๋ฐฅ', '๋ค์', '์ผ์ฑ', 'ํ๊ตญ', '์ ํต', '๊น๋ฐฅ']....
4. 2๋ฒ ์ด์ ์ฌ์ฉ๋๋ ๋จ์ด๋ง ์ถ์ถ
['์ผ์ฑ', '๊น๋ฐฅ']....
5. ๋จ์ด ๊ธธ์ด๊ฐ 2 ์ด์์ธ ๋จ์ด๋ง ์ถ์ถ (๋๋ ๊ตญ, ๋ฉด, ๋ฐฅ ๋ฑ ํ ๊ธ์์ธ ๊ฒฝ์ฐ์๋ ํ์ํด์ 1๊ธ์ ์ด์์ผ๋ก ์ง์ ํด ์ฃผ์๋ค)
['์ผ์ฑ', '๊น๋ฐฅ']....
ใด ์ด ์ต์ข ๊ฒฐ๊ณผ๊ฐ ํค์๋ ํ๋ณด
6. bi-encoder : sbert๋ฅผ ํตํด ๋ฉ๋ด์ ์ถ์ถ๋ ํ๋ณด ํค์๋ ๋ฆฌ์คํธ์ ๋ํด ์๋ฒ ๋ฉ์ ์์ฑ → ์ฝ์ฌ์ธ ์ ์ฌ๋๋ฅผ ๊ณ์ฐํด์ ํต์ฌ ํค์๋ ๋ฆฌ์คํธ ์ถ์ถ
[('์ผ์ฑ', 0.85827744), ('๊น๋ฐฅ', 0.8466986)]
์ด๋ฐ ์ญํ ๋ค์ ํ๋ ํจ์๋ฅผ ์์ฑํ๊ณ , ํจ์๋ค์ ์์์ ๋ง๊ฒ ํธ์ถํด ์ฃผ๊ณ ์ถ์ถ๋ ํค์๋ ๋ฆฌ์คํธ๋ฅผ ๋ฐํํ๋ ํจ์๋ ๋ง๋ค์๋ค !
๊ฒ์ ์๋น์ค
์ฐ๋ฆฌ์ ์๋น์ค๋ ์ผ์นํ๋ ๋ฉ๋ด๊ฐ ์ ๋ ฅ๋ ๊ฒฝ์ฐ์๋ ๋ฐ๋ก ์ฃผ๋ฌธ์ ํด์ฃผ๊ณ ์ ํํ ์ผ์นํ๋ ๋ฉ๋ด๊ฐ ์๋ ๊ฒฝ์ฐ์ ๋ฉ๋ด๋ฅผ ์ถ์ฒํด ์ค๋ค
ใด ํด๋น ์๊ณ ๋ฆฌ์ฆ ์์ฑ
์ด์ ์ ๋ ฅ๋ ๋ฉ๋ด์ ์ ์ฌํ ๋ฉ๋ด๋ฅผ ์ถ์ฒํด ์ฃผ๋ ๊ณผ์ ์ด๋ค
0. ๋จผ์ ๋ฉ๋ดํ์ ๋ชจ๋ ๋ฉ๋ด์ ๋ํ ํต์ฌ ํค์๋๋ฅผ ๋ฝ์ ์ ์ฅํ ํ, ๋ณธ๊ฒฉ์ ์ธ ํค์๋ ๊ธฐ๋ฐ ์ ์ฌ๋ ๊ฒ์ ์๋น์ค๊ฐ ์์๋๋ค
→ ๋ฉ๋ดํ์ ์ ์ฒด ๋ฉ๋ด๋ค์ ๋ฉ๋ด๋ช ๊ณผ ํค์๋ ๋ฆฌ์คํธ ์ถ์ถ ํจ์, ์ธ๋ฑ์ค๋ณ ํค์๋ ์ถ์ถ ํจ์
1. ์๋กญ๊ฒ ์ ๋ ฅ๋์ด ๋ฉ๋ด ์ถ์ฒ์ ๋ฐ๋ ๊ฒฝ์ฐ์๋ ๋ฐ์ดํฐ์ ์ ์ ๋ณด๊ฐ ์๋ ๊ฒฝ์ฐ์ด๊ธฐ ๋๋ฌธ์ chatGPT API๋ฅผ ์ด์ฉํด์ ์นดํ ๊ณ ๋ฆฌ, ๋ฉ๋ด์ ๋ํ ์ค๋ช ์ ์ป์ด์จ๋ค → chatGPT API ์ฌ์ฉ ํจ์, ์ง๋ฌธ + ๋ต๋ณ ์ ์ฒ๋ฆฌ ํ ์ ์ฅ ํจ์
2. ์์ ๊ฐ์ ํค์๋ ์ถ์ถ ๊ณผ์ ์ ํตํด ์๋ก ์ ๋ ฅ๋ ์์์ ํต์ฌ ํค์๋ ๋ฆฌ์คํธ๋ฅผ ์ถ์ถํ๋ค → ๋ฉ๋ด๋ช ์ด ์ ๋ ฅ ์ ํค์๋ ๋ฆฌ์คํธ ์ถ์ถ ํจ์
3. ๋ฉ๋ดํ(๋ฐ์ดํฐ์ )์ ๋ฉ๋ด๋ค์ ๊ฐ ํค์๋ ๋ฆฌ์คํธ์ ์ผ์นํ๋ ํค์๋๊ฐ ๋ง์์๋ก ์ ์ฌ๋๊ฐ ๋๋ค๊ณ ํ๋จํ๊ณ ์ ์ฌ๋์์ผ๋ก ๋ฉ๋ด๋ฅผ ์ถ์ฒํด ์ค๋ค → ๋ฉ๋ด ๊ฒ์ ํจ์
[์ผ์ฑ๊น๋ฐฅ]์ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ด ์ถ์ฒํด ์ฃผ๋ ๊ฒ์ ๋ณผ ์ ์๋ค
ํค์๋์ ๋ฐ๋ฅธ ์์ 20๊ฐ ์์ ์ถ์ฒ ๊ฒฐ๊ณผ
['์ผ์ฑ๊น๋ฐฅ', '์ฐธ์น์์ฌ๋น๊น๋ฐฅ', '์ผ์ฑ๋น๋น๋ฐฅ', '์น์ฆ๊น๋ฐฅ', '์ด๋ฆฐ์ด๊น๋ฐฅ', '์์ฐ๋ ์น์๊น๋ฐฅ', 'ํ์ผ์ฑ๋ณถ์๋ฐฅ', '์ฐธ์น๋ง์๊น๋ฐฅ', '๋งค์ฝค๋ก+A1์ด๊น๋ฐฅ', '๋งค์ฝค์ค์ง์ด๊น๋ฐฅ', '์๊ณ ๊ธฐ๊น๋ฐฅ', '๋์ฅ์ฐ๊ฐ', '์ฐธ์น๊น์น์ฐ๊ฐ', '๊ณ ๋ฑ์ด๊น์น์ฐ๊ฐ', '๊ฝ์น๊น์น์ฐ๊ฐ', '์ก๊ฐ์ฅ', '๋๋ฐฐ๊ธฐ๋ถ๊ณ ๊ธฐ', '๊น์น๋ณถ์๋ฐฅ', '์นด๋ ๋ฎ๋ฐฅ', '์๋๋ถ์ฐ๊ฐ']
ใด ์๋ ๋ฉ๋ดํ์ ๋ฉ๋ด๊ฐ ์๋ ๊ฒฝ์ฐ์๋ง ํค์๋ ๊ธฐ๋ฐ ๋ฉ๋ด ๊ฒ์ ํจ์๊ฐ ๋์๊ฐ๊ธฐ ๋๋ฌธ์ ์ผ์นํ๋ ๋ฉ๋ด๋ ์์ง๋ง, ํจ์๋ฅผ ํ ์คํธํ๋ฉด์ ๊ธฐ์กด ๋ฉ๋ดํ์ ์๋ [์ผ์ฑ๊น๋ฐฅ]์ ๋ํด ๊ฒ์ํ๊ธฐ ๋๋ฌธ์ ๊ฒฐ๊ณผ๋ ์ด์ ๊ฐ๋ค
๋ ~~
์๋๋ ๋ด๊ฐ ์ฐธ๊ณ ํ ํ๋ก์ ํธ !!
์ง์ง ์ ๋ง................ ๋ง~~~~~~~~์ด ๋์์ ๋ฐ์์..ใ ใ ๊ฐ์ฌ์ธ์ฌ๋ผ๋ ๋๋ฆฌ๊ณ ์ถ์ ์ฌ์ ..
๋น์ฐํ ๋ชป ๋ณด์ค ํ ์ง๋ง... ์ง์ง ๋๋ฌด ๊ฐ์ฌํฉ๋๋ค.. ^_ใ
's t u d y . . ๐ง > AI ์ค ML ์ค DL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ML ์ด๋ก ] ํผ์ ํธ๋ก & ๋ค์ธต ํผ์ ํธ๋ก (1) | 2023.05.01 |
---|---|
[ML ์ด๋ก ] ๋จธ์ ๋ฌ๋๊ณผ ์ํ (0) | 2023.05.01 |
[ML ์ด๋ก ] ๊ธฐ๊ณํ์ต์ด๋ (0) | 2023.05.01 |
[NLP | BERT & SBERT] Cross-Encoder์ Bi-Encoder (0) | 2023.04.27 |
[PyTorch] iris ๋ฐ์ดํฐ ๋ถ๋ฅ ~ (w/๋ฉํฐ ํผ์ ํธ๋ก ) (0) | 2023.02.26 |