๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

728x90

๋ฉ€ํ‹ฐ์บ ํผ์Šค

3/28 ์›” ์›”์š”์ผ! ๊ธˆ์š”์ผ์— ์ด์–ด ๋จธ์‹ ๋Ÿฌ๋‹ ๋“ค์–ด๊ฐ„๋‹ค~ Weak AI์˜ ๋จธ์‹ ๋Ÿฌ๋‹ ๊ธฐ๋ฒ•๋“ค : ์ง€๋„ ํ•™์Šต, ๋น„์ง€๋„ ํ•™์Šต, ๊ฐ•ํ™” ํ•™์Šต 1. Regression(ํšŒ๊ท€) : ๋ฐ์ดํ„ฐ์— ์˜ํ–ฅ์„ ์ฃผ๋Š” ์กฐ๊ฑด๋“ค์˜ ์˜ํ–ฅ๋ ฅ์„ ๊ณ ๋ คํ•ด์„œ, ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์กฐ๊ฑด๋ถ€ ํ‰๊ท ์„ ๊ตฌํ•˜๋Š” ๊ธฐ๋ฒ• * ํ‰๊ท ์„ ๊ตฌํ•  ๋•Œ ์ฃผ์˜ํ•ด์•ผ ํ•  ์  : ํ‰๊ท ์„ ๊ตฌํ•˜๋Š” ๋ฐ์ดํ„ฐ์— ์ด์ƒ์น˜๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ ๋Œ€ํ‘œ๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์–ด๋ ค์›€. ์ •๊ทœ๋ถ„ํฌ์—ฌ์•ผ ํ•จ! ๊ณ ์ „์  ์„ ํ˜• ํšŒ๊ท€ ๋ชจ๋ธ(Classical Linear Regression Model) ๋‹จ์ˆœ ์„ ํ˜• ํšŒ๊ท€(Simple Linear Regression) import numpy as np import pandas as pd import matplotlib.pyplot as plt df = pd.DataFrame({'๊ณต๋ถ€์‹œ๊ฐ„(x)': [1,2,3.. ๋”๋ณด๊ธฐ
4ํšŒ ์ฐจ | 3/25 ๊ธˆ 4ํšŒ ์ฐจ! ํ™”์š”์ผ์— ์ด์–ด ์กฐ๋ณ„๋กœ ๋จธ์‹ ๋Ÿฌ๋‹ ์ˆ˜ํ–‰ํ‰๊ฐ€ ๋ฆฌ๋ทฐ๋ฅผ ์ง„ํ–‰ํ–ˆ๋‹ค~ ์ธ์›์ด ๋‹จ์ถœํ•ด์„œ ์ง„ํ–‰ ์‹œ๊ฐ„์ด ์•Œ๋งž๊ณ  ์ž์„ธํ•œ ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์ง€๋งŒ, ์ ์€ ์ธ์›๊ณผ ๊ฐ์ž ์‹ค๋ ฅ ํŽธ์ฐจ๊ฐ€ ํด ๊ฒฝ์šฐ ๋ฆฌ๋ทฐ๊ฐ€ ํŽธํ˜‘ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด ๋‹จ์ .. ์ด๋ฒˆ ์ฃผ๋Š” ๋ฉ€ํ‹ฐ์บ ํผ์Šค ์ˆ˜ํ–‰ํ‰๊ฐ€์šฉ์œผ๋กœ ์ œ๊ณต๋œ MovieLens ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ๋ฌธ์ œ๋ฅผ ํ’€๊ณ  ์•„๋ž˜์™€ ๊ฐ™์ด ๊ณต๋ถ€ํ–ˆ๋‹ค. 1. ์ˆ˜ํ–‰ํ‰๊ฐ€ ๋ฌธ์ œ๋“ค ๋ชจ๋‘ ํ•˜๋‚˜์”ฉ ๊ด€๋ จ๋œ ๋‚ด์šฉ์œผ๋กœ ์‹œ๊ฐํ™” ํ•˜๊ธฐ : scatter, histogram, heatmap, boxplot ๋งŒ๋“ค์—ˆ๋‹ค. → ๋„์ˆ˜๋ถ„ํฌํ‘œ(๊ณ„๊ธ‰, ๋„์ˆ˜ + ๊ณ„๊ธ‰๊ฐ’, ์ƒ๋Œ€๋„์ˆ˜, ๋ˆ„์  ์ƒ๋Œ€๋„์ˆ˜) ๋งŒ๋“ค์–ด๋ณด์ž! 2. 10๊ฐœ ์ด์ƒ์˜ ๋ฐ์ดํ„ฐ ํ•ธ๋“ค๋งํ•ด๋ณด๊ธฐ : ๋ฌธ์ œ๋งŒ ํ’€์—ˆ๋‹ค. → ์ƒ๊ด€๊ด€๊ณ„๊ฐ€ ์žˆ์„ ๋ฒ•ํ•˜๊ฑฐ๋‚˜ ๊ถ๊ธˆํ•œ ๊ฒƒ๋“ค์— ๋Œ€ํ•ด ๋” ํ•ธ๋“ค๋ง ํ•˜์ž! ex) ํ‰๊ท  ํ‰์ ์ด ๊ฐ€์žฅ ๋†’์€ ์˜ํ™” ์žฅ.. ๋”๋ณด๊ธฐ
3/24 ๋ชฉ ๋ชฉ์š”์ผ! ๊ธฐ์ˆ ํ†ต๊ณ„๋ฅผ ์ด์–ด์„œ ๋ฐฐ์šด๋‹ค. ๊ธฐ์ˆ ํ†ต๊ณ„๊ฐ€ ๋๋‚˜๋ฉด ์ถ”๋ฆฌํ†ต๊ณ„(ํ†ต๊ณ„๋ถ„์„. ์ถ”์ธก. ์ „์ˆ˜์กฐ์‚ฌ, ๋ชจ์ง‘๋‹จ)๊ฐ€ ์ˆ˜์ˆœ์ด์ง€๋งŒ ๋ฉ€์บ ์—์„œ ๋ฐฐ์šฐ์ง€๋Š” ์•Š๋Š”๋‹ค! 1์ฐจ์› ๋ฐ์ดํ„ฐ์˜ ํŠน์ง• ํŒŒ์•… - ์ˆ˜์น˜์ง€ํ‘œ → ๋Œ€ํ‘œ๊ฐ’ : ํ‰๊ท , ์ค‘์œ„๊ฐ’, ์ตœ๋Œ€/์ตœ์†Œ๊ฐ’, ํŽธ์ฐจ, ๋ถ„์‚ฐ, ํ‘œ์ค€ํŽธ์ฐจ... - ์‹œ์ž‘์  ํ‘œํ˜„ → ๋„์ˆ˜๋ถ„ํฌํ‘œ, Histogram, Box plot 2์ฐจ์› ๋ฐ์ดํ„ฐ์˜ ํŠน์ง• ํŒŒ์•… - ์ˆ˜์น˜์ง€ํ‘œ → ๊ณต๋ถ„์‚ฐ, ์ƒ๊ด€๊ณ„์ˆ˜ - ์‹œ์ž‘์  ํ‘œํ˜„ → Scatter 2์ฐจ์› ๋ฐ์ดํ„ฐ์˜ ์ˆ˜์น˜์ง€ํ‘œ → ๊ณต๋ถ„์‚ฐ, ์ƒ๊ด€๊ณ„์ˆ˜ 1. ๊ณต๋ถ„์‚ฐ(covariance) : ๋‘ ํ™•๋ฅ ๋ณ€์ˆ˜ ์‚ฌ์ด์˜ ์ƒ๊ด€ ์ •๋„ import numpy as np import pandas as pd df = pd.read_csv('./data/student_scores_em.csv', index_col='stu.. ๋”๋ณด๊ธฐ
3/23 ์ˆ˜ ์ˆ˜์š”์ผ! ์˜ค๋Š˜์€ ๊ธฐ์ˆ ํ†ต๊ณ„๋ฅผ ๋ฐฐ์šด๋‹ค. 1์ฐจ์› ๋ฐ์ดํ„ฐ์˜ ํŠน์ง• ํŒŒ์•… - ์ˆ˜์น˜์ง€ํ‘œ → ๋Œ€ํ‘œ๊ฐ’ : ํ‰๊ท , ์ค‘์œ„๊ฐ’, ์ตœ๋Œ€/์ตœ์†Œ๊ฐ’, ํŽธ์ฐจ, ๋ถ„์‚ฐ, ํ‘œ์ค€ํŽธ์ฐจ... - ์‹œ์ž‘์  ํ‘œํ˜„ → ๋„์ˆ˜๋ถ„ํฌํ‘œ, Histogram, Box plot * ์ตœ๋Œ€/์ตœ์†Œ๊ฐ’์€ ๋Œ€ํ‘œ๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ์— ๋ฌด๋ฆฌ๊ฐ€ ์žˆ์Œ 2์ฐจ์› ๋ฐ์ดํ„ฐ์˜ ํŠน์ง• ํŒŒ์•… - ์ˆ˜์น˜์ง€ํ‘œ → ๊ณต๋ถ„์‚ฐ, ์ƒ๊ด€๊ณ„์ˆ˜ - ์‹œ์ž‘์  ํ‘œํ˜„ → Scatter ์‚ฐํฌ๋„(dispersion) : ๋ฐ์ดํ„ฐ๊ฐ€ ์–ผ๋งˆ๋‚˜, ์–ด๋–ป๊ฒŒ ํผ์ ธ ์žˆ๋‚˜๊ฐ€ ๊ด€์  ๋ฐ์ดํ„ฐ๊ฐ€ ํฉ์–ด์ง„ ์ •๋„(๋ณ€์‚ฐ์„ฑ)๋ฅผ ์ˆ˜์น˜๋กœ ํ‘œํ˜„ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด → ๋ฒ”์œ„(range), ์‚ฌ๋ถ„์œ„ ๋ฒ”์œ„(IQR, Interquatile range), ํŽธ์ฐจ(deviation), ๋ถ„์‚ฐ(variance), ํ‘œ์ค€ํŽธ์ฐจ(standard deviation) 1์ฐจ์› ๋ฐ์ดํ„ฐ์˜ ์ˆ˜์น˜์ง€ํ‘œ → ํ‰๊ท , ์ค‘์œ„.. ๋”๋ณด๊ธฐ
3ํšŒ ์ฐจ | 3/22 ํ™” ๋ฒŒ์จ 3ํšŒ ์ฐจ~ ์ง€๋‚œ์ฃผ์— ์ง„ํ–‰ํ•œ ํƒ€์ดํƒ€๋‹‰ ์˜ˆ์ œ๊ฐ€ ๊ฐ€๋ฌผ๊ฐ€๋ฌผํ•˜๋‹ค.. ์˜ค๋Š˜์€ ์กฐ ํŽธ์„ฑ, ์กฐ์ •๋œ ์ปค๋ฆฌํ˜๋Ÿผ ์•ˆ๋‚ด, ๊ฐ ์กฐ๋ณ„ ์ฝ”ํ…Œ ๋ฆฌ๋ทฐ๋กœ ์ง„ํ–‰! ํŒŒ์ผ๋Ÿฟ ์ง„ํ–‰ ํ›„ ๋ ˆ๋ฒจ์— ๋”ฐ๋ผ ์ธ์›์„ ๋‚˜๋ˆ  3๊ฐœ์˜ ์กฐ๋กœ ์šด์˜ํ•˜๋ ค ํ–ˆ์œผ๋‚˜, ๊ฐ์ž์˜ ์‹ค๋ ฅ ํŽธ์ฐจ๊ฐ€ ํฌ๊ณ  ์Šคํ„ฐ๋””์˜ ํšจ์œจ์„ฑ์ด ๋–จ์–ด์ ธ ์šด์˜์ง„๊ณผ ์ƒ์˜ ํ›„ ์ปค๋ฆฌํ˜๋Ÿผ์„ ์•„๋ž˜์™€ ๊ฐ™์ด ์กฐ์ •ํ–ˆ๋‹ค. 11๋ช…์˜ ์ธ์›์ด ๋ชจ๋‘ ๋ฆฌ๋ทฐ๋ฅผ ์ง„ํ–‰ํ•˜๊ธฐ์—๋Š” ์‹œ๊ฐ„์ด ๋น ๋“ฏํ•ด์„œ ์‚ฌ๋‹ค๋ฆฌ ํƒ€๊ธฐ๋กœ ์ธ์›(4/4/3)์„ ๋‚˜๋ˆด๋‹ค. ๊ฐ ์กฐ์˜ ์กฐ์žฅ์€ ์ธํ›„๋‹˜, ์ฐฝํ˜„๋‹˜, ํฌ๊ฒฝ๋‹˜! ์ฃผ์— ํ•˜๋‚˜์”ฉ ์ง„ํ–‰ํ•˜๊ธฐ๋กœ ํ–ˆ๋˜ ์บ๊ธ€ ์˜ˆ์ œ ๋Œ€์‹  ๋ฉ€ํ‹ฐ์บ ํผ์Šค ์ˆ˜์—… ๋‚ด์šฉ๊ณผ ๋งž์ถ”์–ด, ์ˆ˜ํ–‰ํ‰๊ฐ€์šฉ์œผ๋กœ ์ œ๊ณต๋œ MovieLens์™€ ๊ธฐ์˜จ๋ถ„์„ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋กœ ์•„๋ž˜์™€ ๊ฐ™์ด ๊ณต๋ถ€ํ•œ๋‹ค. 1. ์ˆ˜ํ–‰ํ‰๊ฐ€ ๋ฌธ์ œ๋“ค ๋ชจ๋‘ ํ•˜๋‚˜์”ฉ ๊ด€๋ จ๋œ ๋‚ด์šฉ์œผ๋กœ ์‹œ๊ฐํ™” ํ•˜๊ธฐ 2. 10๊ฐœ ์ด์ƒ์˜ ๋ฐ์ดํ„ฐ ํ•ธ๋“ค๋งํ•ด.. ๋”๋ณด๊ธฐ
3/22 ํ™” ํ™”์š”์ผ! ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐํ™”ํ•˜๋Š” ๋Œ€ํ‘œ์ ์ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ Matplotlib์— ๋Œ€ํ•ด ๋ฐฐ์šด๋‹ค! Matplotlib ์•ˆ์— Pyplot์ด๋ผ๋Š” sub package๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. Line plot(์„  ๊ทธ๋ž˜ํ”„), Histogram(๋„์ˆ˜ํ‘œ), Scatter(์‚ฐ์ ๋„), Box plot, ๊ทธ ์™ธ Area plot, Bar chart(๋ง‰๋Œ€ ๊ทธ๋ž˜ํ”„) 1. Line plot(์„  ๊ทธ๋ž˜ํ”„) : ์—ฐ์†์ ์ธ ๊ฐ’์˜ ๊ฒฝํ–ฅ์„ ํŒŒ์•…ํ•  ๋•Œ ์ฃผ๋กœ ์‚ฌ์šฉ(์‹œ๊ณ„์—ด) import pandas as pd import matplotlib.pyplot as plt # 1. Line plot(์„  ๊ทธ๋ž˜ํ”„) plt.title('Line Plot') # plot์˜ ์ œ๋ชฉ์„ ์„ค์ • plt.plot([1, 5, 12, 25]) # x์ถ•์˜ ์ž๋ฃŒ ์œ„์น˜(x ์ถ• ๋ˆˆ๊ธˆ) -> tick์€.. ๋”๋ณด๊ธฐ
3/21 ์›” ์›”์š”์ผ! ์˜ค๋Š˜์€ Pandas์˜ DataFrame(DataFrame ์—ฐ๊ฒฐ · ๊ฒฐํ•ฉ, Mapping, Grouping)์„ ๋งˆ๋ฌด๋ฆฌ ์ง“๊ณ , ๋‚ด์ผ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ์˜ ์‹œ๊ฐํ™”์— ๋Œ€ํ•ด ๋ฐฐ์šด๋‹ค. 1. DataFrame ์—ฐ๊ฒฐ : pd.concat(). default๋Š” ํ–‰ ๋ฐฉํ–ฅ์œผ๋กœ ์—ฐ๊ฒฐ. ์ปฌ๋Ÿผ ๋ช…์ด ๊ฐ™์€ ๊ฒƒ๋“ค์ด ์„œ๋กœ ๊ฒฐํ•ฉ๋จ import numpy as np import pandas as pd df1 = pd.DataFrame({'a':['a0', 'a1', 'a2', 'a3'], 'b':[1, 2, 3, 4], 'c':['c0', 'c1', 'c2', 'c3']}, index=[0, 1, 2, 3]) display(df1) df2 = pd.DataFrame({'b':[5, 6, 7, 8], 'c':['c0', 'c1', 'c2'.. ๋”๋ณด๊ธฐ
2ํšŒ ์ฐจ | 3/18 ๊ธˆ ์ง€๋‚œ์ฃผ ํ™”์š”์ผ์— ๊ฐ€์ด๋“œํ•œ Kaggle์˜ ํƒ€์ดํƒ€๋‹‰ ์˜ˆ์ œ๋ฅผ ๊ฐ์ž ์ง„ํ–‰ํ•˜๊ณ , GitHub์— ๋ฌธ์„œํ™”ํ•ด์„œ ์˜ค๋Š˜ ๋ฆฌ๋ทฐํ–ˆ๋‹ค. ๊ฐ์ž ์–ด๋–ค ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„, ๊ฐ€๊ณต, ๋ชจ๋ธ๋งํ–ˆ๋Š”์ง€ ์ ˆ์ฐจ์™€ ๋Š๋‚€ ์ , ๊ถ๊ธˆ์ฆ์„ ์ˆœ์ฐจ์ ์œผ๋กœ ๋ฐœํ‘œ ๋‹ค๋ฅธ ๋ถ„๋“ค์ด ํ•œ ๊ฑฐ ๋ณด๋ฉด์„œ ์‹ค์Šต/์‘์šฉ ๋งŽ์ด ํ•ด์•ผํ•œ๋‹ค ์ƒ๊ฐ.. ์ „์ฒด์ ์ธ ๊ตฌ์กฐ์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ๋ถ€์กฑํ•ด์„œ, ์™œ ์ด๋ ‡๊ฒŒ ์ถ”์ถœํ•˜๊ณ  ๊ฐ€๊ณตํ•˜๋Š”์ง€ ํŒŒ์•…ํ•˜๊ธฐ๊ฐ€ ์กฐ๊ธˆ ๊นŒ๋‹ค๋กœ์› ๋‹ค. ๊ทธ๋ž˜์„œ ์ƒ๊ฐํ•˜๊ณ  ๊ตฌ์กฐ๋ฅผ ์ •ํ™•ํžˆ ํŒŒ์•…ํ•˜๋ฉด ์•Œ ์ˆ˜ ์žˆ๋Š” ์—๋Ÿฌ๋‚˜ ๋‚ด์šฉ๋“ค์„ ์งˆ๋ฌธํ–ˆ..ใ…Žใ…Ž ํ˜ผ์ž ์‹ค์Šตํ•˜๋ฉด์„œ ์ „์ฒด์ ์ธ ์ ˆ์ฐจ๋ฅผ ํ›‘์œผ๋ฉด์„œ ๋ดค๋˜ ๋‚ด์šฉ๋“ค์ด ์ฃผ๊ฐ„ ์ˆ˜์—… ๋•Œ ๋‚˜์™€์„œ ์ดํ•ดํ•˜๊ธฐ ์ข‹์•˜๋‹ค. ์ฐธ์„ ์ธ์›์ด ์ด 10๋ช…์œผ๋กœ ์บ๊ธ€ ๋ฆฌ๋ทฐ์—๋งŒ 2์‹œ๊ฐ„์ด ๊ฑธ๋ฆผ.. ์ฝ”ํ…Œ ๋ฆฌ๋ทฐ์™€ ์กฐ ํŽธ์„ฑ์„ ๋‹ค์Œ์ฃผ ํ™”์š”์ผ๋กœ ๋ฏธ๋ฃจ๊ณ , ์ด๋ฒˆ ์ฃผ์ฒ˜๋Ÿผ ๊ฐ์ž ์ง„ํ–‰ํ•˜๊ธฐ๋กœ ํ–ˆ๋˜ ์บ๊ธ€ ์˜ˆ์ œ(๋ณด์Šคํ„ด ์ง‘๊ฐ’ ์˜ˆ.. ๋”๋ณด๊ธฐ

728x90