본문 바로가기

분류 전체보기365

[프로그래밍수학] 수열 엘리스에서 제공한 강의와 자료를 보고 정리한 내용입니다. ✅ 수열 수열은 숫자의 나열을 의미한다. 수열은 나열 순서가 있고 중복이 허용된다는 점에서 집합과 구분된다. 1, 2, 3, 4, 5와 같이 개수가 정해져 있어 끝이 있는 수열을 유한 수열이라고 하며 1, 2, 3, 4, 5, ... 처럼 개수가 정해지지 않아 끝이 없는 수열을 무한 수열이라고 한다. 수열을 이루는 구성원을 수열의 항(term) 또는 원소(element)라고 한다. 수열은 항의 유형에 따라 자연수열, 실수열 등 다양한 형태로 존재할 수 있다. ✔️ 등차수열 등차수열은 연속하는 두 항의 차이가 모두 일정한 수열을 뜻한다. 즉, 일정한 간격으로 원소들이 커지거나 작아진다. 예를 들어 1, 3, 5, 7, 9, ... 는 각 원소들이 2.. 2022. 2. 10.
[프로그래밍수학] 소수 엘리스에서 제공한 강의와 자료를 보고 정리한 내용입니다. ✅ 모듈러연산 모듈러 연산(Modular arithmetic)은 a mod b = c와 같이 표기하며 "a를 b로 나눈 나머지는 c"라는 뜻이다. 즉, 모듈러 연산은 나머지 연산이다. 프로그래밍 언어들은 보통 나머지 연산에 대해 % 기호를 사용한다. ✅ 소수 소수(Prime number)는 1과 자기 자신을 제외한 어떤 수로도 나누어 떨어지지 않는 1보다 큰 자연수이다. 소수와 반대의 개념으로 1보다 큰 수 중 어떠한 수로 나누어 떨어지는 수를 합성수(Composite number)라고 한다. 1은 소수에도 합성수에도 속하지 않는다. def isPrime(n): if n == 1: return False for i in range(2, n): if.. 2022. 2. 10.
[4주차] Promise 2월 9일 자 학습 내용 정리입니다. ✅ Promise Promise는 비동기 작업을 표현하는 자바스크립트의 객체로 비동기 작업의 진행(pending), 성공(fulfilled, resolved), 실패(rejected) 상태를 표현한다. 즉, 비동기 처리의 순서를 표현할 수 있다. let error = false; const promise = new Promise((resolve, reject) => { if(!error) resolve("success"); else reject("error"); }); Promise의 생성자는 new Promise(callback)이며 callback 함수는 resolve와 reject의 두 가지 인자를 받는다. Promise가 성공하면 resolve를 호출하고 실패.. 2022. 2. 9.
[4주차] 자바스크립트 제어 흐름 2월 9일 자 학습 내용 정리입니다. ✅ 자바스크립트의 제어 흐름 자바스크립트는 다른 멀티 스레드 프로그래밍 언어(ex. JAVA, c++)와는 다른 방식으로 비동기 동작을 처리한다. 자바스크립트 엔진은 하나의 메인 스레드로 구성되어 있는데 메인 스레드는 코드를 읽어 한줄씩 실행한다. 그리고 브라우저 환경에서 유저 이벤트를 처리하고 화면에 그리는 역할을 담당한다. setTimeout(() => { console.log("Hello World"); }, 1000); 동일한 setTimeout 구문에 대해서 자바와 자바스크립트를 비교해보자면 다음과 같다. 자바스크립트의 경우 setTimeout 구문을 만나면 비동기 API가 작동해 함수를 큐에 저장한다. 이 큐는 자바스크립트 엔진 위가 아닌 별도의 환경에서 .. 2022. 2. 9.
머신러닝 종류와 머신러닝 관점 모델 평가 엘리스에서 제공한 강의와 자료를 보고 정리한 내용입니다. ✅ 머신러닝의 종류 머신러닝은 지도 학습과 비지도 학습으로 나뉜다. ✔️ 지도 학습 지도 학습(Supervised Learning)은 input data와 output data를 둘 다 가지고 예측 모델을 만드는 것을 의미한다. 지도 학습은 두 가지로 나뉘는데 범주를 예측하는 분류(Classification)와 숫자를 예측하는 회귀(Regression)이다. ✔️ 비지도 학습 비지도 학습(Unsupervised Learning)은 input data만 가지고 grouping하거나 해석한다. 비지도 학습에는 유사한 그룹끼리 군집화하는 Clustering이 속한다. ✅ 모델 평가 머신러닝 업무 프로세스의 3번째 단계인 모델 구축과 분석에서 모델 평가를.. 2022. 2. 8.
머신러닝 업무 프로세스와 핵심 용어 엘리스에서 제공한 강의와 자료를 보고 정리한 내용입니다. ✅ 머신러닝 업무 프로세스 머신러닝 업무 프로세스는 문제 파악 및 정의, 데이터 준비, 모델 구축과 분석, 결과 공유, 모니터링의 5가지 단계로 구성된다. ✔️ 문제 파악 및 정의 문제 파악 및 정의 단계는 비즈니스 문제를 파악하고 머신러닝 문제로 전환하는 단계이다. 머신러닝 도입 필요성 또는 가능성을 체크하며 도입에 따른 효과 검증을 설계한다. ✔️ 데이터 준비 데이터 준비 단계에서는 가능한 많은 데이터를 확보한다. 머신 러닝을 도입할 시스템을 설계하며 데이터를 분석, 이해하는 과정을 거친다. 이때 데이터 분석 및 이해 과정은 세 단계로 나뉘는데 Understanding(이해), Preprocessing(전처리), Exploring(탐색)의 순서.. 2022. 2. 8.
데이터 과학과 머신러닝 엘리스에서 제공한 강의와 자료를 보고 정리한 내용입니다. ✅ 데이터 과학 데이터 과학(Data Science)은 컴퓨터를 활용해서 데이터를 분석하고 현실의 문제를 해결하는 작업을 의미한다. 데이터 과학은 다음의 형태로 발전했다. Descriptive Analytics : 기술 분석. 기술 통계나 현상에 대한 설명을 찾는다. Diagnostic Analytics : 왜 현상이 발생했는지 원인이나 이유를 찾고자 한다. 전통적인 통계 분석이 여기에 속한다. Predictive Analytics : 미래에는 어떻게 될지 예측하고자 한다. Prescriptive Analytics : 예측에서 끝나는 것이 아니라 예측된 결과를 통해 다음에는 어떤 행동을 취해야 할지 분석한다. 자율주행, 알파고 등이 여기에 속한다... 2022. 2. 8.
[NumPy] 배열 연산 - (1) 이수안컴퓨터연구소의 NumPy 한번에 끝내기 영상을 보고 정리한 내용입니다. ✅ 배열 연산 NumPy의 배열 연산은 벡터화 연산(vectorized)을 사용한다. 일반적으로 NumPy의 범용 함수(universal functions)를 통해 구현하며 배열 요소에 대한 반복적인 계산을 효율적으로 수행할 수 있다. ✅ 브로드캐스팅 브로드캐스팅(Broadcasting)은 NumPy가 산술 연산 중 다른 모양의 배열을 처리하는 방법이다. 특정 제약 조건에 따라 더 작은 array는 호환되는 모양을 갖도록 더 큰 array에 대해 브로드캐스팅된다. 즉, 산술 연산을 하고 싶은 두 피연산자 배열이 각기 다른 shape을 가지고 있어도 산술 연산을 할 수 있게끔 shape이 동일하게 맞춰진다. a1 = np.arra.. 2022. 2. 5.
[HTML] local storage, session storage, cookie 취준생이라면 알면 좋을 프론트엔드 관련 지식들 자료를 보고 정리한 내용입니다. ✅ local storage 로컬 스토리지(local storage)는 웹 스토리지(web storage)의 한 종류로 데이터를 브라우저 상에 저장할 수 있다. 로컬 스토리지는 세션 스토리지와 달리 웹 페이지의 세션이 끝나더라도 데이터가 지워지지 않으며 여러 탭이나 창 간에 데이터가 서로 공유된다. 이러한 점은 동일한 컴퓨터에서 동일한 브라우저를 사용할 때에만 해당된다. ✅ session storage 세션 스토리지(session storage)는 웹 스토리지의 나머지 한 종류로 로컬 스토리지와 마찬가지로 데이터를 브라우저 상에 저장할 수 있다. 세션 스토리지는 세션이 끝날 때 저장된 데이터가 지워진다. 즉, 브라우저에서 같은.. 2022. 2. 5.