본문 바로가기

Computer Science

(25)
Expectation에 대하여 (Lecture 3 전반부) 확률을 표현하는 데 있어서 확률 질량 함수나 누적 분포 함수 보다도 더 짧은 표현이 필요할 때가 있습니다. 확률 변수를 표현하는 데 있어서 그런 용도로 사용하는 숫자가 바로 Expectation(기댓값), mean value입니다. 전 게시글 Random Variables에 대하여 에서 언급한 확률 분포들의 기댓값에 대해 알아보겠습니다. 273k.tistory.com/17 Random Variables에 대하여 Random Variable 왜 정의하는가 많은 상황에서 임의의 실험의 결과는 숫자입니다. 그러나 여기에 또 다른 숫자를 각각의 결과에 할당해야하는 경우가 생깁니다. 따라서 확률 변수에 대해 정의하고, 273k.tistory.com 1. Discrete Uniform ..
Random Variables에 대하여 Random Variable 왜 정의하는가 많은 상황에서 임의의 실험의 결과는 숫자입니다. 그러나 여기에 또 다른 숫자를 각각의 결과에 할당해야하는 경우가 생깁니다. 따라서 확률 변수에 대해 정의하고, 숫자로 이를 계산하는 법에 대해 배웁니다. 대부분의 확률 계산은 확률 변수로 이루어집니다. Random Variable X on a sample space S is a function X : S->R that assigns a real number X(s) to each sample point s∈S. 즉, 확률 변수는 샘플 포인트들의 numerical property인 것과 같습니다. 여기에서 image(상)이라는 개념이 나오는데요. The image of a random variable X : Im(X..
Random Forest 배워보기 Ensemble Ensemble(앙상블)이란 여러 머신러닝 모델을 연결하여 더 강력한 모델을 만드는 기법입니다. 앙상블을 활용하면 거의 모든 경우 정확도가 상승합니다. 대신 여러 모델을 연결해야 하니 처리 속도가 느려집니다. Random Forest Random Forest가 여러개의 Decision Tree를 만들고 연결하여 결과를 취합한 후 평균내어 성능을 높인 모델입니다. 즉 앙상블의 원리를 사용한 방법입니다. Decison Tree는 여러 상황에서도 예측을 잘 하는 편이지만 일부 데이터에 대해서는 overfitting하는 경향이 있는데 random forest가 그러한 단점을 보완하는 방법이라고 할 수 있겠습니다. Overfitting Overfitting(과적합)이란 학습 데이터를 과하게 학습한..
Scikit-Learn 입문 앞서 라이브러리에 대해 언급한 적 있는데요. 많은 라이브러리들이 무료로 공개되어 있습니다. 이중에 어떤 라이브러리를 선택하는 것이 효율적일까요? 라이브러리를 선택할 때 고려할 점? 1. 개발하려는 제품, 원하는 결과를 얻기에 충분한 성능을 지녔는가 2. 인기가 많은 라이브러리인가 - 버그 수정이 빠르고 데이터가 많음 3. 사용해 봤을 때 편리하고 나의 효율을 높여주는가 유명 머신러닝 라이브러리 - scikit-learn : 전통적인 머신러닝 알고리즘 사용 목적으로 사용 - Tensorflow : 주로 딥러닝 목적으로 사용 - Pytorch, Keras, Caffe, Theano, DL4Jd ... 그 중 이번 포스팅에서 알아볼 사이킷런은 파이썬의 머신러닝 라이브러리입니다. (텐서플로는 딥러닝) 사이킷런에..
Pandas로 cvs 파일 편집하기 with Feature Engineering 앞의 게시물에서 타이타닉 생존자를 찾기 위한 Feature Engineering을 진행했습니다. 273k.tistory.com/6 데이터 사이언스 입문 더보기 *시작에 앞서 세 가지 프로그램의 설치가 필요합니다.* 1. Anaconda - 파이썬과 데이터 분석에 필요한 각종 도구를 포함하고 있습니다. 2. Chrome - 데이터 분석이 이루어지는 주피터 노트북을 � 273k.tistory.com 특징 선택, 특징 생성, 특징 추출의 단계를 거쳐 데이터를 직접 가공했었는데요. 오늘은 Pandas를 이용한 데이터 처리를 진행해보겠습니다. 1. 특징 선택 판다스로 csv 파일을 불러옵니다. * 같은 폴더에 넣으면 위치를 표시하지 않아도 됩니다. * 엑셀파일이면 엑셀에서 다른이름으로 저장, csv 파일 선택해주..
데이터 사이언스 입문 더보기 *시작에 앞서 세 가지 프로그램의 설치가 필요합니다.* 1. Anaconda - 파이썬과 데이터 분석에 필요한 각종 도구를 포함하고 있습니다. 2. Chrome - 데이터 분석이 이루어지는 주피터 노트북을 실행합니다. 3. Python - 파이썬 코드를 실행할 수 있는 환경을 구성해 줍니다. 이번 포스트에서는 데이터 사이언스에 대해 정의하고, 앞으로의 포스팅 동안 공부할 범위에 대해 이해합니다. 이 과정에서 Feature Engineering에 대해 학습합니다. Backgrounds - 데이터 분석 과정에 대하여 데이터 분석의 과정 : 문제 탐색 ⇒ Feature Engineering ⇒ 모델 수립 ⇒ 모델 검증 ⇒ 모델 적용 문제를 찾는 것은 개발자의 몫입니다. 찾은 문제를 분석하고 해결을 위한..
데이터 시각화(matplotlib, seaborn 입문) matplotlib 기본 문법 1. 기본적인 그래프 첫번째 줄은 주피터 노트북 안에 차트가 그려지도록 하는 문장입니다. 가장 간단하게 직접 좌표 찍어서 그리는 방식! 2. 데이터, 축 이름, 범례 추가 여기에 다양한 세부 내용들을 추가할 수 있습니다. 3. 막대 차트 그리기 꺾은 선 그래프 외에 bar chart도 그릴 수 있습니다. 4. 다양한 차트 스타일 그 외에도 차트는 스타일을 다양하게 변경할 수 있습니다. * marker : https://matplotlib.org/3.1.1/api/markers_api.html * color name : https://matplotlib.org/3.1.1/gallery/color/named_colors.html#sphx-glr-gallery-color-name..
Jupyter Notebook 입문하기 * 짧은 서론 대학교 3학년 열역학 시간에 교수님이 가르쳐 주신 것을 처음으로 주피터 노트북을 알게 되었습니다. 그때는 이게 뭐하는 프로그램인지도 모르고 사용했었는데 이제는 정확히 알고 제대로 사용해보고 싶어서 공부하고 있습니다! Jupyter Notebook 살아있는 파이썬 문서를 만들어 문서화, 시각화, 분석을 용이하게 만들어주는 개발 환경입니다. 파이참이나 비쥬얼 스튜디오로 파이썬 프로그램을 개발하듯, Jupyter Notebook은 데이터 분석용 파이썬 편집기라고 할 수 있습니다. (설계 + 기록 + 분석) 간단한 활용 코드를 작성해 Run을 누르면 작동하고, Mode를 Markdown으로 바꾸면 아래와 같이 문서처럼 문자삽입도 가능합니다. 1. 마크다운에서 적용 가능한 서식들 위위 코드를 실행하..