EncryptionCypherpunk는 강력한 암호화와 프라이버시 강화 기술의 광범위한 사용을 사회적, 정치적 변화의 수단으로 옹호하는 개인들을 지칭한다. 위키피디아의 정의에 따르면, 이들은 정부나 big brother의 감시 없이 암호화 기술을 사용하고자 한다. Cypherpunk 운동은 1992년 말에 시작되었으며, 이후 인터넷 보안, 프라이버시, 블록체인 등 많은 프로토콜과 기술 발전에 중요한 영향을 미쳤다. 암호화는 정보를 보호하기 위한 핵심 기술로, 크게 symmetric encryption과 asymmetric encryption으로 나눌 수 있다. Symmetric encryption은 가장 오래된 형태의 암호화 방식으로, 다음과 같은 특징을 가진다:암호화 키와 복호화 키가 동일하며, 이를 ..
컴퓨터 네트워크는 이러한 다양한 컴퓨팅 장치들이 서로 통신하고 자원을 공유할 수 있게 해주는 중요한 인프라이다. 네트워크를 통해 데이터 전송, 원격 접속, 분산 처리 등이 가능해지며, 이는 현대 정보화 사회의 근간을 이루고 있다. 더 많은 장치들이 네트워크에 연결됨에 따라 컴퓨터 네트워크의 중요성은 더욱 커지고 있다. 네트워크의 범주네트워크 범주(Categories of Networks)는 네트워크의 지리적 범위와 규모에 따라 분류되는 방식으로, 각 유형은 고유한 특성과 용도를 가진다. 기본적으로 LAN, MAN, WAN으로 구분되며, 이외에도 PAN(Personal Area Network)과 BAN(Body Area Network) 등 더 작은 규모의 네트워크도 존재한다. 근거리 통신망(Local A..
의학의 진화적 관점 진화의학의 정의와 중요성은 의학의 여러 주제에 대해 진화적으로 접근하는 분야이다. 인간의 몸과 마음은 자연선택의 산물이므로, 질병의 예방과 치료를 위해서는 진화적 이해가 필수적이다. 질병을 보는 두 가지 관점으로는 근접 설명(기존 의학)과 궁극 설명(진화의학)이 있다. 근접 설명은 "어떻게" 질병이 발생하는지 유전적, 생리적, 사회환경적 원인을 규명하는 반면, 궁극 설명은 "왜" 자연선택이 질병에 취약하게 내버려두었는지 진화적 원인을 탐구한다. 질병 취약성의 주요 원인 중 첫 번째로 불일치(mismatch)가 있다. 이는 진화된 설계와 현대 환경 간의 부조화를 의미한다. 예를 들어 영양분 과잉 섭취는 지방, 설탕, 소금 선호가 현대에서 과다섭취로 이어진 것으로, 초정상자극(supern..
Geometric transformation(기하학적 변환)은 Coordinate transformation(좌표 변환)과 Intensity interpolation(강도 보간)으로 구성된다. 좌표 변환(Coordinate transformation)은 입력 이미지의 픽셀이 출력 이미지에서 어디에 위치할지를 결정하는 과정이다. 이는 이미지의 회전, 이동, 크기 조절, 기울임 등과 같은 공간적 변형을 포함한다. 강도 보간(Intensity interpolation)은 변환된 좌표에서 픽셀의 실제 값을 결정하는 과정이다. 변환된 좌표가 정수가 아닌 실수 값을 가질 수 있으므로, 주변 픽셀들의 값을 이용하여 새로운 픽셀 값을 계산해야 한다. 이때 nearest neighbor, bilinear, bicubic..
Bilinear Interpolation (이중 선형 보간법)주변 4개의 픽셀값을 이용하여 새로운 픽셀값을 계산한다.과정:x축 방향으로 1차 함수 연산 2번 수행y축 방향으로 1차 함수 연산 1번 수행총 3번의 선형 연산으로 새로운 픽셀값 도출장점: 계산이 비교적 단순하고 빠름단점: 이미지가 다소 부드럽게(blurry) 표현될 수 있음 Bicubic Interpolation (이중 3차 보간법)주변 16개의 픽셀값을 이용하여 새로운 픽셀값을 계산과정:x축 방향으로 3차 함수 연산 4번 수행y축 방향으로 3차 함수 연산 1번 수행총 5번의 3차 함수 연산으로 새로운 픽셀값 도출장점: Bilinear보다 더 선명한 이미지 품질단점: 계산량이 더 많아 처리 시간이 더 걸림 샘플링과 Aliasing나..
Introduction우선 3D 스캐너로 얻은 포인트 클라우드와 같은 기하학적 포인트 집합을 분석하는 것이 목표입니다. 이러한 데이터는 두 가지 중요한 특성을 가지고 있습니다. 첫째로 포인트들의 순서에 불변해야 하고, 둘째로 거리에 따른 지역적 특성이 다양하게 나타날 수 있습니다. 예를 들어 3D 스캔에서는 시점 효과나 움직임 등으로 인해 포인트의 밀도가 균일하지 않을 수 있습니다. 기존의 PointNet은 각 포인트의 공간적 인코딩을 학습하고 이를 전체적으로 통합하는 방식을 사용했지만, 거리에 기반한 지역적 구조를 포착하지는 못했습니다. CNN의 성공에서 볼 수 있듯이, 지역적 구조를 활용하는 것은 매우 중요합니다. 이러한 배경에서 PointNet++는 계층적 방식으로 포인트 집합을 처리합니다. 기본 ..
VLIWvery long instruction word architecture으로 컴파일러가 독립적인 명령어들을 찾아 하나의 VLIW 명령어로 묶는다. 장점:하드웨어 구조가 단순화된다.단점:컴파일러가 매 사이클마다 N개의 독립적인 명령어를 찾아야 한다.독립적인 명령어가 부족할 경우 nop으로 채운다.실행 명령어 개수 변경 시 재컴파일이 필요하다.stall 발생 시 여러 명령어를 동시에 stall 한다.이 아키텍처는 컴파일러 역할이 중요하며, 하드웨어 복잡성을 줄이고 소프트웨어 최적화에 의존한다. . SuperscalarVLIW가 어떤 instruction을 동시에 처리할지 컴파일러가 정적으로 결정한다면 superscalar는 어떤 instruction을 동시에 처리할지 하드웨어에서 동적으로 결정한다. ..
Single cycle implementation:한 사이클에 한 명령어를 완전히 실행한다.모든 명령어가 동일한 시간을 소요한다.구현이 간단하지만 성능이 제한적이다.각 하드웨어 단계를 한 명령어에만 사용한다.Pipeline implementation:명령어 실행을 여러 단계로 나누어 처리한다.여러 명령어를 동시에 다른 단계에서 처리한다.전체적인 처리량이 증가한다.하드웨어를 더 효율적으로 사용한다.구현이 복잡하며 파이프라인 해저드 관리가 필요하다. Instruction fetchInstruction fetch 단계는 다음과 같이 작동한다:Instruction memory에 32비트 명령어가 주소에 맞게 저장되어 있다.PC(Program Counter)가 instruction memory에 명령어 주소를 ..
Branch Prediction은 Fetch 단계에서 세 가지를 예측하는 기술이다. 이는 명령어의 branch 여부, branch의 taken/not taken 여부, 그리고 branch의 target address이다.Branch Target Buffer(BTB)는 이전에 taken된 branch의 target address를 저장하는 저장소다. BTB는 현재 명령어가 branch인지 판단하는 데도 사용된다. Branch Prediction은 정적 예측과 동적 예측으로 나뉜다. 정적 예측에는 always not taken, always taken, BTFN, profile based, program analysis based 방식이 있다. 동적 예측에는 Last time prediction, Two-b..
Maintain variance diffusion 모델은 분산을 1로 일정하게 유지Var(xₜ) = Var(√(1-βₜ)xₜ₋₁) + βₜ Var(xₜ) = (1-βₜ)Var(xₜ₋₁) + βₜVar(xₜ₋₁)는 1일 것으로 예상할 수 있으므로 Var(xₜ)도 1즉, 디퓨전 과정 전반에 걸쳐 이미지의 '에너지'를 일정하게 유지하면서 점진적으로 원본 정보를 노이즈로 대체한다고 볼 수 있음 Loss Term L_T는 최종 노이즈 분포를 표준 정규 분포와 유사하게 만드는 항L_t-1은 시간 스텝에서의 KL 발산의 합으로, 실제 역과정 분포와 모델이 학습하는 역과정 분포를 유사하게 만드는 항L0는 모델의 예측이 실제 데이터와 얼마나 일치하는지를 측정하여 최종 결과의 품질을 향상시키는 항 Condit..