
Training Data & Validation Data & Test Data 트레이닝 셋으로 학습시킨 후 트레이닝셋으로 테스트 하면 공정한가? -> 나쁜 방법 데이터의 70퍼센트정도는 트레이닝 셋, 30퍼센트정도는 테스트 셋으로 설정 테스트셋으로 예측값과 실제값 비교하여 성능 측정 트레이닝 셋을 또 validation set으로 나눌 수 있음 validation set -> 모의 시험 느낌 (알파, 람다등을 조절 하기 위해) 데이터셋이 굉장히 많은 경우 ->online learning 학습 방법 만약 트레이닝셋이 100만개 있다고 가정, 한 번에 넣어서 학습시키기에 너무 양이 많다 ->100만개의 데이터를 잘라 10만개씩 학습 우리는 선형회귀부터 시작해서 Softmax회귀까지 트레이닝 데이터셋을 테스트..

앞서, 깃헙에 대해 살펴 보았으니, 이제 본격적으로 사용 방법에 대해 알아봐야 겠죠? 우선 깃헙에 회원가입을 하셨으면, 로그인을 해줍시다. 로그인 하면 다음 사진과 같이 화면 상단에 초록색버튼 New가 있을겁니다. 이 버튼은 깃허브에 원격저장소를 만들겠다는 버튼입니다. 클릭해 줍시다! 여기서 깃허브를 처음 사용하시는 분들은, 어렵게 느끼실 수도 있는데요. 전혀 두려워 할 것 없습니다! 각각의 용어에 대한 설명은 다음과 같습니다. Repository name - 원격저장소 이름 Description - 원격저장소에대한 간략한 설명 (선택 사항이므로 안적으셔도 됩니다.) Public & Private - 원격저장소를 공개로 설정할 것인지, 비공개로 설정할 것인지 선택 Initialize this reposi..

드디어! 깃헙에대해 정리할 날이 오는군요. Github는 대표적인 원격저장소로써, 한마디로 지역저장소(컴퓨터)와 대비되는 개념입니다. 주로 이 두가지 목적때문에 깃헙을 사용 하게되죠 소스코드 백업 협업 깃헙을 사용하려면 당연히 회원가입을 해야겠죠? https://github.com/ 사이트에 가셔서 Sign up 버튼을 눌러 계정을 만들고 로그인 해주시면 됩니다. Github을 이용하려면 Github 사이트를 둘러보며 어떻게 사용하는지, 그리고 각각의 명칭들이 뭘 의미하는지 숙지하고 있으면 좋겠죠? 오픈소스 프로젝트나 다른사람들의 프로젝트를 검색해 보고 싶다면, 네이버, 구글등의 포털에서 검색하는 것처럼 검색창을 이용해 검색하면 됩니다. 참고로 Git도 오픈소스인데, 이렇게 Git이라 검색해서 Git에 ..

오늘은 Logistic regression (로지스틱 회귀)를 정리해 보려고 합니다. 제가 정리하는 모든 머신러닝 딥러닝 내용은 sung kim님의 유튜브 모두의딥러닝 시즌1 강의와 텐서플로로 배우는 딥러닝 책을 기반으로 합니다. :) https://www.youtube.com/watch?v=BS6O0zOGX4E&list=PLlMkM4tgfjnLSOjrEJN31gZATbcj_MpUm Linear regression이 선형적인 데이터를 예측하는데 사용되었다면, Logistic regression은 이진분류를 하는데 사용 됩니다. 메일에서 스팸메일인지 아닌지 구분하는것 처럼 두 가지 케이스로 구분해야 하는 경우에 사용됩니다. 시험 성적의 pass/fail 도 좋은 예가 될 수 있죠 ㅎㅎ 시험성적을 예로 그래..

오늘은 stash에 대해 알아 볼까 합니다! 우선 stash란 영단어가 생소한데, 뜻 먼저 알아 볼까요? 백과사전을 찾아보니 stash란 '(안전한곳에) 넣어두다.' 라는 의미를 갖고 있네요 ㅎㅎ 깃 에서 이름을 명명한대로 stash의 의미와 동일한 기능을 하는데요! 그럼 언제 쓰느냐!? 어느 특정 브랜치에서 작업을 하다가 그 작업이 다 끝나지 않은 상태에서 다른 브랜치에서의 작업을 위해 체크아웃 해야 할 때 사용합니다. , 좀 더 쉽게 풀어 쓰면, 아직 끝나지 않은 작업을 커밋한 후 다른 브랜치로 체크아웃하기 애매하기에 잠깐 작업 내용을 숨겨둔 상태로 다른 브랜치로 체크아웃 할때 사용 합니다! stash 역시 사용방법은 간단하데요. 어느 한 브랜치에서 작업하다가, 다른 브랜치로 체크아웃 할 때, git..

오늘은 git 브랜치에 대해 배워볼까 합니다. branch를 만든다는 것은 작업을 분기하겠다는 의미와 같습니다. 즉, 오늘 브랜치에 대해 배우면 앞으로는 작업을 분기시켜 관리 할 수 있는 능력을 얻게 되는 것이죠 :) 그럼 브랜치는 어떤 상황에서 만들게 될까요? 여러가지 경우가 있겠지만, 크게 두가지 경우 입니다. 원래 소스코드는 변경하지 않으면서 기존 소스코드에 다른 기능을 추가 하고자 할 때! 메인 작업과 테스트작업을 분기해서 진행하고자 할 때! 그럼 시작해 봅시다! git branch 라고 입력을 해보면 현재 branch 리스트가 나옵니다. 저희는 아직 새로운 브랜치를 생성한적이 없기 때문에, 아래와 같이 나올껍니다. master옆 에있는 *의 의미는 현재 어느 브랜치에 들어와 있는지를 나타냅니다...

오늘은 git add와 git commit에 대해 알아볼까 합니다 :) 앞서 저희는 git init을 함으로써 이 프로젝트에 대해 버전관리를 시작하겠다고 컴퓨터에 알려줬었는데요. 이제 버전을 만들고 그 버전에 git을 add 하고 commit 함으로써 변경사항을 관리해 나가는 방법을 배울 겁니다. 여기서 버전이란, 보통은 의미있는 변화를 의미 합니다. (작업이 완결된 상태) 해당 버전이 자신이 만든것이라고 다른사람에게 알려주기 위해 git의 환경설정을 할 수 있는데, 이 부분은 선택사항 입니다. 하단의 명렁어 끝에 자신의 이름과 이메일(빨간색 글자)을 입력하면 내가 작성한 버전정보에는 자신의 이름과 이메일이 포함되게 됩니다. 따라서, 다른사람이 봤을때 누가 작업했는지 알 수 있습니다. git config..

해야지 해야지 미루기만 했던 머신러닝 공부를 얼마전부터 시작해서, 앞으로 공부한 내용을 정리할 겸 블로그에 올리려고 합니다! 책과 유튜브 머신러닝 강의를 공부한 내용을 토대로 올리는 거라 내용상 오류가 적을 것 같지만, 혹시라도 틀린 점, 잘못된 점이 있다면 알려주시면 감사하겠습니다 :) 많은 분들이 그렇겠지만, 저는 머신러닝, 딥러닝에 대해 알게되고 관심을 갖게 된 계기가 알파고와 이세돌9단의 대국이였습니다. 하지만, 이 머신러닝, 딥러닝기술이 최근 몇년사이 반짝 하고 나온게 아니라, 이전부터 많은 연구자들이 연구해오고 좌절도 겪고 하며 지금에서야 빛을 발하게 된 기술이더라구요 ㅎㅎ 연구는 약 1950년대 후반 부터 시작해서 지금까지 중간중간 여러번의 혹독한 좌절을 겪으면서, 발전해온 기술이랍니다. 지..

Github 같은 분산버전관리시스템은 여러 협업 프로젝트를 진행하는데 있어서 필수적(?)으로 사용되는 툴 입니다. 저도 IT 연합동아리 활동을 하면서 Github을 사용했었는데, 겉할기 식으로 그때 그때 블로그나 구글 검색을 통해 참고한 지식으로 사용하다보니 정말 여러모로 고생을 많이 했던 기억이 있습니다 ㅜㅜ 한 번 이렇게 데이고나니(?) 제대로 배워서 사용하고 싶은 오기가 생겼었는데, 마침 알만한 사람들은 다 아는 생활코딩의 유튜브에 깃에 대한 강의가 있어서, 강의를 통해 배운 지식을 여기 블로그에 정리해 보려고 합니다 :) Git - 버전관리 시스템(Version Control System) 분류에 속하는 프로그램중 하나, 핵심은 프로젝트의 변경사항을 관리하는데 있다. Backup Recovery ..

맥으로 개발을 하다 보면, 터미널을 사용하게 되는 경우가 많이 있는데요. iOS앱 개발을 할 때 외부 라이브러리를 사용하기 위해 CocoaPods 와 pod을 설치 할 때도 터미널을 통해 설치 하게 됩니다! 이외에도 파이썬을 쉘에서 실행하거나, 깃을 다루거나 할때도 터미널을 사용하게 되죠. 그래서! 터미널에서 자주 사용되는 명령어들을 알고 있으면, 매우 유용하기 때문에, 자주 사용되는 명령어들을 정리해 보았습니다 :) 터미널은 우측 상단 돋보기(Spotlight)에서 terminal이라 입력 후 들어가시면 됩니다. cd 디렉토리명 : 디렉토리 이동 (cd는 change directory의 약자!) cd.. : 상위 디렉토리 이동 cd~ : 홈 디렉토리 이동 mkdir 디렉토리명 : 새로운 디렉토리 폴더 ..