Skip to content

Latest commit

ย 

History

112 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

stock_data

stock data handling and utilization


/project/guri/forposter/Result1.์ •ํ™•๋„.ipynb ์ฐธ๊ณ 


ํ•œ ์ค„๋กœ ์กฐ๊ฑด์— ๋งž๋Š” df ์—ด ์ƒ์„ฑํ•˜๊ธฐ.
** ์กฐ๊ฑด์— ๋”ฐ๋ฅธ df ์—ด ๋ฐ”๊พธ๊ธฐ ์•„๋‹˜์— ์ฃผ์˜!!

<์˜ˆ์‹œ>

df['new_col'] = np.where(df['base_col'] == 1, 'new', 'old')

์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋ฉด 'new' ์ž‘์„ฑ, ๋งŒ์กฑํ•˜์ง€ ์•Š์œผ๋ฉด 'old' ์ž‘์„ฑ.

np.where(condition, x, y); ์กฐ๊ฑด ์ถฉ์กฑ์‹œ x, ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด y ๋ฐ˜ํ™˜.

data split - random ,,, shuffle

๋น„์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋Š” shuffle ํ•ด๋„ random์ด๋ž‘ ๊ฐ™์Œ.
๋‹จ, ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋Š” shuffle๊ณผ random์ด ๋‹ค๋ฅธ ์˜๋ฏธ์ด๋‹ˆ ์ฃผ์˜.
(์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋Š” ์ˆœ์„œ๊ฐ€ ์ค‘์š”ํ•˜๋ฏ€๋กœ)

ํšŒ๊ท€ cross_val_score()์˜ hyper param

cross_val_score()์˜ ๊ณต์‹ doc

๊ฒ€์ƒ‰์–ด : [pipeline.fit.transform ํŒŒ์ด์ฌ]
transpose()๊ฐ€ ๋ญ”์ง€ ๋ด์•ผํ•จ.1 - ์ฝ์Œ
-- fit & transform ๊ณผ fit_transform์˜ ์ฐจ์ด

Q. [fit & transform ๊ณผ fit_transform์˜ ์ฐจ์ด?]
A. ์‚ฌ์ดํ‚ท๋Ÿฐ์€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€ํ™˜ํ•˜๋Š” ๋Œ€๋ถ€๋ถ„์˜ ๋กœ์ง์—์„œ fit()๊ณผ transform()์„ ์Œ์œผ๋กœ ์‚ฌ์šฉ

 ํ•™์Šต๋ฐ์ดํ„ฐ ์„ธํŠธ์—์„œ ๋ณ€ํ™˜์„ ์œ„ํ•œ ๊ธฐ๋ฐ˜ ์„ค์ •
 (์˜ˆ๋ฅผ ๋“ค์–ด ํ•™์Šต ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ์ตœ๋Œ€๊ฐ’/์ตœ์†Œ๊ฐ’๋“ฑ)
 ์„ ๋จผ์ € fit()์„ ํ†ตํ•ด์„œ ์„ค์ •ํ•œ ๋’ค์—

 ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•™์Šต ๋ฐ์ดํ„ฐ์˜ transform()์„ ์ˆ˜ํ–‰ํ•˜๋˜
ํ•™์Šต ๋ฐ์ดํ„ฐ์—์„œ ์„ค์ •๋œ ๋ณ€ํ™˜์„ ์œ„ํ•œ ๊ธฐ๋ฐ˜ ์„ค์ •์„ ๊ทธ๋Œ€๋กœ ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ์—๋„ ์ ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ์ž…๋‹ˆ๋‹ค.


์ฆ‰ ํ•™์Šต ๋ฐ์ดํ„ฐ ์„ธํŠธ๋กœ fit() ๋œ Scaler๋ฅผ ์ด์šฉํ•˜์—ฌ ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€ํ™˜ํ•  ๊ฒฝ์šฐ์—๋Š”
ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ์—์„œ ๋‹ค์‹œ fit()ํ•˜์ง€ ์•Š๊ณ 
๋ฐ˜๋“œ์‹œ ๊ทธ๋Œ€๋กœ ์ด Scaler๋ฅผ ์ด์šฉํ•˜์—ฌ transform()์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

transpose()๊ฐ€ ๋ญ”์ง€ ๋ด์•ผํ•จ.2 - ์•„์ง ์•ˆ ์ฝ์Œ.


xticks
python plt arrow
annotate()


reg ํ‰๊ฐ€์ง€ํ‘œ๋กœ์จ์˜ r^2


220315

dummy regressor ์ƒˆ๋กœ์šด ๋ฐฉ๋ฒ•; ๊ฒ€์ƒ‰์–ด dummyregressor ์‚ฌ์šฉ๋ฐฉ๋ฒ•

  • classification ๊ฒฐ๊ณผ ๋‹ค๋ฅธ ์ด์œ ๋Š” y ๋‚˜๋ˆ„๋Š” ๊ธฐ์ค€๊ฐ’์ด ๋‹ฌ๋ž๊ณ , ์ˆ˜์—ฐ์ด cv๋ฅผ ์•ˆํ–ˆ๊ธฐ ๋•Œ๋ฌธ.
  • reg dummy ๊ฒฐ๊ณผ ๋‹ฌ๋ž๋˜ ์ด์œ ๋Š” scoring ๋ฐฉ๋ฒ•์ด ๋‹ฌ๋ž๊ธฐ ๋•Œ๋ฌธ. + ๋‚˜๋Š” cv๋ฅผ ์•ˆํ•จ.

220316

[cross_val_score๋Š” ๊ทธ๋ƒฅ x,y๋งŒ ๋‚˜๋ˆ ๋†“์€ ๋ฐ์ดํ„ฐ ์ง‘์–ด๋„ฃ์œผ๋ฉด ์•Œ์•„์„œ ๋น„์œจ ์งœ์„œ ๋ฐ์ดํ„ฐ ๋ถ„ํ• ํ•ด์„œ cv ํ•ด์ฃผ๋Š”๊ฐ€์— ๋Œ€ํ•˜์—ฌ... ==> ์ด๋ฏธ ์ „์—๋„ ๊ฐ™์€ ์˜๋ฌธ์„ ๊ฐ€์กŒ์—ˆ์œผ๋ฉฐ, ๋‹ต๋„ ์ ์–ด๋‘ . cv default == 5 (5ํšŒ cross checking)]

์•„ ๋ชจ๋ธ๋ง์ด ์•„๋‹ˆ๋ผ cv๋ฉด ์ „์ฒด ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์–ด์•ผํ•˜๋Š”๊ฑฐ๊ตฌ๋‚˜.

cross_val_score()์˜ default๋Š” r^2(๊ฒฐ์ •๊ณ„์ˆ˜)

๊ต์ฐจ ๊ฒ€์ฆ์˜ ์ •ํ™•๋„๋ฅผ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋‚˜ํƒ€๋‚ผ ๋•Œ๋Š” ํ‰๊ท ์œผ๋กœ...

dummy์— cv๊ฐ€ ํ•„์š”ํ•œ๊ฐ€์— ๋Œ€ํ•˜์—ฌ...


  • ์žŠ์ง€ ๋ง์•„ํ– ํ•  ์‚ฌํ•ญ: ๋‹ค ํ•จ์ˆ˜๋กœ ๋งŒ๋“ค์–ด์„œ ์‚ฌ์šฉ์ค‘์ด๊ธฐ ๋•Œ๋ฌธ์— ์ž…๋ ฅ์ด ๋งค๊ฐœ๋ณ€์ˆ˜์ž„.
    ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ๊ธฐ์กด์— ๋งŒ๋“ค์–ด๋‘” ๋ณ€์ˆ˜๋ž‘ ์ด๋ฆ„์ด ๊ฐ™์•„์„œ ํ—ท๊ฐˆ๋ ธ์Œ.



[๋ชจ๋ธ๋ง ๋‹จ๊ณ„]

  1. data split (1์ฐจ: x๋Œ€ y, 2์ฐจ: xy๊ฐ๊ฐ์„ train๋Œ€ test๋กœ)

  2. model fitting with train data

  3. predict with test data

  4. scoring with test data, predict data
    (์–ผ๋งˆ๋‚˜ ๋งž์•˜๋Š”์ง€.)

๊ทผ๋ฐ ์™œ ์šฐ๋ฆฌ๊ฐ€ ์ผ๋˜ reg๋Š” fitting์„ ํ•˜์ง€ ์•Š๋Š” ๊ฐ€์— ๋Œ€ํ•˜์—ฌ... ๋‚ด๊ฐ€ ์˜ค๋กœ์ง€ cvํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ํฌ์ŠคํŒ…์„ ์ฐพ์€๊ฑด๊ฐ€...
ํšŒ๊ท€๋ชจ๋ธ๋ง ํฌ์ŠคํŒ…์ด์—ˆ์Œ..
๊ทธ๋ƒฅ ๊ทธ ๋ถ„์ด fitting์„ ๋นผ๋จน์œผ์‹  ๊ฑฐ์ธ๋“ฏ.
error message: The least populated class in y has only 1 member, which is too few. The minimum number of groups for any class cannot be less than 2.

ํšŒ๊ท€๋Š” ๊ณ„์ธต์  split์ด ์•ˆ๋จ. ์ฃผ์˜!!!!!
sss (Stratified Shuffle Split) ์“ฐ๋ฉด ์•ˆ๋˜๊ณ , ss (Shuffle Split) ์จ์•ผํ•จ.

์œ„ ์—๋Ÿฌ๋ฉ”์„ธ์ง€ ์ž˜๋ชป๋œ ํ•ด์„
The least populated class in y has only 1 member, which is too few. The minimum number of groups for any class cannot be less than 2.
==> ์ฆ‰, y shape์ด (1,)์œผ๋กœ ๋ผ์žˆ์„ ๊ฒƒ์ด๋ฏ€๋กœ reshapeํ•˜๋ž€ ์†Œ๋ฆฌ์ž„. (______,1)์ด ๋˜๊ฒŒ๋”.
y.reshape(-1,1)

[๊ธฐํƒ€ ์˜ค๋Š˜ ์ฐธ๊ณ ํ•œ ๋ธ”๋กœ๊ทธ๋“ค]
๊ธฐํƒ€ 1. cross_val_score() ์™€ cross_validate() - ์•„๋งˆ cv ํ•  ๋•Œ fitting์„ ์•Œ์•„์„œ ํ•ด์ฃผ๋Š”๊ฑด์ง€ ํ•ด์„œ ์ฐพ์•„๋ณธ ๋“ฏ.
๊ธฐํƒ€ 2. ๋ฌธ์ œ ํ’€์ด๋ฅผ ํ†ตํ•œ reg ์ดํ•ด - ์•„๋งˆ reg๋Š” ์˜ˆ์ธกํ•  ๋•Œ fitting์„ ์•ˆํ•˜๋Š”๊ฑด๊ฐ€ ํ•ด์„œ ์ฐพ์•„๋ณธ ๊ฒƒ์ผ๋“ฏ.
๊ธฐํƒ€ 3. ๋จธ์‹ ๋Ÿฌ๋‹ ํ•™์Šต์‹œ ๊ณ ๋ คํ•ด์•ผ ํ•  ๊ฒƒ: Test data์™€ CV data - ์•„๋งˆ ์ฐธ๊ณ ํ•œ ์˜ˆ์‹œ ๋ธ”๋กœ๊ทธ์—์„œ cv ํ•  ๋•Œ fitting ์•ˆํ•œ ๊ฒƒ ๋•Œ๋ฌธ์— cvํ•  ๋•Œ๋Š” fitting ์•ˆํ•˜๋Š”๊ฑด์ง€, ํ˜น์€ ์•Œ์•„์„œ ํ•˜๋Š”๊ฑด์ง€ ํ•ด์„œ ์ฐพ์•„๋ณธ ๋“ฏ.
๊ธฐํƒ€ 4. ์„ ํ˜•ํšŒ๊ท€ (linear reg) - ํšŒ๊ท€๋Š” fitting์„ ์•ˆํ•˜๋Š”๊ฑด์ง€ ํ•ด์„œ ์ฐพ์•„๋ด„.
๊ธฐํƒ€ 5. ์„ ํ˜•ํšŒ๊ท€ ๋ชจ๋ธ - def์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜ ์ƒ์„ฑ ์ „์— ๋งŒ๋“ค์—ˆ๋˜ ๋ณ€์ˆ˜๊ฐ€ ๊ฐ™์•„์„œ ํšŒ๊ท€ pred๋Š” df ์ „์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑด์ง€ ํ—ท๊ฐˆ๋ ธ์–ด์„œ ์ฐพ์•„๋ด„.
๊ธฐํƒ€ 6. ํšŒ๊ท€๋กœ ์˜ˆ์ธกํ•˜๊ธฐ - ํšŒ๊ท€๋Š” ์˜ˆ์ธก์ „์— train์œผ๋กœ fitting ์•ˆํ•˜๋‚˜ ํ•ด์„œ ์ฐพ์•„๋ด„.
==> ๋…ผ์™ธ๋กœ ์—ฌ๊ธฐ ๋ธ”๋กœ๊ทธ ๊ธฐ๋Šฅ์ด ์‹ ๊ธฐํ•ด์„œ ๋ง˜์— ๋“ค์—ˆ์Œ.

๊ธฐํƒ€ 7. ํŒŒ์ด์ฌ ํšŒ๊ท€๋ถ„์„ ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ• ์ •๋ฆฌ scikit-learn, statsmodels - ํšŒ๊ท€๋Š” ์˜ˆ์ธก ์ „์— train์œผ๋กœ fitting ์•ˆํ•˜๋‚˜ ํ•ด์„œ ...
๊ธฐํƒ€ 8. ํŒŒ์ด์ฌ์œผ๋กœ ์„ ํ˜•ํšŒ๊ท€ ๋ถ„์„ํ•˜๊ธฐ ์˜ˆ์ œ - ํšŒ๊ท€๋Š” ์˜ˆ์ธก ์ „์— train์œผ๋กœ fitting ์•ˆํ•˜๋‚˜ ํ•ด์„œ ...
๊ธฐํƒ€ 9. ๋ชจ๋ธ ํ‰๊ฐ€์™€ ์„ฑ๋Šฅํ–ฅ์ƒ - ๊ต์ฐจ๊ฒ€์ฆ - ๋˜ cross_val_score ๊ด€๋ จ...


  • ์˜ค๋Š˜์˜ ์ด์Šˆ
    cross_val_score
    ํšŒ๊ท€๋Š” train data๋กœ fitting์„ ํ•ด์ฃผ์ง€ ์•Š๋Š”๊ฐ€์— ๋Œ€ํ•˜์—ฌ...

  • ๊ฒฐ๋ก :
    ํšŒ๊ท€๋„ fitting ํ•ด์ค˜์•ผ ํ•˜๋Š”๊ฑด๋ฐ ์ฐธ๊ณ ํ–ˆ๋˜ ๊ทธ ๋ธ”๋กœ๊ทธ๊ฐ€ fitting ๊ณผ์ •์„ ์•ˆ๋„ฃ์€๊ฒƒ ๊ฐ™์•˜์Œ.
    cross_val_score๋Š” ๊ฒฐ๊ตญ ๋‹จ์ˆœํžˆ score ๋‚ด๋Š” ๊ฑฐ๋ผ์„œ fitting์„ ํ•ด์ฃผ์ง€๋Š” ์•Š๋Š”๋‹ค๊ณ  ํŒ๋‹จ. ์•„์ง ํ™•์‹คํ•˜์ง€ ์•Š์Œ.

  • ์˜ค๋Š˜ ์•Œ๊ฒŒ๋œ ๊ฒƒ:
    list์—๋Š” meanํ•จ์ˆ˜๊ฐ€ ๋”ฐ๋กœ ๋‚ด์žฅ๋ผ์žˆ์ง€ ์•Š๋‹ค.

  • ๊ตฌ๋ฌธ ํ†ต์งธ๋กœ ์•Œ์•„๋‘๋ฉด ์ข‹์„ lambdaํ•จ์ˆ˜ ์‚ฌ์šฉ ์˜ˆ์‹œ, ๊ทธ๋ฆฌ๊ณ  ๋‚ด์žฅํ•จ์ˆ˜ sorted():

sorted(dic.items(), key = lambda t : t[1])
# dictionary์˜ value์— ๋Œ€ํ•ด ์ž‘์€ ์ˆœ์œผ๋กœ ์ค„ ์„ธ์›Œ์ง.

220317

  • issue
  1. ๋งค๋ฒˆ split ๊ฐ’์ด ๊ฐ™์€์ง€ ์—ฌ๋ถ€ ํ™•์ธ ํ›„ ๋‹ค๋ฅด๋‹ค๋ฉด
    shuffle split์„ ํ•จ์ˆ˜ ๋ฐ–์—์„œ ์‹คํ–‰ํ•˜๊ณ  cv ํ•  ๊ฒƒ.

๐Ÿ‘‰ ๊ทผ๋ฐ random_state ์ง€์ •ํ•ด์ค˜์„œ ๊ฐ™์•˜์Œ. ๋”ฐ๋ผ์„œ ์ƒˆ๋กœ ๋ญ ํ•  ํ•„์š” ์—†์Œ.

  • HW
  1. scaling์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•ด์˜ฌ ๊ฒƒ.
    ๊ต์ˆ˜๋‹˜๊ป˜์„œ ๋ณด๋‚ด์ฃผ์‹  ์ฐธ๊ณ  ํŽ˜์ด์ง€, ์šฐ๋ฆฌ๊ฐ€ ์ง€๊ธˆ ์“ฐ๋Š” ๋ฐ์ดํ„ฐ์ž„.
    column ๋ณ„ minmax ํ•ด์ค˜์•ผํ•จ.

  2. ์œ„ ๋ธ”๋กœ๊ทธ์—์„œ ๋งํ•˜๋Š” 3๋ฒˆ minmax๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด
    ํ˜„์žฌ ์“ฐ๊ณ ์žˆ๋Š” cv ๋ฐฉ์‹์„ ๋ฐ”๊ฟ€ ํ•„์š”๊ฐ€ ์žˆ์–ด๋ณด์ž„. ๋ฐ–์—์„œ train test ๋‹ค ๋‚˜๋ˆ„๊ณ , idx๋กœ ํ•ด์•ผํ•  ๊ฒƒ ๊ฐ™์Œ. (??????์—ฅ,,, x,y๋งŒ ๋‚˜๋ˆ ์•ผ idx๋กœ cv ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ž„.)
    ==> ํ .... cv ๋Œ๋ฆฌ๋ ค๋ฉด for๋ฌธ ์•ˆ์—์„œ train test ๋‚˜๋ˆ„๋Š”๊ฒŒ ๋งž์•„๋ณด์ž„.


220320





import csv
# ์ €์žฅํ•  ํŒŒ์ผ๋ช…, ์ธ์ฝ”๋”ฉ ํƒ€์ž… ์ž…๋ ฅ
f = open('new file.csv', 'w', encoding = 'utf-8-sig')
w = csv.writer(f)
w.writerow(list)
w.writerow(list)
w.writerow(list) # ํ•˜๋‹ค๋ณด๋ฉด ์ž‘์„ฑ๋จ.

f.close()

  • for๋ฌธ์˜ loop name์„ ๊ฐ™๊ฒŒํ•ด์„œ for loop์ด ๊ณ„์† ๋„๋Š” ๊ฒƒ์ธ๊ฐ€..?

220330

FinanceDataReader manual

lambda์— if๋ฌธ 1, lambda๋Š” ์ ์šฉ์‹œํ‚ฌ ํ•จ์ˆ˜ ์งœ๋Š” ๊ฒƒ,,, map ๊ฒฐ๊ณผ๋Š” list๋กœ ๋ณผ ์ˆ˜ ์žˆ์Œ.

lambda์— if๋ฌธ 2

# lambda ์˜ˆ์‹œ
list(map(lambda x:x**2, range(5)))

pandas ๋ถˆ๋Ÿฌ์˜จ ๋ฐ์ดํ„ฐ ์‚ดํŽด๋ณด๊ธฐ

df.head()
df.shape()
df.info()
df.describe()
df.value_counts()
df.unique()
df.nunique()

(NaT) null ๊ฐ’ ํ™•์ธํ•˜๊ธฐ 1
(NaT) null ๊ฐ’ ํ™•์ธํ•˜๊ธฐ 2
notnull, notempty ์ฐจ์ด

# NaT๋Š” ์–ด๋–ป๊ฒŒ ํŒ๋‹จ..?
# ์ •๋‹ต
pd.isnull(df[col][n])
pd.notnull(df[col][n])
################################### ์ด ์•„๋ž˜ ์ฝ”๋“œ๋“ค๋กœ๋Š” ๊ทธ ์—ด ๋‚ด ์š”์†Œ ํ•œ ๊ฐœ ํŒ๋‹จ์€ ๋ชป ํ•จ.
pd.NA
np.where(df['col1'].isnull())
df['col1'].isna()
df['col1'].notnull()
df['col1'].notna()

220407

๊ณผ์ œ:

  • ์กด์†์ผ 500์ผ ์ด์ƒ.
  • 20์ผ ๊ฐ„ ๊ฑฐ๋ž˜ ์—†๋Š” ์ˆ˜ 5์ผ ์ดํ•˜,
  • Trading_Value 100์–ต ์ด์ƒ,
  • ๋‹น์ผ ๋ณ€๋™ํญ(๊ณ ๊ฐ€/์ €๊ฐ€) > 1.05 ์ธ ์ข…๋ชฉ๊ณผ ๋‚ ์งœ ์„ ๋ณ„.

220409

attention lstm,,,


np.squeeze


220412

  • numpy์˜ unique๋Š” np.unique(ndarray)

220413

  • ๋ฌธ์ž์—ด ํŒ๋‹จ method

str.is~~()๋กœ ์‚ฌ์šฉ ref1_kor
ref2_eng

isdecimal๊ณผ ์ˆซ์ž์ธ์ง€ ํŒ๋ณ„ํ•˜๋Š” ๋‹ค๋ฅธ method์˜ ์ฐจ์ด: ์ง€์ˆ˜ํ‘œํ˜„์„ ๋ฌธ์ž๋กœ ์•ˆ๋ณด๊ณ  ๋ณด๊ณ ...

๊ทธ ์™ธ ๋‹ค์–‘ํ•œ str ํ•จ์ˆ˜

isalpha # ๊ธ€์ž์ธ์ง€
isdigit # ์ˆซ์ž์ธ์ง€
isdecimal # ์ˆซ์ž์ธ์ง€
isnumeric # ์ˆซ์ž์ธ์ง€
isalnum # ์ˆซ์ž ๋˜๋Š” ๊ธ€์ž์ธ์ง€

isspace
isprintable
isidentifier

220428 ~ 220512 ์ˆ˜์—… ์ „ (8w)

  • ์กฐ๊ฑด๋งŒ์กฑcd_dt (by ์ตœ์ข…๋ณ€๋™ํญcd_dt).txt
  • ์กฐ๊ฑด๋งŒ์กฑcd_dt (by ffin).txt

220512 ์ˆ˜์—… ์ค‘ ~ (10w)

์กฐ๊ฑดdf.csv

220516

๋ฐ์ดํ„ฐ ์ฝ๊ณ  ์“ฐ๊ณ  ์ €์žฅํ•˜๊ธฐ .to_feather, .to_pickle, .to_csv ๋น„๊ต

100GB ์ดํ•˜์˜ data์—์„œ๋Š” partition ๋ฐฉ์‹์˜ modin.pandas ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Œ.


## ma_df: ๋ณด์กฐ์ง€ํ‘œ ์ถ”๊ฐ€ํ•œ df
## object๋ณด๋‹ค๋Š” category type์œผ๋กœ ์ €์žฅ, ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์šฉ๋Ÿ‰๋ฉด์—์„œ ๋” ๋‚˜์€ ์„ ํƒ์ผ๊ฒƒ.

!pip install pyarrow # feather๋กœ ์ €์žฅํ•˜๋ ค๋ฉด pyarrow ์„ค์น˜ ๋จผ์ €

# feather์™€ pickle์€ index ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ๋”ฐ๋กœ ์—†์œผ๋ฏ€๋กœ reset_index ๋จผ์ €
ma_df.reset_index(inplace = True)
ma_df.drop('index', axis = 1, inplace = True)





## ์šฉ๋Ÿ‰ ftr < pkl < csv
# feather๋กœ ์ €์žฅ, ํ™•์žฅ์ž .ftr
ma_df.to_feather('๋ณด์กฐ์ง€ํ‘œ์ถ”๊ฐ€_cd_nuniq=2348.ftr')

# ์ฝ๊ธฐ
pd.read_feather("๋ณด์กฐ์ง€ํ‘œ์ถ”๊ฐ€_cd_nuniq=2348.ftr", columns = None, use_threads = True)




# pickle๋กœ ์ €์žฅ, ํ™•์žฅ์ž .pkl
ma_df.to_pickle('๋ณด์กฐ์ง€ํ‘œ์ถ”๊ฐ€_cd_nuniq=2348.pkl')

# ์ฝ๊ธฐ
pd.read_pickle("๋ณด์กฐ์ง€ํ‘œ์ถ”๊ฐ€_cd_nuniq=2348.pkl")

220524

[11w] 4 ์˜†์œผ๋กœ 10์ผ, ์‹œ๊ฐ„๋‹จ์ถ•.ipynb ํŒŒ์ผ๋กœ ์ „์ฒ˜๋ฆฌ ์™„๋ฃŒ, ํŒŒ์ผ๋ช… d9d0.txt
csv๋Š” ๋„์ €ํžˆ ์‹œ๊ฐ„์ด ์˜ค๋ž˜๊ฑธ๋ ค์„œ ํฌ๊ธฐ
** [11w] 3 ํŒŒ์ผ์€ ์•ˆ๋ด๋„ ๋จ, ์˜†์œผ๋กœ 10์ผ ํ•˜๋ ค๋‹ค ์‹œ๊ฐ„ ๋„ˆ๋ฌด ๊ฑธ๋ ค์„œ ๋ฒ„๋ฆผ.

220525

[11w] d9d0.txt to csv, fin_df ์ €์žฅ.ipynb ํŒŒ์ผ๋กœ
d9d0.csv ์ƒ์„ฑ,
col ๊ตฌ์„ฑ ๋ฐ”๊พผ fin_df.csv ์ƒ์„ฑ

[๋จธ์‹ ๋Ÿฌ๋‹] ํ•™์Šต์‹œ๊ฐ„ ๋‹จ์ถ•?
๋ฐ์ดํ„ฐ์–‘์ด ๋„ˆ๋ฌด ๋งŽ์•„์„œ ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด ์˜ค๋ž˜๊ฑธ๋ฆฌ๋Š” ๋ฌธ์ œ...
๊ทธ๋ƒฅ ๋ฐ์ดํ„ฐ ์ฆ๊ฐ•์ด ํ•™์Šต์†๋„ ์ €ํ•˜๋ฅผ ์•ผ๊ธฐํ•œ๋‹ค๋Š” ๊ฒƒ๋งŒ ๋‚˜์™€์žˆ์Œ.
โ—โ—โ—โ—์งฑ ์นœ์ ˆ... 100๋งŒ๊ฐœ ์ •๋„ ๋ฐ์ดํ„ฐ๋กœ ๋จธ์‹ ๋Ÿฌ๋‹ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ ํ•™์Šต ์†๋„ ๋†’์ด๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์งˆ๋ฌธ

<<<ํ•„์š”ํ•œ ๋‚ด์šฉ๋งŒ ๋ฐœ์ทŒ>>>

๋”ฐ๋ผ์„œ 100๋งŒ๊ฐœ ์ •๋„์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์„œ๋ฒ„ ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์žˆ๋Š”์ง€ ๋ถ€ํ„ฐ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
100๋งŒ๊ฐœ ๋ ˆ์ฝ”๋“œ์ด์ง€๋งŒ Feature๊ฐ€ ๋งŽ์ง€ ์•Š๋‹ค๋ฉด ์ถฉ๋ถ„ํžˆ 8GB์ •๋„์— ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค. ==> ์šฐ๋ฆฌ ๋ฐ์ดํ„ฐ์˜ ๊ฒฝ์šฐ 10.7GB
๋จผ์ € Pandas๋กœ data๋ฅผ ๋กœ๋“œ ํ•œ ๋’ค์— DataFrame.memory_usage() ๋กœ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ํ™•์ธํ•ด ๋ณด์‹œ๋ฉด ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ==> ์•„์ง ํ™•์ธ ์•ˆํ•ด๋ด„.

2. ๋จธ์‹ ๋Ÿฌ๋‹์˜ ์†๋„๋ฅผ ๋†’์ด๋Š” ๋ฐฉ๋ฒ•
    A. ์†๋„๊ฐ€ ๋น ๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ ์šฉ,
        Tree๊ธฐ๋ฐ˜ ์•™์ƒ๋ธ”๋ณด๋‹ค๋Š” ์„ ํ˜• ๊ณ„์—ด์ด ๋น ๋ฆ„.
        ์ฆ‰ Logistic Regression > Random Forest
        ๊ฐ™์€ Tree๊ธฐ๋ฐ˜ ์•™์ƒ๋ธ”์ด๋”๋ผ๋„ Random Forest > Gradient Boosting
        XGboost < LightGBM & LightGBM์ด ๋ฉ”๋ชจ๋ฆฌ๋„ ๋” ์ ๊ฒŒ ์‚ฌ์šฉ

        ํ•˜์ง€๋งŒ ์˜ˆ์ธก ์ •ํ™•๋„(์„ฑ๋Šฅ)๋ฅผ ๋” ์ค‘์š”์‹œ ํ•œ๋‹ค๋ฉด ํ•™์Šต์†๋„๋ฅผ ํฌ๊ธฐํ•ด์•ผํ•  ์ˆ˜๋„ ์žˆ์Œ.

    B. Multi processing ์œผ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ ์šฉํ•˜๋Š” ๊ฒƒ.
        ์„œ๋ฒ„๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ Core๋ฅผ ๊ฐ€์ง„ ์‹œ์Šคํ…œ์œผ๋กœ ๊ตฌ์„ฑ.
        ์‚ฌ์ดํ‚ท๋Ÿฐ์€ ๋ฉ€ํ‹ฐ core๋กœ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ๋ฅผ ์ง€์›
        n_jobs=-1์„ Estimator ๊ฐ์ฒด์— ์ดˆ๊ธฐ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์„ค์ •ํ•˜๋ฉด ์‹œ์Šคํ…œ์ด ๊ฐ€์ง„ ๋ชจ๋“  CPU ์ฝ”์–ด๋ฅผ ๋ณ‘๋ ฌ๋กœ ์‚ฌ์šฉํ•˜์—ฌ ํ•™์Šตํ•˜๊ฒŒ ๋จ. - n_jobs = ์ˆซ์ž๋งŒํผ cpu ์‚ฌ์šฉ
        8Core CPU๊ฐ€ 1Core CPU๋ณด๋‹ค ๋” ๋น ๋ฅด๊ฒŒ ํ•™์Šตํ•จ.(๊ทธ๋ ‡๋‹ค๊ณ  8๋ฐฐ ๋น ๋ฅด์ง€๋Š” ์•Š์Œ. ์„ ํ˜• ์„ฑ๋Šฅ ํ™•์žฅ์— ์ œ์•ฝ o).


์š”์•ฝํ•˜์ž๋ฉด 100๋งŒ๊ฐœ Record์˜ ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ํ”ผ์ฒ˜ ๊ฐฏ์ˆ˜๊ฐ€ ๋ช‡ ๊ฐœ์ด๋“ ๊ฐ„์—
๋ฉ”๋ชจ๋ฆฌ์—๋งŒ ๋“ค์–ด์˜จ๋‹ค๋ฉด 1~2 ์‹œ๊ฐ„๋‚ด์— ํ•™์Šต์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ,
๋งŒ์•ฝ ํ•™์Šต ์‹œ๊ฐ„์„ ๋” ์ค„์ด๊ณ ์ž ํ•œ๋‹ค๋ฉด 8 Core์ด์ƒ์˜ ์‹œ์Šคํ…œ์—์„œ ๊ตฌ๋™ํ•˜์‹œ๋ฉด ํ›จ์”ฌ ํ•™์Šต ์‹œ๊ฐ„์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ...

๋”ฅ ๋Ÿฌ๋‹ ๋ชจ๋ธ ํ•™์Šต์„ ๋น ๋ฅด๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•œ 6๊ฐ€์ง€ tipโ—

<<<์•„์ง ๋๊นŒ์ง€ ์•ˆ์ฝ์Œ.>>>

1. ๋‹ค๋ฅธ ํ•™์Šต๋ฅ  ์กฐ์ • ๊ณ„ํš ์‚ฌ์šฉ ๊ณ ๋ ค ???
2. DataLoader ๋ฐ ํŽ˜์ด์ง€ ์ž ๊ธˆ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ์—ฌ๋Ÿฌ ๋ณด์กฐ ํ”„๋กœ์„ธ์Šค ์‚ฌ์šฉ ???
3. ๋ฐฐ์น˜ ํฌ๊ธฐ ์ตœ๋Œ€ํ™”
4. ์ž๋™ ํ˜ผํ•ฉ ์ •๋ฐ€ AMP ์‚ฌ์šฉ ???
5. gradient ํ™œ์„ฑํ™” checkpoint ์‚ฌ์šฉ ???
6. .tensor() ๋Œ€์‹  .as_tensor() ์‚ฌ์šฉ ???

  • ๋ถ„์‚ฐํ•™์Šต

... ๊ทธ๋ƒฅ ๋ฐ”๋กœ lstm์œผ๋กœ ๊ฐˆ๊นŒ...
lstm์˜ ๊ฒฝ์šฐ epoch์€ ์ค„์ด๊ณ  batch ์‚ฌ์ด์ฆˆ๋Š” ์ตœ๋Œ€๋กœ ํ‚ค์›Œ์„œ ํ•ด๊ฒฐ...?

์ธ๊ณต์ง€๋Šฅ > ๋จธ์‹ ๋Ÿฌ๋‹ > ๋”ฅ๋Ÿฌ๋‹

<<์œ„ ํŽ˜์ด์ง€์—์„œ ๋ณผ ๋‚ด์šฉ๋งŒ ๋”ฐ๋กœ ์ •๋ฆฌ>>
๋”ฅ๋Ÿฌ๋‹์œผ๋กœ ๋Œ€ํ‘œ๋˜๋Š” ์ธ๊ณต์‹ ๊ฒฝ๋ง์€ ๋จธ์‹ ๋Ÿฌ๋‹์„ ๊ตฌํ˜„ํ•˜๋Š” ๊ธฐ์ˆ ์˜ ํ•˜๋‚˜๋กœ,
์ธ๊ฐ„ ๋‡Œ์˜ ๋™์ž‘ ๋ฐฉ์‹์—์„œ ์ฐฉ์•ˆํ•˜์—ฌ ๊ฐœ๋ฐœํ•œ ํ•™์Šต๋ฐฉ๋ฒ•...

[๊ธฐ์กด(rule-based AI)]์—๋Š” ๊ทœ์น™์„ ์•Œ๋ ค์ค˜์•ผํ–ˆ์Œ. (๊ทœ์น™์„ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•ด์•ผ ํ–ˆ์Œ.)
==> [๋จธ์‹ ๋Ÿฌ๋‹]์€ ๋‹ต์•ˆ์ง€๋ฅผ ๋ฏธ๋ฆฌ ์ฃผ๋ฉด ์•Œ์•„์„œ ๊ทœ์น™์„ ํ•™์Šตํ•จ. (๊ทœ์น™์„ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•˜์ง€ ์•Š์•„๋„ ๋จ.)
    ๋Œ€ํ‘œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ: <์‚ฌ์ดํ‚ท๋Ÿฐ>
[์ธ๊ณต์‹ ๊ฒฝ๋ง]์€ ๊ธฐ์กด์˜ ๋จธ์‹ ๋Ÿฌ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ๋‹ค๋ฃจ๊ธฐ ์–ด๋ ค์› ๋˜ ์ด๋ฏธ์ง€, ์Œ์„ฑ, ํ…์ŠคํŠธ ๋ถ„์•ผ์—์„œ ๋›ฐ์–ด๋‚œ ์„ฑ๋Šฅ์„ ๋ฐœ์œ„, ์ข…์ข… ๋”ฅ๋Ÿฌ๋‹์ด๋ผ๊ณ ๋„ ๋ถ€๋ฆ„.
๋Œ€ํ‘œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ: <ํ…์„œํ”Œ๋กœ>, <ํŒŒ์ดํ† ์น˜>

220526

์‹œ๊ณ„์—ด ์ˆ˜์น˜์ž…๋ ฅ ์ˆ˜์น˜์˜ˆ์ธก ๋ชจ๋ธ๋ ˆ์‹œํ”ผ
lightbgm์„ ์ด์šฉํ•œ ํšŒ๊ท€์˜ˆ์ธก ์น˜ํŠธ์ฝ”๋“œ - ๋”ฐ๋ผํ•ด๋ด„.
lightgbm ๊ณต์‹๋ฌธ์„œ 1 - ํŒŒ๋ผ๋ฏธํ„ฐ์— ๋Œ€ํ•œ ๋ณด๋‹ค ๋” ์ž์„ธํ•œ ์„ค๋ช…
lightgbm ๊ณต์‹๋ฌธ์„œ 2

lightgbm์€ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ• ๊นŒ? - sample code - lightgbm์œผ๋กœ classification (๋ถ„๋ฅ˜)ํ•˜๊ธฐ


multi core ๋ฉ€ํ‹ฐ์ฝ”์–ด ์ฐธ๊ณ ์ž๋ฃŒ



# cpu ๊ฐœ์ˆ˜ ํ™•์ธ ๋ฐฉ๋ฒ•
import os
os.cpu_count()

220601

๋ฌด์ž‘์ • ๋”ฐ๋ผํ•˜๋Š” EDA
ํŒŒ์ด์ฌ์œผ๋กœ ์ฃผ์‹ ๋ณด์กฐ์ง€ํ‘œ ๊ตฌํ•˜๊ธฐ TA
ํŒŒ์ด์‹ผ ์ฃผ์‹๋ฐ์ดํ„ฐ ๋ถ„์„, ์ฃผ์‹ ๋ณด์กฐ์ง€ํ‘œ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์€?

ํŒŒ์ด์ฌ, ์ฃผ์‹์ฐจํŠธ์™€ ๋ณด์กฐ์ง€ํ‘œ ๊ทธ๋ฆฌ๊ธฐ(plotly)

220602

study multi processing

์›์ž‘์ž ์ฝ”๋“œ ๋ณด๊ธฐ -> ์—ฌ๊ธฐ์— ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์‹ฑ ๊ด€๋ จ ์ฝ”๋“œ ๋‚˜์™€์žˆ์Œ

[๊ฒ€์ƒ‰์–ด]: ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์‹ฑ ์˜ˆ์‹œ ์ฝ”๋“œ ํŒŒ์ด์ฌ
ํŒ๋‹ค์Šค ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์‹ฑ ๊ณต์‹ ๋ฌธ์„œ
๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์‹ฑ ๊ตฌํ˜„์˜ˆ์ œ ๋ฐ ๋ฉ€ํ‹ฐ ์“ฐ๋ ˆ๋“œ์™€ ์‹คํ–‰์‹œ๊ฐ„ ๋น„๊ต ๋ถ„์„
ํŒŒ์ด์ฌ multi processing ์‚ฌ์šฉ๋ฒ•
[๋ณ‘๋ ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ] 3. multi-process ์‚ฌ์šฉํ•˜๊ธฐ with python - ์ค„ ๋ณ„๋กœ ์„ค๋ช…, ์นœ์ ˆ
4์ดˆ ์ •๋„ ๊ฑธ๋ฆฌ๋Š” ์ž‘์—…์„ ๋‹จ์ถ•์‹œํ‚ค๋Š” ์˜ˆ์‹œ

Python multiprocessing.Pool ๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ 2
Python | Multiprocessing(ํŒŒ์ด์ฌ ๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ)
6์ฃผ์ฐจ, ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ, ํ”„๋กœ์„ธ์Šค, ์“ฐ๋ ˆ๋“œ - ์ฝ”๋“œ๊ฐ€ ์˜ˆ์˜๊ฒŒ ๋‚˜์™€์žˆ์ง€๋Š” ์•Š์Œ.
wikidocs ๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ ๋ฌธ์„œ

ํŒŒ์ด์ฌ - multiprocessing ์„ค๋ช… ๋ฐ ์˜ˆ์ œ
multi processing python
๋ฉ€ํ‹ฐ ์“ฐ๋ ˆ๋“œ(x) ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์‹ฑ
โค๐Ÿ’›๐Ÿ’œ๐Ÿ’จ ์ฝ๋Š” ์ค‘ Ray๋ฅผ ์ด์šฉํ•ด Python ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ ์‰ฝ๊ฒŒ ํ•˜๊ธฐ - ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๋Š” ์ด์œ ๊ฐ€ ๋‚˜์™€์žˆ์Œ, ์ž‘์„ฑ์ž๊ฐ€ multiprocessing ์‚ฌ์šฉ๋ฒ•์ด ๋ง˜์— ์•ˆ๋“ค์—ˆ์ง€๋งŒ ๊ทธ๋ž˜๋„ ์จ๋ดค๋‹ค๊ณ  ํ•จ.

๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์‹ฑ์„ ํ•˜๋Š” ์ด์œ : ํฐ ํ…Œ์ดํ„ฐ์— ๋Œ€ํ•œ ์ž‘์—…์„ ๋” ๋น ๋ฅด๊ฒŒ ํ•˜๊ธฐ์œ„ํ•ด..........
ํŒŒ์ด์ฌ์—์„œ ๊ธฐ๋ณธ์œผ๋กœ ์ œ๊ณตํ•ด์ฃผ๋Š” multiprocessing์ด๋ผ๋Š” ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

multi processing์˜ Pool ๊ฐ์ฒด
์—ฌ๋Ÿฌ ์ž…๋ ฅ ๊ฐ’์— ๊ฑธ์ณ ํ•จ์ˆ˜์˜ ์‹คํ–‰ ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ
์ž…๋ ฅ ๋ฐ์ดํ„ฐ๋ฅผ ํ”„๋กœ์„ธ์Šค์— ๋ถ„์‚ฐ์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ• ์ œ๊ณต
==> ๋ฐ์ดํ„ฐ ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ

from multiprocessing import Pool

def f(x):
    return x*x

if __name__ == '__main__':
    with Pool(5) as p:
        print(p.map(f, [1, 2, 3]))

220603

numpy ๋ฐฐ์—ด ์ €์žฅ ๋ฐ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

import numpy as np
data = np.arange(100) # ์ €์žฅํ•˜๋Š” ๋ฐ์ดํ„ฐ
np.save('my_data.npy', data) # numpy.ndarray ์ €์žฅ. @ํŒŒ์ผ๋ช…, @๊ฐ’
data2 = np.load('my_data.npy') # ๋ฐ์ดํ„ฐ ๋กœ๋“œ. @ํŒŒ์ผ๋ช…

๐Ÿ’›๐Ÿ’œ๐Ÿ’จ ์‚ฌ์ดํ‚ท๋Ÿฐ์„ ์ด์šฉํ•ด ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ๋ง ํ•ด๋ณด๊ธฐ - plot ๊ทธ๋ฆฌ๋Š” ๊ฒƒ๋„ ๋‚˜์™€์žˆ์Œ.
csv to numpy methods, methods3, 5 ์ด์šฉ

Method 3: Using the Pandas Dataframe
Method 5: Using Pandas Dataframe Values

np.concatenate, np.stack

np.concatenate([arr1, arr2]) # ์•„๋ž˜๋กœ ์ž‡๊ธฐ (์—ด ์ˆ˜๊ฐ€ ๊ฐ™์•„์•ผ ํ•จ.)
np.concatenate([arr1, arr2], axis = 1) # ์˜†์œผ๋กœ ์ž‡๊ธฐ (ํ–‰ ์ˆ˜๊ฐ€ ๊ฐ™์•„์•ผ ํ•จ.)


220604

๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ๋ง์‹œ NaN๊ฐ’ ์žˆ์œผ๋ฉด ์•ˆ๋จ.(๋ณดํ†ต์€ ์•ˆ๋˜๋Š”๋ฐ ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๊ธฐ๋„ ํ•จ. ex) rf...)
๊ทธ๋ž˜์„œ isnull์„ ํ™•์ธํ•ด์ฃผ๊ณ ,
fillna๋ฅผ ํ•ด์ฃผ๋Š” ๊ฒƒ.

[๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ ์ž…๋ ฅ์— NaN๊ฐ’] ์ด๋Ÿฐ๊ฑฐ ๊ฒ€์ƒ‰ํ–ˆ๋‹ค๊ฐ€ ๊ธฐ์–ต ๋‚จ. ๊ฒ€์ƒ‰๊ฒฐ๊ณผ ๋”ฐ๋กœ ๋ณด์ง„ ์•Š์Œ.

๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ ์„ฑ๋Šฅ ํ‰๊ฐ€ mse for regression, acc for classification, ...

RMSE / MSE / logloss # for Regression Accuracy / f1-score # for Classification

Accuracy๋ฅผ ํ‰๊ฐ€ ์ฒ™๋„๋กœ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ๊ท ํ˜•(Balanced) ๋ฐ์ดํ„ฐ์—์„œ ์‚ฌ์šฉํ•˜์‹œ๊ธธ ๊ถŒ์œ 
๋ถˆ๊ท ํ˜• ๋ฐ์ดํ„ฐ ์ƒํƒœ์—์„œ๋Š” F1 Score๋ฅผ ์ด์šฉ

๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ ์„ฑ๋Šฅ ํ‰๊ฐ€ ๊ด€๋ จ + ์˜ˆ์‹œ ์ฝ”๋“œ

ํšŒ๊ท€/ ๋ถ„๋ฅ˜์‹œ ์•Œ๋งž์€ metric๊ณผ ์„ค๋ช… - ์•„์ฃผ ์นœ์ ˆ, ๊ดœ์ฐฎ์•„ ๋ณด์ž„, ํšŒ๊ท€์˜ ๊ฒฝ์šฐ ์˜ˆ์‹œ๊ฐ€ ์ฃผ์‹๋ฐ์ดํ„ฐ

ํšŒ๊ท€๋ฌธ์ œ


์‹ค์ œ ๊ฐ’๊ณผ ๋ชจ๋ธ์ด ์˜ˆ์ธกํ•˜๋Š” ๊ฐ’์˜ ์ฐจ์ด์— ๊ธฐ๋ฐ˜์„ ๋‘” metric ์‚ฌ์šฉ.

๋Œ€ํ‘œ์ ์œผ๋กœ

  • RSS(๋‹จ์ˆœ ์˜ค์ฐจ ์ œ๊ณฑ ํ•ฉ)
  • MSE(ํ‰๊ท  ์ œ๊ณฑ ์˜ค์ฐจ)
  • MAE(ํ‰๊ท  ์ ˆ๋Œ€๊ฐ’ ์˜ค์ฐจ)

RSS : ์˜ˆ์ธก๊ฐ’๊ณผ ์‹ค์ œ๊ฐ’์˜ ์˜ค์ฐจ์˜ ์ œ๊ณฑํ•ฉ
MSE : RSS๋ฅผ ๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜๋งŒํผ ๋‚˜๋ˆˆ ๊ฐ’
MAE : ์˜ˆ์ธก๊ฐ’๊ณผ ์‹ค์ œ๊ฐ’์˜ ์˜ค์ฐจ์˜ ์ ˆ๋Œ€๊ฐ’์˜ ํ‰๊ท 

++ RMSE์™€ RMAE๋ผ๋Š” ๊ฒƒ๋„ ์žˆ๋Š”๋ฐ,
๊ฐ๊ฐ MSE์™€ MAE์— ๋ฃจํŠธ๋ฅผ ์”Œ์šด ๊ฐ’์ž…๋‹ˆ๋‹ค.

MSE์˜ ๊ฒฝ์šฐ ์˜ค์ฐจ์— ์ œ๊ณฑ์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ด์ƒ์น˜(outlier)๋ฅผ ์žก์•„๋‚ด๋Š” ๋ฐ ํšจ๊ณผ์ .
ํ‹€๋ฆฐ ๊ฑธ ๋” ๋งŽ์ด ํ‹€๋ ธ๋‹ค๊ณ  ์•Œ๋ ค์ฃผ๋Š” ๊ฒƒ.
MAE์˜ ๊ฒฝ์šฐ ๋ณ€๋™์น˜๊ฐ€ ํฐ ์ง€ํ‘œ์™€ ๋‚ฎ์€ ์ง€ํ‘œ๋ฅผ ๊ฐ™์ด ์˜ˆ์ธกํ•˜๋Š” ๋ฐ ํšจ๊ณผ์ .
๋‘˜ ๋‹ค ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ํ‰๊ฐ€ ๋ฐฉ๋ฒ•์œผ๋กœ ์ง๊ด€์ ์ธ ํ•ด์„์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ,
ํ‰๊ท ์„ ๊ทธ๋Œ€๋กœ ์ด์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ์— ์˜์กดํ•œ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ์Œ.

MSE๋Š” ์ „์ฒด ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ์— ์˜์กดํ•˜๊ธฐ ๋•Œ๋ฌธ์—
์„œ๋กœ ๋‹ค๋ฅธ ๋‘ ๋ชจ๋ธ์˜ MSE๋งŒ์„ ๋น„๊ตํ•ด์„œ ์–ด๋–ค๊ฒŒ ๋” ์ข‹์€ ๋ชจ๋ธ์ธ์ง€ ํŒ๋‹จํ•˜๊ธฐ ์–ด๋ ต๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ์Œ.

  • ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ metric์œผ๋กœ R2 (๊ฒฐ์ •๊ณ„์ˆ˜)๊ฐ€ ์žˆ์Œ.

R2๋Š” ํšŒ๊ท€ ๋ชจ๋ธ์˜ ์„ค๋ช…๋ ฅ์„ ํ‘œํ˜„ํ•˜๋Š” ์ง€ํ‘œ
๊ทธ ๊ฐ’์ด 1์— ๊ฐ€๊นŒ์šธ์ˆ˜๋ก ๋†’์€ ์„ฑ๋Šฅ์˜ ๋ชจ๋ธ

R2์˜ ์‹์—์„œ ๋ถ„์ž์ธ RSS์˜ ๊ทผ๋ณธ์€ ์‹ค์ œ๊ฐ’๊ณผ ์˜ˆ์ธก๊ฐ’์˜ ์ฐจ์ด์ธ๋ฐ,
๊ทธ ๊ฐ’์ด 0์— ๊ฐ€๊นŒ์šธ์ˆ˜๋ก ๋ชจ๋ธ์ด ์ž˜ ์˜ˆ์ธก์„ ํ–ˆ๋‹ค๋Š” ๋œป์ด๋ฏ€๋กœ
R2๊ฐ’์ด 1์— ๊ฐ€๊นŒ์›Œ์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.



์ด์ „ 2๊ฐœ์˜ ํฌ์ŠคํŒ…์— ๊ฒฐ์ณ ์šฐ๋ฆฌ๋Š” ์ง€๊ธˆ๊นŒ์ง€ ๋ฌธ์ œ๋ฅผ ์ •์˜ํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด๋“ค์—ฌ ํƒ์ƒ‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ training set๊ณผ test set์œผ๋กœ ๋‚˜๋ˆ„๊ณ  ํ•™์Šต์„ ์œ„ํ•œ ๋จธ์‹ ๋Ÿฌ๋‹ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ์ฃผ์ž…ํ•  ๋ฐ์ดํ„ฐ๋ฅผ ์ž๋™์œผ๋กœ ์ „์ฒ˜๋ฆฌํ•˜๊ณ  ์ •์ œํ•˜๋Š” ํŒŒ์ดํ”„๋ผ์ธ๊นŒ์ง€ ๋งŒ๋“ค์–ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค.
์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ์„ ์„ ํƒํ•˜๊ณ  ํ›ˆ๋ จ์‹œ์ผœ ์„ธ๋ถ€์ ์œผ๋กœ ํŠœ๋‹ํ•˜๋Š” ๋ฒ•๊นŒ์ง€ ๋‹ค๋ค„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.


<ํ˜„์žฌ LinearRegressor>

๋Œ€๋ถ€๋ถ„ ๊ตฌ์—ญ์˜ median house value๊ฐ€ 120000 ~ 265000 ์‚ฌ์ด์ธ ๊ฒƒ์„ ๊ฐ์•ˆํ•˜๋ฉด,
$68628์˜ ์˜ค์ฐจ๋Š” ๊ทธ๋ฆฌ ์ข‹์€ ํŽธ์€ ์•„๋‹Œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๊ฒฐ๊ณผ๋Š” ๋ชจ๋ธ์ด ๊ณผ์†Œ ์ ํ•ฉ(Underfit) ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋ฉฐ,
์ด๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋ถ€์กฑํ•˜๊ฑฐ๋‚˜, ๋ชจ๋ธ์ด ๊ฐ•๋ ฅํ•˜์ง€ ๋ชปํ•œ ํƒ“
์šฐ์„  ์ข€ ๋” ๋ณต์žกํ•œ ๋ชจ๋ธ์„ ์‹œ๋„ํ•ด์„œ ์–ด๋–ป๊ฒŒ ๋˜๋Š”์ง€ ํ™•์ธํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

<์ด์ œ DecisionTreeRegressor>

  • ์ด ๋ชจ๋ธ์€ ๊ฐ•๋ ฅ, ๋ฐ์ดํ„ฐ์—์„œ ๋ณต์žกํ•œ ๋น„์„ ํ˜•๊ด€๊ณ„๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Œ.

ํ‰๊ฐ€์‹œ ๊ฒฐ๊ณผ๊ฐ€ 0.0์ด ๋‚˜์˜ด.
=> ์˜ค์ฐจ๊ฐ€ ์—†๋‹ค๋Š” ๋œป์ธ๋ฐ, ๋ชจ๋ธ์ด ์™„๋ฒฝํ•  ๋ฆฌ๋Š” ์—†์œผ๋ฏ€๋กœ
์•„๋งˆ ๋ฐ์ดํ„ฐ๊ฐ€ ์‹ฌ๊ฐํ•˜๊ฒŒ ๊ณผ๋Œ€์ ํ•ฉ(Overfit) ๋˜์—ˆ์„ ํ™•๋ฅ ์ด ํผ.
ํ•˜์ง€๋งŒ ์ด ๋˜ํ•œ ํ™•์‹ ํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ
training set์—์„œ ์ผ๋ถ€๋ฅผ ๊ต์ฐจ๊ฒ€์ฆ (cross-validation) ๋ฐ์ดํ„ฐ๋กœ ๋ถ„๋ฆฌ์‹œ์ผœ
๋ชจ๋ธ์„ ํ‰๊ฐ€ํ•˜๋Š”๋ฐ์— ์‚ฌ์šฉํ•ด์•ผ ํ•จ.

train_test_split ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ training set์„ ๋” ์ž‘์€ traing set๊ณผ cv set์œผ๋กœ ๋‚˜๋ˆ„๊ณ ,
training set์—์„œ๋Š” ๋ชจ๋ธ ํ›ˆ๋ จ์„,
cv set์—์„œ๋Š” ๋ชจ๋ธ ํ‰๊ฐ€๊ฐ€ ์ด๋ฃจ์–ด์ง€๊ฒŒ ํ•˜๋ฉด ๋จ.

ํ˜น์€ ํ›Œ๋ฅญํ•œ ๋Œ€์•ˆ์œผ๋กœ sklearn์˜ k-fold cross-validation ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ.

์ด๋Š” training set์„ fold๋ผ ๋ถˆ๋ฆฌ๋Š” 10๊ฐœ์˜ subset (k-fold, ์ž‘์„ฑ์ž์˜ ์˜ˆ์‹œ ์ฝ”๋“œ์—์„œ k = 10)์œผ๋กœ ๋ฌด์ž‘์œ„ ๋ถ„ํ• 
๊ทธ ํ›„ DecisionTree ๋ชจ๋ธ์„ 10๋ฒˆ ํ›ˆ๋ จํ•˜๊ณ  ํ‰๊ฐ€ํ•˜๋Š”๋ฐ,
์ด๋•Œ ๋งค๋ฒˆ ๋‹ค๋ฅธ ํ•˜๋‚˜์˜ fold๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ‰๊ฐ€ํ•˜๊ณ  ๋‚˜๋จธ์ง€ 9๊ฐœ๋Š” ํ›ˆ๋ จ์— ์‚ฌ์šฉ.
๊ทธ๋ฆฌ๊ณ  10๊ฐœ์˜ ํ‰๊ฐ€ ์ ์ˆ˜๊ฐ€ ๋‹ด๊ธด ๋ฐฐ์—ด์ด ๊ฒฐ๊ณผ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

np.sqrt()์— -scores๊ฐ€ ๋“ค์–ด๊ฐ„ ๊ฒƒ์€ cross_val_score() ๋ฉ”์„œ๋“œ์˜ scoring ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€

๋‚ฎ์„์ˆ˜๋ก ์ข‹์€ loss function์ด ์•„๋‹ˆ๋ผ,
ํด์ˆ˜๋ก ์ข‹์€ utility function์„ ๊ธฐ๋Œ€ํ•˜๊ธฐ ๋•Œ๋ฌธ์—

๋”ฐ๋ผ์„œ MSE์˜ ๋ฐ˜๋Œ€ ์ฆ‰ ์Œ์ˆซ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๋Š” neg_mean_squared_error ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•จ.
๊ทธ๋ž˜์„œ ์ œ๊ณฑ๊ทผ ๊ณ„์‚ฐ์„ ์œ„ํ•˜์—ฌ -scores๋กœ ๋ถ€ํ˜ธ๋ฅผ +๋กœ ๋ฐ”๊พผ ๊ฒƒ.


ํ•ธ์ฆˆ์˜จ ๋จธ์‹ ๋Ÿฌ๋‹(3) - ๋จธ์‹ ๋Ÿฌ๋‹ ํ”„๋กœ์ ํŠธ 6[๋งˆ๋ฌด๋ฆฌ]
[๋จธ์‹ ๋Ÿฌ๋‹][๊ต์ฐจ๊ฒ€์ฆ, ํŒŒ๋ผ๋ฏธํ„ฐ ํŠœ๋‹]
3.1. ์„ ํ˜• ํšŒ๊ท€(Linear Regression)
[Sklearn] ํŒŒ์ด์ฌ ๋žœ๋ค ํฌ๋ ˆ์ŠคํŠธ ๋ชจ๋ธ ํ•™์Šต, ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ํŠœ๋‹ - RandomForestClassifier

220612

R squred

220616

๋ถ„๋ฅ˜์„ฑ๋Šฅํ‰๊ฐ€์ง€ํ‘œ Precision, Recall, Accuracy
imbalanceํ•œ ๋ฌธ์ œ์—์„œ๋Š” precision๊ณผ recall์ด ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Œ. ๋‘ ์ง€ํ‘œ๋ฅผ ๋™์‹œ์— ์ž˜ ์ด์šฉํ•œ๋‹ค๋ฉด imbalance dataset์ด ์ฃผ์–ด์ง„ ์ƒํ™ฉ์—์„œ ์ข€ ๋” ์ข‹์€ ๋ชจ๋ธ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์ง€ ์•Š์„๊นŒ Precision, Recall, F1 score

๊ณผ์ œ์˜ ๊ฒฝ์šฐ ์˜ˆ์ธก ๋ชจ๋ธ์ด ์˜ค๋ฅผ ๊ฒƒ์ด๋ผ๊ณ  ์˜ˆ์ธกํ–ˆ๋Š”๋ฐ, ์‹ค์ œ๋กœ ์˜ค๋ฅด๋Š” ์ง€๋ฅผ ํ‰๊ฐ€ํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์ •๋ฐ€๋„๋ฅผ ๋” ๋น„์ค‘์žˆ๊ฒŒ ์‚ดํŽด๋ด์•ผ ํ•จ.

์ •๋ฐ€๋„์™€ ์žฌํ˜„์œจ ์˜ˆ์‹œ์™€, ์˜ค์ฐจํ–‰๋ ฌ ์•ˆํ—ท๊ฐˆ๋ฆฌ๋Š” ๋ฐฉ๋ฒ•, ๋ถ„๋ฅ˜๋ชจ๋ธ ํ‰๊ฐ€์ง€ํ‘œ

๐Ÿ’›F1 score๊ฐ€ ๋†’์„ ์ˆ˜๋ก ์ •๊ตํ•œ ๋ชจ๋ธ์ž„.

220616 ๊ต์ˆ˜๋‹˜ ๋ฏธํŒ… ๋‚ด์šฉ

ํ†ต๊ณ„์  ๊ฒ€์ฆ ๊ฒฐ๊ณผ
๊ต์ฐจ๊ฒ€์ฆ ๋ฐ ํ†ต๊ณ„์  ๊ฒ€์ • ์‹ค์Šต, ์œ ์˜์„ฑ ๊ฒ€์ฆ
๊ต์ฐจ๊ฒ€์ฆ ๋ฐ ํ†ต๊ณ„์  ๊ฒ€์ •

220621

์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ(d1221.ftr): d2012 ~ d2021 ์•„๋ž˜๋กœ ๋ณ‘ํ•ฉ์‹œํ‚จ ๊ฒƒ

220622

๋ฐ์ดํ„ฐ ํ•„ํ„ฐ๋ง, tr > 10์–ต
์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ (d1221 10thr.ftr)

์ฃผ์‹ ํˆฌ์ž์ž์˜ ์˜์‚ฌ๊ฒฐ์ • ์ง€์›์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ๋งˆ์ด๋‹ ๋„๊ตฌ
์ฃผ์‹์‹œ์žฅ์—์„œ์˜ ์ง‘๋‹จ์‹ฌ๋ฆฌ(2)
(๊ณต์‹, ๊ตญ๊ฐ€๊ธฐ๋ก์›) ๋Œ€ํ•œ๋ฏผ๊ตญ ์ฃผ์‹์‹œ์žฅ์˜ ์—ญ์‚ฌ
์‚ฌ๋ก€๊ธฐ๋ฐ˜ํ•™์Šต์„ ์ด์šฉํ•œ ์ฃผ์‹ ๋ฐ์ดํ„ฐ ์˜ˆ์ธก ๋ฐฉ๋ฒ•
์ฃผ์‹ ํˆฌ์ž์ž์˜ 1%๋งŒ ์•„๋Š” ๊ตฌ๊ธ€ ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ๋กœ ์ฃผ์‹ ๋ฐ์ดํ„ฐ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋ฐฉ๋ฒ•
๋”ฅ๋Ÿฌ๋‹์„ ํ™œ์šฉํ•œ ์‹ค์‹œ๊ฐ„ ์ฃผ์‹๊ฑฐ๋ž˜์—์„œ์˜ ๋งค๋งค ๋นˆ๋„ ํŒจํ„ด๊ณผ ์˜ˆ์ธก ์‹œ์ ์— ๊ด€ํ•œ ์—ฐ๊ตฌ: KOSDAQ ์‹œ์žฅ์„ ์ค‘์‹ฌ์œผ๋กœ
ํ‚ค์›€ ์• ๋„๋ฆฌ์ŠคํŠธ
investing.com์—์„œ ํ˜„์žฌ ์‚ฌ๋ผ์ง„ (ํ˜น์€ ์ƒ์žฅํ์ง€๋œ) ๊ธฐ์—…์˜ ๊ณผ๊ฑฐ ์ฃผ์‹๋ฐ์ดํ„ฐ ์ฐจํŠธ ๋ณผ ์ˆ˜ ์žˆ์Œ


[ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐํŠœ๋‹ ์˜ˆ์‹œ์ฝ”๋“œ]
๊ฒ€์ƒ‰์–ด:
linear regression hyperparameter tuning
linear regression hyperparameter tuning python code
ridge hyperparameter tuning python code

์˜ˆ์‹œ์ฝ”๋“œ ์žˆ์Œ. Hyperparameter Tuning in Lasso and Ridge Regressions - linear reg์— ๋Œ€ํ•œ ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐํŠœ๋‹ ๋ชปํ•˜๋‹ˆ ridge, lasso, elasticnet์œผ๋กœ ํ•˜๋ผ๋Š” ์Šคํƒ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ ์กฐ์–ธ ๋ณด๊ณ  ๊ฒ€์ƒ‰ํ•ด์„œ ๋ฐœ๊ฒฌํ•œ ๊ฒฐ๊ณผ์ž„.

์˜ˆ์‹œ์ฝ”๋“œ ์žˆ์Œ. Tuning ML Hyperparameters - LASSO and Ridge Examples

How to Develop Ridge Regression Models in Python


[for ppt๊ฒฐ์ธก๊ฐ’์„ ์™œ ์ฑ„์›Œ๋„ฃ์–ด์•ผ ํ•˜๋Š”๊ฐ€?]
์ผ๋ฐ˜์ ์œผ๋กœ ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ์˜ ์ž…๋ ฅ ๊ฐ’์œผ๋กœ ๊ฒฐ์ธก๊ฐ’(Null,NaN) ์‚ฌ์šฉ ๋ถˆ๊ฐ€๋Šฅ !ํ•˜๋ฏ€๋กœ fillna๋ฅผ ํ†ตํ•ด ๊ฒฐ์ธก์น˜๋ฅผ ๊ฐ ์—ด์˜ ํ‰๊ท ๊ฐ’์œผ๋กœ ์ฑ„์›Œ์ฃผ์—ˆ์Œ.
https://suminn0.tistory.com/34
(๊ฐ™์€ ๋‚ด์šฉ https://velog.io/@phphll/Machine-Learning)

์ข‹์€ ๋จธ์‹  ๋Ÿฌ๋‹ ๋ชจ๋ธ์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ํ•ต์‹ฌ์ ์ธ ์ „์ฒ˜๋ฆฌ ๊ธฐ๋ฒ•
๊ฒฐ์ธก๊ฐ’์ด ์žˆ๋Š” ๊ฒฝ์šฐ ๋ชจ๋ธ์ด ์ž…๋ ฅ์„ ์•„์˜ˆ ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค.
๊ฒฐ์ธก์น˜ ์™œ ์ฑ„์›Œ์•ผ ํ•˜๋Š” ๊ฐ€์— ๋Œ€ํ•ด dacon ๋”ฐ๋ฆ‰์ด study.txt ์ฐธ๊ณ 

220623

๐Ÿ’›๐Ÿ’›[์ œ์ผ ์ค‘์š”!!!!!!!] randomCV regressor ์˜ˆ์‹œ ์ฝ”๋“œ, ์ˆ˜์—ฐ์ฝ”๋“œ ์ฐธ๊ณ !!!!!!, ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ์กฐ์ • clf grid search cv์™€ Lasso๋ฅผ ๊ฒฐํ•ฉํ•œ LassoCV๋ผ๋Š” ๊ฒŒ ์žˆ๋‹ค.

๊ทธ๋ฆฌ๋“œ์„œ์น˜ cv ์‚ฌ์šฉ๋ฒ•
grid search CV ์‚ฌ์šฉ๋ฒ•

๐Ÿ’›==> ๊ทธ๋ฆฌ๋“œ ์„œ์น˜ cv๋Š” ๋‚ด๊ฐ€ ์ •ํ•ด์ค€ ๊ฐ’๋“ค ๋‚ด์—์„œ๋งŒ ๋Œ์•„๊ฐ.
๐Ÿ’›==> ๋žœ๋ค ์„œ์น˜ cv๋Š” ์ •ํ•˜๋Š” ๊ฐ’์กฐ์ฐจ๋„ ๋žœ๋คํ•˜๊ฒŒ ์„ ํƒ.

fdr, pykrx ๋น„๊ต
ํฌ๋กค๋งํ•˜๋‹ค๊ฐ€ ๋ง‰ํžŒ ์‚ฌ๋ก€
2020๋…„ ๋™ํ•™๊ฐœ๋ฏธ ์šด๋™์— ๋Œ€ํ•œ ์ดํ‰, [MonthlyNow] ๋œจ๊ฑฐ์› ๋˜ 2020 ์ฃผ์‹์‹œ์žฅ, ์ฝ”์Šคํ”ผ 3000์‹œ๋Œ€ ๊ฐœ๋ง‰์ด ๋ˆˆ์•ž์—
2020 ์ฃผ์‹๊ฑฐ๋ž˜ ํ™œ๋™ ๊ณ„์ขŒ, ์Šค๋งˆํŠธ 2030 ๊ฐœ๋ฏธ
2030 ๊ฐœ๋ฏธ๋“ค์ด ์ผ๊ตฐ โ€˜์ฝ”์Šคํ”ผ 3,000โ€™์˜ ๋ช…๊ณผ ์•”
ํŒŒ์ด์ฌ ์ฆ๊ถŒ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘๊ณผ ๋ถ„์„์œผ๋กœ ์‹ ํ˜ธ์™€ ์†Œ์Œ ์ฐพ๊ธฐ
์ฃผ์‹ ํˆฌ์ž์ž์˜ ์˜์‚ฌ๊ฒฐ์ • ์ง€์›์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ๋งˆ์ด๋‹ ๋„๊ตฌ

๋น…๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•œ ์ธ๊ณต์ง€๋Šฅ ์ฃผ์‹ ์˜ˆ์ธก ๋ถ„์„
๋น…๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•œ ๊ตญ๋‚ด์ฃผ์‹์‹œ์žฅ ๋ถ„์„ ๊ธฐ๋ฒ• ์ œ์•ˆ์— ๊ด€ํ•œ ์—ฐ๊ตฌ

์ฃผ์‹๋ฐ์ดํ„ฐ ํฌ๋กค๋ง

220625

๐Ÿ’›๐Ÿ’›!!!!๊ฐ€์žฅ ์ค‘์š”!!!!!! Azure Machine Learning - ํ•˜์ดํผ ๋งค๊ฐœ ๋ณ€์ˆ˜ ํŠœ๋‹์„ ์ž๋™ํ™”ํ•˜๊ณ  ๋ณ‘๋ ฌ๋กœ ์‹คํ—˜์„ ์‹คํ–‰ํ•˜์—ฌ ํ•˜์ดํผ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ตœ์ ํ™”
๋ฒ ์ด์ง€์•ˆ ์˜ตํ‹ฐ๋งˆ์ด์ œ์ด์…˜
grid search, random search, bayesian optimization
ํšŒ๊ท€๋ชจ๋ธ ์„ฑ๋Šฅํ‰๊ฐ€์ง€ํ‘œ, ๊ฒฐ์ •๊ณ„์ˆ˜ R2๋ž€?, ์กฐ์ •๋œ ๊ฒฐ์ •๊ณ„์ˆ˜ (adj_R2)
๋ถ„๋ฅ˜์„ฑ๋Šฅํ‰๊ฐ€์ง€ํ‘œ

220626

[ํšŒ๊ท€ ์ตœ์ ์˜ ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ๋ชจ์Œ(?)]

linear, ridge, lasso, elasicnet
๋ฆฟ์ง€, ๋ผ์˜
๐Ÿ’›๋ฆฟ์ง€, ๋ผ์˜, ์—˜๋ผ์Šคํ‹ฑ๋„ท -> alpha = 0.0001, ์ˆ˜์‹ ํ•ด์„ + CODE ์ •๋ฆฌ
[ML] Regression metric ๊ณผ Elastic net regression
์ง€๋„ํ•™์Šต ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ
How to Develop LASSO Regression Models in Python

[LGBM]
Light GBM(LGBM)์˜ ๊ฐœ์š”์™€ ํŒŒ๋ผ๋ฏธํ„ฐ ์ •์˜์— ๋Œ€ํ•ด
LGBM์€ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ• ๊นŒ
๐Ÿ’›LGBM์ด๋ž€? ๊ทธ๋ฆฌ๊ณ  ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ํŠœ๋‹ํ•˜๊ธฐ

About

stock data handling and utilization

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages