CS Repository 64

[개발자를 위한 필수 수학] 기술통계

본 내용은 “개발자를 위한 필수 수학” 도서를 참고하여 작성되었습니다. 개발자를 위한 필수 수학 - 예스24개발자를 구원하는 실용 수학 안내서기초 수학부터 회귀 모델, 신경망 그리고 진로 조언까지 데이터 과학, 머신러닝, 통계학에서 탁월한 능력을 발휘하는 데 필요한 수학을 이해하고 여러분의www.yes24.com 데이터를 바라보는 방법통계에 대한 학습을 시작하기 전에, 데이터는 언제나 편향될 수 있음을 인지하고, 다음 네가지를 반드시 파악해야 한다.데이터가 뭘 나타내는지데이터가 어떻게 생성되었는지데이터를 누가 생성했는지데이터가 포착하지 못하는 것은 무엇인지기술 통계와 추론 통계통계에는 크게 두가지 종류가 있다.기술통계추론통계기술통계란?기술통계란, 주어진 데이터를 요약하는 것으로, ****데이터를 설명하기..

[개발자를 위한 필수 수학] 확률의 기초

본 내용은 “개발자를 위한 필수 수학” 도서를 참고하여 작성되었습니다.확률이란?먼저, 확률을 나타내는 용어인 ‘확률’, ‘가능도’, ‘오즈’에 대해 알아보자.확률어떤 사건이 일어날 것이라고 믿는 정도미래 시점의 관점을 나타낸다.상호 배타적인 모든 확률의 합이 1이 되어야 한다.가능도이미 발생한 사건의 빈도를 측정하는 것과거 시점의 관점을 나타낸다.상호 배타적인 모든 가능도의 합이 1이 아닐 수 있다.확률과 가능도를 같은 의미로 쓰는 경우도 있는데, 둘은 엄연히 다른 종류이다.오즈'승산'승산이 있다 할때 그 승산을 의미한다.오즈가 2.0이면“어떤 사건이 일어날 확률이 일어나지 않을 확률보다 두배 더 높다”주로 도박이나 베팅에서 주관적인 믿음을 정량화하는데 사용한다.로그 오즈를 이용한 로지스틱 회귀, Bay..

[혼자 공부하는 데이터 분석] 통계의 기초 구성 요소와 Matplotlib의 기본 구조

통계평균데이터 값을 모두 더한 후 데이터 개수로 나눈 값.중앙값전체 데이터를 크기 순서대로 일렬로 늘어 놓았을 때 중간에 위치한 값.전체 데이터 개수가 짝수일 때는 중간의 두 데이터의 평균을 계산한다.분위수순서대로 나열된 데이터를 일정한 간격으로 나누는 기준점.예를 들어 사분위수는 데이터를 4등분하며, 25%, 50%, 75%에 위치한 값이다.백분위수는 데이터를 100개의 구간으로 나눈다.분산데이터가 평균에서 얼마나 멀리 퍼져 있는지를 알려주는 값.각 데이터를 평균에서 뺀 다음 제곱한 후 전체 데이터 개수로 나누어 구한다.표준편차분산의 제곱근.데이터의 분포 정도를 알려준다.표준편차는 원본 데이터와 단위가 같기 때문에 분산보다 해석하기 쉬워 자주 쓰인다.최빈값데이터에서 가장 많이 등장하는 값.숫자와 문자 ..

[혼자 공부하는 데이터 분석] 데이터 정제하기

본 내용은 혼자 공부하는 데이터 분석 교재를 참고하여 작성하였습니다. 혼자 공부하는 데이터 분석 with 파이썬 - 예스24혼자 해도 충분하다! 1:1 과외하듯 배우는 데이터 분석 자습서이 책은 독학으로 데이터 분석을 배우는 입문자가 ‘꼭 필요한 내용을 제대로 학습’할 수 있도록 구성했습니다. 뭘 모르는지조차www.yes24.com 학습 목표데이터프레임에서 불필요한 행과 열을 삭제하거나, 데이터값을 바꾸는 방법을 배워보자.정규 표현식을 사용해 잘못된 값을 고치거나 누락된 값이 있는 경우 웹 스크래핑하여 얻은 값으로 채워보자.데이터 정제란?데이터 정제란, 데이터에서 손상되거나 부정확한 부분을 수정하고, 불필요한 데이터를 삭제하거나 불완전한 값을 교체하는 등의 작업을 의미한다.데이터 정제는 원 데이터를 좀 ..

[혼자 공부하는 데이터 분석] 데이터 분석 기초를 시작하며

해당 챕터에서는 첫 장인만큼, 데이터 분석의 정의와, 코랩과 판다스의 기초적인 사용법을 알아보도록 하자.데이터 분석이란?“데이터 분석”은 명확히 정의하기 어렵다.데이터 분석과 관련된 용어는 다음과 같은 것들이 있다.데이터 과학데이터 분석머신러닝통계학데이터 마이닝각각의 정확한 의미와 범주를 파악해보자.데이터 분석은 데이터 과학의 한 종류로, 그 외 다른 데이터 과학의 구성요소는 다음과 같은 것들이 있다.그렇다면 데이터 과학의 의미는 뭘까?Quora에 존재하는 질문에서 데이터 과학자 Ji Li가 적은 답변은 데이터 과학을 다음과 같이 정의하고 있다.데이터 세계와 비즈니스 세계를 잇는 다리데이터를 기반으로 비즈니스 결정을 하는 방법이 책의 저자는 데이터 분석과 데이터 과학을 이렇게 정의한다.데이터 분석올바른 ..

공공 데이터셋 탐색 사이트

국내 사이트공공데이터포털www.data.go.kr행안부에서 운영하는 공공 데이터 통합 제공 시스템공공데이터를 찾고싶을 때 사용하자.통합 데이터 지도www.bigdata-map.kr과기정통부와 한국지능정보사회진흥원에서 운영중인 여러 빅 데이터 플랫폼의 데이터를 한곳에서 검색할 수 있는 서비스AI허브aihub.or.kr한국지능정보사회진흥원에서 운영하는 AI 학습용 데이터 제공 사이트국가통계포털kosis.kr통계청이 제공하는 대표적인 통계 포털 사이트해외 사이트구글 데이터 셋 검색datasetsearch.research.google.com무료로 사용할 수 있는 데이터를 검색할 수 있는 검색 엔진캐글 데이터셋www.kaggle.com/datasets캐글에서 진행된 경진 대회에서 사용된 데이터셋허깅페이스 데이터셋..

[개발자를 위한 통계학 찍먹하기] 0편 - 동기

서론나는 그동안 포트폴리오에서 발견되는 성능 테스트에 대한 회의론을 갖고 있었다.정량적 데이터에 의한 동기만으로 성능 테스트가 수행된 경우, 어디서 본 듯한 이유와 어디서 본 듯한 개선, 짜맞춘 의도에 짜맞춘 개선밖에 볼 수 없었고, 정성적 데이터에 의한 동기만으로 성능 테스트를 수행한 경우, 트레이드오프를 고려하지 않은 단순한 오버엔지니어링으로밖에 보이지 않았다.따라서, 해당 성능 테스트에서 작성자들의 문제 해결 능력을 이해하기가 어려웠다.하지만, 아무것도 안하는 것보다는 낫다는 걸 나 스스로도 인정하고 있긴 했다.그래서, “할거면, 논리적으로 하자.” 라는 결론에 도달하게 되었다. 참고: 정량적 데이터 vs 정성적 데이터 정량적 VS 정성적 데이터 차이 파악하고 균형 있는 설문조사 실시하기정량적 데이..

SQL 쿼리의 동작 순서와 기본적인 동작 원리

SQL 문법의 동작 순서 외우는 법게토레이랮혼애ㅣfowghsdol각 문법의 첫글자를 딴 형태로 만든 암기 방식이다.실제 동작 순서는 다음과 같다.fromon(join)wheregroup byhavingselectdistinct, unionorder bylimit/offsetFrom쿼리의 작업 대상이 되는 기본 테이블을 결정한다.최초 쿼리가 동작할 테이블/뷰/파티션/서브쿼리가 정확히 어딘지를 결정한다.On(Join)조인 순서 최적화조인 알고리즘 선택별도의 글로 작성해야 함. 깊이가 깊음. (작성예정)WhereFROM/Join 절로 생성된 모든 행에 대해 필터링을 수행한다.인덱스를 사용 가능한 (sargable) 조건들에 대하여, 인덱스를 사용하여 탐색한다.집계함수를 사용할 수 없다.select 절에서 정의..

CS Repository/DB 2025.05.01

TCP의 다양한 추가 기능 - TFO, Nagle 알고리즘, 지연 ACK, Early Retransmit, Tail Loss Probe

TCP Fast Open(TFO)3-way handshake를 사용해 애플리케이션 데이터를 교환하는 기능이다.처음부터는 불가능하다.그 대신, 첫 handshake 때 옵션 필드로 TCP Fast Open에 필요한 정보(TFO Cookie)를 교환한다.그 이후, 2번째 Handshake부터 TCP Fast Open을 발동한다.클라이언트는 SYN에서 HTTP 요청을 송신하고, 서버는 SYN/ACK로 HTTP 응답을 반환한다.Nagle 알고리즘네이글 알고리즘은 작은 데이터가 자주 전송될 경우, 더 큰 세그먼트로 합쳐 전송함으로써 패킷 낭비를 줄이기 위한 방식이다.구체적으로,버퍼에 모은 데이터가 최대 세그먼트 크기(MSS)에 도달하면 즉시 전송한다.이전에 전송한 세그먼트에 대한 ACK를 모두 받으면 즉시 전송한..

TCP의 연결과 종료 과정 - 흐름제어, 혼잡제어, 재전송 제어, 3-way handshake, 4-way handshake

본 게시글은 그림으로 공부하는 TCP/IP 구조 도서를 참고하였습니다. TCP 의 주요 동작과 그 성공 시나리오들을 알아보자. TCP의 상태는 크게 다음과 같이 분류할 수 있다.접속 시작 단계액티브 오픈클라이언트가 커넥션을 만들어가는 처리를 의미한다.패시브 오픈서버가 클라이언트의 연결 요청을 받아들이는 처리를 의미한다.접속 확립 단계접속 종료 단계액티브 클로즈FIN/ACK을 먼저 송출해서 커넥션을 종료하려는 처리를 의미한다.패시브 클로즈FIN/ACK을 받고, 커넥션을 종료하는 과정을 받아들이려는 처리를 의미한다.TCP는 컨트롤 비트를 구성하는 8개 플래그를 '0' 또는 '1'로 설정해 다음 그림과 같이 TCP 커넥션 상태를 제어한다.각 단계 별 주요 동작으로는 다음과 같은 것들이 있다.접속 시작 단계3-..