목록공부 (36)
운동하는 공대생

모바일 디바이스에 인공지능 실험을 위한 디바이스 루트 권한을 부여하기 위하여 구동하였다. 연구 공부 환경설정 숙지를 위한 정리 내용입니다. 다만 한국 내수용 모델인 SM-S931N 모델에서 하였다. 모델 확인이 필요! S25 Magisk 설치1. Magisk release apkhttps://github.com/topjohnwu/Magisk/releases Releases · topjohnwu/MagiskThe Magic Mask for Android. Contribute to topjohnwu/Magisk development by creating an account on GitHub.github.com먼저 Magisk release apk를 다운로드한다. 2. APK 설치adb를 활용하여 apk ..

양자화에 대한 개념은 LLM 모델의 크기가 커짐에 따라서 당연하게 크기를 줄이는 방향으로 연구가 진행되면서 최근에 기본적으로 사용되는 이론이다.양자화에 대한 개념을 말하기 전에 데이터에 대한 표현 방식을 먼저 이야기를 해보자면 integer는3 → 1112 → 1100 4bit integer3 → 001112 → 1100 데이터에 대한 표현은 0과 1로 이루어져 있기 때문에 비트에 대한 제한을 준다면 4비트 int 같은 경우에는 0에서 15까지의 표현이 가능하다. 실제 우리가 사용되는 숫자의 표현은 int만이 사용되지 않고 실수를 많이 사용한다. 그렇다는 건 이것을 표현하기 위해서는 float 표현을 통해서 우리가 아는 실수를 모두 컴퓨터에서 표시를 한다.float는 32, 16,8 등으로 표현이 가능하..
1. Intro요즘 모델들을 압축하기 위해서 많은 방식을 사용을 하지만 이런 방식들은 compression ratio가 커지면 정확도가 떨어지는 문제가 발생한다.그래서 LLM performance는 유지하면서 높은 압축을 하는 방법이 없을까? 라는 질문에서 시작본 논문에서는 sparsification과 quantization을 같이 고려한다. 이 두가지 방법을 사용하는 첫 논문이라고 이야기를 한다.두가지를 동시에 사용이 가능한 이유는 크게 2가지 중요한 이유가 있는데 첫번째는 두가지는 반대되는 성향을 가진다. Sparsification은 그 파라미터의 가장 절댓값이 큰값으로 표현되며 양자화는 작은 range로 양자화 되려고 한다.즉 작은 값을 유지하면 QUANTIZATION에는 좋아도 sparsifica..

1. MotivationOS 는 process 구조를 통해서 보안과 독립성을 가진다. 하지만 이런 방식은 multi-core에서 비효율을 야기하고 또한 여러개의 process를 새로 생성하는것은 굉장히 많은 비용이 든다는 문제가 있다. 그래서 이런 문제를 해결하고자 Thread가 등장하게 되었다. 2. ThreadThread는 기본적으로 프로그램을 실행을 하기 위해서 존재하면 각각의 Thread ID와 프로세스의 실행에 필요한 register 그리고 stack이 존재한다. 또한 프로그램을 데이터를 관리하는 메모리 주소는 같은 공간을 활용한다. 또한 thread 끼리는 보안성을 가지지 않으며 데이터, 코드, 힙을 같이 공유한다. 결과적으로 process를 생성하고 switch하는 비용보다 thread를 ..

1. Recap운영체제에서 메모리에 저장되어 있는 process를 접근을 해야 하는데 이것은 보안에 문제가 생긴다. 그래서 이런 문제를 해결하고자 메모리의 직접적인 주소를 참조하는 게 아니라 가상의 주소를 참조하게 하는 것을 이것의 해결 방법으로 사용하고 있다. 이는 3가지 측면에서 효율성을 보인다. Protection각각의 서로 다른 프로세스가 서로를 보호 하기 위해서 VM이 작동해야 하며 이는 각각의 프로세스가 독립성을 가지게 해 준다.Transparency메모리의 실질적인 주소를 알 필요가 없기 때문에 프로그래밍의 편의성을 만들어 준다.Efficiency다양한 사이즈에 대한 메모리 분할을 최소화하는 게 가능하다. 2. Virtual Memory프로세스의 주소는 가상의 메모리 주소를 가지고 있으며 이..

1. CPU Scheduling정의 : 어떤 프로세스를 다음으로 실행을 할 것인지에 대한 방식 다음에 어떤 프로세스를 실행을 해야하는지는 여러 가지 지표를 통해서 선택이 되어야 한다.Minimize trunaroung time : 작업 소요 시간Minimize response time : 최초 실행 시간 Minimize waiting time : process 대기하는 queue에서 많은 시간을 사용하지 않아야 한다.Maximize throughput : 처리율이 최대로 나와야 한다.Maximize resource utilization : 디바이스 활용을 최대화Minimize overhead : context switch를 최소화해야 한다.Maximize fairness : 같은 양의 CPU 리소스를 활..

1. 운영체제의 정의운영체제란 시스템 소프트웨어로 컴퓨터의 자원을 관리하는 역할을 한다. 즉 컴퓨터의 자원을 관리하거나 사용자가 내린 명령을 해석하는 두 가지 역할을 수행합니다. Application view실행 환경을 제공하며 컴퓨터의 하드웨어를 추상화한다. System view컴퓨터의 여러 자원을 관리한다. Implementation view 동시 다발적으로 발생하는 이벤트에 대한 처리를 담당한다. 역할하드웨어의 추상화보안 및 분리자원 공유2. 커널 모드, 사용자 모드운영체제가 하드웨어를 제어를 한다고 했는데 여기서 프로그램이 하드웨어에 접근하는 것을 막을 필요가 있다. 이것을 수행하기 위해서 2가지 모드가 존재한다.커널 모드하드웨어를 직접 제어할 수 있는 CPU의 명령어를 사용 가능자원 관리사용자..

https://arxiv.org/abs/2404.19756v4 KAN: Kolmogorov-Arnold NetworksInspired by the Kolmogorov-Arnold representation theorem, we propose Kolmogorov-Arnold Networks (KANs) as promising alternatives to Multi-Layer Perceptrons (MLPs). While MLPs have fixed activation functions on nodes ("neurons"), KANs have learnable activatarxiv.org1. IntroductionKANs 네트워크 방식은 MLP를 대체하는 새로운 방식의 layer로 본 논문에서는 소개하고 ..