코딩 뇌를 깨우는 파이썬 (문제 해결 능력을 키우는 컴퓨팅 사고부터 알고리즘, 데이터 분석, 머신러닝까지)

코딩 뇌를 깨우는 파이썬 (문제 해결 능력을 키우는 컴퓨팅 사고부터 알고리즘, 데이터 분석, 머신러닝까지)

$35.86
Description
잠자는 코딩 뇌를 깨워라
파이썬 기초부터 머신러닝까지 한 권에!
프로그래밍 경험이나 지식이 없는 분들을 위해 파이썬과 다양한 라이브러리(넘파이, 맷플롯립, 판다스, 사이킷런 등)를 사용한 문제 해결 비법을 소개합니다. 이 책을 통해 일상에서 마주하는 다양한 문제를 프로그래밍으로 해결하는 기술을 배워보세요. 데이터 모델링과 해석 같은 데이터 과학의 핵심을 배우고, 간단한 머신러닝 기법도 만나봅니다.
이 책은 MIT 강의를 기반으로 만들어진 컴퓨터 과학 입문서로 프로그래밍을 전혀 모르는 초보자도 부담 없이 펼쳐볼 수 있습니다. 컴퓨팅 사고와 간단한 알고리즘처럼 프로그래밍 입문에 꼭 필요한 주제로 잠들어 있던 코딩 뇌를 깨우세요. 각 장에 마련된 뇌풀기 문제를 통해 데이터 시각화나 시뮬레이션, 데이터 계산 기법, 머신러닝 같은 실용적인 주제를 살펴보며 프로그래밍 능력을 키워봅시다.
저자

존V.구태그

(JohnV.Guttag)
MIT전기공학및컴퓨터과학부(EECS)에서듀갈드C.잭슨교수로재직하고있으며ACM의펠로이자미국예술과학아카데미의회원입니다.1999년부터2004년까지전기공학및컴퓨터과학부에서학부장을맡았으며,현재는MIT의컴퓨터과학및인공지능연구소(CSAIL)에서의료문제에적용할수있는고급머신러닝및컴퓨터비전기술연구를이끌고있습니다.또한,환자치료관리에사용하는인공지능플랫폼을개발하는헬스앳스케일테크놀로지스Health[at]ScaleTechnologies를설립해CTO로재직하고있습니다.
MIT에서2006년부터직접문제를구성하고데이터에서유용한정보를찾아내는데필요한계산적사고를익히는수업을개설했으며,해당강의는온라인으로도공개되어2백만명이상의학생이수강했습니다.

목차

〈1부〉프로그래밍시작하기

1장시작하기

2장파이썬소개
_2.1파이썬과파이썬IDE설치하기
_2.2파이썬의기본요소
__2.2.1객체,표현,수치타입
__2.2.2변수와할당
_2.3분기프로그램
_2.4문자열과입력
__2.4.1입력
__2.4.2문자인코딩에관한여담
_2.5while루프
_2.6for루프와range
_2.7스타일의중요성

3장간단한수치프로그램
_3.1완전열거
_3.2근사해법과이분검색
_3.3부동소수점사용에대하여
_3.4뉴턴-랍슨방법

〈2부〉효율적으로프로그래밍하기

4장함수,유효범위,추상화
_4.1함수와유효범위
__4.1.1함수정의
__4.1.2키워드인수와기본값
__4.1.3가변길이인수
__4.1.4유효범위
_4.2사양
_4.3함수를사용해코드를모듈화하기
_4.4객체로서의함수
_4.5메서드

5장구조적인타입과가변성
_5.1튜플
__5.1.1복수할당
_5.2range와iterator타입
_5.3리스트와가변성
__5.3.1복제
__5.3.2리스트내포
_5.4리스트의고차연산
_5.5문자열,튜플,레인지,리스트
_5.6집합
_5.7딕셔너리
_5.8딕셔너리내포

6장재귀와전역변수
_6.1피보나치수열
_6.2팰린드롬
_6.3전역변수

〈3부〉탄탄한프로그램만들기

7장모듈과파일
_7.1모듈
_7.2사전에정의된패키지사용하기
_7.3파일

8장테스트와디버깅
_8.1테스트
__8.1.1블랙박스테스트
__8.1.2글라스박스테스트
__8.1.3테스트수행하기
_8.2디버깅
__8.2.1디버깅배우기
__8.2.2실험설계하기
__8.2.3어려운상황에직면했을때
__8.2.4버그를찾았을때

9장예외와assert
_9.1예외처리하기
_9.2제어흐름메커니즘으로예외사용하기
_9.3assert

10장클래스와객체지향프로그래밍
_10.1추상데이터타입과클래스
__10.1.1매직메서드와해싱가능타입
__10.1.2추상데이터타입을사용해프로그램설계하기
__10.1.3학생관리를위한클래스
_10.2상속
__10.2.1다단계상속
__10.2.2대체원칙
_10.3캡슐화와정보은닉
__10.3.1제너레이터
_10.4고급예제

〈4부〉프로그래밍으로문제풀기

11장알고리즘복잡도의간략한소개
_11.1계산복잡도에관한고찰
_11.2점근표기법
_11.3중요한몇가지복잡도종류
__11.3.1상수복잡도
__11.3.2로그복잡도
__11.3.3선형복잡도
__11.3.4로그선형복잡도
__11.3.5다항복잡도
__11.3.6지수복잡도
__11.3.7복잡도비교

12장몇가지간단한알고리즘과데이터구조
_12.1검색알고리즘
__12.1.1선형검색과간접참조로원소에접근하기
__12.1.2이진검색과가정활용
_12.2정렬알고리즘
__12.2.1합병정렬
__12.2.2파이썬의정렬기능
_12.3해시테이블

13장그래프출력과클래스
_13.1맷플롯립으로그래프그리기
_13.2모기지그래프그리기
_13.3전염병을위한인터랙티브그래프

〈5부〉프로그래밍으로현실세계이해하기

14장배낭문제와그래프최적화문제
_14.1배낭문제
__14.1.1탐욕알고리즘
__14.1.20/1배낭문제의최적솔루션
_14.2그래프최적화문제
__14.2.1고전적인그래프문제
__14.2.2최단경로:깊이우선탐색과너비우선탐색

15장동적계획법
_15.1피보나치수열다시살펴보기
_15.2동적계획법과0/1배낭문제
_15.3동적계획법과분할정복

16장랜덤워크와데이터시각화
_16.1랜덤워크
_16.2술에취한농부의산책
_16.3편향된랜덤워크
_16.4위험한들판

〈6부〉데이터이해하기

17장확률적프로그램,확률그리고분포
_17.1확률적프로그램
_17.2간단한확률계산하기
_17.3추론통계
_17.4분포
__17.4.1확률분포
__17.4.2정규분포
__17.4.3연속균등분포와이산균등분포
__17.4.4이항분포와다항분포
__17.4.5지수분포와기하분포
__17.4.6벤포드분포
_17.5해싱과충돌
_17.6잘하는팀이얼마나자주이기나요?

18장몬테카를로시뮬레이션
_18.1파스칼의문제
_18.2크랩스게임
_18.3테이블룩업을사용해성능높이기
_18.4π찾기
_18.5시뮬레이션모델에관한맺음말

19장샘플링과신뢰도
_19.1보스턴마라톤데이터샘플링
_19.2중심극한정리
_19.3평균의표준오차

20장실험데이터이해하기
_20.1스프링운동
__20.1.1선형회귀를사용해최적의직선찾기
_20.2발사체운동
__20.2.1결정계수
__20.2.2계산모델사용하기
_20.3지수적으로분포된데이터다루기
_20.4이론이없을때

21장무작위시험과가설검정
_21.1유의성검증하기
_21.2P값을주의하세요
_21.3단측1표본검정
_21.4유의한가요?유의하지않은가요?
_21.5표본크기는?
_21.6다중가설
_21.7조건부확률과베이즈통계
__21.7.1조건부확률
__21.7.2베이즈정리

22장거짓말,새빨간거짓말그리고통계학
_22.1가비지인가비지아웃(GIGO)
_22.2테스트의불완전성
_22.3오해하기쉬운그래프
_22.4CumHocErgoPropterHoc
_22.5전체를알려주지않는통계측정
_22.6샘플링편향
_22.7맥락의중요성
_22.8사과와오렌지비교하기
_22.9체리피킹
_22.10주의해야할외삽
_22.11텍사스명사수의오류
_22.12혼동하기쉬운백분율
_22.13회귀오류
_22.14통계적으로유의한차이가실제로유의하지않을수있음
_22.15주의사항

〈7부〉머신러닝

23장판다스로데이터탐험하기
_23.1데이터프레임과CSV파일
_23.2시리즈와데이터프레임만들기
_23.3열과행선택하기
__23.3.1loc와iloc를사용해선택하기
__23.3.2그룹선택하기
__23.3.3내용으로선택하기
_23.4데이터프레임조작하기
_23.5확장예제
__23.5.1온도데이터
__23.5.2화석연료소비량

24장머신러닝간략히살펴보기
_24.1특성벡터
_24.2거리지표

25장군집
_25.1Cluster클래스
_25.2k평균군집
_25.3가상의예제
_25.4실전예제

26장분류
_26.1분류기평가하기
_26.2마라톤선수의성별예측하기
_26.3K최근접이웃
_26.4회귀기반분류기
_26.5타이타닉생존자예측하기
_26.6마무리

출판사 서평

문제해결의비밀은계산적사고에있다

이책은문제해결을위한계산적사고입문서다.계산적사고방식을사용해문제를구성하고,계산모델을구축하고,데이터에서정보를추출하는방법을알아본다.간단한파이썬문법부터알고리즘,데이터과학,머신러닝까지다양한주제를살펴보며일상에서마주할문제를계산적사고로해결하는방법을학습한다.또한내용중간마다준비된‘뇌풀기문제’가지금까지학습한내용을정리하도록돕는다.간단한개념정리부터직접요구사항에맞는코드를작성하는프로그래밍까지다양한문제를풀어보며계산적사고를키워보자.

대상독자
● 프로그래밍을처음부터배우고싶은사람
● 파이썬기초부터머신러닝까지간단히경험하고싶은비전공자
● 데이터과학에필요한기본적인프로그래밍방법이궁금한학생

배우는내용
● 기초적인파이썬프로그래밍방법
● 프로그램을구성하고,작성하고,디버깅하는방법
● 프로그래밍으로모호한문제를해결하는방법
● 유용한알고리즘과문제축소방법
● 통계및시각화,머신러닝도구를사용해서데이터를이해하고모델링하는방법