Python

ํŒŒ์ด์ฌ ์–ธ์–ด ๊ธฐ๋Šฅ, ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ์‹ค์ „ ํŒ.

ํŒŒ์ด์ฌ ์–ธ์–ด ๊ธฐ๋Šฅ, ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ์‹ค์ „ ํŒ.

45 posts · ์•„์นด์ด๋ธŒ์—์„œ ํ•„ํ„ฐ๋กœ ๋ณด๊ธฐ

๐Ÿงช ๋‚ด๊ฐ€ ๋ณด๋ ค๊ณ  ์ž‘์„ฑํ•œ pytest ๊ฐ€์ด๋“œ

https://youtu.be/cHYq1MRoyI0 ๋ณธ ํฌ์ŠคํŒ…์€ ์•„๋ž˜ ์ž๋ฃŒ๋“ค์„ ์ฐธ๊ณ ํ•ด์„œ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Pytest Tutorial โ€“ How to Test Python Code pytest documentation TL;DR ๐Ÿ“ pytest๋ž€? pytest๋Š” ํŒŒ์ด์ฌ ๋Œ€ํ‘œ ํ…Œ์ŠคํŠธ ํ”„...

๐Ÿ ๋‚ด๊ฐ€ ๋ณด๋ ค๊ณ  ์ž‘์„ฑํ•œ *args, **kwargs, ๊ทธ๋ฆฌ๊ณ  **vars(args) ํŒŒ์ด์ฌ ํ•จ์ˆ˜ ์ธ์ž ์ •๋ฆฌ

๐Ÿ‘‹ ๋“ค์–ด๊ฐ€๋ฉฐ Python์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๋‹ค ๋ณด๋ฉด ํ•จ์ˆ˜์— ์ธ์ž๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ๋„˜๊ฒจ์•ผ ํ•˜๋Š” ์ƒํ™ฉ์ด ์ž์ฃผ ์ƒ๊น๋‹ˆ๋‹ค. ํŠนํžˆ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ์ฃ : ์ธ์ž์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋งŽ์•„์„œ ์ผ์ผ์ด ์“ฐ๊ธฐ ๊ท€์ฐฎ์„ ๋•Œ argparse๋กœ ํŒŒ์‹ฑํ•œ ์ปค๋งจ๋“œ๋ผ์ธ ์ธ์ž๋ฅผ ํ•จ์ˆ˜์— ๋„˜๊ธฐ๊ณ  ์‹ถ์„ ๋•Œ ์žฌ์‚ฌ์šฉ์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์ข‹์€ ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์„ ๋•Œ ์ด๋Ÿด ๋•Œ args, kwargs...

[๊ฐ€์ด๋“œ] Ollama + LangChain ์‹ค์ „ ๊ฐ€์ด๋“œ - ChatOllama ์‚ฌ์šฉํ•˜๊ธฐ

์ด์ „ ํฌ์ŠคํŠธ์—์„œ๋Š” Python ์ฝ”๋“œ์—์„œ Ollama ๋ช…๋ น์–ด๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋กœ์ปฌ์—์„œ LLM์„ ํ˜ธ์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์•˜์Šต๋‹ˆ๋‹ค. [์ด์ „ ํฌ์ŠคํŠธ ๋ณด๋Ÿฌ๊ฐ€๊ธฐ](https://velog.io/@euisuk-chung/%EA%B0%80%EC%9D%B4%EB%93%9C-Python%EC%97%90%EC%84%9C-Ollama-%EC%82%AC%EC%9A%A9...

[๊ฐ€์ด๋“œ] Python์—์„œ Ollama ์‚ฌ์šฉํ•˜๊ธฐ: ์„ค์น˜๋ถ€ํ„ฐ AI ์—์ด์ „ํŠธ ๋งŒ๋“ค๊ธฐ

๐ŸŒŸ ๊ฐœ์š” Ollama๋Š” ๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ ๋Œ€๊ทœ๋ชจ ์–ธ์–ด ๋ชจ๋ธ(LLM, Large Language Model)์„ ๊ฐ„๋‹จํžˆ ์‹คํ–‰ํ•˜๊ณ  Python ํ”„๋กœ์ ํŠธ์— ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. ํ•ด๋‹น ํฌ์ŠคํŠธ์—์„œ๋Š” Ollama์˜ ์„ค์น˜ ๋ฐฉ๋ฒ•๋ถ€ํ„ฐ Python SDK ์‚ฌ์šฉ๋ฒ•, ์‹ค์ œ ํ™œ์šฉ ์˜ˆ์ œ(์ฑ—๋ด‡ ๊ตฌํ˜„, ์ž๋™ํ™” ์—์ด์ „ํŠธ ๊ฐœ๋ฐœ)๊นŒ์ง€ ๋‹จ๊ณ„๋ณ„๋กœ ์‚ดํŽด๋ด…๋‹ˆ๋‹ค. (์‚ฌ์šฉ...

[๊ฐœ๋…] API์— ๋Œ€ํ•ด์„œ ์ดํ•ดํ•ด๋ณด์ž!

์ด๋ฏธ์ง€ ์ถœ์ฒ˜: https://appmaster.io/ko/blog/cobojareul-wihan-api-apireul-sayonghaneun-bangbeob-wanjeonhan-gaideu 1. API๋Š” ๋ฌด์—‡์ธ๊ฐ€? ๐Ÿ’ก API๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ธํ„ฐํŽ˜์ด์Šค(Application Programming Interface)์˜ ์ค„์ž„๋ง๋กœ...

๐Ÿ’ป ๋‚ด๊ฐ€ ๋ณด๋ ค๊ณ  ์ž‘์„ฑํ•œ UV ์™„๋ฒฝ ๊ฐ€์ด๋“œ

UV: Rust ๊ธฐ๋ฐ˜ ์ดˆ๊ณ ์† Python ํ™˜๊ฒฝ ๊ด€๋ฆฌ ๋„๊ตฌ ์™„๋ฒฝ ๊ฐ€์ด๋“œ UV๋Š” Rust๋กœ ๊ตฌํ˜„๋œ ์ดˆ๊ณ ์† Python ํ™˜๊ฒฝ ๊ด€๋ฆฌ ๋„๊ตฌ๋กœ, Python ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ๊ฐ€์žฅ ๋น ๋ฅด๊ณ  ๊ฐ„๋‹จํ•˜๋ฉฐ ๊ฐ•๋ ฅํ•˜๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด์˜ ์—ฌ๋Ÿฌ ๋„๊ตฌ๋“ค(pyenv, pip, pipenv, venv ๋“ฑ)์„ ํ•˜๋‚˜๋กœ ํ†ตํ•ฉํ–ˆ์Šต๋‹ˆ๋‹ค. (๊นƒํ—ˆ๋ธŒ) https://github.c...

[๊ฐœ๋…์ •๋ฆฌ] Streamlit๐Ÿ‘‘ ์†Œ๊ฐœ ๋ฐ ํ™œ์šฉ ๊ฐ€์ด๋“œ

1. Streamlit์ด๋ž€? Streamlit์€ Python ๊ธฐ๋ฐ˜์˜ ์˜คํ”ˆ์†Œ์Šค ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ, ๋ฐ์ดํ„ฐ ์‚ฌ์ด์–ธ์Šค ๋ฐ ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ์„ ๋น ๋ฅด๊ฒŒ ๋ฐฐํฌํ•˜๊ณ  ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. Flask, Django ๊ฐ™์€ ์ „ํ†ต์ ์ธ ์›น ํ”„๋ ˆ์ž„์›Œํฌ๋ณด๋‹ค ํ›จ์”ฌ ๊ฐ„๊ฒฐํ•œ ์ฝ”๋“œ๋กœ ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋จธ์‹ ๋Ÿฌ๋‹ ๋ชจ๋ธ์˜ ์ž…๋ ฅ๊ณผ ์ถœ๋ ฅ์„ ...

[Pandas] ํŒ๋‹ค์Šค ํ”ผํด(.pkl) ํŒŒ์ผ์˜ ์••์ถ• ๋ฐฉ์‹ ๋น„๊ต

Pandas์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ๋กœ๋“œํ•˜๋Š” ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜๋กœ .pkl(pickle) ํŒŒ์ผ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Pickle ํŒŒ์ผ์€ Python ๊ฐ์ฒด๋ฅผ ์ง๋ ฌํ™”(serialize)ํ•˜์—ฌ ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ, ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”์ด๋„ˆ๋ฆฌ ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ํšจ์œจ์ ์œผ๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (์ฐธ๊ณ ) โ€œ๋ฐ์ดํ„ฐ ์ง๋ ฌํ™”โ€œ๋ž€ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ ๋งค์ฒด์— ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ํ˜•์‹ ๋˜๋Š”...

[ํŒŒ์ด์ฌ] ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ(Decorator) ์‚ฌ์šฉ๋ฒ•

๋ฉ”๋ฆฌํฌ๋ฆฌ์Šค๋งˆ์Šค ์—ฌ๋Ÿฌ๋ถ„!!โ€งโ‚Šหš๐ŸŽ„โœฉ ํฌ๋ฆฌ์Šค๋งˆ์Šค ํŠธ๋ฆฌ๋ฅผ ์žฅ์‹ํ•  ๋•Œ, ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฑด ๋ญ๋‹ˆ ๋ญ๋‹ˆ ํ•ด๋„ ํŠธ๋ฆฌ ์ž์ฒด์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋‹จ์ˆœํ•œ ๋‚˜๋ฌด์— ์˜ˆ์œ ์ „๊ตฌ, ๋ฆฌ๋ณธ, ์žฅ๋‚œ๊ฐ์„ ๋”ํ•˜๋ฉด ํŠน๋ณ„ํ•œ ๋ถ„์œ„๊ธฐ๋ฅผ ์—ฐ์ถœํ•  ์ˆ˜ ์žˆ์ฃ . ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค! ๊ธฐ๋ณธ ํ•จ์ˆ˜์— ์›ํ•˜๋Š” ์žฅ์‹์„ ๋ง๋ถ™์—ฌ์„œ, ํ•จ์ˆ˜์˜ ์ „ํ›„๋ฅผ ๊พธ๋ฏธ๊ฑฐ๋‚˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” ํฌ...

[์ •๋ฆฌ] OpenAI API Document

OpenAI๋Š” ์ตœ์‹  ์ธ๊ณต์ง€๋Šฅ(AI) ๋ชจ๋ธ๊ณผ API๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๋“ค์ด ๋‹ค์–‘ํ•œ AI ๊ธฐ๋Šฅ์„ ์‰ฝ๊ฒŒ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ์•„๋ž˜ platform.openai.com์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ฌธ์„œ๋ฅผ ํ›‘์–ด๋ณด๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ์ฐธ๊ณ  ๋ฌธ์„œ: https://platform.openai.com/docs/overview 1. ์†Œ๊ฐœ O...

[๊ฐ•์˜๋…ธํŠธ] RAG From Scratch : Overview

ํ•ด๋‹น ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŠธ๋Š” RAG From Scratch : Coursework ๊ฐ•์˜ ํŒŒํŠธ 1 - 4 ๋‚ด์šฉ์„ ๋‹ค๋ฃจ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋น„๋””์˜ค ์š”์•ฝ ๊ฐ•์˜ ๋งํฌ ์Šฌ๋ผ์ด๋“œ Part 1 (๊ฐœ์š”) RAG๋ฅผ ์†Œ๊ฐœํ•˜๋ฉฐ, ์‹œ๋ฆฌ์ฆˆ๊ฐ€ ๊ธฐ๋ณธ ๊ฐœ๋…๋ถ€ํ„ฐ ๊ณ ๊ธ‰ ๊ธฐ์ˆ ๊นŒ์ง€ ๋‹ค...

[ํŒŒ์ด์ฌ] ์ •๊ทœํ‘œํ˜„์‹ ํ™œ์šฉ ๋ฐฉ๋ฒ•

์ •๊ทœํ‘œํ˜„์‹(Regular Expression, RegEx)์€ ๋ฌธ์ž์—ด์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ํŒจํ„ด์„ ๊ฒ€์ƒ‰ํ•˜๊ฑฐ๋‚˜ ๋ณ€ํ˜•ํ•  ๋•Œ ๋งค์šฐ ์œ ์šฉํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ๊ณผํ•™๊ณผ ์›น ์Šคํฌ๋ž˜ํ•‘, ํ…์ŠคํŠธ ์ฒ˜๋ฆฌ ๋“ฑ ๋‹ค์–‘ํ•œ ์ž‘์—…์—์„œ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฃฐ ๋•Œ ์ •๊ทœํ‘œํ˜„์‹์€ ํ•„์ˆ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” ํŒŒ์ด์ฌ์—์„œ re ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•ด ์ •๊ทœํ‘œํ˜„์‹์„ ์–ด๋–ป๊ฒŒ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ๋Œ€ํ•ด ์ž์„ธํžˆ ...

[Pandas] ์‹ค๋ฌด์—์„œ ์“ฐ๋ ค๊ณ  ์ •๋ฆฌํ•ด๋‘” Code Snippet

ํŒŒ์ด์ฌ์˜ Pandas ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ ๋ถ„์„ ๋ฐ ์กฐ์ž‘์„ ์œ„ํ•œ ํ•„์ˆ˜ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ํŠนํžˆ, ๋ฐ์ดํ„ฐ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์ •๋ ฌํ•˜๊ณ  ๋ถ„์„ํ•˜๋Š” ๊ฒƒ์€ ๋ฐ์ดํ„ฐ ๊ณผํ•™์ž์˜ ์ค‘์š”ํ•œ ๊ณผ์ œ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์ด์ „ ํฌ์ŠคํŠธ๋“ค์—์„œ๋„ ๋ช‡ ๋ฒˆ ๊ฐœ๋… ๋ฐ ์ฃผ์š” ํ•จ์ˆ˜๋“ค์„ ์†Œ๊ฐœํ•ด๋“œ๋ ธ๋Š”๋ฐ์š”. ์ด ๊ธ€์—์„œ๋Š” ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๋Š” Pandas์˜ ์ •๋ ฌ ๋ฐ ๋ถ„์„์— ์œ ์šฉํ•œ ํ…Œํฌ๋‹‰๊ณผ ํ•จ๊ป˜, ์‹ค๋ฌด์—์„œ ๋ฐ”๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ...

[NLP] 4. Natural Language Embeddings

Natural Language Embeddings ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ(NLP)์—์„œ ํ…์ŠคํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•ด ๋‹ค์–‘ํ•œ ์ž์—ฐ์–ด ์ž„๋ฒ ๋”ฉ ๊ธฐ๋ฒ•(Natural Language Embedding)์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๊ธฐ๋ฒ•๋“ค์„ ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ณ , ๊ฐ ๊ธฐ๋ฒ•์˜ ์˜ˆ์‹œ๋ฅผ ํ†ตํ•ด ์ดํ•ด๋ฅผ ๋•๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ”Ž Text Representatio...

[NLP] 3. Natural Language Preprocessing

1. ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ(NLP) ๊ฐœ์š” ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ์˜ ์ผ๋ฐ˜์ ์ธ ์ˆœ์„œ ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ๋Š” ์Œ์„ฑ์„ ํ…์ŠคํŠธ๋กœ ๋ณ€ํ™˜ํ•˜๊ณ , ํ•ด๋‹น ํ…์ŠคํŠธ๋ฅผ ๋ถ„์„ ๋ฐ ์˜๋ฏธ๋ฅผ ์ถ”์ถœํ•œ ๋’ค, ์ด๋ฅผ ๋‹ค์‹œ ์Œ์„ฑ์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. (์•„๋ž˜ ๊ทธ๋ฆผ ์ฐธ๊ณ ) ์ด ๊ณผ์ •์€ ํฌ๊ฒŒ STT(Speech to Text)์™€ TTS(Text to Speech)๋กœ ๋‚˜๋‰ฉ๋‹ˆ๋‹ค. 1.1 ์ž์—ฐ์–ด ์ฒ˜๋ฆฌ...

Prophet์„ ํ™œ์šฉํ•œ ์‹œ๊ณ„์—ด ์˜ˆ์ธก๐Ÿ”ญ

Prophet ์†Œ๊ฐœ Facebook Prophet์€ ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ์˜ ์˜ˆ์ธก์„ ์œ„ํ•ด Facebook์—์„œ ๊ฐœ๋ฐœํ•œ ์˜คํ”ˆ์†Œ์Šค ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค. Prophet์€ ์ž๋™ํ™”๋œ ์ด์ƒ ํƒ์ง€ ๋ฐ ๊ณ„์ ˆ์„ฑ ๋ถ„์„์„ ์ง€์›ํ•˜๋ฉฐ, ํŠนํžˆ ๋น„์ฆˆ๋‹ˆ์Šค ์˜ˆ์ธก(์˜ˆ: ๋งค์ถœ, ์‚ฌ์šฉ์ž ์ˆ˜, ์›น ํŠธ๋ž˜ํ”ฝ ๋“ฑ)์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋งํฌ: https://facebook.github.io/prophe...

[๊ฐœ๋…์ •๋ฆฌ] ์‹œ๊ณ„์—ด ์ธ๊ณผ๊ด€๊ณ„ ๋ถ„์„: Granger Causality

์•ˆ๋…•ํ•˜์„ธ์š”๐Ÿ˜Š ์ง€๋‚œ ๋ฒˆ ํฌ์ŠคํŠธ์—์„œ โ€œ์ธ๊ณผ๊ด€๊ณ„์™€ ์ƒ๊ด€๊ด€๊ณ„์˜ ๊ฐœ๋…โ€(๋งํฌ)์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด์•˜๋Š”๋ฐ์š”. ์˜ค๋Š˜์€ ์‹œ๊ณ„์—ด ๋ถ„์„์˜ ํ•ต์‹ฌ ๊ฐœ๋… ์ค‘ ํ•˜๋‚˜์ธ โ€˜๊ทธ๋žœ์ € ์ธ๊ณผ๊ด€๊ณ„(Granger causality)โ€™์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ณ , ์ด๋ฅผ ์‹ค์ œ ๋ฐ์ดํ„ฐ์— ์ ์šฉํ•ด๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ ธ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์‹ค์Šต์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๋Š” Kaggle ๋ฐ์ดํ„ฐ ์ค‘ ํ•˜๋‚˜์ธ Advertising Sales ...

[ํŠธ๋ฆฌ] ํŠธ๋ฆฌ ๊ธฐ๋ฐ˜ ML ์•Œ๊ณ ๋ฆฌ์ฆ˜

ํŠธ๋ฆฌ ๊ธฐ๋ฐ˜ ML ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํŠธ๋ฆฌ ๊ธฐ๋ฐ˜ ๋จธ์‹ ๋Ÿฌ๋‹(ML) ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ฐ์ดํ„ฐ์˜ ํŠน์ง•์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํŠธ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์˜ˆ์ธก(Regression) ๋˜๋Š” ๋ถ„๋ฅ˜(Classification)๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ฃจํŠธ ๋…ธ๋“œ์—์„œ ์‹œ์ž‘ํ•˜์—ฌ ๋‚ด๋ถ€ ๋…ธ๋“œ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„ํ• ํ•˜๊ณ , ๋ฆฌํ”„ ๋…ธ๋“œ์—์„œ ์ตœ์ข… ์˜ˆ์ธก๊ฐ’์„ ์‚ฐ์ถœํ•ฉ๋‹ˆ๋‹ค. ํŠธ๋ฆฌ ๊ธฐ๋ฐ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ๋ฅผ ์‹œ๊ฐ์ ์œผ...

[ํŒŒ์ด์ฌ] ์šฐ๋ถ„ํˆฌ์—์„œ ํ•œ๊ธ€ ํฐํŠธ ์„ค์น˜ํ•˜๊ณ  matplotlib์— ์‚ฌ์šฉํ•˜๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š”๐Ÿ˜› ์˜ค๋Š˜์€ ์šฐ๋ถ„ํˆฌ์—์„œ ํ•œ๊ธ€ ํฐํŠธ ์„ค์น˜ํ•˜๊ณ  matplotlib์—์„œ ํ•ด๋‹น ํฐํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ •๋ฆฌํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค! ํŒŒ์ด์ฌ์„ ํ™œ์šฉํ•˜๋‹ค๋ณด๋ฉด ์‹œ๊ฐํ™”๋Š” ํ•„์ˆ˜ ์˜์—ญ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ Linux ํ™˜๊ฒฝ์—์„œ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ํ•œ๊ธ€ ํฐํŠธ๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ์ง€ ์•Š์•„ ํ•œ๊ธ€์ด ์ œ๋Œ€๋กœ ํ‘œ์‹œ๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ๋ณธ ๊ฒŒ์‹œ๊ธ€์˜ ์ œ๋ชฉ์ฒ˜๋Ÿผ ๋„ค๋ชจ๋„ค๋ชจ ๋น”์„ ๋งž์€ ๊ฒƒ์ฒ˜๋Ÿผ ๊นจ์ ธ์„œ ๋‚˜์˜ค๊ฒŒ ๋ฉ...

[๊ฟ€ํŒ] Python์œผ๋กœ ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ๋‹ค๋ฃจ๊ธฐ

์•ˆ๋…•ํ•˜์„ธ์š”๐Ÿค— ์˜ค๋Š˜์€ Python์œผ๋กœ ๋‹ค์–‘ํ•œ ํŒŒ์ผ ํ˜•์‹์„ ๋ถˆ๋Ÿฌ์˜ค๊ณ  ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์†Œ๊ฐœํ•˜๋Š” ๊ธ€์„ ์ž‘์„ฑํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค! ํŒŒ์ด์ฌ์œผ๋กœ ๋ฐ์ดํ„ฐ ๋ถ„์„์ด๋‚˜ ๋จธ์‹ ๋Ÿฌ๋‹ ์ž‘์—…์„ ํ•˜๋‹ค ๋ณด๋ฉด ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ ํŒŒ์ผ์„ ๋งˆ์ฃผํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ํŠนํžˆ๋‚˜ LLM(Large Language Model), aka ChatGPT ์‹œ๋Œ€์— ์ ‘์–ด๋“ค๋ฉด์„œ ๊ธฐ์กด์— ์‚ฌ์šฉํ•˜๋˜ CSVํŒŒ์ผ ์ด์™ธ์—๋„ PDF, PP...

[์ดํƒ] ํ†ต๊ณ„ ๊ธฐ๋ฐ˜ ์ด์ƒํƒ์ง€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

ํ†ต๊ณ„ ๊ธฐ๋ฐ˜ ์ด์ƒํƒ์ง€ ํ†ต๊ณ„์  ์ ‘๊ทผ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ธ์ด ๋ฐ์ดํ„ฐ์˜ โ€˜์ •์ƒ์ ์ธโ€™ ํ–‰๋™์„ ํ•™์Šตํ•˜๊ณ  ํ†ต๊ณ„์ ์œผ๋กœ ์ด๋ก€์ ์ธ ํ–‰๋™์„ ๋ณด์ด๋Š” ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๋ฅผ ์ด์ƒ์น˜๋กœ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค. GMM (Gaussian Mixture Models) ๋งํฌ: https://scikit-learn.org/stable/modules/generated/sklearn.mixture...

[์ดํƒ] ์•™์ƒ๋ธ” ๊ธฐ๋ฐ˜ ์ด์ƒํƒ์ง€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

์•™์ƒ๋ธ” ๊ธฐ๋ฐ˜ ์ด์ƒํƒ์ง€ ์•™์ƒ๋ธ” ๊ธฐ๋ฐ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์˜์‚ฌ๊ฒฐ์ • ๊ธฐ๋ฐ˜ ๋ชจ๋ธ์„ ์กฐํ•ฉํ•˜์—ฌ ์ด์ƒ์น˜๋ฅผ ํƒ์ง€ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋†’์€ ์ •ํ™•๋„๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. Isolation Forest ๋งํฌ: https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.IsolationForest....

[์ดํƒ] ๋ฐ€๋„ ๊ธฐ๋ฐ˜ ์ด์ƒํƒ์ง€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

๋ฐ€๋„ ๊ธฐ๋ฐ˜ ์ด์ƒํƒ์ง€ ๋ฐ€๋„ ๊ธฐ๋ฐ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ ๊ฐ„์˜ ์ง€์—ญ์  ๋ฐ€๋„๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ด์ƒ์น˜๋ฅผ ํƒ์ง€ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ฐ์ดํ„ฐ ๋ถ„ํฌ๊ฐ€ ๋ถˆ๊ท ์ผํ•œ ๊ฒฝ์šฐ์—๋„ ์ž˜ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. DBSCAN ๋งํฌ: https://scikit-learn.org/stable/modules/generated/sklearn.cluster.DBSCAN.html ...

[์ดํƒ] ๊ฒฐ์ • ๊ฒฝ๊ณ„ ๊ธฐ๋ฐ˜ ์ด์ƒํƒ์ง€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

๊ฒฐ์ • ๊ฒฝ๊ณ„ ๊ธฐ๋ฐ˜ ์ด์ƒํƒ์ง€ ๊ฒฐ์ • ๊ฒฝ๊ณ„ ๊ธฐ๋ฐ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ฐ์ดํ„ฐ์˜ ๋ถ„ํฌ๋ฅผ ํ•™์Šตํ•˜์—ฌ ๋ช…ํ™•ํ•œ ๊ฒฝ๊ณ„๋ฅผ ํ˜•์„ฑํ•˜๊ณ , ์ด ๊ฒฝ๊ณ„๋ฅผ ๋ฒ—์–ด๋‚˜๋Š” ์ ๋“ค์„ ์ด์ƒ์น˜๋กœ ๊ฐ„์ฃผํ•ฉ๋‹ˆ๋‹ค. OCSVM (One-Class SVM) ๋งํฌ: https://scikit-learn.org/stable/modules/generated/sklearn.svm.OneClassSVM.html ...

[์ดํƒ] ๊ฑฐ๋ฆฌ ๊ธฐ๋ฐ˜ ์ด์ƒํƒ์ง€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

๊ฑฐ๋ฆฌ ๊ธฐ๋ฐ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฑฐ๋ฆฌ ๊ธฐ๋ฐ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ ๊ฐ„์˜ ๊ฑฐ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ด์ƒ์น˜๋ฅผ ํƒ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ํฌ์ธํŠธ๊ฐ€ ๋‹ค๋ฅธ ํฌ์ธํŠธ์™€์˜ ๊ฑฐ๋ฆฌ๊ฐ€ ๋ฉ€๋‹ค๋ฉด ์ด์ƒ์น˜๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค. K-Means Clustering ๊ธฐ๋ฐ˜ ์ด์ƒํƒ์ง€ ๋งํฌ: https://scikit-learn.org/stable/modules/generated/sklearn.cluster.K...

[์„ค์น˜] pipenv๋กœ pyenv ๋ฝ• ๋ฝ‘๊ธฐ

์ง€๋‚œ ๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” pyenv์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด๊ณ  ์ด๋ฅผ ๋ฆฌ๋ˆ…์Šค ํ™˜๊ฒฝ(+Windowํ™˜๊ฒฝ)์— ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ดค๋Š”๋ฐ์š”(๋งํฌ) ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” pyenv์˜ ํšจ๊ณผ๋ฅผ ๊ทน๋Œ€ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” pipenv์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด๊ณ , ์ด๋ฅผ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ• ์ง€ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค ๐Ÿค— 1. pipenv๋ž€? ์ •์˜: pipenv๋Š” ํŒŒ์ด์ฌ์˜ ์˜์กด์„ฑ ๊ด€๋ฆฌ์™€ ๊ฐ€์ƒ ํ™˜๊ฒฝ์„...

[์„ค์น˜] pyenv ์–ด์„œ ์˜ค๊ณ 

Anaconda(Conda)๋Š” ๋จธ์‹ ๋Ÿฌ๋‹, ๋ฐ์ดํ„ฐ๊ณผํ•™ ๋ถ„์•ผ์˜ ๋‹ค์–‘ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋“ค์ด ์„ค์น˜๋œ ๋Ÿฐํƒ€์ž„์ธ ์•„๋‚˜์ฝ˜๋‹ค ํŒŒ์ด์ฌ์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณต๋˜๋Š” ๊ฐ€์ƒํ™˜๊ฒฝ ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค. ์•„๋‚˜์ฝ˜๋‹ค๋Š” ๋ผ์ด์„ผ์Šค ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๋ฐ ํŒ€/ํšŒ์‚ฌ ๋“ฑ์—์„œ ์‚ฌ์šฉ ์‹œ ๋ผ์ด์„ผ์Šค๋ฅผ ๊ตฌ๋งคํ•ด์•ผ ํ•œ๋‹ค๋Š” ์กฐํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ’ก Anaconda is a commercial distribution of Pyt...

[Conda] ํ™œ์šฉ ๊ฐ€์ด๋“œ: ํšจ์œจ์ ์ธ ํ™˜๊ฒฝ ๊ด€๋ฆฌ์™€ Jupyter Kernel ์„ค์ •

Conda๋Š” ๋‹ค์–‘ํ•œ ํ”„๋กœ์ ํŠธ์— ํ•„์š”ํ•œ ๋…๋ฆฝ๋œ ํ™˜๊ฒฝ์„ ๋งŒ๋“ค๊ณ  ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ•๋ ฅํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” Conda ํ™˜๊ฒฝ ์„ค์ •, ๊ด€๋ฆฌ, Jupyter Notebook์—์„œ์˜ ํ™œ์šฉ๋ฒ• ๋“ฑ ๋ช‡ ๊ฐ€์ง€ ์œ ์šฉํ•œ Conda ์‚ฌ์šฉ๋ฒ•์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ํŠน์ • ์ƒํ™ฉ์—์„œ conda activate ๋Œ€์‹  source activate๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ์™€ ๊ทธ ์ด์œ ์— ๋Œ€ํ•ด...

[Conda] Miniforge๋ฅผ ์ด์šฉํ•œ ๋ถ„์„ ํ™˜๊ฒฝ ์„ค์ •ํ•˜๊ธฐ (OS: Ubuntu)

Conda ์†Œ๊ฐœ Conda๋Š” Python ๋ฐ R๊ณผ ๊ฐ™์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ํŒจํ‚ค์ง€, ์˜์กด์„ฑ ๋ฐ ํ™˜๊ฒฝ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ์˜คํ”ˆ์†Œ์Šค ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ Python ๋ฒ„์ „์œผ๋กœ ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ๋งŒ๋“ค๊ณ  ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ฐ์ดํ„ฐ ๊ณผํ•™๊ณผ ๊ธฐ๊ณ„ ํ•™์Šต ํ”„๋กœ์ ํŠธ์— ํ•„์š”ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐ ํŒจํ‚ค์ง€๋ฅผ ์‰ฝ๊ฒŒ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Miniconda์™€ Miniforge์˜ ์ฐจ์ด์  ...

[ํŒŒ์ด์ฌ] ์‰ฝ๊ฒŒ ์„ค๋ช…ํ•œ Process vs Thread

ํ”„๋กœ์„ธ์Šค(Process)๋ž€? ์ปดํ“จํ„ฐ์—์„œ ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๊ณ  ์žˆ์„ ๋•Œ, ๊ทธ ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ์„ ํ”„๋กœ์„ธ์Šค๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ธํ„ฐ๋„ท ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์—ด๋ฉด ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹คํ–‰๋˜๊ณ , ์›Œ๋“œ ํ”„๋กœ์„ธ์„œ(๋ฌธ์„œ ์ž‘์„ฑ ํ”„๋กœ๊ทธ๋žจ)๋ฅผ ์—ด๋ฉด ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹คํ–‰๋˜๋Š” ๊ฒƒ์ด์ฃ . ๊ฐ ํ”„๋กœ์„ธ์Šค๋Š” ์ž์‹ ๋งŒ์˜ ๋…๋ฆฝ๋œ ๊ณต๊ฐ„์„ ๊ฐ€์ง€๋ฉฐ, ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์™€๋Š” ๋…๋ฆฝ์ ์œผ๋กœ ์šด์˜๋ฉ๋‹ˆ๋‹ค. ...

[ํŒŒ์ด์ฌ] multiprocessing์˜ Pool ํด๋ž˜์Šค

multiprocessing.Pool์€ Python์˜ ๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ ๋ชจ๋“ˆ์—์„œ ์ œ๊ณตํ•˜๋Š” ๋งค์šฐ ์œ ์šฉํ•œ ํด๋ž˜์Šค๋กœ, ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ํ”„๋กœ์„ธ์Šค ํ’€์„ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ด ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค์—์„œ ๋™์‹œ์— ์ž‘์—…์„ ์‹คํ–‰ํ•˜๋Š” ๋ณต์žกํ•œ ๋กœ์ง์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณธ ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŠธ์—์„œ๋Š” Pool์˜ ์ฃผ์š” ๊ธฐ๋Šฅ๊ณผ ํŠน์ง•์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. Pool...

[ํŒŒ์ด์ฌ] Multiprocessing, Multithreading ์ž์› ๋ถ„ํ•  ๋ฐ ํ• ๋‹น

๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ๊ณผ ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ์—์„œ ์ž์› ๋ถ„ํ• ๊ณผ ์ž‘์—… ํ• ๋‹น์€ ๊ฐ๊ฐ ๋‹ค๋ฅด๊ฒŒ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. ์ด ๊ณผ์ •์„ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋จผ์ €, ์ปดํ“จํ„ฐ์˜ ์ž์›(ํŠนํžˆ CPU์™€ ๋ฉ”๋ชจ๋ฆฌ) ์‚ฌ์šฉ ๋ฐฉ์‹๊ณผ ์ž‘์—…์˜ ์ข…๋ฅ˜(์˜ˆ: CPU ์ง‘์•ฝ์  vs. I/O ์ง‘์•ฝ์ )๋ฅผ ๊ณ ๋ คํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ(Multiprocessing)์˜ ์ž์› ๋ถ„ํ•  ๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ์—์„œ๋Š” ๊ฐ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋…๋ฆฝ๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„...

[ํŒŒ์ด์ฌ] Multiprocessing, Multithreading ์‚ฌ์šฉ ์‹œ ๊ณ ๋ ค ์‚ฌํ•ญ

๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ๊ณผ ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ์„ ์„ ํƒํ•  ๋•Œ ๊ณ ๋ คํ•ด์•ผ ํ•˜๋Š” ์ž‘์—…์˜ ํŠน์„ฑ์— ๋Œ€ํ•ด ๋” ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ž์› ๋ถ„ํ•  ๋ฐ ํ• ๋‹น์— ๋Œ€ํ•ด์„œ ๊ถ๊ธˆํ•˜์‹  ๋ถ„์„ ๋‹ค์Œ ๊ฒŒ์‹œ๊ธ€์—์„œ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ(Multiprocessing) ๋ฉ€ํ‹ฐํ”„๋กœ์„ธ์‹ฑ์€ ์ฃผ๋กœ CPU ์ง‘์•ฝ์ ์ธ ์ž‘์—…์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฐ ์ž‘์—…์€ ๊ณ„์‚ฐ์ด ๋งŽ์ด ํ•„์š”ํ•˜๊ณ  CPU์˜ ์ž์›์„ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ์ธ...

[TS] ์‹œ๊ณ„์—ด ์ด์ƒํƒ์ง€ ์‹œ๊ฐํ™”

์˜ค๋Š˜์˜ ์ฝ”๋“œ ์‹œ๊ณ„์—ด ์ „๋ฌธ๊ฐ€๋กœ์„œ, ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋ถ„์„๊ฐ€๋กœ์„œ ๋‹ค๋ณ€๋Ÿ‰ ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐํ™”ํ•˜๊ณ  ์ด๋ฅผ ์‚ดํŽด๋ณด๋Š” ์ž‘์—…์€ ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด์— ์˜ค๋Š˜์€ ์ œ๊ฐ€ ์ฃผ๋กœ ์—ฐ๊ตฌ/์—…๋ฌด์— ์‚ฌ์šฉํ•˜๋Š” ์ด์ƒํƒ์ง€ ์‹œ๊ฐํ™” ์ฝ”๋“œ๋ฅผ ์ •๋ฆฌํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28...

[TS] ์ฃผ/์›”๋ณ„ ์ดˆ๊ธฐ ๋‚ ์งœ ๋ณ€ํ™˜ ํ•จ์ˆ˜

์ž‘์„ฑ ์‚ฌ์œ  ๋ฐ์ดํ„ฐ ๋ถ„์„์„ ํ•˜๋‹ค ๋ณด๋ฉด, ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ฐ„, ์›”๊ฐ„์œผ๋กœ ์ชผ๊ฐœ์„œ ๋„ฃ์–ด์ฃผ์–ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ƒ๊ฐ๋ณด๋‹ค ๋นˆ๋ฒˆํ•˜๋‹ค. (ISO ์ฃผ ๋ฒˆํ˜ธ ์ฒด๊ณ„ ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ) ์ด๋ฅผ ์œ„ํ•ด ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ๋ฏธ๋ฆฌ ์ž‘์„ฑํ•ด์„œ ์‚ฌ์šฉ์— ํŽธ์˜์„ฑ์„ ๋†’์ด๊ณ ์ž ํ•œ๋‹ค. ํ•จ์ˆ˜ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ...

ํŒŒ์ด์ฌ ๋งˆ์Šคํ„ฐํ•˜๊ธฐ : ๋žŒ๋‹ค(Lambda) ํ•จ์ˆ˜

๋žŒ๋‹ค(lambda) ํ•จ์ˆ˜๋Š” ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ์ค‘์š”ํ•œ ๊ฐœ๋… ์ค‘ ํ•˜๋‚˜๋กœ, ์ต๋ช… ํ•จ์ˆ˜(anonymous function)๋ผ๊ณ ๋„ ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ๋žŒ๋‹ค ํ•จ์ˆ˜๋Š” ์ด๋ฆ„์ด ์—†๋Š” ํ•จ์ˆ˜๋กœ, ์ผ๋ฐ˜์ ์œผ๋กœ ํ•จ์ˆ˜๋ฅผ ํ•œ ๋ฒˆ๋งŒ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ํ•จ์ˆ˜๋ฅผ ์ธ์ž๋กœ ์ „๋‹ฌํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ์— ๋งค์šฐ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ ๋ธ”๋กœ๊ทธ์—์„œ๋Š” Python์—์„œ ๋žŒ๋‹ค ํ•จ์ˆ˜์˜ ๊ฐœ๋…๊ณผ ํ™œ์šฉ ์˜ˆ์ œ์— ๋Œ€ํ•ด ๋‹ค๋ฃจ์–ด๋ณด๊ฒ ...

ํŒŒ์ด์ฌ ๋งˆ์Šคํ„ฐํ•˜๊ธฐ : apply(), map(), applymap() ํ•จ์ˆ˜

ํŒŒ์ด์ฌ ํŒ๋‹ค์Šค ์‹ฌํ™” ํŒ๋‹ค์Šค(Pandas)๋Š” ๋งค์šฐ ๋‹ค์–‘ํ•œ ํ•จ์ˆ˜์™€ ๋ฉ”์†Œ๋“œ๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฒ˜์Œ ์‚ฌ์šฉํ•˜๋ฉด ํ—ท๊ฐˆ๋ฆด ์ˆ˜ ์žˆ๋Š” ํ•จ์ˆ˜๋“ค์ด ๋งŽ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” apply(), applymap(), map(), reduce()์™€ ๊ฐ™์€ ํ—ท๊ฐˆ๋ฆด ์ˆ˜ ์žˆ๋Š” ํ•จ์ˆ˜๋“ค์„ ์ค‘์‹ฌ์œผ๋กœ ๊ฐ„๋‹จํ•œ ๊ฐœ๋…๊ณผ ์˜ˆ์ œ๋ฅผ ์†Œ๊ฐœํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. 1. apply() apply() ๋ฉ”...

ํŒŒ์ด์ฌ ๋งˆ์Šคํ„ฐํ•˜๊ธฐ : Group By ํ•จ์ˆ˜

ํŒŒ์ด์ฌ ํŒ๋‹ค์Šค ์‹ฌํ™” ํŒ๋‹ค์Šค(Pandas)์—์„œ Group By๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ทธ๋ฃนํ™”ํ•˜๊ณ  ๊ทธ๋ฃนํ™”๋œ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š”๋ฐ ๋งค์šฐ ์œ ์šฉํ•œ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” Python์—์„œ Group By์˜ ๊ฐœ๋…๊ณผ ํ™œ์šฉ ์˜ˆ์ œ์— ๋Œ€ํ•ด ๋‹ค๋ฃจ์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. Group By๋ž€? Group By๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ทธ๋ฃนํ™”ํ•˜๊ณ  ๊ทธ๋ฃนํ™”๋œ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ธฐ๋Šฅ์ž…...

ํŒŒ์ด์ฌ ๋งˆ์Šคํ„ฐํ•˜๊ธฐ : Pandas

ํŒ๋‹ค์Šค(Pandas)๋ž€? ํŒ๋‹ค์Šค(Pandas)๋Š” ํŒŒ์ด์ฌ ๋ฐ์ดํ„ฐ ๋ถ„์„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ค‘ ํ•˜๋‚˜๋กœ, ๋ฐ์ดํ„ฐ ์กฐ์ž‘, ์ •์ œ, ๋ถ„์„, ์‹œ๊ฐํ™” ๋“ฑ์„ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํŒ๋‹ค์Šค๋Š” ์‹œ๋ฆฌ์ฆˆ(Series)์™€ ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„(DataFrame)์ด๋ผ๋Š” ์ž๋ฃŒํ˜•์„ ์ด์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ํŒ๋‹ค์Šค ์„ค์น˜ ํŒ๋‹ค์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋จผ์ € ์„ค์น˜๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ํŒ๋‹ค์Šค๋Š” pip๋ฅผ...

ํŒŒ์ด์ฌ ๋งˆ์Šคํ„ฐํ•˜๊ธฐ : Numpy

NumPy๋ž€? NumPy๋Š” Python์—์„œ ๊ณผํ•™ ์—ฐ์‚ฐ์„ ์œ„ํ•œ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ํŒจํ‚ค์ง€ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. NumPy๋Š” โ€œNumeric Pythonโ€์˜ ์•ฝ์ž์ด๋ฉฐ ๋Œ€๊ทœ๋ชจ ๋‹ค์ฐจ์› ๋ฐฐ์—ด๊ณผ ํ–‰๋ ฌ ์—ฐ์‚ฐ์— ํ•„์š”ํ•œ ๋‹ค์–‘ํ•œ ํ•จ์ˆ˜์™€ ๋ฉ”์†Œ๋“œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. NumPy๋Š” ๋ฐ์ดํ„ฐ ๋ถ„์„, ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ, ์„ ํ˜• ๋Œ€์ˆ˜, ๋จธ์‹  ๋Ÿฌ๋‹ ๋“ฑ ๋‹ค์–‘ํ•œ ๋ถ„์•ผ์—์„œ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. NumPy์˜...

ํŒŒ์ด์ฌ ๋งˆ์Šคํ„ฐํ•˜๊ธฐ : Jupyter

Jupyter ๋…ธํŠธ๋ถ (Jupyter Notebook)์ด๋ž€? Jupyter ๋…ธํŠธ๋ถ์€ ๋ฐ์ดํ„ฐ ๋ถ„์„์ด๋‚˜ ๊ณผํ•™ ์—ฐ๊ตฌ ๋“ฑ์— ์œ ์šฉํ•œ ๋Œ€ํ™”ํ˜• ์›น ๊ธฐ๋ฐ˜ ์ฝ”๋“œ ์‹คํ–‰ ํ™˜๊ฒฝ์ž…๋‹ˆ๋‹ค. Jupyter๋Š” Julia, Python, R ๋“ฑ ๋‹ค์–‘ํ•œ ์–ธ์–ด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋ณธ ์‹œ๊ฐํ™” ๊ฒŒ์‹œ๊ธ€์€ ์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ ํ™˜๊ฒฝ์—์„œ ์ž‘์„ฑ๋  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ด์— ๋Œ€ํ•ด์„œ ๊ฐ€๋ณ๊ฒŒ ํ•œ๋ฒˆ ์ •๋ฆฌํ•ด๋ณด๊ณ  ๋„˜์–ด๊ฐ€๋ณด๋„๋ก...

[์•Œ๊ณ ๋ฆฌ์ฆ˜] ๊ทธ๋ž˜ํ”„

์˜ค๋Š˜์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜/์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ํ‰์†Œ ๋‘๋ ค์›€์— ๋–จ๋ฉฐ ์ œ๋Œ€๋กœ ๊ณต๋ถ€ํ•˜์ง€ ๋ชปํ–ˆ๋˜ ๊ทธ๋ž˜ํ”„์— ๋Œ€ํ•ด ๊ณต๋ถ€๋ฅผ ํ•˜๋ฉฐ ์ •๋ฆฌํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๊ณต๋ถ€ํ•˜๋ฉฐ ์ž‘์„ฑํ•œ ๊ธ€์ด๋ฏ€๋กœ ๋ฐ˜๋ง์ด์–ด๋„ ์–‘ํ•ด๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๋ž˜ํ”„ 1. ๊ทธ๋ž˜ํ”„๋ž€? ๊ทธ๋ž˜ํ”„๋Š” ๊ฐ€์žฅ ์ผ๋ฐ˜ํ™”๋œ ์ž๋ฃŒ๊ตฌ์กฐ๋กœ, ์—ฐ๊ฒฐ๋œ ๊ฐ์ฒด๋“ค ์‚ฌ์ด์˜ ๊ด€๊ณ„๋ฅผ ์ž˜ ํ‘œํ˜„ํ•จ. ๊ทธ๋ž˜ํ”„ ์ด๋ก  ์ผ๋ฐ˜์ ์œผ๋กœ ๊ทธ๋ž˜ํ”„์™€ ๊ด€๋ จ๋œ ๋‹ค์–‘ํ•œ ๋ฌธ์ œ๋ฅผ...

[๋จธ์‹ ๋Ÿฌ๋‹][์‹œ๊ณ„์—ด] AR, MA, ARMA, ARIMA์˜ ๋ชจ๋“  ๊ฒƒ - ์‹ค์ŠตํŽธ

๋ณธ ํฌ์ŠคํŒ…์€ ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•œ ์‹œ๊ณ„์—ด ๋ถ„์„์˜ ์ „๋ฐ˜์ ์ธ ํ”„๋กœ์„ธ์Šค ๊ณผ์ •์„ ๋‹ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ถ„์„ ํŒ์ด๋‚˜ ํ”ผ๋“œ๋ฐฑ์€ ์–ธ์ œ๋‚˜ ํ™˜์˜์ž…๋‹ˆ๋‹ค!! ๐Ÿ™‡โ€โ™‚๏ธ ๋ถ„์„์˜ ์ˆœ์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ถ„์„์€ ์•ž์—์„œ ๋‹ค๋ฃฌ ์‹œ๊ณ„์—ด ๊ฐœ๋…์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ถ„์„์„ ์ˆ˜ํ–‰ํ•œ ๊ฒƒ์ด๋ฏ€๋กœ ๊ฐœ๋…์„ ์ฐพ์•„๋ณด๊ณ  ์‹ถ๋‹ค๋ฉด ์ œ ์ด์ „ ํฌ์ŠคํŠธ์—์„œ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฐธ๊ณ  ๋ฐ์ดํ„ฐ ์„ ์ • ๋ฐ ์ „์ฒ˜๋ฆฌ ...

[ํŒŒ์ดํ† ์น˜] ํŒŒ์ดํ† ์น˜ ๊ธฐ์ดˆ ์š”์†Œ (ํ…์„œํŽธ)

์˜ค๋Š˜์€ ํŒŒ์ดํ† ์น˜๋ฅผ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•ด ์ค‘์š”ํ•œ ๊ธฐ์ดˆ ์ง€์‹๋“ค ์ค‘ ํ…์„œ์— ๋Œ€ํ•ด ๋‹ค๋ฃจ์–ด๋ณผ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. Source : https://hadrienj.github.io/posts/Deep-Learning-Book-Series-2.1-Scalars-Vectors-Matrices-and-Tensors/ ํ…์„œ ํ…์„œ๋Š” โ€˜๋ฐ์ดํ„ฐ๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๋‹จ์œ„โ€™์ž…๋‹ˆ๋‹ค. ...

[Paper Review] Visualizing Data using t-SNE

์„ ์ • ์ด์œ  ์˜ค๋Š˜ ๋ฆฌ๋ทฐ/๋ฒˆ์—ญ/๊ตฌํ˜„ํ•  ๋…ผ๋ฌธ์€ Visualizing Data using t-SNE์œผ๋กœ, 2008๋…„์— Geoffrey Hinton์ด ์ €์ž์ธ ๋…ผ๋ฌธ์ž…๋‹ˆ๋‹ค. t-SNE(t-Stochastic Nearest Neighbor)์€ ์ง€๊ธˆ๊นŒ์ง€๋„ ์‹œ๊ฐํ™”๋ฅผ ํ•˜๋Š” ๋ฐ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ž…๋‹ˆ๋‹ค. ์ด๋Š” ๊ณ ์ฐจ์›์˜ ๋ฒกํ„ฐ๋กœ ํ‘œํ˜„๋˜๋Š” ๋ฐ์ดํ„ฐ ๊ฐ„์˜ neighbor st...