본문 바로가기

전체 글

(73)
머신러닝 2장 (규제...) 규제(regularization) 기계학습에서 가장 중요한건 일반화 학습이다. 일반화 성능을 높히는 거에 초점을 맞춰서 연구해왔다. 일반화 성능이란 테스트집합에서의 좋은 성능을 보이는것. 여기서 규제란 기계가 over-fitting 되지 않도록 적절한 가이드를 제공하는것. 데이터 확대 가장 강력한 규제 방법 모델 차수가 높더라고 데이터가 충분히 많으면 12차도 좋은 모델을 만들 수 있다. 샘플 개수가 많을 수록 overfiiting을 막고 일반화 성능을 높힐수있다. 근데 문제는 데이터 수집은 많은 비용이 듦 그라운드 트루스를 사람이 일일이 레이블링 해야한다. 레이블링이란 사람이 목표값을 메기는 행위. 이때 레이블한 결과값을 ground-truth라고 한다. 비슷한말로 참값 진리값 암튼 이게 많은 비용이 ..
머신러닝 1장 더보기 기계학습 정의 지식기반 -> 기계학습 데이터 중심 접근방식으로 변화 문제는 회귀 문제와 분류 문제로 나뉜다. 회귀는 목표치가 실수 분류는 부류값 훈련집합(traning set) 가로축은 특징, 세로축은 목표치 관측한 4개의 점이 훈련집합을 구성 데이터를 어떻게 모델링할 것인가 눈대중으로 직선이면 될거같으니까 직선 선택 학습하면서 최적의 매개변수 w,b를 찾는게 기계학습니다. 기계학습의 목표 훈련집합에 없는 새로운 샘플에 대한 오류를 최소화 (테스트 집합) 테스트 집합에 대한 높은 성능을 일반화(generalization) 능력이라 부름 특징 공간에 대한 이해 특징 공간이란 쉽게 설명해서 관측 값들이 있는 공간. 이 특징 공간은 여러 차원으로 구성이 될 수 있음 1차원과 2차원 특징 공간 1차원 특..
데이터베이스 시스템 1장 데이터 베이스 : 응용 시스템들이 공유해서 사용하는 데이터들이 구조적으로 통합된 모임. 데이터 vs 정보 데이터는 프로그램과 질의에 의해 정보로 변환 데이터베이스 특징 데이터 베이스는 데이터의 대규모 저장소로서, 여러 사용자들이 동시에 사용됨. 중복 최소화 하면서 통합 데이터에 관한 설명(데이터베이스 스키마 , 메타데이터) 포함 데이터베이스 개요 데이터베이스 관리 시스템 (DBMS) : 데이터베이스를 정의하고, 질의어를 지원하고, 리포트를 생성하는 등의 작업을 수행하는 소프트웨어 데이터베이스 스키마 : 전체적인 구조, 내포라고 부름 데이터베이스 상태 : 특정 시점의 데이터베이스의 내용, 시간에 따라 바뀜, 외연이라고 부름 DBMS의 구성 요소 저장소에 데이터베이스랑 메타데이터인(시스템 카탈로그(스키마 같..
Flutter -async https://www.youtube.com/watch?v=vl_AaCgudcY flutter은 단일 thread로 isolate라는 곳에서 이벤트 루프를 실행함. isolate는 필요시 만들수 있지만 각각의 isolate는 서로 같은 메모리를 공유하진 않음. 단일쓰레드에서 공유도 안하기 때문에 메모리 할당이나 해제 등에 locking이 필요하지 않음. 그럼 dart는 어떻게 비동기 처리를 지원할까? 앱의 주기를 생각해보면 어떻게 진행될지 예측할 수 없다. 사용자의 입력이나 data from disk 등등 따라서 이벤트 루프를 활용한다. 이벤트 루프는 이벤트가 들어온 이벤트 열이 비워질 때까지 이벤트 처리를 반복한다. 이벤트가 없으면 다음 이벤트를 기다리며 딴 일 한다. 요약 : dart 단일 쓰레드 단일..
Flutter- StateManagement, Provder ※ 공식문서를 보고 나름대로 공부해서 정리한 내용임 front와 flutter 유아수준이니 믿지말것. https://flutter.dev/docs/development/data-and-backend/state-mgmt ※ 수시로 바뀌니 읽어보는게 좋음 https://pub.dev/packages/provider Flutter를 사용하다보면 screen들간에 state를 공유해야 할 일이 많다. 우리가 평소에 배운 setstate를 활용해서 전체 UI를 갱신하는 방법도 있을 수 있겠지만 너무 비효율적이다. Flutter는 선형형언어이다.(declarative) 현재의 state를 build해서 화면에 보여준다. 첫째 우리는 앱의 모든 state를 관리하진 않는다. 둘째 우리가 관리하는 state는 크게 E..
컴퓨터구조23 - Virtual Memory Logical address virtual address 각각의 프로그램은 own address로 실행하고 실시간으로 변환해서 산다. cache ram 과 비슷한 느낌이다 다만 ram hdd는 그차이가 매우 심하다. 따라서 page fault 날 시에 disk 가야돼서 손해가 매우 큼 -> hit rate를 최대한 올려야한다. temporal 과 spatial 사이의 적절한 값을 찾아서 page size 결정 fully associative placement 사용 page fault 는 SW로 처리 (hw가 빠르긴하지만 어차피 disk handle 하는데 시간 오래걸려서 SW로 해도 상관없다) Write-through 보다 당연히 Write-back 사용 Page Table : main memory SW..
운영체제 요약 operating system goal computer system 효율적 관리 편리한 인터페이스 hw자원 관리 user program 실행 커널 + 시스템프로그램 = 운영체제 시스템프로그램 = 꼭 깔리는 프로그램 ( 윈도우 탐색기 같은거) cpu가 i/o 컨트롤하기 위한 controller있음 h/w자원 : resource 이런거 복잡해서 관리 대신해주는게 os cpu는 명령내리고 다른거 한다. i/o controller가 일다하면 cpu한테 알려줌 (interrupt) CPU Instruction Set Architecture RISC CISC reduced 적은 명령어로 복잡한 기능을 구현해서 성능이 CISC보다 좋음. Dual Mode operation 1. User mode 2. Monitor ..
컴퓨터구조 22 - Cache write through 장점 간단하고 빠르다 cache logic 따로 구현해서 bus 비는지 체크할필요도 없다 단점 트래픽 많아져서 write buffer 다차면 cpu blocking 생길 수 있다. write back 장점 memory access 효율성 올라간다 메모리를 random access하는거보다 sequence access하는게 빠르다. 한방에 몰아주니까 sequence access로 write해서 빨라진다? 단점 구현할게 많아진다 이걸 섞어서 - cpu - L1 dirty bit 저장할데도없고 자연적으로 wirte through 써야함 - 그 뒤부터 L1에 dirty bit 넣어서 write back 사용한다. Cache 성능 향상 1. miss rate를 줄이고 2. miss pen..