Created at : 2024-10-31 11:03
Auther: Soo.Y
πλ©λͺ¨
PyCaretμ νμ΄μ¬(Python)μΌλ‘ μμ±λ μ€ν μμ€ λ¨Έμ λ¬λ λΌμ΄λΈλ¬λ¦¬λ‘μ, μ½λ μμ±μ μ΅μννμ¬ λ¨Έμ λ¬λ μ€νμ λΉ λ₯΄κ³ μ½κ² μνν μ μλλ‘ μ€κ³λμμ΅λλ€. Low-code νκ²½μ μ 곡νμ¬ λ³΅μ‘ν λ¨Έμ λ¬λ λͺ¨λΈμ ꡬμΆ, λΉκ΅, μ΅μ ν κ³Όμ μ κ°μννκ³ μλνν©λλ€.
PyCaret Github : https://github.com/pycaret/pycaret
PyCaret ?
μ£Όμ νΉμ§
1. λ€μν λ¨Έμ λ¬λ μμ μ§μ
- λΆλ₯(Classification)
- νκ·(Regression)
- ν΄λ¬μ€ν°λ§(Clustering)
- μ΄μμΉ νμ§(Anomaly Detection)
- μμ°μ΄ μ²λ¦¬(Natural Language Processing)
- μκ³μ΄ μμΈ‘(Time Series Forecasting)
2. μ¬μ©μ μΉνμ μΈ μΈν°νμ΄μ€
- 볡μ‘ν μκ³ λ¦¬μ¦κ³Ό νλΌλ―Έν° νλ κ³Όμ μ λ¨μννμ¬, λͺ μ€μ μ½λλ‘ λ€μν λͺ¨λΈμ ꡬμΆνκ³ λΉκ΅ν μ μμ΅λλ€.
3. μλνλ λ¨Έμ λ¬λ μν¬νλ‘μ°
- λ°μ΄ν° μ μ²λ¦¬, νΉμ§ 곡ν, λͺ¨λΈ νμ΅, νμ΄νΌνλΌλ―Έν° μ΅μ ν, λͺ¨λΈ νκ° λ° λ°°ν¬κΉμ§μ μ κ³Όμ μ μλνν©λλ€.
4. ν΅ν© λ° νμ₯μ±
- Pandas, NumPy, scikit-learn λ±κ³Ό κ°μ μΈκΈ° μλ νμ΄μ¬ λΌμ΄λΈλ¬λ¦¬μ ν΅ν©λμ΄ μμΌλ©°, TensorFlow, PyTorch λ±μ λ₯λ¬λ νλ μμν¬μλ μ°λμ΄ κ°λ₯ν©λλ€.
PyCaret Install
PyCaretμ poetryλ₯Ό ν΅ν΄μ μ€μΉκ° κ°λ₯νλ€. λ€λ₯Έ λΌμ΄λΈλ¬λ¦¬λ€κ³Όμ νΈνμ μν΄μ poetryλ₯Ό μΆμ²ν©λλ€.
poetry add pycaret
python 3.11 μΆμ² 2024.10.31 κΈ°μ€μΌλ‘ pycaretμ python λ²μ μ΄ 3.12κΉμ§λ§ νΈνλκ³ μλ€. νμ§λ§ λ€λ₯Έ ν¨κΈ°μ§ λ¬Έμ λ‘ python 3.11μ μΆμ²νλ€.
π₯ λ§μ½ μμ μ€ν¬λ¦°μ· μ²λΌ
kaleido
μ μ€μΉ μ€ν¨κ° λ°μνλ€λ©΄, 0.2.1 λ²μ μ μ€μΉνλ©΄ ν΄κ²°ν μ μμ΅λλ€. kaledio
λ₯Ό μ μμ μΌλ‘ μ€μΉλμλ€λ©΄ pycaret
λ₯Ό λ€μ μ€μΉ μλνλ©΄ λ©λλ€.
poetry add kaleido=0.2.1
κΈ°λ³Έ μ¬μ© μμ
λ€μμ PyCaretμ μ¬μ©ν κ°λ¨ν λΆλ₯ λͺ¨λΈ κ΅¬μΆ μμμ λλ€:
import pandas as pd
from pycaret.classification import *
# λ°μ΄ν° λ‘λ
data = pd.read_csv('data.csv')
# νκ²½ μ€μ
s = setup(data, target='target_column')
# λͺ¨λΈ λΉκ΅
best_model = compare_models()
# νΉμ λͺ¨λΈ μμ±
model = create_model('lightgbm')
# λͺ¨λΈ νλ
tuned_model = tune_model(model)
# λͺ¨λΈ νκ°
evaluate_model(tuned_model)
# λͺ¨λΈ μ μ₯
save_model(tuned_model, 'best_model')
μ₯μ
1. ν¨μ¨μ±
- λͺ μ€μ μ½λλ‘ λ³΅μ‘ν λ¨Έμ λ¬λ μμ μ μνν μ μμ΄ κ°λ° μκ°μ μ μ½ν©λλ€.
2. λΉκ΅ λ° μ νμ μ©μ΄μ±
- λ€μν μκ³ λ¦¬μ¦μ μ½κ² λΉκ΅νμ¬ μ΅μ μ λͺ¨λΈμ μ νν μ μμ΅λλ€.
3. μλν
- λ°λ³΅μ μΈ μμ μ μλννμ¬ μ€ν ν¨μ¨μ λμ λλ€.
4. κ΅μ‘μ©μΌλ‘ μ ν©
- λ¨Έμ λ¬λ μ λ¬Έμλ€μ΄ μ 체 νλ‘μΈμ€λ₯Ό μ΄ν΄νλ λ° λμμ΄ λ©λλ€.
μ£Όμμ¬ν λ° νκ³
- μ μ°μ± μ ν: μλνλ νκ²½μ΄κΈ° λλ¬Έμ μΈλΆμ μΈ μ μ΄κ° νμν κ²½μ° νκ³κ° μμ μ μμ΅λλ€.
- μ±λ₯ μ΅μ ν: 볡μ‘ν 컀μ€ν λͺ¨λΈμ΄λ νΉμν λ°μ΄ν°μ μ λν΄μλ μ΅μ μ μ±λ₯μ λ΄κΈ° μ΄λ €μΈ μ μμ΅λλ€.
- λ²μ νΈνμ±: λ€μν λΌμ΄λΈλ¬λ¦¬μ ν΅ν©λμ΄ μμΌλ―λ‘, λ²μ νΈνμ±μ μ£Όμν΄μΌ ν©λλ€.
νμ© λΆμΌ
- νλ‘ν νμ΄ν: λΉ λ₯Έ λͺ¨λΈ κ°λ° λ° ν μ€νΈκ° νμν κ²½μ°.
- κ΅μ‘ λ° νμ΅: λ¨Έμ λ¬λμ μ κ³Όμ μ μ΄ν΄νκ³ μ νλ νμμ΄λ μ΄κΈ κ°λ°μ.
- μ 무 μλν: λ°λ³΅μ μΈ λ¨Έμ λ¬λ μμ μ μλννμ¬ μμ°μ± ν₯μ.
κ²°λ‘
PyCaretμ λ¨Έμ λ¬λ μμ μ κ°μννκ³ μλννμ¬ κ°λ°μμ λ°μ΄ν° κ³Όνμμ μμ°μ±μ λμ¬μ£Όλ κ°λ ₯ν λꡬμ λλ€. Low-code νκ²½μ ν΅ν΄ 볡μ‘ν λ¨Έμ λ¬λ νλ‘μΈμ€λ₯Ό μ½κ² λ€λ£° μ μμΌλ©°, λΉ λ₯Έ μ€νκ³Ό νλ‘ν νμ΄νμ μ ν©ν©λλ€. κ·Έλ¬λ μ μ°μ±μ΄ νμν κ³ κΈ μ¬μ©μλ νΉμν μꡬ μ¬νμ΄ μλ κ²½μ°μλ μ νμ΄ μμ μ μμΌλ―λ‘, μ΄λ¬ν κ²½μ°μλ κΈ°μ‘΄μ λ¨Έμ λ¬λ λΌμ΄λΈλ¬λ¦¬μ λ³ννμ¬ μ¬μ©νλ κ²μ΄ μ’μ΅λλ€.