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

๐Ÿ’ป DEV/Python7

[Python] ํŒŒ์ด์ฌ ์ƒ์ˆ˜(์ „์—ญ ์ƒ์ˆ˜) & ์ „์—ญ์  ์œ ํšจ๋ฒ”์œ„ ํ•„์š”์„ฑ ์ƒ์ˆ˜์™€ ๋ณ€์ˆ˜์˜ ๊ตฌ๋ถ„, ํฌ๊ฒŒ๋Š” ๊ฐ’์— ๋ณ€ํ™”๋ฅผ ์ค„ ๋•Œ์˜ ์ž์œ ๋„๊ฐ€ ์–ด๋– ํ•œ์ง€์— ์ฐจ์ด์ ์„ ๋“œ๋Ÿฌ๋ƒ…๋‹ˆ๋‹ค. ํŒŒ์ด์ฌ์—์„œ์˜ ์ƒ์ˆ˜(Constants)์— ๋Œ€ํ•ด์„œ ๋ฉ”๋ชจํ•  ์‚ฌํ•ญ์„ ๊ธฐ๋กํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ ‘๊ทผ 1. ํŒŒ์ด์ฌ ์ƒ์ˆ˜ ํŠน์ด์  2. ์˜ˆ์ œ ๋ฐฉ๋ฒ• 1. ํŒŒ์ด์ฌ ์ƒ์ˆ˜ ํŠน์ด์  (1) ํŒŒ์ด์ฌ ์ƒ์ˆ˜๋Š” ์˜ค๋กœ์ง€ "๋Œ€๋ฌธ์ž(Capital)"๋กœ๋งŒ ์“ด๋‹ค. (2) ๋‘ ๋‹จ์–ด ์ด์ƒ์ด ํ•ฉ์ณ์ง„ ๋‹จ์–ด๋Š” "_" (์–ธ๋”๋ฐ”)๋กœ ๊ตฌ๋ถ„์„ ํ•œ๋‹ค. (3) ๊ทธ๋ ‡๊ฒŒ ์ž‘์„ฑ๋œ ์ƒ์ˆ˜๋Š” ํƒ€ ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ ์‚ฌ์šฉ๋  ๋•Œ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜์ง€ ๋ชปํ•จ์„ (1), (2)๋ฅผ ํ†ตํ•ด ์‰ฝ๊ฒŒ ์œ ์ถ”ํ•  ์ˆ˜ ์žˆ๋‹ค. 2. ์˜ˆ์ œ # ex) ์ „์—ญ์ƒ์ˆ˜ PI = 3.14159 URL = "https://www.naver.com" TWITTER_HANDLE = "@StarStar" def calc(): TWITTER_HAN.. 2023. 9. 1.
[Python] DocStrings (๋…์ŠคํŠธ๋ง) ์ž‘์„ฑ ํ•„์š”์„ฑ ํŒŒ์ด์ฌ์„ ํ™œ์šฉํ•ด ์ž‘์—…ํ•  ํ•จ์ˆ˜(Function)๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ๋‹ค๋ฃจ๋˜ ์ค‘, ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ์— ์œ ์šฉํ•˜๊ฒŒ ์“ฐ์ผ ์ˆ˜ ์žˆ๋Š” "Python ๋‚ด DocString"์„ ์•Œ๊ฒŒ ๋์Šต๋‹ˆ๋‹ค. ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ๋ฉด, ์ฝ”๋“œํŽธ์ง‘๊ธฐ ์ฐฝ์— ๋ฉ๋‹ฌ์•„ ์•ˆ๋‚ด๋˜๋Š” ํ•จ์ˆ˜ ์„ค๋ช…๋ฌธ๊ตฌ๋ฅผ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , ์ด๋ฅผ ํ†ตํ•ด ํ˜‘์—…์‹œ ์†Œํ†ต ๋˜ํ•œ ์œ ์šฉํ•  ๊ฒƒ ๊ฐ™์•„ ๊ธฐ๋ก์„ ๋‚จ๊ธฐ๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ์ ‘๊ทผ (์š”์•ฝ) 1. Docstring ์ด๋ž€? (1.1) ์ •์˜, ํŠน์ง• 2. Python์—์„œ์˜ ์ฝ”๋“œ ์˜ˆ์‹œ (2.1). (One-line / Mulit-line) Docstring (2.2). ํ•จ์ˆ˜ ์ƒ์„ฑ-์„ ์–ธ (2.3). ์ฝ”๋“œํŽธ์ง‘๊ธฐ์—์„œ์˜ Python ์†์„ฑ์— ์ ‘๊ทผ ๋ฐฉ๋ฒ• 1. Docstring ์ด๋ž€? (1.1) ์ •์˜, ํŠน์ง•(์ž‘์„ฑ๋ฒ•) ์ •์˜ : Docstring์ด๋ž€, ๋ชจ๋“ˆ, .. 2023. 5. 25.
[Python] ํ”„๋กœ๊ทธ๋žจ ์žฌ์‹คํ–‰์‹œ terminal clearํ•˜๋Š” ๋ฐฉ๋ฒ• ํ•„์š”์„ฑ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ๋™ํ•˜๋‹ค๊ฐ€, ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์„ ํ†ตํ•ด ์žฌ์‹คํ–‰์ด ๋˜๋Š” ๋ถ„๊ธฐ ๋•Œ์—, ์ž‘๋™๋˜๋˜ terminal์„ clear(=๊นจ๋—ํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ ) ์žฌ์‹คํ–‰์ด ๋˜๋„๋ก ํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€๋ น, ์—ฌ๋Ÿฌ n๋ช…์˜ ์‚ฌ์šฉ์ž๊ฐ€ ์ˆœ์ฐจ์ ์œผ๋กœ ์ž…๋ ฅ์„ ํ•˜๋Š”๋ฐ ์„œ๋กœ๊ฐ€ ์ž…๋ ฅํ•œ ๊ฐ’์„ ๋ชจ๋ฅด๊ฒŒ ํ•ด์•ผํ•  ๋•Œ์— ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋„๋ก ๋ง์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋น„๊ต์  ๋‹จ์ˆœํ•˜๊ฒŒ ์ด๋Ÿฌํ•œ ์—ญํ• ์„ ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ํ•จ์ˆ˜๋กœ ๋งŒ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ ‘๊ทผ (์š”์•ฝ) 1. ํ”ํžˆ ์‚ฌ์šฉํ•˜๋Š” terminal clear (1.1) Window ํ™˜๊ฒฝ Terminal (1.2) Linux-Ubuntu ํ™˜๊ฒฝ Terminal 2. Python์—์„œ์˜ ์ฝ”๋“œ ์˜ˆ์‹œ (2.1). ํ•จ์ˆ˜ ์ƒ์„ฑ-์„ ์–ธ ๋ฐฉ๋ฒ• 1. ํ”ํžˆ ์‚ฌ์šฉํ•˜๋Š” terminal clear (1.1) Window ํ™˜๊ฒฝ Terminal "cls".. 2023. 5. 24.
[Python_ML] (์ž‘์„ฑ์ค‘)GPU ์‚ฌ์šฉ ๊ฐœ๋ฐœํ™˜๊ฒฝ ๊ตฌ์ถ• (NVIDIA , Tensorflow , CUDA , cuDNN ๊ฐœ๋… & ์„ค์น˜ & ๋ฒ„์ „์ด์Šˆ ํ™•์ธ ) ํ•„์š”์„ฑ ์ ‘๊ทผ 1. (1.1) 2. (2.1). ๋ฐฉ๋ฒ• 1. (1.1) 2. (2.1). ์ด์ƒ์œผ๋กœ, GPU ์‚ฌ์šฉ ๊ฐœ๋ฐœํ™˜๊ฒฝ ๊ตฌ์ถ• (NVIDIA , Tensorflow , CUDA , cuDNN ๊ฐœ๋… & ์„ค์น˜ & ๋ฒ„์ „์ด์Šˆ ํ™•์ธ )์„ ํ•™์Šตํ•ด๋ดค์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ์งˆ๋ฌธ์„ ๋Œ“๊ธ€์„ ๋‹ฌ์•„์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค^^! ์˜ค๋Š˜๋„ ํŒŒ์ดํŒ…์ž…๋‹ˆ๋‹ค! 2023. 4. 19.
[Python] CUDA, cuDNN ์„ค์น˜๋ฒ„์ „ ํ™•์ธํ•˜๊ธฐ ํ•„์š”์„ฑ ์œˆ๋„์šฐ ์„œ๋ฒ„์—์„œ ML/DL ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ•˜๊ณ ์ž GPU๋ฅผ ํ™œ์šฉํ•  ๊ณ„ํš์œผ๋กœ ๊ฐœ๋ฐœํ™˜๊ฒฝ ๊ตฌ์ถ•์„ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. PC์˜ compute capacity๋ฅผ ํ™•์ธํ•˜๋ฉฐ NVIDIA ๋“œ๋ผ์ด๋ฒ„ ์„ค์น˜๋ฅผ ํ•˜๊ณ , CUDA์™€ cuDNN๋ฅผ ์„ค์น˜, ๋ฒ„์ „์— ํ˜ธํ™˜์ด ๋˜๋Š” Tensorflow ๊นŒ์ง€ ์„ค์น˜๋ฅผ ํ–ˆ์Šต๋‹ˆ๋‹ค. CUDA - cuDNN - Tensorflow ๊ฐ„ ์„ค์น˜ ๋ฒ„์ „ ํ˜ธํ™˜์„ฑ ์ด์Šˆ์— ๊ต‰์žฅํžˆ ๋งŽ์€ ํ—ˆ๋“ค์„ ๋Š๊ผˆ์ง€๋งŒ, ํ•ด๊ฒฐ์„ ํ–ˆ๊ณ  ์ด์— CUDA์™€ cuDNN์˜ ๋ฒ„์ „ํ™•์ธ์„ ์œ„ํ•œ ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ์ ‘๊ทผ 1. CUDA ์„ค์น˜๋ฒ„์ „ ํ™•์ธ (1.1) ๋ช…๋ นํ”„๋กฌํ”„ํŠธ > ๋ช…๋ น์–ด 2. cuDNN ์„ค์น˜๋ฒ„์ „ ํ™•์ธ (2.1). ์„ค์น˜ ํด๋” ์ ‘๊ทผ (2.2). ํŒŒ์ผ(๋ฉ”๋ชจ์žฅ) ์—ด๊ธฐ > ๋ฒ„์ „ํ™•์ธ ๋ฐฉ๋ฒ• 1. CUDA ์„ค์น˜๋ฒ„์ „ ํ™•์ธ (1.1) ๋ช…๋ นํ”„๋กฌํ”„ํŠธ > ๋ช…๋ น์–ด.. 2023. 4. 5.
[Python] Python ์„ค์น˜, Anaconda ์„ค์น˜ (๊ธฐ๋ณธ ํ™˜๊ฒฝ์„ค์ •) ํ•„์š”์„ฑ ๊ฐœ๋ฐœ์„ ํ•ด๋‚˜๊ฐ€๋ฉด์„œ Jupyter(or JupyterLab or JupyterHub)๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๊ฑฐ๋‚˜, conda ํ™˜๊ฒฝ์„, DL๊ณผ ML์„ ์œ„ํ•ด์„œ๋Š” Python ๊ฐœ๋ฐœํ™˜๊ฒฝ์„ ๊ฐ–์ถฐ์•ผํ•˜๋Š” ์ผ์€ ๋‹น์—ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ์ค‘ ํ•ต์‹ฌ์ด์ž ๊ธฐ๋ณธ์ธ (1) Python ์„ค์น˜, (2) Anaconda ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ ‘๊ทผ 1. Anaconda ์„ค์น˜ - (1-1) ์„ค์น˜ (Install) (1-2) ์—…๋ฐ์ดํŠธ(Update) 2. Python ์„ค์น˜ - (1-1) ์„ค์น˜ (Install) ๋ฐฉ๋ฒ• 1. Anaconda ์„ค์น˜ 1-1. ์„ค์น˜ (Install) 1) ์•„๋‚˜์ฝ˜๋‹ค ์„ค์น˜ url ์ ‘์† → download ๋ฒ„ํŠผ์œผ๋กœ ๋ณธ์ธ์˜ ์šด์˜์ฒด์ œ์— ๋งž๊ฒŒ ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. 2) cmd์ฐฝ์„ ์—ด์–ด "conda --version"์„ ์ž…๋ ฅํ•˜๊ณ , ์ œ๋Œ€๋กœ ์„ค์น˜๊ฐ€.. 2023. 3. 8.
[Python] ์Šฌ๋ผ์ด์‹ฑ(Slicing)์˜ ๋ชจ๋“  ๊ฒƒ (์ž‘์„ฑ์ค‘) ์ •์˜ '์Šฌ๋ผ์ด์Šค(slice)'๋Š” ๋ฌด์—‡์ธ๊ฐ€์˜ ์ผ๋ถ€๋ฅผ ์ž˜๋ผ๋‚ธ๋‹ค๋Š” ๋œป์œผ๋กœ, ์‹œํ€€์Šค ์ž๋ฃŒํ˜•์„ ๋Œ€์ƒ์œผ๋กœ ์ž์ฃผ ์‚ฌ์šฉ์ด ๋ฉ๋‹ˆ๋‹ค. ๋‹ค์‹œ ๋งํ•ด, ์—ฐ์†์ ์ธ ๊ฐ์ฒด๋“ค(ex_๋ฆฌ์ŠคํŠธ, ํŠœํ”Œ, ๋ฌธ์ž์—ด)์˜ ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•ด ์„ ํƒํ•œ ๋’ค, ๊ฐ์ฒด๋“ค์„ ์ž˜๋ผ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ๋ฒ• ๋ฐ ํ‘œ๊ธฐ๋ฒ•์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์Šฌ๋ผ์ด์‹ฑ(slicing)์˜ ๊ณผ์ •์„ ๊ฑฐ์น˜๋ฉด, ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ฒŒ ๋˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. case ์ง€์ • 1) ์ฃผ๋ฏผ๋ฒˆํ˜ธ ('-' ํฌํ•จ) ๋ฅผ ํ†ตํ•ด ์Šฌ๋ผ์ด์‹ฑ(Slicing)์„ ํŒŒ์•…ํ•œ๋‹ค. 2) ์ฃผ๋ฏผ๋ฒˆํ˜ธ๋Š” "123456-7891011"์œผ๋กœ ์ง„ํ–‰์„ ํ•œ๋‹ค. ๊ธฐ๋ณธ ํ˜•ํƒœ a[start : end : step] ''' start = ์Šฌ๋ผ์ด์‹ฑ์˜ ์‹œ์ž‘์  end = ์Šฌ๋ผ์ด์‹ฑ์„ ๋๋‚ด๋Š” ์œ„์น˜ step = (stride, ๋ณดํญ)์ด๋ผ๊ณ ๋„ ํ•˜๋ฉฐ ๋ช‡ ๊ฐœ์”ฉ ๋›ฐ์–ด๋„˜์–ด ๊ฐ€์ ธ์˜ฌ ์ง€ ๋ฐฉํ–ฅ์„ ์ •ํ•จ ''.. 2022. 10. 19.