์ „์ฒด ๊ธ€ 202

BERT: Pre-training of Deep Bidirectional Transformers forLanguage Understanding

๋…ผ๋ฌธ ์ฝ๊ธฐ ์—„์ฒญ ์˜ค๋žœ๋งŒ์ด๋‹ค. BERT ๊ธฐ๋ฐ˜ ์‚ฌ์ „ํ•™์Šต๋ชจ๋ธ ์จ๋ณด๋ ค๊ณ  ํ•˜๋‹ค๊ฐ€ ๊ด€๋ จ ๊ฐœ๋…์„ ํ•˜๋‚˜๋„ ๋ชจ๋ฅด๋‹ˆ๊นŒ ๋ชจ๋ธ ์ž…๋ ฅ์— ๋ญ๊ฐ€ ๋“ค์–ด๊ฐ€๋Š”์ง€~ ๋ฐ์ดํ„ฐ ํ˜•ํƒœ๋ฅผ ์–ด๋–ป๊ฒŒ ๋งž์ถฐ์ค˜์•ผ ํ•˜๋Š”์ง€~ ๋„ˆ๋ฌด ์ดํ•ด๊ฐ€ ์•ˆ ๋˜๋Š” ๋ถ€๋ถ„์ด ๋งŽ์•„์„œ ๋…ผ๋ฌธ ๋ณธ์ธ๋“ฑํŒ์‹œํ‚ด ๐Ÿ’ฌ ๋…ผ๋ฌธ ๋‚ด์šฉ๊ณผ ์ด ๊ธ€์— ๋Œ€ํ•œ ์˜๊ฒฌ ๊ณต์œ , ์˜คํƒˆ์ž ์ง€์  ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. ํŽธํ•˜๊ฒŒ ๋Œ“๊ธ€ ๋‚จ๊ฒจ์ฃผ์„ธ์š” ! ์›๋ฌธ: https://arxiv.org/pdf/1810.04805.pdf โ–  : ์•„์ง ๋ฐ”๋กœ ์ดํ•ด ์•ˆ ๋˜๋Š” ๋ถ€๋ถ„ Introduction 1. Pre-train๋œ ์–ธ์–ด ํ‘œํ˜„์„ ํ•˜์œ„ ํƒœ์Šคํฌ์— ์ ์šฉํ•˜๋Š” 2๊ฐ€์ง€ ๋ฐฉ๋ฒ• ์กด์žฌ 1) Feature-based - Pre-trained representations์„ ํฌํ•จํ•˜๋Š” task-specific ๊ตฌ์กฐ๋ฅผ ์ถ”๊ฐ€์ ์ธ feature๋กœ ์‚ฌ์šฉ - ์˜ˆ: ELMo 2) ..

[PyTorch] class ๊ธฐ๋ฐ˜ ๋ชจ๋ธ ๊ตฌํ˜„ ๋ฐฉ๋ฒ•

class ModelName(nn.Module): def __init__(self): super().__init__() # ์ฝ”๋“œ ์ž‘์„ฑ ๋ถ€๋ถ„ def forward(self): # ์ฝ”๋“œ ์ž‘์„ฑ ๋ถ€๋ถ„ nn.Module - ๋ชจ๋“  ์‹ ๊ฒฝ๋ง ๋ชจ๋“ˆ์˜ ๊ธฐ๋ณธ์ด ๋˜๋Š” ํด๋ž˜์Šค - ๋ชจ๋ธ ๊ตฌํ˜„ ์‹œ ์ด ํด๋ž˜์Šค๋ฅผ ์ƒ์†๋ฐ›์•„ ์‚ฌ์šฉํ•ด์•ผ ํ•จ(should) - nn.Module ํด๋ž˜์Šค๋Š” ๋‹ค๋ฅธ nn.Module ์•ˆ์—์„œ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Œ - Linear, Dropout, LayerNorm ๋“ฑ ๋ชจ๋ธ ์ƒ์„ฑ์— ์“ฐ์ด๋Š” ์—ฌ๋Ÿฌ ๊ธฐ๋Šฅ ํฌํ•จ __init__ - ์‹ ๊ฒฝ๋ง ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์ •์˜ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ - โœ… super().__init__(): ๋ถ€๋ชจ ํด๋ž˜์Šค(nn.Module)๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ์—ญํ• ๋กœ ์ด ๋ถ€๋ถ„์„ ์ž‘์„ฑํ•˜์ง€ ์•Š๊ณ  self.๋ณ€์ˆ˜๋ช… = ~ ์„ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ์—๋Ÿฌ ๋ฐœ..

[TensorFlow] WARNING:tensorflow:Can save best model only with acc available, skipping.

๋ฐ์ด์ฝ˜ ์‹ค์Šต ์ค‘์— ์—๋Ÿฌ๋Š” ์•„๋‹ˆ์ง€๋งŒ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ฒฝ๊ณ  ๋ฌธ๊ตฌ๊ฐ€ ๋–ด๊ณ  ๋ชจ๋ธ ์ฒดํฌํฌ์ธํŠธ ์ €์žฅ์ด ์•ˆ๋˜๋Š” ๊ฒƒ ๊ฐ™๊ธธ๋ž˜ ํ™•์ธํ•œ ํ›„ ์ฝ”๋“œ๋ฅผ ์•„์ฃผ ์‚ด์ง ์ˆ˜์ •ํ•ด์„œ ํ•ด๊ฒฐํ–ˆ๋‹ค. # ๊ธฐ์กด ์ฝ”๋“œ mc = ModelCheckpoint(filepath=os.path.join(path, ckpt_1), monitor='acc', save_best_only=True, mode='max',verbose=1, save_weights_only=True) # ์ˆ˜์ • ์ฝ”๋“œ mc = ModelCheckpoint(filepath=os.path.join(path, ckpt_1), monitor='val_accuracy', save_best_only=True, mode='max',verbose=1, save_weights_only=True) monitor..

2022/8์›”ํ˜ธ

์—ฌ๋ฆ„ ํœด๊ฐ€๊ฐ€ ์–ด๋–ป๊ฒŒ ๋ ์ง€ ๋ชจ๋ฅด๋Š” ์‹œ๊ธฐ์— ์ด ์ฑ…์„ ์ฝ์—ˆ์–ด์„œ ์ € ๋ฌธ๋‹จ๋“ค์„ ์•ˆ ์ฐ์„์ˆ˜๊ฐ€ ์—†์—ˆ๋˜..ใ…Ž ํœด๊ฐ€๋Š” ์ž˜ ๋‹ค๋…€์™”๊ณ  ์•ž์œผ๋กœ์˜ ๋Œ€ํ•™์› ์ƒํ™œ์— ํฐ ๋„์›€์ด ๋  ๊ฒƒ ๊ฐ™์€ ๋‚ด์šฉ์ด๋ผ ๊ฐ€๋”์”ฉ ๋‹ค์‹œ ๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ๐Ÿ‘ฉ‍๐Ÿ’ป KoELECTRA๋ผ๋Š” ์–ธ์–ด ๋ชจ๋ธ์„ ์กฐ์‚ฌํ–ˆ๋Š”๋ฐ ๊ตฌํ˜„ํ•˜์‹  ๋ถ„์ด ๋Œ€๋‹จํ•˜๋‹ค๋Š” ์ƒ๊ฐ์ด ๋งŽ์ด ๋“ค์—ˆ๋‹ค. ๊ธฐ์กด ๋ชจ๋ธ๋“ค์ด ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋‹จ์ ์„ ๋ฐœ๊ฒฌํ–ˆ๊ณ , ๊ทธ ๋‹จ์ ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ํŠน์ • ๋ชจ๋ธ์„ ์ปค์Šคํ…€(?)ํ•ด์„œ ๋ฐฐํฌ๊นŒ์ง€ ํ•˜๋‹ค๋‹ˆ ์–ผ๋งˆ๋‚˜ ๋ฉ‹์ง„ ์ผ์ธ๊ฐ€! ๋‚˜๋Š” ์•„์ง๋„ ์ •ํ™•ํ•˜๊ฒŒ ์–ด๋–ค ์˜๋ฏธ์ธ์ง€ ๋ชจ๋ฅด๋Š” ๋”ฅ๋Ÿฌ๋‹ ์šฉ์–ด๋“ค์ด ๋งŽ์€๋ฐ ๋ชจ๋ธ์„ ์กฐ์‚ฌํ•˜๋ฉด์„œ ์Šค์Šค๋กœ๋ฅผ ๋Œ์•„๋ณผ ์ˆ˜ ์žˆ์—ˆ๋‹ค. 2๋…„ ํ›„์—๋Š” ์ „๋ฌธ๊ฐ€๊ฐ€ ๋˜์–ด ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ผ๋ฉด์„œ ๋ชจ๋ฅด๋Š” ๊ฑธ ์ฐฝํ”ผํ•ดํ•˜์ง€ ์•Š๋Š” ์ž์„ธ๋กœ ๊ณต๋ถ€ํ•ด์•ผ๊ฒ ๋‹ค. ๐Ÿ‹๏ธ ์šด๋™์˜ ํ•„์š”์„ฑ์„ ์ฒด๊ฐํ•œ ๋‹ฌ์ด๋‹ค. ํœด๊ฐ€ ๊ฐ€์„œ ์ฐ์€ ์‚ฌ์ง„์„ ๋‹ค์‹œ ๋ณด๋Š”๋ฐ ์‚ฌ๋žŒ..

[NLP ๊ธฐ์ดˆ] Vocab

'Vocab ์ƒ์„ฑ' ๊ณผ์ •์€ ์ž์—ฐ์–ด์ฒ˜๋ฆฌ ํƒœ์Šคํฌ๋ฅผ ์ˆ˜ํ–‰ํ•  ๋•Œ ๋น ์ง€์ง€ ์•Š๊ณ  ๋“ฑ์žฅํ•˜์ง€๋งŒ, ์Šต๊ด€์ ์œผ๋กœ ์“ธ ๋ฟ ์ƒ์„ฑ ๋ชฉ์ ์ด ๋ญ”์ง€ ์ดํ•ดํ•˜์ง€ ๋ชปํ–ˆ์—ˆ๋‹ค. ํŠธ๋žœ์Šคํฌ๋จธ ๋ชจ๋ธ์„ ๋‹ค๋ค„๋ณด๋ฉด์„œ ๋ญ”๊ฐ€ ์•Œ ๊ฒƒ ๊ฐ™๊ธฐ๋„ ํ•œ ๋Š๋‚Œ์ด ๋“ค์–ด์„œ ์ž์—ฐ์–ด์ฒ˜๋ฆฌ ํƒœ์Šคํฌ์— ์žˆ์–ด์„œ Vocab์˜ ์—ญํ• ์— ๋Œ€ํ•ด ๋‚ด๊ฐ€ ์ดํ•ดํ•œ ๋ฐ”๋ฅผ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. โญ ์ž˜๋ชป๋œ ๋‚ด์šฉ์ด ์žˆ๋‹ค๋ฉด ํŽธํ•˜๊ฒŒ ๋Œ“๊ธ€ ๋‚จ๊ฒจ์ฃผ์„ธ์š”! ์ƒ์„ฑ ๋‹จ๊ณ„ โ€ป Vocab ์ƒ์„ฑ ๋‹จ๊ณ„ ์ดํ›„์˜ '๋ฐ์ดํ„ฐ ์ƒ์„ฑ'์€ ๋ชจ๋ธ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ์ƒ์„ฑ์„ ์˜๋ฏธ ํ† ํฐํ™”-Vocab ์ƒ์„ฑ ๊ณผ์ • ํ† ํฐํ™” โญ ํ† ํฐํ™”์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ ์˜ค๋ฅธ์ชฝ ๋งํฌ๋ฅผ ๋ˆ„๋ฅด๋ฉด ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ์—ฌ๊ธฐ! ํ† ํฐํ™”๋ฅผ ํ•˜๋Š” ์ด์œ ๋Š” ๋ชจ๋ธ์ด ์ผ๋ฐ˜์ ์ธ ํ‘œํ˜„์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•œ ๊ฒŒ ์•„๋‹๊นŒ? ํ•˜๋Š” ๊ฒƒ์ด ๋‚ด ์ƒ๊ฐ์ด๋‹ค. ๋ฌธ์žฅ์„ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„์„œ ํ† ํฐํ™” ๊ณผ์ • ์—†์ด ๋ฌธ์žฅ ์ „์ฒด๋ฅผ ํ•™์Šต์— ์‚ฌ..

2022/7์›”ํ˜ธ

๐Ÿ‘ฉ‍๐Ÿ’ป ์—ฐ๊ตฌ์‹ค ์‹ค์ „ ์—…๋ฌด(ex-๊ณผ์ œ) ๋ง›์„ ์กฐ๊ธˆ์”ฉ ๋ณด๊ณ  ์žˆ๋‹ค. ํŠน์ • ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ฝ”๋“œ๋„ ์งœ๋ณด๊ณ , ์ปดํ“จํ„ฐ ๋น„์ „ ๊ด€๋ จ ๋ชจ๋ธ ๊ตฌํ˜„์— ํ•„์š”ํ•œ ๋ฐฐ๊ฒฝ์ง€์‹์„ ์ฑ„์šฐ๊ธฐ ์œ„ํ•œ ์„œ์น˜๋„ ํ–ˆ๋‹ค. 6์›”๋ณด๋‹ค ๋” ๋นจ๋ฆฌ ํ•œ ๋‹ฌ์ด ์ง€๋‚˜๊ฐ„ ๊ฒƒ ๊ฐ™์€ ๋Š๋‚Œ์ด๋ผ ๊ทธ๋Ÿฐ๊ฐ€ ๋ญ”๊ฐ€ ํ•˜๊ธด ํ–ˆ๋Š”๋ฐ.. ๋งˆ๋•…ํžˆ ๊ธฐ์–ต์— ๋‚จ๋Š” ๊ฒŒ ์—†๋„ค :( ๐ŸŽฏ ์ปค๋„ฅํŠธ์žฌ๋‹จ์—์„œ ์ง„ํ–‰ํ•˜๋Š” AI Tech 4๊ธฐ๋ฅผ ์ง€์›ํ•ด์•ผ๊ฒ ๋‹ค๊ณ  ๋งˆ์Œ ๋จน์—ˆ๋Š”๋ฐ ์–ด์ฉŒ๋‹ค ๋ณด๋‹ˆ ์ง€์›ํ•˜์ง€ ๋ชปํ–ˆ๋‹ค. ์ง€์›์„œ๋ฅผ ๋ฏธ๋ฆฌ ์จ๋‘์ง€ ์•Š์•˜์–ด์„œ ์ง€์› ๋งˆ๊ฐ๋‚ ์ด ์žˆ๋Š” ์ฃผ์— ์ž‘์„ฑํ•˜๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ ์กฐ๊ธˆ ์ค‘์š”ํ•œ ์—ฐ๊ตฌ์‹ค ์—…๋ฌด๊ฐ€ ์žˆ์—ˆ์–ด์„œ ์—ญ์‹œ๋‚˜ ๋ฉ€ํ‹ฐํ”Œ๋ ˆ์ด ์‹คํŒจ! 3๊ธฐ ๋ชจ์ง‘ ๋•Œ๋Š” ์ •๋ง ํ•˜๊ณ  ์‹ถ์—ˆ๋Š”๋ฐ ์ง€๊ธˆ์€ ์ง„๋กœ๊ฐ€ ์ •ํ•ด์ง€๊ธฐ๋„ ํ–ˆ๊ณ  ์—ฐ๊ตฌ์‹ค ์ผ๊ณผ ์‹œ๊ฐ„ ๋•Œ๋ฌธ์— 3๊ธฐ ๋•Œ๋ณด๋‹ค๋Š” ํ•˜๊ณ  ์‹ถ์€ ๋งˆ์Œ์ด ๋œ ํ–ˆ๋‹ค. ๋ฐ˜ ๋…„์ด ์ง€๋‚ฌ๋Š”์ง€ 1๋…„์ด ์ง€๋‚ฌ๋Š”์ง€๋Š” ๊ธฐ์–ต์ด ์ž˜ ..

[๋ฒˆ์—ญ] Foundations of NLP Explained Visually: Beam Search, How It Works

๐Ÿ’ฌ ์ตœ๋Œ€ํ•œ ๋งค๋„๋Ÿฝ๊ฒŒ ํ•ด์„ํ•˜๊ณ ์ž ๋…ธ๋ ฅํ–ˆ์ง€๋งŒ ์–ด์ƒ‰ํ•œ ๋ฌธ์žฅ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”ผ๋“œ๋ฐฑ์€ ์–ธ์ œ๋‚˜ ํ™˜์˜์ž…๋‹ˆ๋‹ค ๐Ÿ™‚ ์›๋ณธ ๊ธ€ ์ฃผ์†Œ : https://towardsdatascience.com/foundations-of-nlp-explained-visually-beam-search-how-it-works-1586b9849a24 Foundations of NLP Explained Visually: Beam Search, How it Works A Gentle Guide to how Beam Search enhances predictions, in Plain English towardsdatascience.com NLP ๋ชจ๋ธ์˜ Output ์ƒ์„ฑ ๋ฐฉ๋ฒ• ๊ธฐ๊ณ„ ๋ฒˆ์—ญ ์ž‘์—…์— ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” sequence-to-sequence ๋ชจ..

Archive 2022.08.01

[BOJ] 2493๋ฒˆ: ํƒ‘

๋ฌธ์ œ ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ๋ฌธ์ œ๋ฅผ ์š”์•ฝํ•˜๋ฉด '๋‚ด ์™ผ์ชฝ ์ธ๊ทผ์— ์žˆ์œผ๋ฉด์„œ ๋‚˜๋ณด๋‹ค ๋†’์€ ํƒ‘์˜ ์ธ๋ฑ์Šค ์ถœ๋ ฅ'์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๊ฒ ๋‹ค. '์ธ๊ทผ'์ด๋ผ๋Š” ํ‘œํ˜„์„ ์“ด ์ด์œ ๋Š” ๋†’์ด๊ฐ€ 4์ธ ๋‹ค์„ฏ๋ฒˆ์งธ ํƒ‘์ฒ˜๋Ÿผ ์™ผ์ชฝ์— ์žˆ๋Š” ํƒ‘๋“ค ์ค‘ ๋‚˜๋ณด๋‹ค ๋†’์€ ํƒ‘์ด ์—ฌ๋Ÿฌ ๊ฐœ์ธ ๊ฒฝ์šฐ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. 7๋ณด๋‹ค ๋” ๋†’์€ ํƒ‘์ด ์žˆ์ง€๋งŒ 4๊ฐ€ ์œ ๋ ˆ์ด์ € ์‹ ํ˜ธ๋Š” ์ด๋ฏธ 7์— ๋‹ฟ์•˜์œผ๋ฏ€๋กœ 7์˜ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ+1์„ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค. ํ’€์ดโ˜ ์ฒซ ๋ฒˆ์งธ ์‹œ๋„(์‹œ๊ฐ„ ์ดˆ๊ณผ)import sysfrom collections import dequeN = int(input())tower = list(map(int, sys.stdin.readline().split()))received = [0]for i in range(1, N): candidate = deque(tower[:i])..

[KoNLPy] The MeCab dictionary does not exist at "~".

์œˆ๋„์šฐ์— ์–ด์ฐŒ์ €์ฐŒ KoNLPy ์„ค์น˜ ํ›„ MeCab์„ ์จ๋ณด๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ import๋Š” ์ •์ƒ์ ์œผ๋กœ ๋˜๊ณ  ๊ฐ์ฒด ์„ ์–ธ์ด ๋˜์ง€ ์•Š์•˜๋‹ค. Exception ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋ฉด ๊ฒฝ๋กœ ๋ฌธ์ œ์ธ ๊ฒƒ ๊ฐ™์•˜๋Š”๋ฐ ์•„๋ž˜ ๋ฐฉ๋ฒ•์œผ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. # dicpath ์ถ”๊ฐ€ mecab = Mecab(dicpath=r"C:\mecab\mecab-ko-dic") ์‚ฌ์‹ค ์ž„์‹œ๋ฐฉํŽธ์œผ๋กœ ํ•ด๊ฒฐํ–ˆ๋‚˜ ์‹ถ๊ธฐ๋„ ํ•˜๋‹ค ๐Ÿ™„

[๋ฒˆ์—ญ] Word2Vec Research Paper Explained

๐Ÿ’ฌ ์ตœ๋Œ€ํ•œ ๋งค๋„๋Ÿฝ๊ฒŒ ํ•ด์„ํ•˜๊ณ ์ž ๋…ธ๋ ฅํ–ˆ์ง€๋งŒ ์–ด์ƒ‰ํ•œ ๋ฌธ์žฅ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”ผ๋“œ๋ฐฑ์€ ์–ธ์ œ๋‚˜ ํ™˜์˜์ž…๋‹ˆ๋‹ค ๐Ÿ™‚ ์›๋ณธ ๊ธ€ ์ฃผ์†Œ : https://towardsdatascience.com/word2vec-research-paper-explained-205cb7eecc30 Word2Vec Research Paper Explained An Intuitive understanding and explanation of the word2vec model. towardsdatascience.com ์„œ๋ก  ๋งŽ์€ NLP ํ™œ์šฉ ์‚ฌ๋ก€์—์„œ, ๋‹จ์–ด๋Š” ์„œ๋กœ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ํฌ์ฐฉํ•˜์ง€ ์•Š๋Š” ์›-ํ•ซ ์ธ์ฝ”๋”ฉ์œผ๋กœ ํ‘œํ˜„๋œ๋‹ค. ์›-ํ•ซ ์ธ์ฝ”๋”ฉ์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” "๊ฐ„๋‹จํ•จ, ๊ฒฌ๊ณ ํ•จ๊ณผ ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋กœ ํ›ˆ๋ จ๋œ ๊ฐ„๋‹จํ•œ ๋ชจ๋ธ์ด ์†Œ๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋กœ ํ›ˆ๋ จ๋œ ๋ณต์žกํ•œ ๋ชจ๋ธ๋ณด๋‹ค..

Archive 2022.07.04