캐글 챌린지
-
[30 Days of ML] Day 10Program/[Kaggle] 30 Days of ML 2021. 8. 15. 19:34
Tutorials Experimenting With Different Models decision tree model에는 많은 옵션이 있다. 가장 중요한 옵션은 tree's depth이다. tree's depth는 예측에 도달하기 전에 얼마나 많은 분할을 수행하는지에 대한 척도이다. 아래의 경우 비교적 얕은 깊이이다. overfitting 많은 잎으로 집을 나누는 경우 각 잎에 더 적은 집을 가지게 된다. 주택이 적은 잎은 주택의 실제 값에 상당히 가까운 예측을 하지만 새로운 데이터에 대해 신뢰할 수 없는 예측을 하게 된다. (각 예측이 적은 주택에 기반하기 때문임) 과적합은 훈련 데이터에 거의 완벽히 일치하지만 검증 및 새로운 데이터에 대해서는 제대로 예측이 되지 않는다. underfit..
-
[30 Days of ML] Day 9 - part 2Program/[Kaggle] 30 Days of ML 2021. 8. 15. 18:06
Tutorials What is Model Validation 모델의 퀄리티를 요약하는 메트릭 중 하나인 Mean Absoute Error(MAE)를 살펴 볼 것이다. MAE 는 실제값과 예측값의 차이에 절댓값을 씌운 후 예측값의 개수만큼 나누어 주면 된다. The Problem with "In-Sample" Scores from sklearn.metrics import mean_absolute_error predicted_home_prices = melbourne_model.predict(X) mean_absolute_error(y, predicted_home_prices) 1115.7467183128902이렇게 계산된 측정값을 "표본 내(in-sample)" 점수라고 할 수 있다. 모델을 구축하고 평..
-
[30 Days of ML] Day 9 - part 1Program/[Kaggle] 30 Days of ML 2021. 8. 15. 17:46
Tutorials Selecting Data for Modeling 데이터 셋에 변수가 너무 많아 확인하기가 어렵다. 그래서 직관(intuition)을 통해 몇 가지 변수를 선택해보자. 이후에는 자동으로 변수의 우선 순위를 지정하는 통계 기술을 살펴 볼 것이다. 데이터의 하위 집합을 선택하는 여러 방법 "prediction target"을 선택하는 데 사용하는 dot 표기법 "features"를 선택하는 데 사용하는 column list로 선택 Selecting The Prediction Target dot-notation으로 변수를 선택할 수 있으며 Seires에 저장된다. dot-notation을 통해 prediction target을 선택하며 보통 y라고 부른다. Choosing "Features"..
-
[30 Days of ML] Day 8Program/[Kaggle] 30 Days of ML 2021. 8. 12. 22:12
Tutorials Decision Tree 데이터를 사용해 어떻게 두 그룹으로 나눌지 방법을 결정한 다음 각 범주의 예상되는 주택 가격을 결정함. 이렇게 데이터로부터 패턴을 포착하는 단계를 fitting or training the model이라고 함. 모델을 fit하는데 사용된 데이터를 training data라고 함 모델을 fit한 후, 새로운 데이터를 사용해 다른 주택 가격을 predict할 수 있음 Improving the Decision Tree 이전의 결정 트리는 침실의 개수만을 고려하지 욕실 수, 부지 크기, 위치 등과 같이 집 가격에 영향을 미치는 다른 요소들을 고려하지 않음. 그러므로 더 많은 splits가 있는 tree를 사용하여 더 많은 요소를 포착할 수 있음. 이를 deeper 트리..
-
[30 Days of ML] Day 7Program/[Kaggle] 30 Days of ML 2021. 8. 12. 01:34
Excercise Imports Python에서는 고품질의 사용자 정의 라이브러리를 사용할 수 있음 이러한 라이브러리의 일부는 "표준 라이브러리"에 있음 먼저 표준 라이브러리 중 math 를 임포트해보자 import math print("It's a math! It has type {}".format(type(math))) It's a math! It has type math는 모듈임 모듈은 다른 사람이 정의한 변수의 모음임 우리는 내장 함수 dir()를 이용해서 math의 모든 names를 확인할 수 있음 print(dir(math)) ['__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', ..
-
[30 Days of ML] Day 6Program/[Kaggle] 30 Days of ML 2021. 8. 11. 01:17
Tutorial Strings String syntax 아래와 같은 경우 에러 발생 'Pluto's a planet!' File "", line 1 'Pluto's a planet!' ^ SyntaxError: invalid syntax 백슬래쉬(\)을 통해 고칠 수 있음 'Pluto\'s a planet!' "Pluto's a planet!" Strings are sequences strings은 일련의 characters로 생각할 수 있음 strings는 시퀀스임 문자열은 리스트와 유사하게 인덱싱, 슬라이싱으로 접근할 수 있음(그 외에도 len, max, min 함수 등을 적용할 수 있음) planet = 'Pluto' print(planet[0]) P 리스트와 다른 점은 수정할 수 없다는 것임 pl..
-
[30 Days of ML] Day 5 - part 2Program/[Kaggle] 30 Days of ML 2021. 8. 9. 00:27
Tutorial Loop 가장 기본적인 형태의 반복문 사용할 변수의 이름(planet), 반복할 집합(planets), in 으로 연결하여 사용 planets = ['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune'] for planet in planets: print(planet, end = ' ') Mercury Venus Earth Mars Jupiter Saturn Uranus Neptune range() 와 while 을 통해 반복할 수 있음 List comprehensions 아래는 기본 코드 def count_negatives(nums): """Return the number of negative numb..
-
[30 Days of ML] Day 5 - part 1Program/[Kaggle] 30 Days of ML 2021. 8. 8. 20:02
Tutorial Lists Python의 list는 [ ]로 묶어서 나타내는 ordered sequences of values임 리스트는 아래와 같이 다른 유형의 값들도 함께 포함할 수 있음 my_favourite_things = [32, 'raindrops on roses', help] Indexing [i]를 사용해 리스트의 원소에 접근할 수 있음 Slicing my_list[i:j] 이런식으로 여러 개의 원소들도 접근할 수 있음 Changing lists 인덱싱을 통해 하나의 값을 변경할 수 있음 print(planets) planets[3] = 'Malacandra' print(planets) ['Mercury', 'Venus', '..