profile-img
The merit of an action lies in finishing it to the end.
slide-image

vscode๋ฅผ ์ด์šฉํ•ด์„œ git ๊ด€๋ฆฌ๋ฅผ ํ•˜๊ณ  ์žˆ๋Š”๋ฐ (์ฝ”๋“œ๋ฅผ ๋”ฐ๋กœ ์ž‘์„ฑํ•˜์ง€๋Š” ์•Š๊ณ  ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์„ ์ด์šฉํ•œ๋‹ค) ๋‚œ์ƒ ์ฒ˜์Œ ๋ณด๋Š” ์˜ค๋ฅ˜๋ฅผ ๋งž๋‹ฅ๋œจ๋ ธ๋‹ค.

"unexpected disconnect while reading sideband packet fatal: the remote end hung up unexpectedly everything up-to-date"

์ด๋ผ๋Š” ์ฐฝ์ด ๋œจ๋ฉด์„œ ํ‘ธ์‹œ๊ฐ€ ๋˜์ง€ ์•Š๋Š” ํ˜„์ƒ์ด ๋ฐœ์ƒํ–ˆ๋‹ค.

์ธํ„ฐ๋„ท ์˜ค๋ฅ˜์ธ๊ฐ€ ์‹ถ์–ด์„œ ๋‹ค๋ฅธ ์™€์ดํŒŒ์ด๋ฅผ ์ด์šฉํ•˜์˜€์ง€๋งŒ ์ด ๋ฌธ์ œ๋Š” ์•„๋‹ˆ์—ˆ๋‹ค.

 

๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด ์˜ค๋ฅ˜์˜ ์›์ธ์„ ํŒŒ์•…ํ–ˆ๋‹ค. 

๊ธฐ๋ณธ์ ์œผ๋กœ ํ‘ธ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ํ•œ ๊ฐœ ํŒŒ์ผ์˜ ์ตœ๋Œ€ ์šฉ๋Ÿ‰์ด 1MB์—ฌ์„œ, ์šฉ๋Ÿ‰ ์ดˆ๊ณผํ•œ ํŒŒ์ผ์„ pushํ•  ๋•Œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค๊ณ  ํ•œ๋‹ค. ์ด๋ฒˆ์— ์ฒ˜์Œ์œผ๋กœ 1MB๊ฐ€ ๋„˜๋Š” ํŒŒ์ผ์„ ์—…๋กœ๋“œํ•ด์„œ ๊ทธ๋Ÿฐ ๊ฒƒ์ด์—ˆ๋‹ค.

์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ตœ๋Œ€ ์šฉ๋Ÿ‰์„ ๋Š˜๋ ค์ฃผ๋ฉด ๋œ๋‹ค.

ํ„ฐ๋ฏธ๋„์„ ์—ด๊ณ  

git config --local http.postBuffer 2048M

 

ํ•ด๋‹น ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด์ฃผ๋‹ˆ ํ•ด๊ฒฐ๋˜์—ˆ๋‹ค.

์ด๊ฒŒ ๋จนํžˆ์ง€ ์•Š์œผ๋ฉด ssh์—์„œ๋„ ๋ณ€๊ฒฝํ•ด์ฃผ๋ฉด ๋œ๋‹ค๊ณ  ํ•œ๋‹ค. 

git config --local ssh.postBuffer 2048M

 

์ถœ์ฒ˜: https://happy-jjang-a.tistory.com/222

'CS study/๊ธฐํƒ€' Related Articles +

๋ฌดํ•œ์Šคํฌ๋กค ํŽ˜์ด์ง€์—์„œ ํฌ๋กค๋ง์„ ํ•  ์ผ์ด ์ƒ๊ฒผ๋‹ค.

๋ฌดํ•œ์Šคํฌ๋กค ํŽ˜์ด์ง€์—์„œ ํ•ญ๋ชฉ์˜ ๋ชฉ๋ก์„ ๋ชจ๋‘ ์ˆ˜์ง‘ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์Šคํฌ๋กค ๋ฐ”๋ฅผ ๋งจ ๋๊นŒ์ง€ ๋‚ด๋ ค์•ผํ•œ๋‹ค.

๋”ฐ๋ผ์„œ ํŽ˜์ด์ง€๋ฅผ ๋‚ด๋ ค๋„ ๊ณ„์†ํ•ด์„œ ์ƒˆ๋กœ์šด ๋‚ด์šฉ์ด ๋กœ๋”ฉ๋˜๋Š” ๋ฌดํ•œ์Šคํฌ๋กค ์›นํŽ˜์ด์ง€์—์„œ ์Šคํฌ๋กค ๋ฐ”๋ฅผ ๊ณ„์†ํ•ด์„œ ๋‚ด๋ฆฌ๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์ž.

 

์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ๋Š”๋ฐ, Keys.PAGE_DOWN๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

1. ํ•„์š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋ถˆ๋Ÿฌ์˜จ๋‹ค.

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By

 

2. Keys.PAGE_DOWN์„ ์‚ฌ์šฉํ•˜์—ฌ ํŽ˜์ด์ง€ ๋งจ ๋์— ๋„๋‹ฌํ•  ๋•Œ๊นŒ์ง€ ์Šคํฌ๋กค ๋ฐ”๋ฅผ ๋‚ด๋ฆฐ๋‹ค.

last_count = len(driver.find_elements(By.CSS_SELECTOR, 'a.contents__title'))  # ํ˜„์žฌ ํŽ˜์ด์ง€์— ๋กœ๋“œ๋œ ๋ฆฌ๋ทฐ ๋งํฌ ์ˆ˜

while True:
    body = driver.find_element(By.TAG_NAME, 'body')
    body.send_keys(Keys.PAGE_DOWN)
    time.sleep(1)

    new_count = len(driver.find_elements(By.CSS_SELECTOR, 'a.contents__title'))
        
    # ๋งŒ์•ฝ ์ƒˆ๋กœ์šด ๋งํฌ๊ฐ€ ๋” ์ด์ƒ ๋กœ๋“œ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ์ข…๋ฃŒ
    if new_count == last_count:
        print("๋” ์ด์ƒ ์Šคํฌ๋กคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")
        break
    
    last_count = new_count  # ๊ฐœ์ˆ˜ ์—…๋ฐ์ดํŠธ

 

body = driver.find_element(By.TAG_NAME, 'body')๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ body๋ฅผ ์„ ํƒํ•œ ์ดํ›„, send_keys ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด์„œ page down ํ‚ค๋ฅผ ๋ˆ„๋ฅด๋Š” ๊ฒƒ๊ณผ ๋™์ผํ•œ ํšจ๊ณผ๋ฅผ ์ค€๋‹ค.

์ด๋•Œ, ๋ฌดํ•œ๋ฃจํ”„๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ณ„์†ํ•ด์„œ ์Šคํฌ๋กค์„ ๋‚ด๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ๋ฌดํ•œ๋ฃจํ”„ ํƒˆ์ถœ ์กฐ๊ฑด์„ ์„ค์ •ํ•ด์•ผ ํ•œ๋‹ค.

๋‚˜๋Š” ์Šคํฌ๋กค์„ ๋‚ด๋ ค๋„ content์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋ฐ”๋€Œ์ง€ ์•Š์„ ๋•Œ ๋ฌดํ•œ๋ฃจํ”„๋ฅผ ํƒˆ์ถœํ•  ์ˆ˜ ์žˆ๋„๋ก ์กฐ๊ฑด์„ ์„ค์ •ํ•˜์˜€๋‹ค.

time.sleep(1)์€ ํŽ˜์ด์ง€ ๋กœ๋”ฉ์— ๋”œ๋ ˆ์ด๊ฐ€ ๊ฑธ๋ฆด ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์„ค์ •ํ•œ ๊ฐ’์ด๋‹ค.

 

'CS study/ํŒŒ์ด์ฌ ๊ธฐ์ดˆ' Related Articles +

ํ•™ํšŒ์—์„œ ์ฃผ์–ด์ง„ ์ง€๋ฌธ์— ๋Œ€ํ•œ ๊ฐ๊ด€์‹ ์งˆ๋ฌธ์„ ์ƒ์„ฑํ•˜๋Š” Question Generation NLP ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ ์ค‘์ด๋‹ค.

QG ํ”„๋กœ์ ํŠธ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€ํ‘œ์ ์ธ ๋ฐ์ดํ„ฐ์…‹์„ ์†Œ๊ฐœํ•˜๊ณ ์ž ํ•œ๋‹ค.

 

1. SQuAD 

https://rajpurkar.github.io/SQuAD-explorer/

 

The Stanford Question Answering Dataset

What is SQuAD? Stanford Question Answering Dataset (SQuAD) is a reading comprehension dataset, consisting of questions posed by crowdworkers on a set of Wikipedia articles, where the answer to every question is a segment of text, or span, from the correspo

rajpurkar.github.io

- ์˜์–ด ๋จธ์‹ ๋Ÿฌ๋‹ Reading Comprehension ๋ฐ์ดํ„ฐ์…‹ 

- ๋ฒ„์ „: v1.1, v2.0

Stanford Question Answering Dataset (SQuAD)์˜ ์•ฝ์ž๋‹ค. ์šฐ๋ฆฌ๋Š” QG ํ”„๋กœ์ ํŠธ์— ์‚ฌ์šฉํ–ˆ์ง€๋งŒ, ์›๋ž˜๋Š” QA๋ฅผ ์œ„ํ•œ ๋ฐ์ดํ„ฐ์…‹์ด๋‹ค.

๋ฒ„์ „ v1.1์˜ ๊ฒฝ์šฐ์—๋Š” 500+๊ฐœ์˜ ์•„ํ‹ฐํด๋กœ ๋งŒ๋“ค์–ด์ง„ 100,000+๊ฐœ์˜ QA ์Œ์ด ์กด์žฌํ•œ๋‹ค.

์‚ฌ์ดํŠธ์— ๋“ค์–ด๊ฐ€์„œ ํ™•์ธํ•ด๋ณด๋ฉด, ์˜ˆ์‹œ ์ง€๋ฌธ๊ณผ ground truth ๋ฐ์ดํ„ฐ, ๊ทธ๋ฆฌ๊ณ  ์˜ˆ์ธกํ•œ ๋‹ต ์ผ๋ถ€๋ฅผ ํ™•์ธํ•ด๋ณผ ์ˆ˜ ์žˆ๋‹ค.

์•„๋ฌด๋ž˜๋„ ๋Œ€ํšŒ ํ˜•์‹์ด๋‹ค ๋ณด๋‹ˆ๊นŒ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๋“ค์ด ์–ผ๋งˆ๋‚˜ ๋‹ต๋ณ€์„ ์ž˜ ์ฐพ์•˜๋Š”์ง€ (๋†’์€ ์ ์ˆ˜๋ฅผ ์–ป์—ˆ๋Š”์ง€) ์Šค์ฝ”์–ด๋ณด๋“œ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

v1.1์—๋Š” ๋‹ต๋ณ€ํ•  ์ˆ˜ ์žˆ๋Š” ์งˆ๋ฌธ ๋ฐ์ดํ„ฐ๋งŒ ํฌํ•จ๋˜์–ด์žˆ๋‹ค๊ณ  ํ•œ๋‹ค๋ฉด, v2.0์—๋Š” ์ผ๋ถ€๋Ÿฌ ๋‹ต์„ ์ฐพ์„ ์ˆ˜ ์—†๋Š” ๋ฌธ์ œ๊นŒ์ง€ ํฌํ•จ์ด ๋˜์–ด์žˆ๋‹ค. ์ด๋Ÿด ๊ฒฝ์šฐ์— ๋ชจ๋ธ์€ ๋‹ต์„ ์ฐพ์„ ์ˆ˜ ์—†๋Š” ๋ฌธ์ œ์ž„์„ ์ธ์‹ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค๊ณ  ํ•œ๋‹ค.

QG ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ์ง€๋ฌธ๊ณผ ์งˆ๋ฌธ๋งŒ ์‚ฌ์šฉํ•˜๋ฉด ๋˜๋‹ˆ๊นŒ ํฌ๊ฒŒ ์ƒ๊ด€์€ ์—†๋‹ค.

 

2. KorQuAD

https://korquad.github.io/

 

KorQuAD

What is KorQuAD 2.0? KorQuAD 2.0์€ KorQuAD 1.0์—์„œ ์งˆ๋ฌธ๋‹ต๋ณ€ 20,000+ ์Œ์„ ํฌํ•จํ•˜์—ฌ ์ด 100,000+ ์Œ์œผ๋กœ ๊ตฌ์„ฑ๋œ ํ•œ๊ตญ์–ด Machine Reading Comprehension ๋ฐ์ดํ„ฐ์…‹ ์ž…๋‹ˆ๋‹ค. KorQuAD 1.0๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ 1~2 ๋ฌธ๋‹จ์ด ์•„๋‹Œ Wikipedia artic

korquad.github.io

- ํ•œ๊ตญ์–ด ๋จธ์‹ ๋Ÿฌ๋‹ Reading Comprehension ๋ฐ์ดํ„ฐ์…‹

- ๋ฒ„์ „: v1.0, v2.0

SQuAD์™€ ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ ๋ฐ์ดํ„ฐ์…‹์ด๋‹ค. ๋Œ€์‹  ํ•œ๊ตญ์–ด๋กœ ๋˜์–ด์žˆ๋‹ค๋Š” ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์œ„ํ‚คํ”ผ๋””์•„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ œ์ž‘๋˜์—ˆ๋‹ค๊ณ  ํ•œ๋‹ค. SQuAD v2.0์€ v1.0๊ณผ ๋‹ค๋ฅด๊ฒŒ 1~2๋ฌธ๋‹จ์ด ์•„๋‹Œ ์œ„ํ‚คํ”ผ๋””์•„ ์ „์ฒด์—์„œ ๋‹ต์„ ์ฐพ๋Š”๋‹ค๋Š” ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.

 

SQuAD์™€ KorQuAD๋Š” ๋™์ผํ•œ ์–ด๋…ธํ…Œ์ด์…˜ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง„ ๋ฐ์ดํ„ฐ์…‹์ด๋ฏ€๋กœ, ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•  ๋•Œ ์›ํ•˜๋Š” ์–ธ์–ด๊ฐ€ ์˜์–ด์ธ์ง€ ํ•œ๊ตญ์–ด์ธ์ง€์— ๋”ฐ๋ผ์„œ ์ ์ ˆํ•˜๊ฒŒ ์„ ํƒํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉด ๋œ๋‹ค.

'CS study/๋จธ์‹ ๋Ÿฌ๋‹' Related Articles +

๋‹ค์ด๋ธŒ ๊ฐ€์„ ๊ธฐ์ˆ˜ 2์ฃผ์ฐจ ๊ณผ์ œ - Audio Classification Model (์˜ค๋””์˜ค ๋ถ„๋ฅ˜ ๋ชจ๋ธ) ๋งŒ๋“ค๊ธฐ ๊ณผ์ œ ํ•˜๋Š” ๊ณผ์ •

๊ฐ„๋žตํ•˜๊ฒŒ ์ •๋ฆฌํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค.

 

์šฐ์„ , ๋‚˜๋Š” ๋”ฅ๋Ÿฌ๋‹์„ ๊ทธ๋ ‡๊ฒŒ ์ž˜ ์•„๋Š” ํŽธ์€ ์•„๋‹ˆ๋ผ์„œ ๊ฐ€์žฅ ์‰ฌ์šด ๋ฐฉ๋ฒ•์œผ๋กœ ๊ณผ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ๋กœ ํ•˜์˜€๊ณ 

๊ทธ ๊ณผ์ •์—์„œ ์ฑ„ํƒ๋œ ๊ฒƒ์ด ๋ฐ”๋กœ CNN ๋ชจ๋ธ์ด๋‹ค.

Tensorflow๋ฅผ ์ด์šฉํ•˜์˜€๋‹ค. (ํ•™๊ต์—์„œ ์‹œํ‚ค๋Š” ๊ณผ์ œ๋Š” ํŒŒ์ดํ† ์น˜๋ฅผ ์“ฐ๊ธฐ ๋•Œ๋ฌธ์—,, ํ…์„œํ”Œ๋กœ์šฐ๋Š” ์ฒ˜์Œ์ด๋‹ค)

 

1) ์˜ค๋””์˜ค ๋ฐ์ดํ„ฐ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

์‚ฌ์šฉํ•œ ๋ฐ์ดํ„ฐ ์„ค๋ช…์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

14๊ฐœ์˜ ์•…๊ธฐ๋“ค๋ณ„ ์†Œ๋ฆฌ๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๋ฐ์ดํ„ฐ์…‹์ž…๋‹ˆ๋‹ค. ์˜ค๋””์˜ค๋ฅผ MFCC ๊ณ„์ˆ˜์˜ ๊ฐœ์ˆ˜๋ฅผ 13๊ฐœ๋กœ ์„ค์ •ํ•œ MFCC ํ˜•ํƒœ๋กœ ์ „์ฒ˜๋ฆฌํ–ˆ์œผ๋ฉฐ ์ „์ฒ˜๋ฆฌ ๋ฐฉ์‹์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ „์ฒด ๋ฐ์ดํ„ฐ์…‹์—์„œ ๋ฌด์ž‘์œ„๋กœ ํ•˜๋‚˜์˜ ์•…๊ธฐ๋ฅผ ๊ณ ๋ฅด๊ณ , ํ•ด๋‹น ์•…๊ธฐ ๋ ˆ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ ์ค‘ ๋žœ๋คํ•˜๊ฒŒ ํŒŒ์ผ์„ ๊ณจ๋ผ ๊ทธ ์Œ์„ฑ ํŒŒ์ผ ๋‚ด์—์„œ ๊ณต๋ฐฑ ๋ถ€๋ถ„์„ ์ œ์™ธํ•˜๊ณ  0.5์ดˆ๋ฅผ ์ƒ˜ํ”Œ๋งํ•˜๋Š” ๊ณผ์ •์„ ์ „์ฒด ๋ฐ์ดํ„ฐ์…‹์— ๋Œ€ํ•ด 56789๋ฒˆ ๋ฐ˜๋ณตํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ์˜ ํ˜•ํƒœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋Š” ์–ด๋–ค ์ •๊ทœํ™”๋‚˜ ํ‘œ์ค€ํ™”๋„ ๊ฑฐ์น˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ์˜ ํ˜•ํƒœ๋Š” ๋„˜ํŒŒ์ด๋กœ ์ €์žฅ๋˜์–ด ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋„˜ํŒŒ์ด๋ฅผ ์ด์šฉํ•ด ๋ถˆ๋Ÿฌ์™€์ค€๋‹ค.

 

import numpy as np
Xdata = np.load("Xdata.npy")
ydata = np.load("ydata.npy")

 

๊ทธ ํ›„, ํ•„์š”ํ•œ ๋ชจ๋“ˆ๋“ค์„ ์ž„ํฌํŠธ ํ•ด์˜จ๋‹ค.

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
from sklearn.model_selection import train_test_split

 

2) ์ •๊ทœํ™” ์ง„ํ–‰ ๋ฐ ๋ฐ์ดํ„ฐ ๋ถ„ํ• 

๋„˜ํŒŒ์ด ๋ฐฐ์—ด ํ˜•ํƒœ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ „์ฒ˜๋ฆฌ๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ •๊ทœํ™”๋ฅผ ์ง„ํ–‰ํ•ด ๋ณด์•˜๋‹ค.

Xdata_normalized = (Xdata - np.mean(Xdata)) / np.std(Xdata)

 

๋˜ํ•œ ํ•™์Šต๊ณผ ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ์…‹ ๋ถ„๋ฆฌ๋ฅผ ์œ„ํ•ด train_test_split์„ ์ด์šฉํ•˜์˜€๋‹ค.

X_train, X_test, y_train, y_test = train_test_split(Xdata_normalized, ydata, test_size = 0.2, random_state = 42)

 

3) ๋ชจ๋ธ ์ƒ์„ฑ ๋ฐ ํ•™์Šต 

model = tf.keras.Sequential([
    tf.keras.layers.Conv1D(64, kernel_size=3, activation='relu', input_shape=X_train.shape[1:]),
    tf.keras.layers.MaxPooling1D(pool_size=2),
    tf.keras.layers.Conv1D(128, kernel_size=3, activation='relu'),
    tf.keras.layers.MaxPooling1D(pool_size=2),
    tf.keras.layers.Flatten(),
    tf.keras.layers.Dense(512, activation='relu'),
    tf.keras.layers.Dropout(0.2),
    tf.keras.layers.Dense(256, activation='relu'),
    tf.keras.layers.Dropout(0.5),
    tf.keras.layers.Dense(y_train.shape[1], activation='softmax')
])

์ผ€๋ผ์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ CNN ์ธต์„ ์Œ“์•„์ค€๋‹ค. ๊ณผ์ ํ•ฉ ๋ฐฉ์ง€์šฉ์œผ๋กœ Dropout์„ ์ด์šฉํ•œ๋‹ค.

์ธต์„ ์Œ“๋Š” ๊ธฐ์ค€์ด๋ผ ํ•œ๋‹ค๋ฉด ์‚ฌ์‹ค ์ž˜ ๋ชจ๋ฅด๊ฒ ๊ณ  ์ด๊ฒƒ์ €๊ฒƒ ์กฐํ•ฉํ•ด๋ณด์•˜๋‹ค.

# ๋ชจ๋ธ ์ปดํŒŒ์ผ
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])

# ๋ชจ๋ธ ํ•™์Šต
history = model.fit(X_train, y_train, epochs=50, batch_size=64)

๋ชจ๋ธ ํ•™์Šต์„ ์œ„์™€ ๊ฐ™์ด ์ง„ํ–‰ํ•œ๋‹ค. ์—ํฌํฌ ์ˆ˜๋Š” ์ฒ˜์Œ์— 20์œผ๋กœ ํ–ˆ๋‹ค๊ฐ€ ์ˆ˜๋ ด์ด ์•ˆ๋๊ธธ๋ž˜ ๋” ํฌ๊ฒŒ ํ•ด์คฌ๋‹ค.

 

4) ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ

Epoch 50/50 688/688 [==============================] - 7s 11ms/step - loss: 0.2341 - accuracy: 0.9247

ํ•™์Šต ๊ฒฐ๊ณผ ์ •ํ™•๋„๊ฐ€ 0.9247์ด์—ˆ๋‹ค.

๋” ํ•™์Šต์‹œํ‚ค๋ฉด ์™„์ „ ์ˆ˜๋ ดํ•  ๊ฒƒ ๊ฐ™์ง€๋งŒ ์‹œ๊ฐ„๊ด€๊ณ„์ƒ..

 

Test ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ ๋‹ค์‹œ ํ‰๊ฐ€ํ–ˆ์„ ๋•Œ ๊ฒฐ๊ณผ๋Š” accuracy: 0.8739 ์ด์—ˆ๋‹ค. ์•ฝ๊ฐ„ ๊ณผ์ ํ•ฉ์ด ๋œ ๊ฑธ๊นŒ?.? ์‹ถ๊ธฐ๋„...

 

๋‹ค๋ฅธ ํŒ€์›์€ LSTM์œผ๋กœ ํ•˜๊ณ  ๋‚˜๋„ ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋Š” LSTM์ด ๋” ์„ฑ๋Šฅ์ด ์ข‹๋‹ค๊ณ  ์•Œ๊ณ  ์žˆ๋Š”๋ฐ ์ด๋ฏธ CNN์œผ๋กœ ๋„ˆ๋ฌด ์ข‹์€ ์„ฑ๋Šฅ์„ ๋‚ด์„œ ๋” ์ข‹์•„์งˆ ์ˆ˜ ์žˆ์„์ง€ ๊ถ๊ธˆํ•ด์กŒ๋‹ค!

 

++ ๋”ฅ๋Ÿฌ๋‹ ๊ณต๋ถ€ ์ข€ ํ•ด์•ผ๊ฒ ..๋‹ค

'CS study/๊ธฐํƒ€' Related Articles +

์ด์ง„ ๋ถ„๋ฅ˜๊ธฐ์˜ ์„ฑ๋Šฅ์„ ๊ณ„์‚ฐํ•  ๋•Œ ์šฐ๋ฆฌ๋Š” confusion matrix (ํ˜ผ๋™ํ–‰๋ ฌ) ์„ ๊ทธ๋ ค True positive, True negative, False positive, False negative๋ฅผ ํ™•์ธํ•˜๊ณ  ์ด๋ฅผ ํ†ตํ•ด precision, recall, accuracy๋“ฑ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ๋งŒ์•ฝ ๋ถ„๋ฅ˜ํ•ด์•ผ ํ•  ํด๋ž˜์Šค๊ฐ€ 3๊ฐœ ์ด์ƒ์ด๋ผ๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ?

๋‘ ๊ฐ€์ง€ ๋ฐฉ์‹์ด ์žˆ๋Š”๋ฐ ๋ฐ”๋กœ Microaveraging ๊ณผ Macroaveraging์ด๋‹ค. ๋‘˜์˜ ์ฐจ์ด๋ฅผ ํ™•์ธํ•ด๋ณด์ž. 

 

Macroaveraging

๊ตฌํ•˜๊ณ  ์‹ถ์€ ๊ฐ๊ฐ์˜ ํด๋ž˜์Šค์— ๋Œ€ํ•ด์„œ ์„ฑ๋Šฅ์„ ๊ณ„์‚ฐํ•œ๋‹ค. ๊ทธ ์ดํ›„ ๊ฐ ํด๋ž˜์Šค์— ๋Œ€ํ•œ ํ‰๊ท ๊ฐ’์ด ์ตœ์ข… ์„ฑ๋Šฅ์ด ๋œ๋‹ค.

๋งŒ์•ฝ ํด๋ž˜์Šค๊ฐ€ 4๊ฐœ๋ผ๋ฉด, ์ž‘์€ confusion matrix 4๊ฐœ๋ฅผ ๊ทธ๋ฆฌ๊ณ , ์ด 4๊ฐœ์— ๋Œ€ํ•œ ํ‰๊ท ๊ฐ’์œผ๋กœ ์„ฑ๋Šฅ์„ ๊ตฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

 

Microaveraging

๋ชจ๋“  ํด๋ž˜์Šค์˜ ๊ฒฐ๊ณผ๋ฅผ ํ•˜๋‚˜์˜ confusion matrix๋กœ ๋‚˜ํƒ€๋‚ด์–ด ๊ฐ ์„ฑ๋Šฅ์„ ๊ตฌํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ์‹์ด๋‹ค.

 

Microaveraging ๋ฐฉ์‹์œผ๋กœ ๊ณ„์‚ฐ๋œ score๋Š” ํ”ํ•˜๊ฒŒ ๋‚˜ํƒ€๋‚˜๋Š” ํด๋ž˜์Šค์— ๋Œ€ํ•œ ์ ์ˆ˜๋กœ ๊ฒฐ์ •๋œ๋‹ค.

'CS study/๊ธฐํƒ€' Related Articles +
1 2 3