반응형
[PYCON KOREA 2017] Python 입문자의 Data Science(Kaggle) 도전
[PYCON KOREA 2017] Python 입문자의 Data Science(Kaggle) 도전
- 1. Python 입문자의 Data Science(Kaggle) 도전 박미정
- 2. 나는 누구에요?
- 3. 나는 누구에요? 아이오라는 스타트업에서 스위처를 만들고 개발팀을 리드하고 있어요
- 4. 누구를 위한 발표인가? 저처럼, Python과 데이터 분석을 이제 막 시도하시려는 분들을 위한 발표에요
- 5. 발표의 목적은? 발표를 듣고 집으로 돌아가셔서, 데이터 분석이 뭔지 아직도 감은 잘 안오지만 튜토리얼 문제를 시도하면서 공부를 시작하도록 돕는 것
- 6. 발표를 간단히 요약하면 제가 얼마나 Python과 데이터 분석 초보인지 밝힘으로써 용기를 드리고, 데이터 분석 공부를 시작하게 된 계기와, 데이터 분석 공부를 위한 기본적인 환경, 실제로 Python을 이용하여 Kaggle 문제에 접근한 사례를 공유하게 되요
- 7. 나는 왜 Python과 데이터 분석을? Last 30 Days by WakaTime
- 8. 나는 왜 Python과 데이터 분석을? 지난 한 달 동안 주로 사용한 언어에 Python은 보이지 않아요
- 9. 나는 왜 Python과 데이터 분석을? 집에는 파이썬, 머신러닝, 딥러닝 책들이 먼지와 함께 쌓여있어요
- 10. 나는 왜 Python과 데이터 분석을? 제가 파이콘에서 스피커로 자격이 있는지 모르겠어요
- 11. 나는 왜 Python과 데이터 분석을? 하지만, Back to the Basic 용기를 내어 보았어요
- 12. 나는 왜 Python과 데이터 분석을? 역시 저는 몰랐지만, 데이터 분석에는 여러 유형이 있어요
- 13. 나는 왜 Python과 데이터 분석을? 주어진 데이터를 요약/집계해서 결과를 내는 Descriptive analysis 를 이미 진행하고 있었어요
- 14. 나는 왜 Python과 데이터 분석을? 하지만 저에게 데이터 분석이라고 하면 가장 먼저 떠오르는 유형은 Predictive analysis 였어요
- 15. 나는 왜 Python과 데이터 분석을? 그 외에도 Exploratory, Inferential, Casual, Mechanistic analysis 등 많은 분석 유형이 존재해요
- 16. 나는 왜 Python과 데이터 분석을? 사실 모든 유형에 대해 자세히 모르겠어요
- 17. 나는 왜 Python과 데이터 분석을? 그저 공부를 시작하기 위해 필요한 목적과 동기부여를 위해 Predictive analysis 를 선택했어요
- 18. 나는 왜 Python과 데이터 분석을? 데이터를 통한 정확한 예측이 아이오에는 필요하거든요
- 19. Predictive analysis? 머신러닝, 의사 결정 트리를 이용해서 발생하지 않은 일을 예측하는 거에요
- 20. 머신러닝? 기존 데이터를 학습시킨 후, 새로운 데이터를 예측하는 목적이에요
- 21. 머신러닝? 머신러닝에서 지도 학습과 비지도 학습으로 구분지을 수 있어요
- 22. 머신러닝? 지도 학습에는 분류와 회귀 방법이 존재하고,
- 23. 머신러닝? 비지도 학습에는 군집 방법이 존재해요
- 24. 머신러닝? 저는 지도 학습인 분류와 회귀에 대한 공부 경험을 공유하려 해요
- 25. 어떻게 시작하게 되었어요? 혹시, 이 분을 아시나요?
- 26. 어떻게 시작하게 되었어요? 꿀 수업 듣으러 가기
- 27. 기본적인 환경은? Kaggle
- 28. 기본적인 환경은? Kaggle 데이터 과학과 머신러닝을 실습하고 경쟁할 수 있는 Kaggle을 이용했어요 Kaggle 방문하기
- 29. 기본적인 환경은? Kaggle training set과 test set이 주어져요
- 30. 기본적인 환경은? Kaggle training set을 통해 최적화된 모델을 통해서 test set의 값을 분류 및 예측하고 제출할 수 있어요
- 31. 기본적인 환경은? Kaggle 주의할 점! 하루에 제출할 수 있는 기회는 제한되어 있어요
- 32. 기본적인 환경은? Python 데이터 분석을 돕는 Python 도구들을 사용했어요
- 33. 기본적인 환경은? Python 일, 수학적 기능을 제공하는 NumPy
- 34. 기본적인 환경은? Python 이, 데이터 처리 및 가공을 위한 Pandas
- 35. 기본적인 환경은? Python 삼, 머신러닝 알고리즘 적용을 위한 Scikit-Learn
- 36. 데이터 분석 프로세스는요? 그렇다면, 데이터 분석의 프로세스는 어떻게 될까요?
- 37. 데이터 분석 프로세스는요? 일, 문제를 정의해요 내가 원하는 결과가 무엇이고, 어떤 종류의 문제에 속하는지 파악해요
- 38. 데이터 분석 프로세스는요? 이, 데이터를 확보해서 준비하고 전처리를 해요
- 39. 데이터 분석 프로세스는요?
- 40. 데이터 분석 프로세스는요?
- 41. 데이터 분석 프로세스는요? 삼, 데이터를 탐색하고 피처를 선택해요
- 42. 데이터 분석 프로세스는요? 사, 모델을 최적화하고 검증해요
- 43. 데이터 분석을 돕는 Python 도구들? Pandas는 데이터 처리와 가공을 돕는 도구에요
- 44. 이렇게 데이터 파일도 쉽게 불러올 수 있구요 데이터 분석을 돕는 Python 도구들?
- 45. train 데이터와 test 데이터를 쉽게 연결할 수 도 있어요 데이터 분석을 돕는 Python 도구들?
- 46. 데이터 분석을 돕는 Python 도구들? NumPy는 수학적 연산을 돕는 도구에요
- 47. 배열, 로그, 평균 등 다양한 연산을 도와줘요 데이터 분석을 돕는 Python 도구들?
- 48. 데이터 분석을 돕는 Python 도구들? Scikit-Learn은 머신러닝 알고리즘을 제공하는 도구에요
- 49. 데이터 분석을 돕는 Python 도구들? 이렇게 분류를 위한 의사 결정 트리를 사용할 수 있어요
- 50. 어떤 방법을 사용했어요? 앞에서 머신러닝의 분류와 회귀에 대한 공부 경험을 공유한다고 했어요
- 51. 어떤 방법을 사용했어요? 분류에 대한 Kaggle 문제를 접했어요
- 52. 어떤 방법을 사용했어요? Kaggle의 튜토리얼 문제 Titanic: Machine Learning from Disaster
- 53. 어떤 방법을 사용했어요? 문제 풀으러 가기!
- 54. 어떤 방법을 사용했어요? Python 도구를 사용해서 이렇게 코드로 분류를 시도할 수 있어요
- 55. Yes or No 유형의 분류를 시도할 때, DecisionTreeClassifier 어떤 방법을 사용했어요?
- 56. 어떤 방법을 사용했어요? 회귀에 대한 Kaggle 문제도 접했어요
- 57. 어떤 방법을 사용했어요? Kaggle의 문제 Bike Sharing Demand
- 58. 어떤 방법을 사용했어요? 문제 풀으러 가기!
- 59. 어떤 방법을 사용했어요? 역시, Python 도구를 사용해서 이렇게 코드로 회귀를 시도할 수 있어요
- 60. 특정 숫자 값을 예측할 때, DecisionTreeRegressor 어떤 방법을 사용했어요?
- 61. Titanic 예시 Titanic 튜토리얼 문제를 다시 확인할게요
- 62. Titanic 예시 문제 정의 승객들의 정보를 이용하여 살아남을지 아닐지 예측하라
- 63. Titanic 예시 데이터 속성 분석 train set을 다운받고, 데이터 속성을 분석해요
- 64. Titanic 예시 데이터 속성 분석
- 65. 데이터 전처리 작업을 위해, train set과 test set을 합칠게요! Titanic 예시 데이터 전처리
- 66. Scikit-Learn 사용을 위해 Gender 문자열 값을 인코딩 할게요! Titanic 예시 데이터 전처리
- 67. Scikit-Learn 빈 값 처리 오류 제거를 위해, 평균 값으로 채울게요! Titanic 예시 데이터 전처리
- 68. 분류(예측)의 기준이 되는 피처를 선택해요 Titanic 예시 데이터 탐색 및 피처 선택
- 69. 피처 선택을 기준으로 train set을 이용하여, test set을 분류(예측)해요! Titanic 예시 모델 최적화 및 검증
- 70. 이제 Kaggle에서 Submit을 하면 예측 점수를 확인할 수 있어요! Titanic 예시 제출
- 71. 전체 코드는 아래 주소에서 확인하실 수 있어요! GitHub Repository Reference Code Titanic 예시
- 72. 그래서 어디에 사용할거에요? 일. 지역, 시간, 키워드, 가구 크기 등의 데이터를 이용해서 타겟 정확도를 높이는 마케팅에 이용
- 73. 그래서 어디에 사용할거에요? 이. 온도, 습도, 조도, 거리, 행동 패턴 학습을 통한 개인 추천 서비스에 이용
- 74. 감사합니다 ;-) 박미정 mjpark03@gmail.com
- 75. Q1. 입문자가 머신러닝 알고리즘을 선택하기 위한 TIP? Scikit-Learn 에서는 적절한 알고리즘을 선택할 수 있도록 Cheat Sheet를 제공해요
- 76. Q1. 입문자가 머신러닝 알고리즘을 선택하기 위한 TIP? 알고리즘 선택에 어려움이 있다면, 다음 Cheat Sheet을 참고해서 시작해보세요
- 77. Q1. 입문자가 머신러닝 알고리즘을 선택하기 위한 TIP?
- 78. Q2. 과적합(Overfitting) 해결을 위한 TIP? 특정 모델이 train set에 너무 정확하게 학습된 경우, test set에 대해서는 오차가 크게 발생하게 되요
- 79. Q2. 과적합(Overfitting) 해결을 위한 TIP? 이 경우를 과적합(Overfitting)이라고 표현해요
- 80. Q2. 과적합(Overfitting) 해결을 위한 TIP? 특정한 케이스가 아닌 일반적인(general) 결과를 낼 수 있어야 해요
- 81. Q2. 과적합(Overfitting) 해결을 위한 TIP? 많이 사용되는 방법 중의 하나는 cross validation이 있어요
- 82. Q2. 과적합(Overfitting) 해결을 위한 TIP? cross validation은 train set의 일부를 train 목적으로 사용하고, 나머지를 validation 용도로 사용해요
- 83. Q2. 과적합(Overfitting) 해결을 위한 TIP? 그리고 train 목적과 validation 부분을 변경해가며 반복하면서 오차율을 줄여나가게 되요
- 84. Q2. 과적합(Overfitting) 해결을 위한 TIP? Scikit-Learn을 이용해서 쉽게 적용할 수 있어요
- 85. Q2. 과적합(Overfitting) 해결을 위한 TIP? from sklearn.cross_validation import cross_val_score score = cross_val_score(model, X_train, y_train, cv=20, scoring=rmsle_score).mean()
...
반응형
'프로그래밍 > Python' 카테고리의 다른 글
[Python] MOOC: Python (파이썬 강좌) (0) | 2017.08.29 |
---|---|
[python] ‘얼리또라이’의 데이터 공부 도전기 (0) | 2017.08.23 |
[python] Pycon2017 koreannlp - 노가다 없는 텍스트 분석을 위한 한국어 NLP (0) | 2017.08.16 |
[python] PHP에서 Django로 갈아타기 (0) | 2017.08.14 |
[python] PyCon KR 2017 프로그램 목록 (0) | 2017.08.14 |