기계학습 7

Intro to Machine Learning(7)

Machine Learning Competitions 당신의 성장을 확인하고 계속 발전하기 위해 기계 학습 시합의 세계에 들어오세요! 기계 학습 시합은 당신의 데이터 사이언스 기술과 당신의 진척도를 평가하기에 가장 좋은 방법입니다. 다음 실습으로 당신은 캐글 학습 유저들을 위한 주택 가격 시합에 예측치를 만들고 제출하는 것입니다. 이것으로 Intro to Machine Learning 코스를 마치겠습니다. 이렇게 Intro to Machine Learning의 모든 수업을 번역하며 공부해봤습니다. 결국 이 코스를 요약하자면, scikit-learn이라는 머신러닝 라이브러리를 활용해본다. decision tree와 random forest를 사용해본다. 만들어진 모델이 잘 동작하는지에 대한 기준을 MAE로..

STUDY LOG/Kaggle 2021.09.26

Intro to Machine Learning(6)

랜덤 포레스트(Random Forests) 더 세련된 기계학습 알고리즘을 사용해봅시다. 소개 의사 결정 트리는 당신에게 어려운 결정을 남겨줍니다. 잎사귀(leaves)가 많아 깊이가 깊은 트리는 각 예측이 단지 몇 개의 주택으로만 얻은 역사적인 데이터로 된 것이기 때문에 과적합(Overfitting)이 일어날 것입니다. 또, 잎사귀(leaves)가 적어 깊이가 얕은 트리는 행 데이터들로부터 패턴을 찾기 위한 여러 구분점들을 포착하는 것에 실패해서 품질이 형편없을 것입니다. 과소적합(Underfitting)이 일어나는 것이지요. 최근의 가장 세련된 모델링 기법일지라도, 과적합과 과소적합 사이의 이 긴장감을 마주합니다. 하지만, 많은 모델들이 더 나은 품질을 끌어내기 위한 영리한 아이디어들을 가지고 있습니다..

STUDY LOG/Kaggle 2021.09.26

Intro to Machine Learning(5)

과적합(Overfitting)과 과소적합(Underfitting) 당신은 이 단계의 끝에서 과적합과 과소적합의 개념을 이해할 수 있을 것이고 이 개념들을 당신의 모델을 더 정확하게 만드는 것에 적용할 수 있을 것입니다. 다른 모델들과의 실험 이제 당신은 모델의 정확도를 측정하는 신뢰할 만한 방법을 알게 되었고, 이를 통해 다른 대체할 수 있는 모델들로 실험하며 어떤 모델이 최고의 예측을 하는지 확인할 수 있습니다. 하지만, 당신은 어떤 대체 모델을 가지고 있나요? scikit-learn의 공식 문서에서 의사 결정 트리가 당신이 원하거나 필요로 하는 것 이상으로 많은 옵션을 가지고 있다는 것을 확인할 수 있습니다. 가장 중요한 옵셥은 트리의 깊이(depth)를 결정합니다. 우리의 첫번째 강의로 돌아가보면,..

STUDY LOG/Kaggle 2021.09.25

Intro to Machine Learning(4)

모델 검증(Model Validation) 모델의 퍼포먼스를 측정해 대안을 테스트하고 비교할 수 있습니다. 일단 모델은 만들어봤죠. 그런데, 얼마나 좋은 모델인가요? 이번 시간에는 당신의 모델의 품질을 측정해서 모델 검증하는 법을 배울 것입니다. 모델의 품질을 측정하는 것은 당신의 모델을 계속해서 발전시키는 열쇠입니다. 모델 검증이란 무엇인가? 당신은 지금껏 당신이 만든 거의 모든 모델을 평가하고 싶을 것입니다. 대부분(전부는 아니지만)의 경우, 모델의 품질과 관련된 수치는 예측 정확도입니다. 다시 말해, 모델의 예측이 실제 값과 얼마나 가까운지가 중요하다는 것입니다. 많은 사람들은 예측 정확도를 측정할 때 큰 실수를 합니다. 그것은 바로 그들이 학습 데이터로 예측을 만들고, 그 학습 데이터 안에 있는 ..

STUDY LOG/Kaggle 2021.09.25

Intro to Machine Learning(3)

당신의 첫번째 기계 학습 모델 당신의 첫번째 모델을 만들어보세요. 만세! 모델링을 위한 데이터 선택하기 당신의 데이터셋은 변수가 너무나도 많습니다. 어떻게 데이터의 이 압도적인 양을 이해할 수 있도록 줄일 수 있을까요? 우리의 통찰력을 사용해서 몇가지 변수를 집어내고자 합니다. 이후 코스들에서는 자동으로 변수들의 우선순위를 정하는 전형적인 기술을 소개하려고 해요. 일단, 변수/열(columns)을 선택하기 위해서는 데이터셋의 모든 열 목록을 봐야합니다. 이 목록은 데이터프레임의 columns 속성으로 볼 수 있습니다.(아래 코드의 맨 아래줄) import pandas as pd melbourne_file_path = '../input/melbourne-housing-snapshot/melb_data.cs..

STUDY LOG/Kaggle 2021.09.23

Intro to Machine Learning(2)

기본 데이터 탐험 데이터를 불러오고 이해하기 Pandas를 이용하여 데이터와 친해지기 어떤 기계학습 프로젝트든지 당신 스스로가 데이터와 친해지는 것이 첫걸음입니다. 당신은 이를 위해 Pandas 라이브러리를 사용할 것입니다. Pandas는 데이터 사이언티스트들이 데이터를 찾고 능수능란하게 다루기 위해 사용하는 주요 툴입니다. 대부분 코드에서 Pandas를 줄여서 pd라고 표현합니다. 이것을 아래와 같이 명령할 수 있습니다. import pandas as pd Pandas 라이브러리의 가장 중요한 부분은 바로 데이터프레임(DataFrame)입니다. 데이터프레임은 대체로 당신이 표(table)라고 생각하는 데이터 타입을 가집니다. 이것은 엑셀의 sheet나 SQL 데이터베이스의 table과 비슷합니다. Pa..

STUDY LOG/Kaggle 2021.09.22

Intro to Machine Learning(1)

모델은 어떻게 작동하는가? 먼저, 기계학습 모델이 어떻게 작동되고 어떻게 사용되는지 알아보는 것부터 시작하겠습니다. 이미 좀 배웠다면 좀 시시할테지만, 곧 파워풀한 모델을 만들것이니 일단 들어보죠. 당신의 친척이 부동산으로 수백만 달러를 벌었습니다. 그는 당신의 데이터 사이언스에 대한 관심을 보고 비즈니스 파트너가 되달라고 오퍼를 했습니다. 그는 돈을 제공할 것이고 당신은 다양한 주택들의 가치를 예측하는 모델을 제공할 것입니다. 당신은 그에게 과거의 그가 부동산의 가치를 어떻게 예상했는지를 물어봤고, 그는 그저 직감이라고 답했습니다. 하지만 더 많은 질문들을 통해 그가 과거에 주택 가격의 패턴을 알아냈고, 그 패턴을 그가 고려 중인 새로운 주택을 예측하는 데에 사용한 것을 알 수 있었습니다. 기계학습은 ..

STUDY LOG/Kaggle 2021.09.22