Fascination
article thumbnail
[DS] Queue(큐) & Circular Queue(순환 큐)
Study/Data Structure 2021. 8. 31. 19:05

# 큐 - 큐: 처리를 기다리고 있는 작업(원소)들의 리스트 - 선입 선출(FIFO, First-In, First-Out) 방식 / FCFS (First-Come, First-Served) - 우선순위를 부여하지 않음 - 새로운 원소는 큐의 맨 뒤(rear)에 삽입되고 큐의 맨 앞(front) 원소가 먼저 삭제됨 - insert된 순서대로 처리됨 - 스택과 달리 큐의 맨 앞 원소와 맨 뒤 원소를 가리키기 위한 두 개의 front와 rear 포인터가 필요 Q = [a0, a1, ..., an-1] # 큐의 구현 - front: delete할 때 사용 - rear: stack에서의 top과 같은 역할을하며 add할 때 사용 - front와 rear 포인터의 초기 값 = -1 ← 일반적으로 이렇게 설정 - 새..

article thumbnail
[DS] Permutation (순열)
Study/Data Structure 2021. 8. 26. 22:11

# 순열 - 어떤 원소 n개를 나열할 때 순서가 다르면 다른 순열로 간주함 (1) 집합 {'a', 'b', 'c'}에 대하여 찾을 수 있는 모든 순열 > P = {(a, b, c), (a, c, b), (b, a, c), (b, c, a), (c, a, b), (c, b, a)} > 3P3 = 3 * 2 * 1 = 3! = 6 (2) 집합 {'a', 'b', 'c', 'd'}의 순열 > 4! = 24 > 24개의 순열은 4개의 그룹으로 나뉘어질 수 있음 a) (a, Perm(b, c, d)) b) (b, Perm(a, c, d)) c) (c, Perm(a, b, d)) d) (d, Perm(a, b, c)) > 하나의 원소를 고정하고 그 뒤에 원소의 수만 다른 순열을 나타내는 함수를 호출함 > ex) P..

article thumbnail
[DS] Polynomial (다항식)
Study/Data Structure 2021. 8. 25. 23:57

# Polynomial A(x) = 3x^20 + 2x^5 + 4 - a sum of terms(항), ax^e (x: variable, a: coeffiecient(계수), e: exponent(지수)) ​ ​ # Operations of Polynomial ADT - Zero(): 다항식을 0으로 만듦 ::= return 다항식, p(x) = 0 - IsZero(poly): 다항식이 0인지 검사 ::= if(poly) return FALSE else return True - Coef(poly, expon): 다항식에서 지수가 expon인 계수를 반환 - Lead_Exp(poly): 다항식에서 가장 큰 차수(지수의 값)를 반환 - Attach(poly, coef, expon): 계수가 coef이고 지수..

article thumbnail
[DataScience] Ch10. Representing and Mining Text
Study/Data Science 2021. 8. 24. 15:26

Ch10. Representing and Mining Text - 숙명여자대학교 소프트웨어학부 데이터사이언스개론 - 박동철 교수님 # Dealing with Text - 우리 입맛대로 feature vector에 맞게 data가 주어지지 않음 - tool에 맞게 데이터를 가공하거나 (representation engineering = preprocessing) 데이터에 맞는 tool을 새로 설계함 // 전자의 방법이 효율적이기 때문에 일반적으로 사용 - text data: 여러 분야에서 text data를 다루고 mining하며 분석하기 때문에 큰 부분을 차지 # Why Text is Important - text는 어디에나 있음 > 많은 기존의 적용에서 text를 만들어내거나 기록함 ex) 진료 기록 ..

article thumbnail
[DataScience] Ch9. Evidence and Probabilites
Study/Data Science 2021. 8. 24. 15:12

Ch9. Evidence and Probabilites - 숙명여자대학교 소프트웨어학부 데이터사이언스개론 - 박동철 교수님 # Evidence-Based Classification - evidence: 각 feature에 대해 각 instance들이 가지는 값 - instance를 분류하는데 연관성이 많을수록 강력한 evidence가 됨 # Online Targeted Advertising - 온라인 광고를 target하는 것을 고려해 봄 > 그 중에서도 노출 광고를 생각해 볼 것임 - display advertising 노출 광고의 특징 > search advertising과는 다름 ex) 자동차를 검색한 사람에게는 검색 결과에 자동차 광고를 함께 띄우는 것이 검색 광고 > 고객 어느 단어도 검색한 적..

article thumbnail
[DataScience] Ch8. Visualizing Model Performance
Study/Data Science 2021. 8. 24. 15:03

Ch8. Visualizing Model Performance - 숙명여자대학교 소프트웨어학부 데이터사이언스개론 - 박동철 교수님 # Visualizing Model Performance - 모든 사람들이 model performance를 이해하는 데 있어 동일한 background를 가지고 있는 것은 아니므로 시각화 필요 - model performance에 대해 더 직관적인 이해를 가능하게 해 줌 > 위의 그래프는 많이 휘어질수록 좋은 성능을 보임 # Ranking Instead of Classifying - 이전에서 배운 modeling은 어떻게 classfy 할 것인가? 에 초점 - chapter 8에서는 성능을 시각화하는 방법에 대해 배울 것 - classifier가 직접 return 하는 하나..

article thumbnail
[DataScience] Ch7. Decision Analytic Thinking 1: What is a Good Model?
Study/Data Science 2021. 8. 24. 00:42

Ch7. Decision Analytic Thinking 1: What is a Good Model? - 숙명여자대학교 소프트웨어학부 데이터사이언스개론 - 박동철 교수님 # How Would You Measure A Model? - data를 mining함으로써 무엇을 성취하고자 하는지(=goal)를 고려하는 것은 매우 중요 - 의미있는 방식으로 성능을 측정해야 함 > problem에 대한 "올바른" 평가 metric은 무엇인가? > (ex) cellular-churn problem → 무엇을 기준으로 성능을 측정할 것인지는 회사나 도메인에 따라 다름. 즉 얻고자하는 정보에 따라 달라질 수 있는 것 → 이탈하는 고객의 비율, 예측 정확도 등등.. # Evaluating Classifiers - class..

article thumbnail
[DataScience] Ch6. Similarity, Neighbors, and Clusters
Study/Data Science 2021. 8. 24. 00:32

Ch6. Similarity, Neighbors, and Clusters - 숙명여자대학교 소프트웨어학부 데이터사이언스개론 - 박동철 교수님 # Similarity - data science 방법과 해결에 기반이 됨 > 유사한 것들은 공통된 특징(common characteristics)을 가짐 - 예시 > 유사한 항목을 검사(retrieving): 회사 입장에서 최근에 좋다고 생각하는 고객과 유사한 고객을 찾음 > 유사한 item끼리 묶음 = clustering : 그룹의 특징을 보기 위해 비슷한 고객끼리 묶음 > 상품 추천: 추천을 제공하기 위해 비슷한 상품이나 고객을 찾음 > 비슷한 case로부터 추론: 비슷한 case를 제공함으로써 의사나 법률인을 도움 # Similarity and Distanc..

article thumbnail
[DataScience] Ch5. Overfitting and Its Avoidance
Study/Data Science 2021. 8. 24. 00:12

Ch5. Overfitting and Its Avoidance - 숙명여자대학교 소프트웨어학부 데이터사이언스개론 - 박동철 교수님 # Overfitting - data science의 가장 중요하고 근본적인 개념 중 하나 - model을 만드는 것에 있어 flexibility를 너무 허용하면 만들어진 model이 내가 가지고 있는 특정한 dataset에만 상응될 수도 있음 - Overfitting > model이 training dataset을 넘어 일반화하지 못할 때 > 새로운(that we have not yet seen) instances에 대해 예측하지 못할 때 # A Hypothetical Example - 고객 이탈을 줄여야하는 manager가 있음 - data scientist는 아래 내용을..

article thumbnail
[DataScience] Ch4. Fitting a Model to Data
Study/Data Science 2021. 8. 23. 23:53

Ch4. Fitting a Model to Data - 숙명여자대학교 소프트웨어학부 데이터사이언스개론 - 박동철 교수님 # Predictive Modeling - 다른 attribute의 측면에서 target 변수의 model 찾기를 포함 - predictive modeling의 두 가지 유형 ① Nonparametric modeling > model의 구조가 고정되지 않음 > model의 구조는 data로부터 결정됨 > ex) tree → data에서 ig, 엔트로피를 통해서 정해짐 ② Parametric modeling > model의 구조가 고정됨 > model의 구조는 data 분석에 의해 명시됨 > ex) y = ax + b (a, b는 상수) # 1. Nonparametric Modeling ..