분류 전체보기
-
[모두를 위한 딥러닝 시즌2][Lab 3] Liner Regression and How to minimize cost모두를 위한 딥러닝 시즌2 2021. 10. 24. 14:21
지난 Lab2에서 Hypothesis와 Cost에 대해 알아보았다. 학습은 Cost(비용)을 가장 작게 만드는 것이 목표라고 했다. 이번 시간에는 어떻게 Cost를 최소화하는지 Gradient descent(경사 하강) 알고리즘에 대해 알아볼 것 이다. 컴퓨터가 Cost의 최저점을 찾는 방법으로 잘 알려진 것 중 하나가 Gradient descent(경사 하강) 알고리즘이다. Gradient descent 알고리즘 작동 방식을 알아보자. 일단 W=0 또는 W=random value에서 시작한다. 지속적으로 특정한 W에서의 기울기 값을 구해서 Cost값이 줄어드는 방향으로 가도록 W와 b값을 조금씩 바꾼다. 이것을 '최소점에 도달했다'라고 판단될때까지 반복한다. 여기서 기울기 값은 cost(W)함수 그래프..
-
[모두를 위한 딥러닝 시즌2][Lab2] Simple Liner Regression모두를 위한 딥러닝 시즌2 2021. 10. 9. 21:14
이번 시간에는 Linear Regression과 Hypothesis, Cost와 Cost function, 그리고 최종적으로 Minimize cost와 Gradient descent에 대해 알아볼것이다. Regression은 많이 줄여진 말로, 정확하게는 Regression toward the mean이라는 의미이다. 데이터들은 결과적으로 전체 평균으로 회귀하려는 특징이 있다는 통계적 원리다. Linear Regression(선형회귀) - 데이터를 가장 잘 대변하는 직선의 방정식을 찾는 것을 말한다. 데이터들을 한 점으로 좌표평면에 찍어서 그 데이터들을 가장 잘 대변하는 직선의 기울기(W)와 y절편(b)을 구한다. 우선 데이터들을 좌표평면에 찍고 그 점들을 가장 잘 대변한다고 하는 Hypothesis(가..
-
[모두를 위한 딥러닝 시즌2][Lab1] 기본적인 Machine Learning 의 용어와 개념 설명모두를 위한 딥러닝 시즌2 2021. 10. 1. 14:38
이번 Lab에서는 머신러닝(Machine learning)이 무엇인지 학습하고, supervised/unsupervised learning, regression과 classification에 대해 알아볼것이다. 머신 러닝(machine learning, ML)이 탄생하기 이전에 explicit programming이 있었다. 이 프로그래밍은 스팸 메일을 걸러준다거나 자율 주행등 미리 짜여진 rule대로 logic을 실행한다. 하지만 이 explicit programming은 너무 많은 경우(rule)들이 존재할 때 프로그래밍하는데 한계가 있다. 그래서 1959년에 Arthur Samuel가 생각해낸것이 사람이 직접 하는 explicit programming없이 컴퓨터가 스스로 배우는 능력을 가져서 학습하..
-
[모두의 데이터분석] Unit05 내 생일의 기온 변화를 그래프로 그리기python/모두의 데이터분석 2021. 2. 2. 00:03
이번 유닛에서는 지난 유닛에서 배운 matplotlib라이브러리에 pyplot모듈로 데이터를 그래프로 시각화 해 볼 것이다. 먼저 서울 기온 데이터를 읽어와서 최고 기온 데이터 값이 존재하면 result 리스트에 최고 기온 값이 추가되도록 코드를 짜고 result 리스트에 저장된 값을 빨간색 그래프로 나타내게 했다. 4만 개에 가까운 최고 기온 데이터를 모두 나타내었더니, 섬뜩한 그래프가 나왔다. 생일의 기온 변화 그래프를 그리기에 앞서 split() 함수를 배워보자. split() 함수는 문자열을 분리해준다. 기본적으로 공백 문자를 기준으로 문자열을 분리한다. 그런데 데이터를 '-' 를 기준으로 분리하고 싶다면 위와 같이 쓰면 된다. 이제 배웠던 내용들을 바탕으로 생일(이 책에서는 2월 14일로 정했다..
-
[모두의 데이터분석] Unit04 기본 그래프 그리기python/모두의 데이터분석 2021. 1. 31. 21:28
드디어 이번 유닛에서 데이터를 시각화하는 것을 해볼 것이다. 파이썬에서 데이터를 시각화하는 데는 matplotlib이라는 라이브러리를 가장 많이 사용한다. 우리는 오늘 matplotlib이라는 라이브러리의 모듈들 중에서 pyplot이라는 모듈을 사용할 것이다. plot() 함수를 이용해서 직선 또는 꺾은선 그래프를 그려보자. 리스트의 값이 y축 값으로 입력되며 x축 값은 자동을 0부터 1씩 증가하는 정수로 입력된다. plot() 함수에 두 개의 리스트를 넣어보자. plt.plot([x축 데이터], [y축 데이터])인 것을 볼 수 있다. 다음은 plt.plot()에 다른 속성들도 넣어보자. title() 함수로 먼저 그래프의 제목을 넣어주었다. label 이라는 속성으로 레이블 값을 정해주고 legend(..
-
[모두의 데이터분석] Unit03 서울이 가장 더웠던 날은 언제였을까python/모두의 데이터분석 2021. 1. 31. 20:25
이번 유닛에서는 기상 관측아래, 서울의 최고 기온이 가장 높았던 날은 언제였고 몇도 였는지 데이터를 통해 알아낼 것이다. 먼저 문자열로 되어있는 최고 기온 데이터를 실수(float) 데이터로 변환해보자. float() 함수를 사용해서 row[-1]을 실수 데이터로 변환하고 각 행을 for 반복문을 사용해서 출력했다. 실행 결과를 보면 1950-09-01의 기온 데이터가 누락되어 있기 때문에 1950-08-31까지의 데이터만 나오고 오류가 발생하는 것을 알 수 있다. 이 오류를 해결하기 위해 빈 값을 대체할 특정 값을 넣어봤다. 특정 값은 최고 기온 값으로 나오기 힘든 -999로 정했다. 대체값을 넣은 결과, 오류가 발생하지 않고 끝까지 데이터가 출력된다. 여기까지 문자열을 실수로 변환하는 데이터 정리를 ..
-
[모두의 데이터분석] Unit02 서울의 기온 데이터 분석하기python/모두의 데이터분석 2021. 1. 29. 13:15
이번 유닛에서는 csv 파일에서 데이터를 읽어오는 방법과 데이터를 출력하는 방법을 배우고 직접 서울의 기온 통계자료 데이터를 분석하는 것이 목표이다. 먼저 기상자료개방포털에서 csv파일을 다운로드한다. 다운로드한 csv파일에서 불필요한 1~7행을 삭제하고 파일 이름을 seoul.csv로 변경한다. 그리고 주피터 노트북을 실행한다. 실행했다면 새로운 파이썬 노트북을 생성해서 빈 셀에 코드를 작성한다. 여기 작성된 코드를 첫 줄부터 자세히 보면 csv 모듈을 불러온다. csv 파일을 open() 함수로 열어서 f에 저장한다. f를 reader() 함수에 넣어 data라는 객체를 생성한다. data를 출력한다. 열었던 파일을 다시 닫는다. 이렇게 코드가 진행되는걸 알 수 있다. 여기서 두번째줄 f = open..
-
[Git] [GitHub] 깃허브 사용법(왕초보)study 2021. 1. 28. 23:51
몇일 전부터 깃허브를 하기 시작했다. 처음에는 생소해서 많이 해맸지만 지금은 꽤 익숙해졌다. 처음접하는 사람에게는 어려울 수 있는 내용이기 때문에 아주 친절하게 설명을 해보았다. 일단 'Git'을 설치한다. git-scm.com/ 그리고 'Github'에서 회원가입을 해야한다. 'Github'는 'Git'을 다루는 클라우드(?) 중 가장 보편적으로 사용되는 사이트이다. github.com/ 회원가입을하고 로그인을 했다면 새로운 repository를 생성한다. 그러면 이렇게 새로운 repository가 생성된다. 이때 하늘색 상자안에 주소를 잘 봐두자 이제 컴퓨터에 새 폴더를 만들어보자. 나는 폴더명을 'python'으로 정했다. 그리고 폴더에 마우스 우클릭을 하고 'Git bash Here'을 클릭하면 ..
-
[모두의 데이터분석] Unit12 지하철 시간대별 데이터 시각화하기python/모두의 데이터분석 2021. 1. 28. 22:27
오늘은 matplotlib 라이브러리를 이용해 지하철 시간대별 이용현황 데이터를 시각화 해보았다. 이번 장에서는 특별히 for 반복문을 사용하지 않고 map()함수를 사용해서 데이터를 한꺼번에 정수형으로 바꾸었다. > map(int, row[4:]) 위 코드는 row 리스트의 4번 인덱스부터 맨 끝 인덱스까지 저장된 값을 모두 정수형(int)으로 바꾼다. 출근 시간대 사람들이 가장 많이 타고 내리는 역은 어디일까 출근 시간대를 7시~9시로 정하고 각 역의 7시, 8시, 9시 하차인원을 모두 더한 값 중에서 가장 큰 값, 즉 최대값 찾기 패턴으로 코드를 진행했다. 출근시간대 사람들이 가장 많이 하차하는 역은 역시 직장이 많이 밀집된 강남역이었다. 시간대별로 하차 인원이 가장 많은 역을 찾는 코드 시간대별 ..