[ Computer Science ]

1. Types of Compression Techniques압축은 크게 손실 허용 압축과 손실 비허용 압축이 있음- 손실 비허용 압축은 모든 정보를 보존함- 손실 허용 압축은 일부 정보는 버리는 방법으로 더 나은 압축 비율을 달성할 수 있음 * 손실 압축의 예시 - 케이스 폴딩 : 대소문자 통일- 불용어 제거 : 의미가 없는 문법적인 역할을 단어를 제거해서 핵심만 남김- 어간 추출 : stemming. 단어의 어근을 추출해서 유사어의 의미를 단순화  * RCV1 데이터셋에 전처리 적용 - non positional postings : 텀이 등장하는 빈도 수 정보- postitional postings : 텀이 등장하는 위치 정보를 포함 - unfiltered  전처리 안 한 원본 - no number ..
해당 포스팅은 필자의 시험 대비 목적으로 업로드하여 생략된 내용, 온전하지 못한 부분이 포함되어 있습니다   1. Reuters RCV1- 1996년부터 1997년까지 일 년 동안의 뉴스 기사를 모은 데이터셋-  80 만개의 문서로 구성되어 있고 총 텍스트 용량은 1GB  = 인덱스 유무 효율성 테스트 - 문서 개수 800000개- 각 문서당 평근 토큰 개수는 200개- 테스트 데이터셋에 포함된 고유 텀 개수 400000개= 중복 제거하고 남은 고유 텀 40만 개- 토큰당 평균 6바이트(공백 포함), 4.5바이트(공백 제거)- 평균적으로 7.5바이트- non-positional postings= 모든 문서에서 텀의 등장 빈도만 기록한 총 항목의 수 1억 개 = 모든 문서에서 단어가 등장한 총 횟수 1억 ..
소프트웨어 공학의 모든 것  ,  최은만  , 생능6장 설계 원리연습문제 서술형  1. 설계 작업은 기본구조설계와 상세설계로 나눌 수 있다. 각 단계에서 하는 일을 나누어 설명하라 (단계별 설계 작업 설명)    설계 작업은 기본구조설계와 상세설계로 나눠지며, 각 단계는 다음과 같은 작업을 수행한다.    - 기본구조설계: 시스템의 전반적인 아키텍처를 정의하는 단계로, 시스템의 주요 컴포넌트와 그들 간의 상호작용을 결정한다. 예를 들어, 시스템을 구성하는 모듈을 나누고 각 모듈의 역할을 정의하며, 모듈 간의 의존 관계와 데이터 흐름을 설정하는 작업을 포함한다.    - 상세설계: 기본구조설계를 바탕으로 각 모듈의 내부 구조와 세부 구현을 정의하는 단계이다. 각 모듈의 알고리즘과 데이터 구조를 설계하며, ..
소프트웨어 공학의 모든 것  ,  최은만  , 생능5장 요구 모델링연습문제 서술형 1. 모델링은 어떤 작업이며 모델링 작업과 도메인 지식의 관계는 무엇인가 (모델링 작업과 도메인 지식)    모델링은 현실 세계의 문제 영역을 추상화하여 시각적 또는 수학적 표현으로 시스템을 설계하고 분석하는 작업이다. 모델링 작업에서는 도메인 지식이 매우 중요한데, 도메인 지식은 특정 문제 영역에 대한 전문적 이해와 관련된 정보를 의미한다. 이를 통해 모델링 작업이 문제를 정확히 반영하고 적합한 해결 방안을 제시할 수 있도록 한다. 모델링은 도메인 지식을 바탕으로 요구사항을 정리하고 시스템의 구조와 동작을 구체화하여, 결과적으로 프로젝트 이해 관계자들이 문제를 명확히 이해하고 해결 방안을 효과적으로 구현할 수 있도록 돕는..
소프트웨어 공학의 모든 것  ,  최은만  , 생능4장 요구 분석연습문제 서술형 1. 기능 요구와 비기능 요구는 무엇인지 그 차이점 위주로 설명하라 (차이점 설명)    기능 요구는 시스템이 수행해야 할 특정 동작이나 작업을 정의하는 요구사항으로, 사용자가 원하는 기능적 동작을 명시한다. 예를 들어, “사용자가 상품을 검색할 수 있어야 한다는 기능 요구에 해당한다. 반면, 비기능 요구는 시스템의 성능, 품질, 사용성, 안정성 등을 규정하여 시스템이 어떻게 동작해야 하는지를 나타낸다. 예를 들어, “응답 시간은 2초 이내여야 한다”는 비기능 요구이다. 주요 차이점은 기능 요구는 시스템의 무엇을 수행할지를 다루는 반면, 비기능 요구는 **어떻게** 수행할지를 다룬다는 점이다. 2. 기능 요구 종류를 나열하고..
소프트웨어 공학의 모든 것  ,  최은만  , 생능3장 프로젝트 계획과 관리 연습문제 서술형  1. 프로젝트를 시작할 것인지 결정하는 두 가지 요인 (시작 결정 요인)    프로젝트를 시작할 것인지 결정하는 주요 요인에는 사업적 가치와 기술적 가능성이 있다. 첫 번째로, 사업적 가치는 프로젝트가 회사나 조직에 경제적 이익 또는 전략적 가치를 제공할 수 있는지 여부를 평가하는 요소이다. 프로젝트가 수익성이나 경쟁 우위를 높이는 데 기여한다면 시작할 가치가 있다. 두 번째로, 기술적 가능성은 프로젝트를 성공적으로 수행할 수 있는 기술적 능력과 자원이 있는지를 평가하여 실행 가능성을 판단하는 것이다. 프로젝트를 수행할 기술이 부족하거나 리소스가 제한적이라면 프로젝트 시작을 보류할 수 있다. 2. 프로젝트 계획..
소프트웨어 공학의 모든 것  ,  최은만  , 생능2장 프로세스와 방법론 연습문제 서술형1. 프로세스 모델이란 무엇이며 프로세스 인스턴스, 프로세스 명세, 프로세스 모델 사이의 관계를 설명하라 (프로세스 개념과 관계 설명)    프로세스 모델은 소프트웨어 개발 과정에서 수행해야 할 작업의 단계와 절차를 체계적으로 정의한 것이다. 이는 개발 팀이 따라야 할 가이드라인으로 작용하며, 일정한 순서와 방법에 따라 작업을 수행하도록 돕는다. 프로세스 명세는 이와 같은 모델에 대해 상세한 문서화 작업을 통해 각 단계의 절차와 규칙을 정의한 것이다. 프로세스 인스턴스는 실제 개발 프로젝트에서 프로세스 명세를 기반으로 수행되는 개별적인 실행 사례를 의미한다. 프로세스 모델은 프로세스 명세에 의해 문서화되고, 프로세스 ..
소프트웨어 공학의 모든 것  ,  최은만  , 생능1장 소개 연습문제 서술형 1. 소프트웨어가 다른 엔지니어링 결과물, 예를 들어 컴퓨터 하드웨어나 빌딩, 자동차 등과 비교하여 어떤 특징을 갖는가 (특징 비교)    소프트웨어는 다른 엔지니어링 결과물인 컴퓨터 하드웨어, 건물, 자동차 등과 비교할 때 여러 독특한 특징을 가지고 있다. 먼저, 소프트웨어는 물리적 제약이 거의 없는 비가시적이고 비물질적인 산출물이다. 이는 시간이 지나도 마모되지 않으며 물리적인 손상이 발생하지 않는다. 또한, 유연성이 높아 사용자 요구나 시스템 환경의 변화에 따라 손쉽게 수정하고 업데이트할 수 있다. 반면, 이러한 유연성으로 인해 변화가 빈번하여 개발과 유지보수가 복잡해지는 경향이 있다. 마지막으로, 소프트웨어는 복잡성이 높..
1. dictionary data structure사전에는 term , document frequency, postings list 를 저장하고 있음brutus 라는 단어는 1, 2, 4, 11, 31 등의 문서에서 나오고 단어가 등장하는 문서의 id는 postings list에 저장함 * a simple dictionary각 단어에 대해 구조체를 정의하고 구조체 내에 term 단어, docFreq 문서 빈도, postings 포스팅 리스트를 저장함 검색할 때 요소를 빠르게 찾기 위해서 메모리에 효율적으로 저장해야하고그 방법으로는 해시 테이블과 트리가 있음 * hash table각 단어를 고유한 정수로 변환하는 해싱을 통해 얻은 그 정수를 인덱스로 데이터를 저장 장점 - 트리보다 더 빠르게 검색 가능 단..
1. Term * Tokenization“Friends, Romans and Countrymen” 라는 input이 들어오면토큰화된 결과인 토큰들이 아웃풋으로 나온다friends, romans, countrymen  normalization 정규화 = 각 토큰은 index entry의 후보가 되고 데이터 검색할 때 중요한 term으로 저장되는 것들을 의미함소문자로 변환하거나 특정 문자를 제거하는 등 표준화 토큰화 과정에서 의미 없는 단어를 제거하기 위해불용어 리스트를 사용함 * Tokenization - 문서 단위- 인덱싱에 사용되는 단위 문서를 정의함- indexing granularity = 인덱싱의 세분화 - 책 전체를 하나의 문서로 간주할지, 각 챕터를 개별 문서로 간주할지 결정문서가 커질수록 재..
dev charlotte
'[ Computer Science ]' 카테고리의 글 목록 (2 Page)