분류 전체보기 70

[C/C++] Swap

프로그래밍을 공부하다 보면 기본적인 문법 이후에는 자료구조와 알고리즘을 익혀야 한다. 특히 알고리즘은 가장 처음 배우는 것은 정렬(sorting) 알고리즘들이다. 정렬 알고리즘은 주어진 배열 안에 무작위한 여러 숫자들이 존재 할 때, 이 숫자가 오름차순(또는 내림차순)으로 정렬 시키는 방법에 대한 것이다. 이를 위해서는 필연적으로 배열의 순서를 바꾸기 위한 swap함수가 사용 되게 된다. void swap(int &a, int &b) { int temp = a; a = b; b = temp; return; } swap함수의 가장 기초적인 형태는 위와 같이 하나의 변수(위에선 a)를 선택하여 임시변수temp에 저장하고, 그 변수에는 b의 값을 저장한다. 이후 b변수에 temp변수에 저장한 a의 값을 다시 ..

프로그래밍 2021.12.04

[남독] 조금 더 전문가 같은 기계 학습 방법

"한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 진짜 전문가가 되기 위한 머신러닝 디자인 패턴 지금은 바야흐로 인공지능의 시대라고 말해도 과언이 아닐 정도로 수많은 분야의 사람들이 기계학습, 특히 딥러닝을 활용하고 있다. 나 역시도 딥러닝에 대해 꾸준히 학습 해 가면서 시대에 뒤처지지 않고 좋은 개발자가 되기 위해 노력 중이다. 이런 상황 속에서 딥러닝 네트워크에 대해서만 막연하게 학습하는 것은 그저 암기할 대상만 늘어날 뿐 전혀 실용적이지 않아 보였다. 개발 공부를 하면서 학습한 내용을 실용적으로 만들기 위해서는 하나의 프로세스를 수행하기 위한 과정을 실천할 수 있어야 한다. 물론 학습 초기 단계에서는 문법에 익숙해지고, 간단한 어플리케이션을 만들 수 있는 것으로도 충분하다. 그러나 충분..

서평 2021.11.16

[남독] 나보다 소중한 사람이 생겨버렸다.

출산율이 1.0 이하로 내려간 요즘, 나 또한 아이에 대해 크게 생각해본 적은 없었다. 아이를 무척이나 좋아해, 지나가는 아이를 보면 꼬박꼬박 인사하며 친근해지고 싶어 하였다. 그럼에도 내 아이를 갖는 것에 대해서는 진지한 고민은 해본 적이 없었다. 그러던 어느 날 지금의 아내인 여자 친구와 결혼하였고, 아이 또한 갖게 되었다. 내 아이를 갖게 된다는 것은 옆집 꼬맹이에게 인사를 하는 것과는 전혀 다른 것이었다. 내 옆을 지나가는 아이들의 귀여운 모습 뒤에는 아이 부모님들의 수많은 노력이 숨겨져 있었던 것이다. 갓난아이일 때는 먹고 자고 싸는 것 모두 부모의 책임이었다. 이번에 소개하고 싶은 프레드릭 배크만의 첫 번째 에세이 에서 이런 말을 한다. 너한테 무슨 개인적인 감정이 있어서 이러는건 아니야. 어..

서평 2021.11.01

[남독] 처음 배우는 그래픽 레코딩

나에게는 항상 어려운 것들이 몇 가지 있는데, 생각을 표현하는 것이 그 중 하나이다. 특히 회의자료 같은 것을 만들 때, 마구자비로 떠오르는 아이디어들은 대부분 머릿속에 갖혀 10%도 채 표현되지 못하고 간신히 구색만 맞춘 자료를 들고 회의실로 들어가게 된다. 물론 부족한 자료들은 어떻게 해서든 말로 채워넣어 다른 사람들을 납득은 시키지만, 이러한 현상을 어떻게 해야 고칠 수 있는지 고민하고 있었다. 뭔가 아기자기한 그림과 눈을 사로잡는 제목이 구보타 아사미 작가의 을 구매하게 만들었다. 비주얼 씽킹, 이야기 기록, 처음 배우는, 그래픽 레코딩. 책의 내용은 말 그대로 "비주얼 씽킹으로 이야기를 기록하는 방법이다." 여기서 비주얼 씽킹이라는 것을 그대로 번역하면 시각적인 생각이라는 의미이고, 이는 생각이..

서평 2021.10.29

[남독] 제대로 배우는 수학적 최적화

"한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 수학적 최적화는 무엇일까? 최적화하고 싶은 목적과 그에 수반되는 제한사항을 수학을 통해 기술하고 해(solution)을 구하는 것 다양한 분야에 활용되고 있지만, 특히 요즘엔 인공지능이라는 이름으로 불리는 머신러닝과 딥러닝이 대표적인 예시 "제대로 배우는 수학적 최적화" 최적화의 기초: 최적화에 대해 입문하는 사람을 위한 기초적인 내용 선형 계획: 선형 계획 문제의 형태 및 풀이 방식(단체법) 비선형 계획: 비선형 계획 문제의 형태 및 풀이 방식(제약 X-경사 하강법, 뉴턴 법, 준 뉴턴 법/제약 O-확장 라그랑주 함수 법, 내점 법, 순차 2차 계획법) 정수 계획: 정수 계획 문제의 형태 및 풀이 방식(탐욕 알고리즘, 동적 계획법) 이 책의..

서평 2021.10.27

[남독] 만들면서 배우는 파이토치 딥러닝, 딥러닝은 사드세요.... 제발

"한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 이제 딥러닝 기초를 뗀 초심자에겐 아주 유용한 중급자 길라잡이 딥러닝을 능숙하게 사용할 줄 안다면 유용한 베이스 라인 실제 테스크를 통해 유용한 테크닉들을 익히기 좋은 교보재 프로그래밍을 공부하고 있거나 관심이 있다면 한번쯤 딥러닝에 대해 들어본적이 있을 것이다. 나 역시 프로그래밍과 뗄 수 없는 삶을 살고 있어 다양한 수업이나 자료들을 찾아 보았다. 대부분의 수업은 기초적인 퍼셉트론(perceptron)부터 시작해서 다층 퍼셉트론(multi-layer perceptron: MLP), 역전파(backpropagation), 컨볼루션(convolution), 순환 신경망(recurrent neural network: RNN) 등에 대해 이론적인..

서평 2021.09.21

[남독] 선택 설계자들

인생은 선택의 연속이다. 수많은 선택들을 거쳐가면서 만족스러운 선택을 할 때도 있지만, 충격적인 실패를 겪게 되는 선택을 할 때도 있다. 시간이 흐를수록 선택을 해야 하는 순간이 많아진다고 느껴 "어떻게 하면 좋은 선택을 할 수 있을까?" 하는 의문이 생겼다. 이때 눈에 들어온 것은 올리비에 시보니가 쓴 이다. 책의 추천사에는 CEO들에게 강력하게 추천한다고 적혀있지만, 꼭 회사의 책임자가 아니더라도 이 책은 선택을 내리는데 큰 도움을 줄 수 있다. 은 크게 세가지 파트로 나뉘어 있다. 첫 번째 파트는 "합리적인 결정을 가로막는 9가지 함정"으로 선택의 과정에 있어서 치명적인 영향을 줄 수 있는 다양한 함정들과 편향들에 대해 설명해 준다. 두 번째 파트는 "탁월한 의사결정을 위한 혁신 도구들"에서는 앞서..

서평 2021.09.03

[남독] 스벨트 앤 새퍼 인 액션, 웹린이의 감상평

"한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 마크 볼크먼의 은 이미 자바스크립트, HTML, CSS에 대한 어느 정도의 지식이 있고, 다양한 프레임워크에 대한 사용 경험이 있는 개발자를 위한 책입니다. 저 같은 경우 이제 만 3년이 된 신입 티를 벗으려고 하는 개발자입니다. Matlab을 통해 개발자 세상에 입문하였고 C/C++을 주로 활용하고 이제 막 파이썬을 통한 데이터 분석이나 딥러닝을 공부하고 있는 연구원이라 웹 개발에 대한 지식, 특히 자바스크립트나 HTML, CSS에 대해선 어지간한 초보 개발자만큼도 모르는 상황이었습니다. 한빛미디어의 를 통해 다양한 분야의 책을 읽어가고 있었는데, 최근 웹 개발에 대한 욕심도 생겨(소소한 토이 프로젝트 하기엔 웹 개발이 필수라고 생각이 들어..

서평 2021.08.15

[남독] 하이퍼포커스, 준비된 집중력

예전부터 나는 항상 집중력이 부족한 사람이라고 생각했었다. 또한 24시간 중 집중이 필요한 특정 시간들을 제외하면 나머지 시간은 그저 빨리 지나가기만을 바라며 타임 킬링용 콘텐츠들을 무의미하게 소모하며 살았었다. 크리스 베일리의 를 읽으면서 이러한 생각은 꽤 많이 바뀌게 되었다. 우선 에서는 왜 집중해야 하는가에 대해 10개의 장 중에서 30퍼센트를 할애하여 설득하고 있다. 우선 앞서 내가 생각하고 있던 무의미하게 시간을 보내는 방법들을 "자동조종 기능(autopilot mode)"라고 명명하면서 상황에 따라서 유의미 하지만, 최소한으로만 사용해야 하는 것을 말한다. 왜냐하면 대부분의 시간들을 충분히 집중하여 보냄으로써 얻는 이득이 삶을 윤택하게 만들어 주기 때문이다. 에서 말하는 몰입(hyper foc..

서평 2021.07.27

[남독] 데이터 스토리, 인과관계보단 스토리다!

"한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 개발자에게 가장 필요한 기술은 무엇일까? 프로그래밍 언어 숙련도, 다양한 자료구조와 알고리즘, 신기술에 대한 이해도 등 다양하게 있겠지만 주어진 데이터로 상대방을 설득할 수 있는 능력 또한 중요하다. 특히 문제점을 발견 하였을 때, 이를 고치기 위해서는 문제점이 어떤 것인지 관리자를 설득할 수 있어야만 유려한 코딩 실력을 뽐낼 수 있을 것이다. 이러한 관점에서 본다면, 데이터 스토리는 많은 직장인에게 꼭 필요한 책이라고 생각이 된다. 특히 이전에 읽어보았던 바바라 민토의 "논리의 기술"을 읽으면서 알게된 피라미드 원칙에 따른 논리 구조가 지극히 효율적인 글쓰기 방법이라면 낸시 두아르테의 "데이터 스토리"는 한 단계 더 나아가 흡입력 있는 이야..

서평 2021.07.23
728x90
반응형