우리 주변을 살펴보면 많은 부분에 있어 규칙이 정해져 있고, 조직화되어 있는 것을 볼 수 있습니다. 이렇게 하는 이유는, 효율적이기 때문인데요. 예를 들면 해야할 일을 리스트로 정리한다던가, 매표소에서 줄을 서서 구매하는 것 등등 여러 가지가 있습니다. (만약 매표소에서 줄을 서지 않고 표를 구매할 수 있다면, 엉망진창이 되겠죠?) 일상에서 볼수 있는 예와 자료구조를 비교해보면 아래와 같이 나타 낼 수 있습니다. 우리가 만들게 되는 프로그램은 적절한 자료구조와 알고리즘으로 이뤄집니다. 그래서 많은 회사들이 자료구조와 알고리즘을 중요하게 생각하는 것이죠! 만약 최대값을 찾는 프로그램을 작성한다고 가정해봅시다. 최댓값을 찾는 프로그램의 경우 다양한 방법이 있겠지만, 배열이라는 자료구조와 순차탐색이라는 알고리..
앞서, 깃헙에 대해 살펴 보았으니, 이제 본격적으로 사용 방법에 대해 알아봐야 겠죠? 우선 깃헙에 회원가입을 하셨으면, 로그인을 해줍시다. 로그인 하면 다음 사진과 같이 화면 상단에 초록색버튼 New가 있을겁니다. 이 버튼은 깃허브에 원격저장소를 만들겠다는 버튼입니다. 클릭해 줍시다! 여기서 깃허브를 처음 사용하시는 분들은, 어렵게 느끼실 수도 있는데요. 전혀 두려워 할 것 없습니다! 각각의 용어에 대한 설명은 다음과 같습니다. Repository name - 원격저장소 이름 Description - 원격저장소에대한 간략한 설명 (선택 사항이므로 안적으셔도 됩니다.) Public & Private - 원격저장소를 공개로 설정할 것인지, 비공개로 설정할 것인지 선택 Initialize this reposi..
해야지 해야지 미루기만 했던 머신러닝 공부를 얼마전부터 시작해서, 앞으로 공부한 내용을 정리할 겸 블로그에 올리려고 합니다! 책과 유튜브 머신러닝 강의를 공부한 내용을 토대로 올리는 거라 내용상 오류가 적을 것 같지만, 혹시라도 틀린 점, 잘못된 점이 있다면 알려주시면 감사하겠습니다 :) 많은 분들이 그렇겠지만, 저는 머신러닝, 딥러닝에 대해 알게되고 관심을 갖게 된 계기가 알파고와 이세돌9단의 대국이였습니다. 하지만, 이 머신러닝, 딥러닝기술이 최근 몇년사이 반짝 하고 나온게 아니라, 이전부터 많은 연구자들이 연구해오고 좌절도 겪고 하며 지금에서야 빛을 발하게 된 기술이더라구요 ㅎㅎ 연구는 약 1950년대 후반 부터 시작해서 지금까지 중간중간 여러번의 혹독한 좌절을 겪으면서, 발전해온 기술이랍니다. 지..
머신러닝에 나오는 간단한 용어와 개념을 정리해 보았습니다. 데이터 마이닝 - 대용량의 데이터를 분석하면 겉으로는 보이지 않던 패턴을 발견 할 수 있다. 학습 종류 : 지도 학습, 비지도 학습, 준지도 학습, 온라인 학습, 배치 학습, 사례기반 학습, 모델 기반 학습... 지도 학습 - 알고리즘에 주입하는 훈련데이터에 레이블이라는 답 포함 ex) 분류 비지도 학습 - 훈련 데이터에 레이블 포함 X ex) 군집, 시각화, 차원축소 준지도 학습 - 레이블 유무 데이터 혼합 강화 학습 - 보상(reward) & 벌점(penalty)이 있으며, 정책(policy)이라 부르는 최상의 전략을 스스로 학습 사례기반 학습 - 사례를 기억하고, 유사도를 추정 (유사도 측정을 사용해 새로운 데이터 일반화) 효용함수 - 모델..
Github 같은 분산버전관리시스템은 여러 협업 프로젝트를 진행하는데 있어서 필수적(?)으로 사용되는 툴 입니다. 저도 IT 연합동아리 활동을 하면서 Github을 사용했었는데, 겉할기 식으로 그때 그때 블로그나 구글 검색을 통해 참고한 지식으로 사용하다보니 정말 여러모로 고생을 많이 했던 기억이 있습니다 ㅜㅜ 한 번 이렇게 데이고나니(?) 제대로 배워서 사용하고 싶은 오기가 생겼었는데, 마침 알만한 사람들은 다 아는 생활코딩의 유튜브에 깃에 대한 강의가 있어서, 강의를 통해 배운 지식을 여기 블로그에 정리해 보려고 합니다 :) Git - 버전관리 시스템(Version Control System) 분류에 속하는 프로그램중 하나, 핵심은 프로젝트의 변경사항을 관리하는데 있다. Backup Recovery ..