[NLP] 2. Steps of Text Analytics
์๋ณธ ๊ฒ์๊ธ: https://velog.io/@euisuk-chung/ํ ์คํธ-๋ถ์-๋จ๊ณ
Steps of Text Analytics
ํ ์คํธ ๋ถ์์ ๋น์ ํ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ๊ณ ์ ์๋ฏธํ ์ ๋ณด๋ฅผ ์ถ์ถํ๊ธฐ ์ํ ์ผ๋ จ์ ๊ณผ์ ์ ๋๋ค. ํด๋น ํฌ์คํธ์์๋ ํ ์คํธ ๋ถ์์ ์ฃผ์ ๋จ๊ณ๋ฅผ ์์ฐจ์ ์ผ๋ก ์๊ฐํ์ฌ, ๊ฐ ๋จ๊ณ์์ ์ํ๋๋ ์์ ๊ณผ ๊ทธ ์ค์์ฑ์ ์ค๋ช ํ๊ฒ ์ต๋๋ค.
โ STEP 1. ์ ์ ๋ฐ ๋ฐ์ดํฐ ์์ง(Define & Collect)
- ํ ์คํธ ๋ถ์์ ์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ๋ถ์ํ ๋ชฉํ๋ฅผ ๋ช ํํ ์ ์ํ๊ณ , ์ด๋ฅผ ์ํํ๊ธฐ ์ํด ํ์ํ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ๊ฒ์ ๋๋ค.
- ์ด ๋จ๊ณ์์๋ ๋ถ์์ ๋ฐฉํฅ์ ์ค์ ํ๊ณ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ์ฌ ๋ถ์์ ๊ธฐ์ด๋ฅผ ๋ค์ง๋๋ค. ์๋ฅผ ๋ค์ด, ์ฑ๋ด ๊ฐ๋ฐ์ ์ํด ์ฌ์ฉ์์์ ๋ํ ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ฑฐ๋, ํน์ ๋๋ฉ์ธ์ ํนํ๋ ๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ์ ํ์ต์ํค๊ธฐ ์ํด ๊ด๋ จ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์์งํ ์ ์์ต๋๋ค.
โก STEP 2. ์ ์ฒ๋ฆฌ ๋ฐ ๋ณํ(Preprocess & Transform)
- ์์ง๋ ํ ์คํธ ๋ฐ์ดํฐ๋ ๊ทธ๋๋ก ๋ถ์์ ์ฌ์ฉ๋๊ธฐ ์ด๋ ต๊ธฐ ๋๋ฌธ์, ์ ์ฒ๋ฆฌ ๊ณผ์ ์ ํตํด ๊นจ๋ํ๊ณ ๋ถ์ ๊ฐ๋ฅํ ํํ๋ก ๋ณํํด์ผ ํฉ๋๋ค.
- ์ด ๋จ๊ณ์์๋ ๋ฐ์ดํฐ์์ ๋ถํ์ํ ์์๋ฅผ ์ ๊ฑฐํ๊ณ , ๋ฌธ์ฅ๊ณผ ๋จ์ด ๋จ์๋ก ๋ถ๋ฆฌํ์ฌ ์๋ฏธ ์๋ ๋ถ์ ๋จ์๋ก ๋ณํํฉ๋๋ค. ์ ์ฒ๋ฆฌ ์์ ์๋ ๋ถ์ฉ์ด ์ ๊ฑฐ, ํํ์ ๋ถ์, ํ ํฐํ ๋ฑ์ด ํฌํจ๋ฉ๋๋ค.
โข STEP 3. ํน์ง ์ ํ ๋ฐ ์ถ์ถ(Select & Extract Features)
- ์ ์ฒ๋ฆฌ๊ฐ ์๋ฃ๋ ๋ฐ์ดํฐ์์ ๋ถ์์ ํ์ํ ์ค์ํ ํน์ง์ ์ ํํ๊ณ ์ถ์ถํ๋ ๋จ๊ณ์ ๋๋ค.
- ์ด ๋จ๊ณ์์๋ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ๋ฒกํฐ ํํ๋ก ๋ณํํ๊ณ , ์ค์ํ ๋จ์ด ๋๋ ๋ฌธ์์ ์ฃผ์ ๋ฅผ ์ถ์ถํ์ฌ ๋ถ์์ ํต์ฌ ์์๋ฅผ ๋์ถํฉ๋๋ค. ๋ํ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก๋ TF-IDF, ์ฃผ์ ๋ชจ๋ธ๋ง(LDA), ๋จ์ด ์๋ฒ ๋ฉ ๋ฑ์ด ์์ต๋๋ค.
โฃ STEP 4. ์๊ณ ๋ฆฌ์ฆ ํ์ต ๋ฐ ํ๊ฐ(Algorithm Learning & Evaluation)
- ์ต์ข ๋จ๊ณ์์๋ ์ ๋จ๊ณ์์ ์ถ์ถ๋ ํน์ง์ ๋ฐํ์ผ๋ก ์ ์ ํ ๋จธ์ ๋ฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ํ์ต์ํค๊ณ , ๋ชจ๋ธ์ ์ฑ๋ฅ์ ํ๊ฐํฉ๋๋ค.
- ์ด ๋จ๊ณ์์๋ ๋ถ๋ฅ, ๊ตฐ์งํ, ํ๊ท ๋ฑ์ ๊ธฐ๋ฒ์ ์ฌ์ฉํ์ฌ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํ๊ณ , ๋ชจ๋ธ์ ์ ํ๋๋ฅผ ํ๊ฐํ์ฌ ์ต์ ์ ๋ชจ๋ธ์ ์ ํํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์คํธ ๋ฉ์ผ ๋ถ๋ฅ, ๊ฐ์ฑ ๋ถ์, ๋ฌธ์ ์ฃผ์ ๋ถ๋ฅ ๋ฑ์ด ํฌํจ๋ฉ๋๋ค.
๊ฐ๊ฐ์ ๋จ๊ณ์ ๋ํด์ ์์ธํ๊ฒ ์ดํด๋ณด๊ฒ ์ต๋๋ค:
STEP 1. ์ ์ ๋ฐ ๋ฐ์ดํฐ ์์ง
ํ ์คํธ ๋ถ์์ ์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ๋ถ์ํ ๋ชฉํ๋ฅผ ๋ช ํํ ์ ์ํ๊ณ , ์ด๋ฅผ ์ํํ๊ธฐ ์ํด ํ์ํ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ๊ฒ์ ๋๋ค. ์ด ๋จ๊ณ๋ ๋ถ์์ ์ ์ฒด์ ์ธ ๋ฐฉํฅ์ ์ค์ ํ๊ณ , ํ์ํ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ์ฌ ๋ถ์์ ๊ธฐ์ด๋ฅผ ๋ค์ง๋ ์ค์ํ ๊ณผ์ ์ ๋๋ค.
โ ๋ชฉํ ์ ์
- ํ ์คํธ ๋ถ์์ ๋ชฉํ๋ ๋ถ์ํ๊ณ ์ ํ๋ ๋ฌธ์ ์ ์ฑ๊ฒฉ์ ๋ฐ๋ผ ๋ค์ํ ์ ์์ต๋๋ค.
-
์ต์ ํธ๋ ๋๋ฅผ ๋ฐ์ํ ์์๋ก๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ์ฑ๋ด ๊ฐ๋ฐ: ์ฌ์ฉ์์์ ์์ฐ์ค๋ฌ์ด ๋ํ๋ฅผ ํตํด ์ ๋ณด ์ ๊ณต, ๊ณ ๊ฐ ์ง์, ์ํฐํ ์ธ๋จผํธ ๋ฑ์ ๊ธฐ๋ฅ์ ์ํํ๋ ์ฑ๋ด์ ๊ฐ๋ฐํ๋ ๊ฒ์ด ๋ชฉํ์ผ ์ ์์ต๋๋ค. ์ด๋ฅผ ์ํด ์ฑ๋ด์ ๋์ ์ฌ์ฉ์, ์ฃผ์ ๊ธฐ๋ฅ, ์์๋๋ ๋ํ ์๋๋ฆฌ์ค ๋ฑ์ ์ ์ํฉ๋๋ค.
- LLM(๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ) ํ์ต: ํน์ ๋๋ฉ์ธ์ ํนํ๋ ๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ์ ํ์ต์ํค๋ ๊ฒ์ด ๋ชฉํ์ผ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์๋ฃ, ๋ฒ๋ฅ , ๊ธฐ์ ์ง์ ๋ฑ ํน์ ๋ถ์ผ์ ์ ๋ฌธ ์ง์์ ๊ฐ์ถ ๋ชจ๋ธ์ ๊ฐ๋ฐํ๊ณ ์ ํ ๋, ํด๋น ๋๋ฉ์ธ์ ๊ด๋ จ๋ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํฉ๋๋ค.
- ๊ฐ์ฑ ๋ถ์: ์์ ๋ฏธ๋์ด, ๊ณ ๊ฐ ๋ฆฌ๋ทฐ ๋ฑ์์ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํ์ฌ ์ฌ์ฉ์ ๊ฐ์ (๊ธ์ , ๋ถ์ , ์ค๋ฆฝ)์ ํ์ ํ๋ ๊ฒ์ด ๋ชฉํ์ผ ์ ์์ต๋๋ค.
- ์ฃผ์ ๋ชจ๋ธ๋ง: ๋๋์ ๋ฌธ์์์ ์ฃผ์ ์ฃผ์ ๋ค์ ์ถ์ถํ์ฌ ๋ฌธ์์ ๋ด์ฉ์ ์์ฝํ๊ณ , ์ ๋ณด๋ฅผ ์ฒด๊ณ์ ์ผ๋ก ๋ถ๋ฅํ๋ ๊ฒ์ด ๋ชฉํ์ผ ์ ์์ต๋๋ค.
โก ๋ฐ์ดํฐ ์์ง
- ๋ชฉํ๊ฐ ๋ช ํํ ์ ์๋ ํ์๋ ์ด๋ฅผ ๋ฌ์ฑํ๊ธฐ ์ํด ํ์ํ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์์งํฉ๋๋ค.
-
๋ฐ์ดํฐ ์์ง์ ๋ค์ํ ์ถ์ฒ์์ ์ด๋ฃจ์ด์ง ์ ์์ผ๋ฉฐ, ์์ง๋ ๋ฐ์ดํฐ๋ ๋ถ์์ ํ์ง์ ์ข์ฐํ๋ ์ค์ํ ์์์ ๋๋ค:
- ์น ํฌ๋กค๋ง(Web Crawling): ์ธํฐ๋ท ์์ ์น์ฌ์ดํธ์์ ์๋์ผ๋ก ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ๋ด์ค ๊ธฐ์ฌ, ๋ธ๋ก๊ทธ ๊ฒ์๋ฌผ, ํฌ๋ผ ๊ธ ๋ฑ์ ์์งํ ์ ์์ต๋๋ค.
- API ํ์ฉ: ํธ์ํฐ, ํ์ด์ค๋ถ ๋ฑ์ ์์ ๋ฏธ๋์ด ํ๋ซํผ์์ ์ ๊ณตํ๋ API๋ฅผ ์ด์ฉํ์ฌ ์ฌ์ฉ์ ๊ฒ์๊ธ, ๋๊ธ ๋ฑ์ ๋ฐ์ดํฐ๋ฅผ ์์งํ ์ ์์ต๋๋ค.
- ๊ณต๊ฐ ๋ฐ์ดํฐ์ : ์ด๋ฏธ ๊ณต๊ฐ๋ ๋ฐ์ดํฐ์ ์ ํ์ฉํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, Kaggle, UCI ๋จธ์ ๋ฌ๋ ๋ ํฌ์งํ ๋ฆฌ ๋ฑ์์ ๋ค์ํ ํ ์คํธ ๋ฐ์ดํฐ์ ์ ์ ๊ณต๋ฐ์ ์ ์์ต๋๋ค.
- ๋ด๋ถ ๋ฐ์ดํฐ: ๊ธฐ์ ๋ด๋ถ์์ ์์ฑ๋ ๊ณ ๊ฐ ๋ฌธ์, ์ง์ ํฐ์ผ, ์ด๋ฉ์ผ ๋ฑ์ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ ์ ์์ต๋๋ค.
STEP 2. ์ ์ฒ๋ฆฌ ๋ฐ ๋ณํ
STEP 2-1: ํ ์คํธ ์ ์ฒ๋ฆฌ ๋จ๊ณ
- ํ ์คํธ ์ ์ฒ๋ฆฌ ๋จ๊ณ(Level 0, Level 1, Level 2)๋ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ ๊ฐ๋ฅํ ํํ๋ก ๋ณํํ๊ธฐ ์ํ ์์ฐจ์ ์ธ ํ๋ก์ธ์ค๋ฅผ ๋ํ๋ ๋๋ค.
- ๊ฐ ๋จ๊ณ๋ ํ ์คํธ ๋ฐ์ดํฐ์ ๊ตฌ์กฐ์ ๋ณต์ก์ฑ๊ณผ ์ธ๋ถํ ์์ค์ ๋ฐ๋ผ ๊ตฌ๋ถ๋ฉ๋๋ค.
- ์ด๋ฅผ ํตํด ์์ ํ ์คํธ๋ฅผ ์ ์ฐจ์ ์ผ๋ก ์ ๋ฆฌํ๊ณ , ๋ถ์ํ ์ ์๋ ๊ตฌ์กฐ๋ก ๋ณํํฉ๋๋ค.
๐ Level 0: Text
- ๊ธฐ์ค: ์ ์ฒด ๋ฌธ์ ์์ค์์์ ์ ์ฒ๋ฆฌ.
- ์ค๋ช
:
- ๋ชฉ์ : ๋ฌธ์์์ ๋ถํ์ํ ์์๋ค์ ์ ๊ฑฐํ์ฌ ๊นจ๋ํ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๋ ๊ฒ.
- ์์
๋ด์ฉ:
- ๊ด๊ณ , ๊ทธ๋ฆผ, HTML ํ๊ทธ, ํ์ดํผ๋งํฌ ๋ฑ์ ์ ๊ฑฐ.
- ๋ฌธ์์ ์ ์ฒด์ ์ธ ์ฒญ์ ์์ ์ ์ํํ์ฌ ๋ถ์์ ๋ฐฉํด๊ฐ ๋๋ ์์๋ค์ ๋ฐฐ์ .
- ์์:
- ์น ํ์ด์ง์์ ํ ์คํธ๋ง ์ถ์ถํ๊ณ ๋ถํ์ํ ์์(์ด๋ฏธ์ง, ๊ด๊ณ ๋ฑ)๋ฅผ ์ ๊ฑฐ.
- ํ ์คํธ ํ์ผ์์ ๋ฉํ๋ฐ์ดํฐ(์์ฑ์, ๋ ์ง ๋ฑ)๋ฅผ ์ ๊ฑฐํ์ง ์๊ณ ์ ์ง.
๐ Level 1: Sentence
- ๊ธฐ์ค: ๋ฌธ์ฅ์ ๊ธฐ๋ณธ ๋จ์๋ก ํ๋ ์ ์ฒ๋ฆฌ.
- ์ค๋ช
:
- ๋ชฉ์ : ๋ฌธ์ฅ์ ๊ตฌ๋ถํ์ฌ ๊ฐ ๋ฌธ์ฅ์ ๊ฐ๋ณ์ ์ธ ๋ถ์ ๋จ์๋ก ๋ง๋ค๊ธฐ.
- ์์
๋ด์ฉ:
- ๋ฌธ์ฅ ๊ฒฝ๊ณ๋ฅผ ์ธ์ํ๊ณ ๊ตฌ๋ถ(๋ฌธ์ฅ๋ถํธ๋ฅผ ํ์ฉํ์ฌ ๋ฌธ์ฅ์ ๋ถ๋ฆฌ).
- ๋ฌธ์ฅ ๊ฒฝ๊ณ ์ธ์์ ์ด๋ ค์ด ์ฌ๋ก ์ฒ๋ฆฌ(์ฝ์ด, ๋ฌธ์ฅ ๋ด๋ถ์ ๋ง์นจํ ๋ฑ).
- ์์:
- โMr. Smith went to Washington.โ์ฒ๋ผ ์ฝ์ด๊ฐ ํฌํจ๋ ๋ฌธ์ฅ์์๋ ์ ํํ ๋ฌธ์ฅ ๊ฒฝ๊ณ๋ฅผ ์ธ์.
- โ๊ทธ๋ ์ค๋ U.S.์ ๊ฐ๋ค.โ์ฒ๋ผ ์ฝ์ด์ ๋ฌธ์ฅ ์ข ๋ฃ ๋ถํธ๋ฅผ ๊ตฌ๋ถ.
๐ Level 2: Token
- ๊ธฐ์ค: ๋จ์ด๋ฅผ ๊ธฐ๋ณธ ๋จ์๋ก ํ๋ ์ ์ฒ๋ฆฌ.
- ์ค๋ช
:
- ๋ชฉ์ : ๋ฌธ์ฅ์ ๊ตฌ์ฑํ๋ ๋จ์ด, ์ซ์, ๊ธฐํธ ๋ฑ์ ๊ฐ๋ณ ํ ํฐ์ผ๋ก ๋ถ๋ฆฌํ์ฌ ๋ถ์ํ ์ ์๋ ์ต์ ๋จ์๋ก ๋ง๋๋ ๊ฒ.
- ์์
๋ด์ฉ:
- ํ ํฐํ: ๋ฌธ์ฅ์์ ์๋ฏธ ์๋ ๋จ์ด๋ค์ ์ถ์ถ.
- ๋ถ์ฉ์ด ์ ๊ฑฐ: ์๋ฏธ ์๋ ๋จ์ด๋ค ์ ๊ฑฐ.
- ํํ์ ๋ถ์: ํํ์ ๋จ์๋ก ๋ถ๋ฆฌํ์ฌ ๋จ์ด์ ๊ธฐ๋ณธ ํํ๋ก ๋ณํ(ํํ์๋ ์๋ฏธ๋ฅผ ๊ฐ๋ ๊ฐ์ฅ ์์ ๋จ์).
- ์ผ๊ด์ฑ ์๋ ํ ํฌ๋์ด์ ์ฌ์ฉ.
- ์์:
- โJohnโs houseโ๋ฅผ โJohnโ, โโsโ, โhouseโ๋ก ๋ถ๋ฆฌ.
- ๋ถ์ฉ์ด โtheโ, โaโ ๋ฑ์ ์ ๊ฑฐ.
- โrunningโ์ โrunโ์ผ๋ก ๋ณํ(ํํ์ ๋ถ์).
๐กLevel 2 ์ถ๊ฐ ์ค๋ช
์์์ ์๊ฐํ Level2 ๋จ๊ณ์์ ์ํํ๋ ํํ์ ๋ถ์, ํํ์ ๋จ์๋ก ๋ถ๋ฆฌํ์ฌ ๋จ์ด์ ๊ธฐ๋ณธ ํํ๋ก ๋ณํ(ํํ์๋ ์๋ฏธ๋ฅผ ๊ฐ๋ ๊ฐ์ฅ ์์ ๋จ์)์ ์ฃผ์ ๊ฐ๋ ์ธ
๋ถ์ฉ์ด ์ ๊ฑฐ
/Tokenํ
๊ธฐ๋ฒ์ ๋ํด์ ์ถ๊ฐ์ ์ธ ์ค๋ช ์ ๋๋ฆฌ๊ฒ ์ต๋๋ค:
(1) Stop-words ์ ๊ฑฐ
- ๋ชฉ์ : ํ ์คํธ ๋ฐ์ดํฐ์์ ์๋ฌด๋ฐ ์๋ฏธ๊ฐ ์๋ ๋จ์ด๋ฅผ ์ ๊ฑฐํ์ฌ ๋ฐ์ดํฐ์ ํ์ง์ ํฅ์์ํค๊ณ ๋ถ์ ์๋๋ฅผ ๋์.
- Power Distribution: ๋จ์ด ๋น๋์ ๋ฉฑ-๊ธ์ ๋ฒ์น์ ๋ฐ๋ฅด๋ฉด, ํ ์คํธ ๋ฐ์ดํฐ์์ ์ผ๋ถ ๋จ์ด๊ฐ ๋งค์ฐ ๋น๋ฒํ๊ฒ ์ถํํ๋๋ฐ, ์ด ์ค ๋๋ถ๋ถ์ด ๋ถ์ฉ์ด์ ๋๋ค.
- How?: ๋ถ์ฉ์ด ๋ฆฌ์คํธ๋ฅผ ๋ง๋ค์ด ํด๋น ๋จ์ด๋ค์ ์ ๊ฑฐํจ.
- ์์: ์์ด์ โaโ, โanโ, โtheโ์ ๊ฐ์ ๋จ์ด๋ค.
(2) Stemming ๋ฐ Lemmatization
- ๋ชฉ์ : ๋จ์ด์ ๋ค์ํ ํํ๋ฅผ ์ ๊ทํํ์ฌ ๋ถ์์ ์ผ๊ด์ฑ์ ์ ์งํ๊ณ ์ฐจ์์ ์ถ์ํจ.
- Stemming: ๋จ์ด์ ์ ๋ฏธ์ฌ๋ฅผ ์ ๊ฑฐํ์ฌ ๊ธฐ๋ณธ ํํ๋ก ๋ณํํ๋ ๊ณผ์ .
- ์ฅ์ : ๊ฐ๋จํ๊ณ ๋น ๋ฅด๋ฉฐ, ์ฐจ์์ ๋ง์ด ์ค์ผ ์ ์์.
- ๋จ์ : ๋ฌธ๋ฒ์ ์ ํ์ฑ์ด ๋จ์ด์ง ์ ์์.
- ์์:
- Love -> Lov
- Loves -> Lov
- Innovations -> Innovat
- Innovate -> Innovat
- Lemmatization: ๋จ์ด์ ๊ธฐ๋ณธ ์ฌ์ ํ์ ์ฐพ์ ๋ณํํ๋ ๊ณผ์ .
- ์ฅ์ : ๋ฌธ๋ฒ์ ์ ํ์ฑ์ ์ ์งํ๋ฉฐ ๋จ์ด์ ๊ธฐ๋ณธ ์๋ฏธ๋ฅผ ๋ณด์กด.
- ๋จ์ : ์๋์ ์ผ๋ก ๋ณต์กํ๊ณ ์ฒ๋ฆฌ ์๋๊ฐ ๋๋ฆผ.
- ์์:
- Love -> Love
- Loves -> Love
- Innovations -> Innovation
- Innovate -> Innovate
ํ ์คํธ ์ ์ฒ๋ฆฌ์ ๊ฐ ๋จ๊ณ๋ ์ ์ง์ ์ผ๋ก ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฆฌํ๊ณ ๊ตฌ์กฐํํ์ฌ ์ต์ข ์ ์ผ๋ก ๋ถ์ ๊ฐ๋ฅํ ํํ๋ก ๋ง๋๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. ์๋ ๋จ๊ณ๋ค์ ํตํด ํ ์คํธ ๋ฐ์ดํฐ์ ๋ณต์ก์ฑ์ ์ค์ด๊ณ , ํจ์จ์ ์ธ ๋ถ์์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
- Level 0์์๋ ์ ์ฒด ๋ฌธ์์์ ๋ถํ์ํ ์์๋ฅผ ์ ๊ฑฐํ๊ณ ,
- Level 1์์๋ ๋ฌธ์ฅ ๋จ์๋ก ๊ตฌ๋ถํ๋ฉฐ,
- Level 2์์๋ ๋จ์ด ๋จ์๋ก ์ธ๋ถํํ์ฌ ์ต์ข ์ ์ผ๋ก ๋ถ์์ ํ์ฉํ ์ ์๋ ์ํ๋ก ๋ณํํฉ๋๋ค.
STEP 2-2: ํ ์คํธ ๋ณํ ๋จ๊ณ
ํ ์คํธ ๋ณํ ๋จ๊ณ์์๋ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ์์ ์ฒ๋ฆฌํ ์ ์๋ ์ฐ์ํ ์ซ์ ๋ฒกํฐ(์ธ์ฝ๋ฉ/์๋ฒ ๋ฉ ๋ฒกํฐ)๋ก ๋ณํํ๋ ์์ ์ ์ํํฉ๋๋ค.
- ๋ชฉ์ : ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์ซ์ ๋ฒกํฐ๋ก ๋ณํํ์ฌ ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ์์ ์ฒ๋ฆฌํ ์ ์๋๋ก ํ๋ ๊ฒ์ด ์ฃผ์ ๋ชฉ์ ์ ๋๋ค.
-
์ฃผ์ ๋ฐฉ๋ฒ:
- Bag-of-words, TF-IDF, One-hot-vector, Distributed representation์ด ์์ผ๋ฉฐ, ๊ฐ๊ฐ์ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ์ค๋ช ํ๊ฒ ์ต๋๋ค.
1. Bag-of-words
- ๊ฐ๋ : ํ ์คํธ๋ฅผ ๋จ์ด๋ค์ ๋น์ ๋ ฌ ์ปฌ๋ ์ ์ผ๋ก ๋ณํํฉ๋๋ค.
- ๋ชฉ์ : ๊ฐ ๋จ์ด์ ๋น๋ ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌธ์๋ฅผ ๋ฒกํฐ๋ก ํํํฉ๋๋ค.
- ์ค๋ช : Bag-of-words(BOW) ๋ชจ๋ธ์ ๋ฌธ์๋ฅผ ๋จ์ด๋ค์ ๋น์ ๋ ฌ ์ปฌ๋ ์ ์ผ๋ก ํํํฉ๋๋ค. ์ด ๋ฐฉ๋ฒ์์๋ ๊ฐ ๋ฌธ์๋ฅผ ๊ณ ์ ํ ๋จ์ด๋ค์ ๋น๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํํํฉ๋๋ค.
- ์๋ ๋ฐฉ์:
- ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๋ณ ๋จ์ด๋ก ๋ถํ (ํ ํฐํ)ํฉ๋๋ค.
- ๊ฐ ๋จ์ด์ ๋ฐ์ ๋น๋๋ฅผ ๊ณ์ฐํ์ฌ ๋ฒกํฐ๋ฅผ ์์ฑํฉ๋๋ค.
- ๋ฒกํฐ์ ๊ฐ ์์๋ ํด๋น ๋จ์ด๊ฐ ๋ฌธ์์์ ๋ฑ์ฅํ ํ์๋ฅผ ๋ํ๋ ๋๋ค.
- ์ฅ์ :
- ๊ฐ๋จํ๊ณ ์ง๊ด์ ์ ๋๋ค.
- ๊ณ์ฐ ๋น์ฉ์ด ๋ฎ์ต๋๋ค.
- ๋จ์ :
- ๋ฌธ๋งฅ ์ ๋ณด๋ฅผ ์์ด๋ฒ๋ฆฝ๋๋ค.
- ๋จ์ด ์์๊ฐ ๊ณ ๋ ค๋์ง ์์ต๋๋ค.
- ๊ณ ์ฐจ์์ ํฌ์ ๋ฒกํฐ๋ฅผ ์์ฑํฉ๋๋ค.
์์:
1
2
3
4
5
6
7
๋ฌธ์1: "I love machine learning"
๋ฌธ์2: "I love deep learning"
๋จ์ด ๋ชฉ๋ก: ["I", "love", "machine", "learning", "deep"]
๋ฌธ์1 ๋ฒกํฐ: [1, 1, 1, 1, 0]
๋ฌธ์2 ๋ฒกํฐ: [1, 1, 0, 1, 1]
2. TF-IDF
- ๊ฐ๋ : ํน์ ๋จ์ด์ ์ค์๋๋ฅผ ๊ฐ์ค์น๋ก ํํํฉ๋๋ค.
- ๋ชฉ์ : ๋ฌธ์ ๋ด ๋จ์ด์ ์ค์์ฑ์ ๋ฐ์ํ ๋ฒกํฐํํฉ๋๋ค.
- ์ค๋ช : TF-IDF(Term Frequency-Inverse Document Frequency)๋ ๋จ์ด์ ๋น๋(Term Frequency)์ ์ญ๋ฌธ์ ๋น๋(Inverse Document Frequency)๋ฅผ ์กฐํฉํ์ฌ ํน์ ๋จ์ด๊ฐ ๋ฌธ์์์ ์ผ๋ง๋ ์ค์ํ์ง๋ฅผ ๊ฐ์ค์น๋ก ํํํฉ๋๋ค.
- ์๋ ๋ฐฉ์:
- TF: ๋จ์ด ๋น๋๋ ๋ฌธ์ ๋ด์์ ํน์ ๋จ์ด์ ๋ฐ์ ํ์๋ฅผ ๋ํ๋ ๋๋ค.
- IDF: ์ญ๋ฌธ์ ๋น๋๋ ๋จ์ด๊ฐ ์ ์ฒด ๋ฌธ์ ์งํฉ์์ ์ผ๋ง๋ ๋๋ฌผ๊ฒ ๋ํ๋๋์ง๋ฅผ ๋ํ๋ ๋๋ค.
- TF์ IDF๋ฅผ ๊ณฑํ์ฌ ๊ฐ ๋จ์ด์ ๊ฐ์ค์น๋ฅผ ๊ณ์ฐํฉ๋๋ค.
- ์ฅ์ :
- ๋จ์ด์ ์ค์๋๋ฅผ ๋ฐ์ํฉ๋๋ค.
- ํํ ๋ํ๋๋ ๋จ์ด์ ๊ฐ์ค์น๋ฅผ ๋ฎ์ถฐ์ค๋๋ค.
- ๋จ์ :
- ๊ณ์ฐ ๋น์ฉ์ด ๋์ต๋๋ค.
- ์ฌ์ ํ ๋ฌธ๋งฅ ์ ๋ณด๋ฅผ ์์ด๋ฒ๋ฆฝ๋๋ค.
TF (Term Frequency)
- TF๋ ํน์ ๋จ์ด๊ฐ ๋ฌธ์ ๋ด์์ ์ผ๋ง๋ ์์ฃผ ๋ฑ์ฅํ๋์ง๋ฅผ ๋ํ๋ ๋๋ค.
- ๊ณ์ฐ ๋ฐฉ๋ฒ์๋ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ง๋ง, ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ๋ค์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- Raw Count:
- TF(t,d) = ๋ฌธ์ d์์ ๋จ์ด t์ ์ถํ ํ์
- ๋ก๊ทธ ์ค์ผ์ผ๋ง:
- TF(t,d) = 1 + log(๋ฌธ์ d์์ ๋จ์ด t์ ์ถํ ํ์)
- 0์ ๋ฐฉ์งํ๊ธฐ ์ํด 1์ ๋ํฉ๋๋ค.
- ์ด์งํ:
- TF(t,d) = 1 (๋จ์ด t๊ฐ ๋ฌธ์ d์ ์กด์ฌํ๋ฉด)
- TF(t,d) = 0 (๊ทธ๋ ์ง ์์ผ๋ฉด)
- ์ ๊ทํ:
- TF(t,d) = (๋ฌธ์ d์์ ๋จ์ด t์ ์ถํ ํ์) / (๋ฌธ์ d์ ์ด ๋จ์ด ์)
IDF (Inverse Document Frequency)
- IDF๋ ํน์ ๋จ์ด๊ฐ ์ ์ฒด ๋ฌธ์ ์งํฉ์์ ์ผ๋ง๋ ํฌ๊ทํ์ง๋ฅผ ๋ํ๋ ๋๋ค.
- ๊ณ์ฐ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค: IDF(t) = log(N / DF(t))
- N: ์ ์ฒด ๋ฌธ์์ ์
- DF(t): ๋จ์ด t๊ฐ ์ถํํ ๋ฌธ์์ ์ (Document Frequency)
- ๋ก๊ทธ๋ฅผ ์ฌ์ฉํ๋ ์ด์ ๋ ๋ฌธ์ ์๊ฐ ์ฆ๊ฐํจ์ ๋ฐ๋ผ IDF ๊ฐ์ด ๋๋ฌด ํฌ๊ฒ ์ฆ๊ฐํ๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํจ์ ๋๋ค.
์์:
-
์๋ 5๊ฐ์ ๋ฌธ์ฅ์ผ๋ก TF, IDF, TF-IDF๋ฅผ ๊ณ์ฐํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค:
โ ์ฌ๊ณผ๋ ๋นจ๊ฐ๋ค.
โก ์ฌ๊ณผ๋ ๋ง์๋ค.
โข ๋ฐ๋๋๋ ๋ ธ๋๋ค.
โฃ ๋ฐ๋๋๋ ๋ง์๋ค.
โค ๊ฐ์์ง๋ ๊ท์ฝ๋ค.
1. TF (Term Frequency) ๊ณ์ฐ
-
๊ฐ ๋ฌธ์(๋ฌธ์ฅ)์์์ ๋จ์ด ๋น๋๋ฅผ ๊ณ์ฐํฉ๋๋ค.
๋จ์ด ๋ฌธ์ฅ1 ๋ฌธ์ฅ2 ๋ฌธ์ฅ3 ๋ฌธ์ฅ4 ๋ฌธ์ฅ5 ์ฌ๊ณผ 1 1 0 0 0 ๋นจ๊ฐ๋ค 1 0 0 0 0 ๋ง์๋ค 0 1 0 1 0 ๋ฐ๋๋ 0 0 1 1 0 ๋ ธ๋๋ค 0 0 1 0 0 ๊ฐ์์ง 0 0 0 0 1 ๊ท์ฝ๋ค 0 0 0 0 1
2. IDF (Inverse Document Frequency) ๊ณ์ฐ
-
IDF = log(์ด ๋ฌธ์ ์ / ๋จ์ด๊ฐ ์ถํํ ๋ฌธ์ ์)
์ด๋, ์ด ๋ฌธ์ ์๋ 5(5๊ฐ ๋ฌธ์ฅ)์ ๋๋ค.
๋จ์ด ์ถํ ๋ฌธ์ ์ IDF ๊ณ์ฐ IDF ๊ฐ (๋ฐ์ฌ๋ฆผ) ์ฌ๊ณผ 2 log(5/2) 0.92 ๋นจ๊ฐ๋ค 1 log(5/1) 1.61 ๋ง์๋ค 2 log(5/2) 0.92 ๋ฐ๋๋ 2 log(5/2) 0.92 ๋ ธ๋๋ค 1 log(5/1) 1.61 ๊ฐ์์ง 1 log(5/1) 1.61 ๊ท์ฝ๋ค 1 log(5/1) 1.61
3. TF-IDF ๊ณ์ฐ
-
TF-IDF = TF * IDF
๋จ์ด ๋ฌธ์ฅ1 ๋ฌธ์ฅ2 ๋ฌธ์ฅ3 ๋ฌธ์ฅ4 ๋ฌธ์ฅ5 ์ฌ๊ณผ 0.92 0.92 0 0 0 ๋นจ๊ฐ๋ค 1.61 0 0 0 0 ๋ง์๋ค 0 0.92 0 0.92 0 ๋ฐ๋๋ 0 0 0.92 0.92 0 ๋ ธ๋๋ค 0 0 1.61 0 0 ๊ฐ์์ง 0 0 0 0 1.61 ๊ท์ฝ๋ค 0 0 0 0 1.61 - ์ด TF-IDF ๊ฐ์ ํตํด ๊ฐ ๋ฌธ์ฅ์์ ์ด๋ค ๋จ์ด๊ฐ ๋ ์ค์ํ์ง ์ ์ ์์ต๋๋ค.
- ์๋ฅผ ๋ค์ด, โ๋นจ๊ฐ๋คโ, โ๋ ธ๋๋คโ, โ๊ฐ์์งโ, โ๊ท์ฝ๋คโ๋ ๊ฐ๊ฐ์ ๋ฌธ์ฅ์์ ๋์ TF-IDF ๊ฐ์ ๊ฐ์ง๋ฏ๋ก, ํด๋น ๋ฌธ์ฅ์ ํน์ง์ง๋ ์ค์ํ ๋จ์ด๋ผ๊ณ ๋ณผ ์ ์์ต๋๋ค.
3. One-hot-vector
- ๊ฐ๋ : ๋จ์ด๋ฅผ ๊ณ ์ ํ ์ธ๋ฑ์ค์ ๋ฒกํฐ๋ก ๋ณํํฉ๋๋ค.
- ๋ชฉ์ : ๋จ์ด ๊ฐ์ ๊ตฌ๋ณ์ ๋ช ํํ ํฉ๋๋ค.
-
์ค๋ช : One-hot-vector๋ ๊ฐ ๋จ์ด๋ฅผ ๊ณ ์ ํ ๋ฒกํฐ๋ก ์ ์ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
-
๋จธ์ ๋ฌ๋์์๋ ๋ง์ด ์ฐ์ด๋ ๊ธฐ๋ฒ์ ๋๋ค.
-
๋ฒกํฐ์ ๊ฐ ์์๋ ํด๋น ๋จ์ด์ ์์น๋ฅผ ๋ํ๋ด๋ฉฐ, ๋๋จธ์ง๋ ๋ชจ๋ 0์ ๋๋ค.
-
- ์๋ ๋ฐฉ์:
- ๊ณ ์ ํ ๋จ์ด๋ง๋ค ๊ณ ์ ํ ์ธ๋ฑ์ค๋ฅผ ํ ๋นํฉ๋๋ค.
- ๊ฐ ๋จ์ด๋ฅผ ํด๋น ์ธ๋ฑ์ค์ 1์ ๋ถ์ฌํ๊ณ ๋๋จธ์ง๋ 0์ผ๋ก ์ค์ ํ ๋ฒกํฐ๋ก ๋ณํํฉ๋๋ค.
- ์ฅ์ :
- ๊ฐ์ฅ ๊ฐ๋จํ๊ณ ์ง๊ด์ ์ ๋๋ค.
- ๋จ์ :
- ๋จ์ด ๊ฐ์ ์ ์ฌ์ฑ์ ํํํ์ง ๋ชปํฉ๋๋ค.
- ์ฐจ์์ด ๋งค์ฐ ๋์์ง๋๋ค.
์์:
1
2
3
4
5
6
7
๋จ์ด ๋ชฉ๋ก: ["I", "love", "machine", "learning", "deep"]
"I" -> [1, 0, 0, 0, 0]
"love" -> [0, 1, 0, 0, 0]
"machine" -> [0, 0, 1, 0, 0]
"learning" -> [0, 0, 0, 1, 0]
"deep" -> [0, 0, 0, 0, 1]
4. Distributed representation
- ๊ฐ๋ : ๋จ์ด๋ฅผ ๋ค์ฐจ์ ๊ณต๊ฐ์ ๋ฒกํฐ๋ก ํํํฉ๋๋ค.
- ๋ชฉ์ : ๋จ์ด ๊ฐ์ ์๋ฏธ์ ์ ์ฌ์ฑ์ ์ ์งํฉ๋๋ค.
-
์ค๋ช : Distributed representation์ ๋จ์ด๋ฅผ ๋ค์ฐจ์ ๊ณต๊ฐ์ ๋ฒกํฐ๋ก ํํํ์ฌ ๋จ์ด ๊ฐ์ ์ ์ฌ์ฑ์ ์ ์งํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
- ๋ํ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก Word2Vec, GloVe, BERT ๋ฑ์ด ์์ต๋๋ค.
- ์๋ ๋ฐฉ์:
- Word2Vec: ๋จ์ด๋ฅผ ๊ณ ์ ๋ ํฌ๊ธฐ์ ๋ฒกํฐ๋ก ์๋ฒ ๋ฉํฉ๋๋ค. ๋จ์ด์ ์๋ฏธ์ ์ ์ฌ์ฑ์ ๋ฐ์ํฉ๋๋ค.
- GloVe: ๋จ์ด์ ํต๊ณ์ ์ ๋ณด๋ฅผ ์ด์ฉํ์ฌ ๋ฒกํฐ๋ฅผ ํ์ตํฉ๋๋ค.
- BERT: ๋ฌธ๋งฅ์ ๊ณ ๋ คํ์ฌ ๋จ์ด์ ๋ฒกํฐ๋ฅผ ๋์ ์ผ๋ก ์์ฑํฉ๋๋ค.
- ์ฅ์ :
- ๋จ์ด ๊ฐ์ ์๋ฏธ์ ๊ด๊ณ๋ฅผ ๋ฐ์ํฉ๋๋ค.
- ์ฐจ์์ด ๋น๊ต์ ๋ฎ์์ง๋๋ค.
- ๋ฌธ๋งฅ ์ ๋ณด๋ฅผ ํฌํจํ ์ ์์ต๋๋ค.
- ๋จ์ :
- ํ์ต์ ๋ง์ ๋ฐ์ดํฐ์ ์๊ฐ์ด ํ์ํฉ๋๋ค.
- ๋ณต์กํ ๋ชจ๋ธ์ผ์๋ก ๊ณ์ฐ ๋น์ฉ์ด ๋์ต๋๋ค.
์์:
1
2
3
4
5
6
Word2Vec ์์:
"I" -> [0.2, 0.1, 0.4, 0.7]
"love" -> [0.3, 0.2, 0.1, 0.6]
"machine" -> [0.6, 0.4, 0.5, 0.3]
"learning" -> [0.7, 0.5, 0.6, 0.2]
"deep" -> [0.5, 0.3, 0.4, 0.8]
๐ค ์ ๊น! ๋ค์์๋ Word2Vec๊ณผ ์ ์ฌํ Doc2Vec์ด ๋์ค๋๋ฐ์?
=> ํ ์คํธ ๋ณํ๊ณผ ํ ์คํธ ์ฐจ์ ์ถ์๋ ๋ญ๊ฐ ๋ค๋ฅธ๊ฑฐ์ฃ ?
- ํ ์คํธ ๋ณํ(Text Transformation)์ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์ซ์ ๋ฒกํฐ๋ก ๋ณํํ๋ ๊ณผ์ ์ ๋๋ค. ์ด ๊ณผ์ ์์๋ ๋จ์ด์ ๋น๋, ์ค์๋, ๋๋ ์๋ฏธ์ ์ ์ฌ์ฑ์ ๊ณ ๋ คํ์ฌ ๋ฒกํฐ๋ฅผ ์์ฑํฉ๋๋ค. ๋ณํ๋ ๋ฒกํฐ๋ ์ฌ์ ํ ๊ณ ์ฐจ์์ผ ์ ์์ต๋๋ค.
- ์ฐจ์ ์ถ์(Dimensionality Reduction)๋ ๋ณํ๋ ๋ฒกํฐ์ ์ฐจ์์ ์ค์ฌ ๋ฐ์ดํฐ์ ๋ณต์ก์ฑ์ ๋ฎ์ถ๊ณ , ๋ถ์์ ํจ์จ์ฑ์ ๋์ด๋ ๊ณผ์ ์ ๋๋ค. ์ด๋ ์ค์ํ ํน์ง๋ง์ ๋จ๊ธฐ๊ฑฐ๋ ์๋ฏธ ์๋ ์ ์ฌ ๋ณ์๋ฅผ ์ถ์ถํ์ฌ ์ด๋ฃจ์ด์ง๋๋ค.
์ถ๊ฐ ์์
- Bag-of-words์ TF-IDF๋
ํ ์คํธ ๋ณํ ๋ฐฉ๋ฒ
์ผ๋ก, ๊ฐ๊ฐ ๋จ์ด์ ๋น๋์ ์ค์๋๋ฅผ ๊ณ ๋ คํ์ฌ ๋ฒกํฐ๋ฅผ ์์ฑํฉ๋๋ค.- Distributed representation์
ํ ์คํธ ๋ณํ
์ ์ผ์ข ์ด์ง๋ง, ์๋ฏธ์ ์ ์ฌ์ฑ์ ๋ฐ์ํ์ฌ ๋ฒกํฐ๋ฅผ ์์ฑํฉ๋๋ค. ์ด๋ ์ฐจ์ ์ถ์ ๊ธฐ๋ฒ์ ์ถ๊ฐ๋ก ์ ์ฉํ์ง ์์๋ ์ฐจ์ ์ถ์ ํจ๊ณผ๋ฅผ ์ป์ ์ ์์ต๋๋ค.- ๋ค์ STEP3์์ ๋์ฌ LSA, LDA, Doc2Vec๋
์ฐจ์ ์ถ์ ๋ฐฉ๋ฒ
์ผ๋ก, ๋ณํ๋ ๋ฒกํฐ์์ ์ค์ํ ํน์ง์ ์ถ์ถํ๊ฑฐ๋ ์๋ฏธ ์๋ ์ ์ฌ ๋ณ์๋ฅผ ํตํด ์ฐจ์์ ์ค์ ๋๋ค.
STEP 3: ํน์ง ์ ํ ๋ฐ ์ถ์ถ
ํน์ง ์ ํ ๋ฐ ์ฐจ์ ์ถ์(ํน์ง ์ถ์ถ)๋ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ๋ถ์ํ๊ธฐ ์ํด ์ค์ํ ๊ณผ์ ์ ๋๋ค:
-
ํน์ง ์ ํ (Feature Selection):
- ๊ฐ๋ : ๊ฐ์ฅ ์ค์ํ ํน์ง์ ์ ํํฉ๋๋ค.
- ๋ชฉ์ : ๋ถ์์ ์ ์๋ฏธํ ํน์ง๋ง ์ ํํ์ฌ ์ฐจ์์ ์ค์ ๋๋ค.
-
๋ฐฉ๋ฒ:
- ์ ๋ณด ์ด๋(Information gain)
- ๊ต์ฐจ ์ํธ๋กํผ(Cross-entropy)
- ์ํธ ์ ๋ณด๋(Mutual information) ๋ฑ์ ์ฌ์ฉํฉ๋๋ค.
- ํน์ง ์ถ์ถ (Feature Extraction):
- LSA (Latent Semantic Analysis):
- ๊ฐ๋ : ๋จ์ด-๋ฌธ์ ํ๋ ฌ์ SVD๋ก ๋ถํดํ์ฌ ์๋ฏธ๋ฅผ ์ถ์ถํฉ๋๋ค.
- ๋ชฉ์ : ์๋ฏธ ์๋ ์ ์ฌ ๋ณ์๋ค์ ํตํด ์ฐจ์์ ์ถ์ํฉ๋๋ค.
- ์ค๋ช : LSA๋ ๋จ์ด-๋ฌธ์ ํ๋ ฌ์ ํน์ด๊ฐ ๋ถํด(SVD)๋ฅผ ํตํด ๋ถํดํ์ฌ ์ ์ฌ์ ์ธ ์๋ฏธ ๊ตฌ์กฐ๋ฅผ ํ์ ํ๋ ๊ธฐ๋ฒ์ ๋๋ค.
-
์๋ ๋ฐฉ์:
โ ๋ฌธ์-๋จ์ด ํ๋ ฌ์ ์์ฑํฉ๋๋ค.
โก SVD๋ฅผ ์ ์ฉํ์ฌ ์ด ํ๋ ฌ์ ์ธ ๊ฐ์ ํ๋ ฌ๋ก ๋ถํดํฉ๋๋ค.
โข ์์ k๊ฐ์ ํน์ด๊ฐ๋ง ์ ํํ์ฌ ์ฐจ์์ ์ถ์ํฉ๋๋ค.
- LSA (Latent Semantic Analysis):
- LDA (Latent Dirichlet Allocation):
- ๊ฐ๋ : ๋ฌธ์ ์งํฉ์์ ์ ์ฌ์ ์ธ ์ฃผ์ ๋ฅผ ์ถ์ถํ๊ธฐ ์ํ ํ๋ฅ ์ ํ ํฝ ๋ชจ๋ธ๋ง ๊ธฐ๋ฒ์ ๋๋ค.
- ๋ชฉ์ : ๋๊ท๋ชจ ๋ฌธ์ ์งํฉ์์ ์๋ฏธ ์๋ ์ฃผ์ ๋ฅผ ์ถ์ถํ์ฌ ๋ฌธ์์ ์ฐจ์์ ์ถ์ํ๋ ๊ฒ์ ๋๋ค.
- ์ค๋ช
: LDA๋ ๋ฌธ์ ์งํฉ์์ ์ถ์์ ์ธ โ์ฃผ์ โ๋ฅผ ๋ฐ๊ฒฌํ๊ธฐ ์ํ ํ๋ฅ ์ ํ ํฝ ๋ชจ๋ธ๋ง ๊ธฐ๋ฒ์
๋๋ค.
- (๊ฐ์ ) ๊ฐ ๋ฌธ์๋ ๋ค์ํ ์ฃผ์ ์ ํผํฉ์ผ๋ก ๊ตฌ์ฑ๋์ด ์๊ณ , ๊ฐ ์ฃผ์ ๋ ํน์ ๋จ์ด๋ค์ ๋ถํฌ๋ก ํํ๋ฉ๋๋ค.
-
์๋ ๋ฐฉ์:
โ ๊ฐ ๋ฌธ์๋ ์ฌ๋ฌ ์ฃผ์ ์ ํผํฉ์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค.
โก ๊ฐ ์ฃผ์ ๋ ํน์ ๋จ์ด๋ค์ ๋ถํฌ๋ก ํํ๋ฉ๋๋ค.
โข ๋๋ฆฌํด๋ ๋ถํฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌธ์-์ฃผ์ ๋ถํฌ์ ์ฃผ์ -๋จ์ด ๋ถํฌ๋ฅผ ๋ชจ๋ธ๋งํฉ๋๋ค.
- Doc2Vec:
- ๊ฐ๋ : ๋ฌธ์๋ฅผ ๋ฒกํฐ ๊ณต๊ฐ์ ์๋ฒ ๋ฉํฉ๋๋ค.
- ๋ชฉ์ : ๋ฌธ์ ๊ฐ์ ์๋ฏธ์ ๊ด๊ณ๋ฅผ ์ ์งํ๋ฉด์ ์ฐจ์์ ์ถ์ํฉ๋๋ค.
- ์ค๋ช : Doc2Vec์ Word2Vec์ ํ์ฅ์ผ๋ก, ๋ฌธ์ ์ ์ฒด๋ฅผ ๋ฒกํฐ๋ก ํํํ๋ ๊ธฐ๋ฒ์ ๋๋ค.
-
์๋ ๋ฐฉ์:
โ ๋ฌธ์ ID๋ฅผ ์ถ๊ฐ์ ์ธ ์ ๋ ฅ์ผ๋ก ์ฌ์ฉํ์ฌ Word2Vec ๋ชจ๋ธ์ ํ์ฅํฉ๋๋ค.
โก ๋จ์ด์ ๋ฌธ์๋ฅผ ๋์์ ํ์ตํ์ฌ ๋ฒกํฐ ๊ณต๊ฐ์ ์๋ฒ ๋ฉํฉ๋๋ค.
STEP 4: ์๊ณ ๋ฆฌ์ฆ ํ์ต ๋ฐ ํ๊ฐ
Text Analytics์์ ๋ชจ๋ธ์ ํ์ตํ๊ณ ํ๊ฐํ๋ ๊ณผ์ ์ ๋ค์ํ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๊ธฐ๋ฒ์ ํ์ฉํ์ฌ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํ๊ณ ์ ์ฉํ ์ ๋ณด๋ฅผ ๋์ถํ๋ ๋จ๊ณ์ ๋๋ค. ์ด ๊ณผ์ ์ ํฌ๊ฒ Clustering, Classification, Extraction & Retrieval ์ธ ๊ฐ์ง๋ก ๋๋ ์ ์์ต๋๋ค.
1. Clustering
Clustering์ ๋ฌธ์๋ค์ ์ ์ฌํ ํน์ฑ์ ๊ฐ์ง ๊ทธ๋ฃน์ผ๋ก ๋ฌถ๋ ๊ณผ์ ์ ๋๋ค. ์ด๋ฅผ ํตํด ๋ฌธ์ ๊ตฐ์งํ ๋ฐ ์๊ฐํ๋ฅผ ํตํด ์ฃผ์ ํค์๋ ๊ฐ์ ๊ด๊ณ๋ฅผ ํ์ ํ ์ ์์ต๋๋ค.
- ์๊ณ ๋ฆฌ์ฆ: K-means, DBSCAN, Hierarchical Clustering ๋ฑ ๋ค์ํ ๊ตฐ์งํ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ ๋ฌธ์๋ฅผ ๊ตฐ์งํํ ์ ์์ต๋๋ค.
- ๊ณผ์ :
- ํน์ฑ ์ถ์ถ: TF-IDF, Word2Vec, BERT ๋ฑ ํ ์คํธ ์๋ฒ ๋ฉ ๊ธฐ๋ฒ์ ์ฌ์ฉํ์ฌ ๋ฌธ์์ ํน์ฑ์ ๋ฒกํฐ๋ก ๋ณํํฉ๋๋ค.
- ๊ตฐ์งํ: ์ ํํ ๊ตฐ์งํ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ ๋ฌธ์๋ฅผ ๊ตฐ์ง์ผ๋ก ๋ฌถ์ต๋๋ค.
- ์๊ฐํ: t-SNE, PCA ๋ฑ์ ์ฌ์ฉํ์ฌ ๊ณ ์ฐจ์ ๋ฒกํฐ๋ฅผ 2์ฐจ์ ๋๋ 3์ฐจ์์ผ๋ก ์๊ฐํํ์ฌ ๊ฐ ๊ตฐ์ง์ ๊ด๊ณ๋ฅผ ํ์ ํฉ๋๋ค.
- ์์ฉ: ๋ด์ค ๊ธฐ์ฌ ๊ตฐ์งํ, ๊ณ ๊ฐ ๋ฆฌ๋ทฐ ๋ถ์, ์์ ๋ฏธ๋์ด ๋ฐ์ดํฐ ๊ตฐ์งํ ๋ฑ์ ํตํด ์ฃผ์ ์ฃผ์ ๋ ํจํด์ ๋ฐ๊ฒฌํฉ๋๋ค.
2. Classification
Classification์ ๋ฌธ์๋ฅผ ์ฌ์ ์ ์๋ ๋ฒ์ฃผ๋ก ๋ถ๋ฅํ๋ ๊ณผ์ ์ ๋๋ค. ์ด ๊ณผ์ ์ ์คํธ ํํฐ๋ง, ๊ฐ์ฑ ๋ถ์, ์ฃผ์ ๋ถ๋ฅ ๋ฑ ๋ค์ํ ์์ฉ์ ์ฌ์ฉ๋ฉ๋๋ค.
- ์๊ณ ๋ฆฌ์ฆ: Naive Bayes, SVM, Random Forest, Deep Learning (CNN, RNN) ๋ฑ ๋ค์ํ ๋ถ๋ฅ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ ๋ฌธ์๋ฅผ ๋ถ๋ฅํฉ๋๋ค.
- ๊ณผ์ :
- ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ: ํ ์คํธ ์ ๊ทํ, ๋ถ์ฉ์ด ์ ๊ฑฐ, ์ด๊ฐ ์ถ์ถ ๋ฑ์ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ ์ ํฉ๋๋ค.
- ํน์ฑ ์ถ์ถ: Bag-of-Words, TF-IDF, Word Embeddings ๋ฑ์ ์ฌ์ฉํ์ฌ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ๋ฒกํฐ๋ก ๋ณํํฉ๋๋ค.
- ๋ชจ๋ธ ํ์ต: ํ์ต ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๋ถ๋ฅ ๋ชจ๋ธ์ ํ์ตํฉ๋๋ค.
- ๋ชจ๋ธ ํ๊ฐ: ๊ต์ฐจ ๊ฒ์ฆ, ํผ๋ ํ๋ ฌ, ์ ํ๋, ์ ๋ฐ๋, ์ฌํ์จ, F1 ์ ์ ๋ฑ์ ์ฌ์ฉํ์ฌ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ํ๊ฐํฉ๋๋ค.
- ์์ฉ: ์ด๋ฉ์ผ ์คํธ ํํฐ๋ง, ์์ ๋ฏธ๋์ด์ ๊ฐ์ฑ ๋ถ์, ๊ณ ๊ฐ ๋ฆฌ๋ทฐ์ ๊ธ์ /๋ถ์ ๋ถ๋ฅ ๋ฑ์ ํตํด ์ค์ํ ์ธ์ฌ์ดํธ๋ฅผ ๋์ถํฉ๋๋ค.
3. Extraction & Retrieval
Extraction & Retrieval์ ๋ฌธ์์์ ํ์ํ ์ ๋ณด๋ฅผ ์ถ์ถํ๊ณ ๊ฒ์ํ๋ ๊ณผ์ ์ ๋๋ค. ์ด๋ฅผ ํตํด ์ค์ํ ์ ๋ณด๋ฅผ ํจ์จ์ ์ผ๋ก ์ฐพ๊ณ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ์ ๋ณด ์ถ์ถ:
- Named Entity Recognition (NER): ์ธ๋ช , ์ง๋ช , ์กฐ์ง๋ช ๋ฑ ๋ช ๋ช ๋ ๊ฐ์ฒด๋ฅผ ์ถ์ถํฉ๋๋ค.
- ๊ด๊ณ ์ถ์ถ: ๊ฐ์ฒด ๊ฐ์ ๊ด๊ณ๋ฅผ ์ถ์ถํ์ฌ ์ง์ ๊ทธ๋ํ๋ฅผ ๊ตฌ์ถํฉ๋๋ค.
- ์์ฝ: ๋ฌธ์์ ์ฃผ์ ๋ด์ฉ์ ์๋์ผ๋ก ์์ฝํฉ๋๋ค.
- ์ ๋ณด ๊ฒ์:
- ๊ฒ์ ์์ง: ๋ฌธ์ ๋ด์์ ์ฌ์ฉ์๊ฐ ์ํ๋ ์ ๋ณด๋ฅผ ๊ฒ์ํฉ๋๋ค.
- ์ง๋ฌธ ์๋ต ์์คํ : ์ฌ์ฉ์์ ์ง๋ฌธ์ ๋ํด ๋ฌธ์์์ ๋ต์ ์ฐพ์ ์ ๊ณตํฉ๋๋ค.
- ๊ณผ์ :
- ๋ฐ์ดํฐ ์ค๋น: ๋์ฉ๋ ํ ์คํธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ตฌ์ถํฉ๋๋ค.
- ํน์ฑ ์ถ์ถ: ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์ธ๋ฑ์ฑํ์ฌ ๊ฒ์ ํจ์จ์ ๋์ ๋๋ค.
- ๋ชจ๋ธ ์ ์ฉ: ๋ค์ํ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ ๋ฐ NLP ๊ธฐ๋ฒ์ ์ ์ฉํ์ฌ ์ ๋ณด ์ถ์ถ ๋ฐ ๊ฒ์ ๊ธฐ๋ฅ์ ๊ตฌํํฉ๋๋ค.
- ์์ฉ: ๋ฒ๋ฅ ๋ฌธ์์์์ ํ๋ก ๊ฒ์, ๊ณ ๊ฐ ๋ฌธ์์ ๋ํ ์๋ ์๋ต, ๋๊ท๋ชจ ๋ฌธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์์ ์ ๋ณด ๊ฒ์ ๋ฑ์ ํตํด ์๊ฐ๊ณผ ๋น์ฉ์ ์ ๊ฐํฉ๋๋ค.
์ด๋ฒ ํฌ์คํ
์์๋ Steps of Text Analytics
, ํ
์คํธ ๋ถ์์ ์์์ ๋ํด์ ์ดํด๋ดค์ต๋๋ค ๐ค