728x90
반응형

분류 전체보기 178

[파이썬/머신러닝] 비지도 학습 군집의 개념

비지도 학습(Unsupervised Learning)은 머신러닝의 주요한 분야 중 하나로, 입력 데이터에서 유용한 정보를 추출하거나 패턴을 찾아내지만, 명시적인 출력 레이블이나 정답 없이 학습을 수행하는 방법입니다. 비지도 학습의 핵심 목표 중 하나는 군집화(Clustering)입니다. 군집화(Clustering)의 개념 군집화는 비슷한 특성을 가진 데이터 포인트들을 그룹으로 묶는 과정입니다. 이러한 그룹을 클러스터(Cluster)라고 하며, 클러스터 내의 데이터 포인트는 서로 비슷하고, 다른 클러스터의 데이터 포인트와는 구별됩니다. 군집화는 데이터의 내재된 구조나 패턴을 발견하는 데 유용하며, 데이터 세트를 이해하고, 정리하며, 요약하는 데 도움을 줍니다. 비지도 학습에서 군집화의 역할 데이터 탐색 및..

programming/Python 2024.02.04

[파이썬/머신러닝] 선형 커널을 가진 SVM분류 모델을 만들고 시각화하는 예제

필요한 라이브러리 가져오기: numpy: 수치 계산 라이브러리 pandas: 데이터 프레임 처리 라이브러리 seaborn: 데이터 시각화 라이브러리 sklearn.model_selection: 모델 선택 및 평가 관련 라이브러리 sklearn.svm: SVM 모델 sklearn.metrics: 모델 평가 지표 sklearn.preprocessing: 데이터 전처리 matplotlib.pyplot: 그래프 그리기 라이브러리 펭귄 데이터셋 로드: sns.load_dataset("penguins")를 사용하여 seaborn 라이브러리에서 기본 제공하는 펭귄 데이터셋을 로드합니다. 데이터 전처리: 결측치를 제거하고, LabelEncoder를 사용하여 'species' 열의 범주형 변수를 숫자로 인코딩합니다. 인..

programming/Python 2024.02.04

[파이썬/머신러닝] SVM모델로 다항 분류 모델링

오늘은 인공지능 알고리즘 중 지도 학습 중 분류 알고리즘에 속하는 SVM에 대하여 알아보자! 아래는 예제에 활용할 데이터이며, 아래는 펭귄의 종, 서식지, 부리의길이, 부리의 두께, 물갈퀴의 길이, 체중, 성별이 담겨져있다. 데이터 불러오기 import pandas as pd import numpy as np from matplotlib import pyplot as plt import seaborn as sns #펭귄 데이터 불러오기 df = pd.read_csv("파일의경로/penguins.csv") sns.violinplot(x="species", y="body_mass_g", hue="sex", data=df, split=True) 데이터 전처리 결측치가 몇 개인지 파악하고 dropna()로 제거..

programming/Python 2024.02.04

[파이썬/머신러닝] sklearn.RandomForestClassifier로 다항분류 모델링하기

아래 코드는 RandomForestClassifier를 사용하여 Iris 데이터셋을 다루는 예시입니다. 다음은 코드의 주요 단계와 각 부분에 대한 설명입니다. # 필요한 라이브러리 불러오기 import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import accuracy_score, classification_report from sklearn.preprocessing impo..

[파이썬/머신러닝] 가중치(coef),편향(intercept)에 관하여

머신러닝 모델에서의 coef와 intercept는 주로 선형 모델에서 사용되는 용어입니다. 주로 선형 회귀와 로지스틱 회귀에서 나타나는데, 이들은 입력 변수와 목표 변수 간의 관계를 모델링하는데 사용됩니다. coef (계수): coef는 회귀 모델에서 각 입력 변수의 계수를 나타냅니다. 선형 회귀의 경우, y = b0 + b1*x1 + b2*x2 + ... + bn*xn에서 b1, b2, ..., bn이 coef에 해당합니다. 로지스틱 회귀의 경우, 이진 분류의 경우 y = b0 + b1*x1 + b2*x2 + ... + bn*xn에서도 선형 회귀와 같이 계수가 적용되며, 다중 클래스 분류의 경우 각 클래스에 대한 계수가 있습니다. 중요성: 계수는 해당 입력 변수가 모델 예측에 얼마나 영향을 미치는지를 ..

[파이썬/머신러닝] 로지스틱 회귀 알고리즘의 유형

로지스틱 회귀 알고리즘은 이진 분류 문제에 많이 사용되는 머신러닝 알고리즘 중 하나입니다. 로지스틱 회귀 알고리즘을 구현할 때, 최적화 알고리즘을 선택할 수 있는데, 그 중에서도 liblinear, newton-cg, lbfgs, sag, saga가 많이 사용됩니다. 각 알고리즘에 대해 간단하게 설명해보겠습니다. 1. liblinear: 특징: 이 알고리즘은 작은 데이터셋에 적합하며, L1 정규화와 L2 정규화를 모두 지원합니다. 적용 분야: 작은 규모의 데이터셋이나 고차원 데이터에 적합합니다. 2. newton-cg: 특징: 뉴턴 메서드를 사용하여 비용 함수를 최적화합니다. L2 정규화를 지원하며, 다변수 최적화에 효과적입니다. 적용 분야: 중간 규모의 데이터셋에서 잘 동작하며, 다차원 최적화 문제에 ..

[파이썬] st.text_input으로 텍스트 입력하기

전체 코드 및 해석 import streamlit as st st.text_input("Your name", key="name") #텍스트인풋을 통해 위젯을 화면에 출력합니다. st.session_state.name #매직 기능을 활용해 입력값을 출력합니다. session_state는 mutablemapping[str,any] 형태로 현재 session 상태값을 관리하는데, text_input을 통해 입력값을 session_state.key 형식으로 불러올 수 있습니다. 실행 결과 - text_input으로 원하는 입력값을 받아서 다른 함수에 입혀서 사용해보세요!

programming/Python 2023.12.29

[파이썬] streamlit의 tabs&columns 기능활용하기

안녕하세요. 이번에는 코드별로 따로 설명을 하지 않고, 전체코드에 주석으로 설명을 대체하였습니다. 전체 코드& 해석 import streamlit as st import matplotlib.pyplot as plt import numpy as np import seaborn as sns def main(): with st.sidebar: st.header("sidebar") day = st.selectbox("select a day", ["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]) #사이드 바를 만들고, 사이드바 헤더를 'sidebar'로 지정한다. #day에 셀렉트박스를 만들어서 요일을 넣어준다. tips = sns.load_dataset("tips") filtered..

programming/Python 2023.12.28

[파이썬] streamlit의 slider 이용해서 위젯 만들기

해당 코드는 Streamlit을 사용하여 간단한 웹 애플리케이션을 만들고, Slider 위젯을 통해 가격을 선택하는 예제입니다. 코드를 블로그 작성용으로 해석하면 다음과 같습니다. Streamlit을 사용한 단순한 가격 선택 애플리케이션 import streamlit as st def main(): st.title("streamlit Button widget") price = st.slider("단가:",1000,10000,value=5000) st.write('가격은',price,'원입니다.') if __name__ == "__main__": main() 해석: 1. streamlit 라이브러리를 임포트합니다. 2. main 함수를 정의합니다. 3. st.title을 사용하여 웹 애플리케이션의 제목을 ..

programming/Python 2023.12.28

[파이썬] streamlit의 plotly_chart로 그룹별로 차트 시각화하기

해당 코드는 Streamlit과 Plotly를 사용하여 성별에 따른 팁(tip) 데이터를 시각화하는 간단한 웹 애플리케이션을 생성하는 코드입니다. 아래는 코드의 주요 부분을 단계별로 설명한 것입니다. 1. 라이브러리 임포트 import streamlit as st import seaborn as sns import plotly.graph_objects as go from plotly.subplots import make_subplots streamlit: Streamlit 웹 애플리케이션을 만드는 데 사용되는 라이브러리 seaborn: 시각화 라이브러리, 여기서는 샘플 데이터를 로드하기 위해 사용 plotly.graph_objects와 plotly.subplots: Plotly를 사용하여 인터랙티브한 차..

programming/Python 2023.12.28
728x90
반응형