총 14개
-
Kernel PCA & Spectral Clustering2025.01.131. Kernel PCA Kernel PCA는 편향이 큰 실세계의 데이터를 분석하는데 어려움이 있고, outlier data에 매우 민감한 linear PCA의 단점을 보완하기 위해 kernel trick을 수행한다. 하지만 분산이 가장 큰 축으로 데이터들을 정사영 시킬 뿐, clustering algorithm을 적용하지는 않는다. 2. Spectral Clustering Spectral Clustering은 군집화를 더 쉽게 하기 위해서 유사도 행렬 A를 통해 데이터들을 변형된 공간에 넣고, 후에 clustering algori...2025.01.13
-
Pintos Project 1 한국어 설명서 (design report) - Alarm clock, Priority Scheduling, Advanced Scheduling2025.01.161. thread Pintos에서는 thread creation과 thread completion, Round-Robin 방식의 thread switching(simple scheduler)을 이미 구현해 두었다. kernel thread의 struct는 'threads/thread.h'에 선언되어 있으며, thread structure은 4kB page를 차지한다. struct thread는 page의 시작부분부터 공간을 차지하고, 나머지 부분은 thread의 stack을 위해 이용된다. 따라서 kernel stack을 위한 공간...2025.01.16
-
운영체제 나초스 NachOS 과제 KThread와 Kernel 분석2025.01.221. KThread.fork() KThread.fork() 메소드는 새로운 스레드를 생성한 뒤, 조건을 통해 스레드 생성을 위한 준비와 검증을 마치고서 새로운 스레드를 실행 대기열에 넣어 다른 스레드가 실행될 수 있도록 준비상태로 만든다. 2. KThread.runThread() KThread.runThread() 메소드는 스레드가 시작하고 종료될 때까지의 주요 동작을 관리한다. 스레드 시작 시 초기화 작업, 스레드 실행, 스레드 종료 처리 등의 기능을 수행한다. 3. KThread.yield() KThread.yield() 메소드...2025.01.22
-
Pintos Project 2 한국어 설명서 (design report) - User Program, System Call2025.01.161. Process Execution Procedure 프로젝트 2에서는 user program을 실행시키는 것이 주요 내용이다. main() 함수에서 command line을 읽어들이고 parsing한 후 run_action() 함수를 통해 실행할 프로그램을 process_execute()로 전달한다. process_execute()는 thread_create()를 호출하여 새로운 kernel thread를 생성하고, 이 thread는 start_process()를 실행한다. start_process()에서는 load() 함수를 ...2025.01.16
-
신호및시스템(건국대) 4주차과제2025.01.171. Convolution Animation Convolution 연산은 임펄스 응답 h(t)와 입력 신호 x(t)를 이용하여 출력 신호 y(t)를 구하는 방법입니다. 이를 위해 매트랩에서 x(t)와 h(t)의 그래프를 각각 나타내고, 이를 곱한 값을 음의 무한대부터 양의 무한대까지 적분하여 y(t)를 구할 수 있습니다. 이를 통해 t가 변함에 따라 x(t), h(t), y(t)의 그래프가 실시간으로 어떻게 변화하는지 확인할 수 있습니다. 2. Exercise 4-1 Exercise 4-1에서는 cos 함수와 sin 함수를 이용하여...2025.01.17
-
Data Similarity and Distance를 측정하는 measure2025.01.131. Text Similarity Measures 문서의 실제 길이에 민감하지 않은 cosine measure는 두 문서 간의 각도를 계산하여 유사도를 측정합니다. 단순한 특성 간의 raw frequencies를 사용하지만, global statistical measures를 사용하여 유사도 측정을 향상시킬 수 있습니다. 또한 binary 다차원 데이터의 경우 유사도를 다른 방식으로 나타낼 수 있습니다. 2. Temporal Similarity Measures 시간축 데이터는 시간에 따른 single contextual attrib...2025.01.13
-
자동차 엔진 센서 데이터를 이용한 AI 자동 검사 모델2025.11.131. CNN 딥러닝 모델 Convolutional Neural Network(CNN) 모델을 자동차 엔진 센서 데이터 분석에 적용하여 97.35%의 높은 정확도를 달성했습니다. CNN은 인접한 센서 값들 간의 패턴을 효과적으로 학습하며, kernel size 3으로 설정하여 최적의 성능을 보였습니다. 정밀도 97.04%, 재현율 97.5%, F1 스코어 97.27%, AUC 99.43%의 우수한 평가지표를 기록했으며, 과적합 없이 400 epoch 동안 안정적으로 학습되었습니다. 2. 엔진 상태 예측 및 자동 검사 Ford 자동차 ...2025.11.13
-
Pintos Project 2 final report - User Program, System Call2025.01.161. Process termination message 프로세스가 종료될 때마다 프로세스 종료 메시지를 출력해야 한다. 종료 메시지의 출력 예시와 형식은 printf('%s: exit(%d) ', variable_1, variable_2)와 같다. variable_1은 프로세스의 이름이고, variable_2는 exit 코드이다. 2. Argument passing 사용자가 입력한 명령어는 프로그램 이름과 함께 다양한 옵션들이 붙는데, 이를 모두 인식할 수 있도록 구현해야 한다. 현재 Pintos는 전체 명령어를 하나의 프로그램 이...2025.01.16
-
쓰레드 구현 모델과 쓰레드 폴링에 대해 조사하시오2025.05.151. 쓰레드 구현 모델 쓰레드 구현 모델은 운영체제에서 사용되는 것으로 사용자 수준, 커널 수준, 두 수준을 혼합한 방식이 있다. 사용자 수준 쓰레드는 커널 쓰레드를 지원하지 않는 운영체제에서 사용되며 다대일 쓰레드 매핑이다. 커널 수준 쓰레드는 사용자 수준 쓰레드가 가지는 한계를 해결하기 위해서 사용되기 시작했으며 일대일 쓰레드 매핑을 지원한다. 혼합형 쓰레드는 여러 개의 사용자 수준 쓰레드에 여러 개의 커널 쓰레드가 매핑되는 다대다 쓰레드 모델이다. 2. 쓰레드 폴링 쓰레드 폴링은 혼합형 쓰레드에서 사용되며 과부하를 줄여 프로그...2025.05.15
-
Pintos Project 3 한국어 설명서 (design report) - Virtual Memory, Frame table2025.01.161. Virtual Memory Virtual memory는 process마다 독립적으로 가지는 주소 공간으로, 필요한 데이터는 virtual memory에서 physical memory로 load해오고 필요없는 데이터는 virtual memory (예: 디스크)에 저장함으로써 physical memory 공간을 확보합니다. 각 process는 virtual address와 physical address를 mapping하는 table을 가지고 있어 virtual address로 physical address를 찾아갈 수 있습니다. ...2025.01.16
