본문 바로가기

분류 전체보기

(77)
오랜만이다. 이거 어떻게 쓰는거더라.. 생각안나네..네 안녕하세요 한 2~3년만에 처음 써보는것 같네요.그냥 오늘은 하고싶은말을 적고 맘대로 적어볼까합니다..일단 요즘 스터디를 조금씩 하기 시작했는데 그 스터디를 노션에만 적기에는 아까운거 같아서 여기에도 남길까합니다.제가 내용을 다 적기보다는 AI랑 대화하면서 이해한바를 정리하고 있는데 나중에 심심하면 들어와서 보셔도 좋을것 같습니다. 23년 8월 취업을 했죠 네.. Tibero에 취업을 했는데 현재는 한 2년 3개월정도 된거 같네요..일단 취업해서 만족하지는 않지만 그래도 남들에 비해 깊이있게 생각을 좀 하는것 같아요.그래서 취업할때보다 내가 하려는 것을 Code로 풀어내는 능력자체는 비슷하거나 오히려 떨어지는것 같긴 한데(알고리즘 기준으로?),배경지식이나 생각하..
[Notion] SQL 프로그래머스 링크 https://frill-waltz-700.notion.site/Programmers-SQL-fccb13f1e42649b1b3fd6516af62a96c Programmers SQL Join frill-waltz-700.notion.site
[HG ML&DL] 06. 비지도 학습 (2) - k-평균 책과 다르게 비지도학습은 data의 종류를 모른다. 이런 경우 평균값을 어떻게 구할까? k-평균(k-means) 군집 알고리즘으로 평균값을 찾을수 있다. 이 평균값이 클러스터의 중심에 위치하기 때문에 클러스터 중심(cluster center) 또는 센트로이드(centroid)라고 부른다. k-평균 알고리즘 데이터 준비하고, 이를 크기 조정해준다. (sample 갯수,너비,높이) -> (sample 갯수, 너비 X 높이) k-평균 알고리즘은 sklearn.cluster / KMeans 클래스에 구현되어 있다. 클러스터 갯수를 지정하는 n_clusters 매개변수가 있다. 비지도 학습이므로 km.fit()에 target이 없다. cluster개수가 3이므로, 0,1,2로 분류된다. km.labels_ 는 0..
[HG ML&DL] 06. 비지도 학습 (1) - 군집 알고리즘 모르는 사진을 종류별로 분류하려 한다. 이렇게 target이 없을 때 사용하는 머신러닝 알고리즘이 바로 비지도 학습(unsupervised learning)이다. 데이터를 준비하고, shape을 보면, 크기가 100 X 100인 300개(샘플의 개수)가 있다. 첫번째 행에 있는 픽셀 100개에 들어 있는 값을 출력하면 위와 같다. 0~255까지의 정숫값중 하나의 값들을 가진다. plt.imshow로 그림을 그려보자. cmap 매개변수로 흑백 이미지를 지정. gray_r로 반전해 볼수 있다. 과일 데이터에 사과, 바나나, 파인애플이 각각 100개씩 들어있다. - 픽셀값 분석하기 이미지를 나눌때 100 X 100 -> 1 X 10000 으로 펼쳐서 계산하면 편리하다. shape을 보면 3차원에서 2차원으로 ..
[HG ML&DL] 05. 트리 알고리즘 (3) - 트리의 앙상블 - 앙상블 학습(ensemble learning) : 여러 개의 분류기를 생성하고, 그 예측을 결합함으로써 보다 정확한 예측을 도출하는 기법, 정형 데이터를 다루는 데 가장 뛰어난 성과를 내는 알고리즘 -> 대부분 결정 트리를 기반으로 만들어져 있다. - 랜덤 포레스트(Random Forest) : 훈련을 통해 구성해놓은 다수의 나무들로부터 분류결과를 취합해서 결론을 얻는 방법, 앙상블 학습의 대표 주자 중 하나로 안정적인 성능 덕분에 널리 사용되고 있다. - 부트스트랩 샘플(bootstrap sample) : 중복 가능 샘플 data를 만들고, sklearn.ensemble / RandomForestClassifier 객체 모델을 만들고, 교차 검증을 하였다. 모델을 학습하고, 각 특성별 중요도를 출력..
[HG ML&DL] 05. 트리 알고리즘 (2) - 교차 검증과 그리드 서치 지금까지 훈련 세트와 테스트 세트로 모델을 평가했습니다. 이제는 테스트 세트를 사용하지 않고 과대적합인지 과소적합인지 판단하기 위한 방법으로 훈련 세트를 또 나눌꺼에요! 이 데이터를 검증 세트(validation set)라고 합니다. data -> train, test / train -> sub, val 로 데이터를 나눴다. sub_data, val_data로 정확도 확인하는 결과를 보여주고 있습니다. - 교차 검증(cross validation) : 검증 세트를 떼어내서 평가하는 과정을 여러 번 반복하는 방법. sklearn.model_selection / cross_validate는 만든 모델을 교차 검증하기 위한 함수. 인자로 cross_validate(Model, input, target) 값을 ..
[HG ML&DL] 05. 트리 알고리즘 (1) - 결정 트리 이번에는 로지스틱 회귀로 와인을 분류하는 것부터 시작한다. DataFrame.head()는 처음 5개의 샘플을 가져온다. 그리고 info() 로 누락된 데이터가 있는지 확인한다. data와 target 생성 후, split 하고, input.shape을 확인한다. 데이터 전처리 후, LogisticRegression() 객체 모델을 생성하고, 학습, 정확도를 본다. 그리고, 계수와 절편을 출력했다. input의 특성이 3개니까, 3차 다항식의 계수가 나온다. - 결정 트리 (Decision Tree) sklearn.tree / DecisionTreeClassifier 객체를 생성하고, 똑같이 학습해줬습니다. tree를 그릴때, max_depth=1로 층을 제한하고, 그림으로 확인할 수 있다. filled..
[HG ML&DL] 04. 다양한 분류 알고리즘 (2) - 확률적 경사 하강법 데이터 준비하기 위해, csv 파일을 불러오고, input, target 데이터를 지정한다. 데이터 전처리를 진행하고 SGDClassifier객체를 생성하되, loss='log_loss', 10epoch만큼 진행합니다. partial_fit()은 1 epoch씩 이어서 훈련할 수 있습니다. 정확도가 향상되었습니다. - 에포크의 과대 / 과소적합 클래스의 객체로 모델을 만들고, 300epoch 진행하는 동안 train_score, test_score의 그래프를 그려보았습니다. top 매개변수는 향상될 최솟값을 지정합니다. None으로 지정하는 경우 자동으로 멈추지 않고 max_iter만큼 반복합니다. - 단어 확률적 경사 하강법 손실 함수 에포크 SGDClassifier