전체 글 48

[데이터베이스] 개념과 특징

데이터베이스는 각 조직에서  사용하던 데이터를 모아서 통합하고 공유할 목저으로 구축됩니다. 데이터베이스의 개념은 다음과 같이 네 가지로 설명할 수 있습니다데이터베이스의 개념통합된 데이터(integrated data)데이터를 통합하는 개념으로, 각자 사용하던 데이터의 중복을 최소화하여 중복으로 인한 데이터 불일치 현상을 제거저장된 데이터(stored data)문서로 보관된 데이터가 아니라 디스크, 테이프 같은 컴퓨터 저장장치에 저장된 데이터를 의미운영 데이터(operational data)조직의 목적을 위해 사용되는 데이터, 즉 업무를 위한 검색을 할 목적으로 저장된 데이터공용 데이터(shared data)한 사람 또는 한 업무를 위해 사용되는 데이터가 아니라 공동으로 사용되는 데이터를 의미데이터베이스의 ..

DataBase/이론 2024.09.12

컴퓨터 비전을 위한 딥러닝

Computer vision is an interdisciplinary scientific field that deals with how computers can gain high-level understanding from digital images or videos.To extract "meaning" from pixels  이미지는 광원(빛)이 물체에 반사돼 카메라의 센서에 반응하여 디지털화 한 것.컴퓨터 비전의 주요 기술Image Classification / Localizationoutput은 스칼라 값을 가진다(개 = 0, 고양이 = 1 : softmax = 2)Object Detection바운딩 박스 : (x1, y1), (x2, y2), (class_value)Segmentation모든 픽..

개발 2024.08.26

뇌-컴퓨터 인터페이스 (brain computer interface)

Electrophysiological vs hemodynamic methods(1) 뇌 전기신호Electroencephalography (EEG) - 뇌파두뇌를 구성하는 신경세포들의 전기적 활동을 두피에서 전극을 통해 간접적으로 측정할 수 있는 전기신호Electrocorticography (ECoG) - 뇌피질전도전극을 대뇌 피질 바로 위에 두어 뇌의 전기신호를 측정하는 전기생리학적 측정방법(2) 혈 역학 - 헤모글로빈의 산소 포함 여부Functional magnetic resonance imaging (fMRI)혈류와 관련된 변화를 감지하여 뇌 활동을 측정하는 기술Functional near-infrared spectroscopy (fNIRS)생체조직에 대해 투과성이 높은 근적외광(파장 680㎚~100..

개발 2024.08.26

[리눅스] Linux

운영체제(Operating System)사용자의 하드웨어, 시스템 리소스를 제어하고 프로그램에 대한 일반적 서비스를 지원하는 시스템 소프트웨어운영체제의 목표응용 프로그램 또는 사용자 프로그램을 실행하고 사용자의 문제를 쉽게 해결컴퓨터 시스템을 사용하기 편리해야 함컴퓨터 하드웨어와 시스템 시스템 리소스를 효율적으로 사용하고 관리유닉스(Unix) 리눅스가 탄생하기 이전 운영체제로 지금도 많이 사용되지만 높은 비용 지불 사용 사례 IBM의 AIX HP의 HP/ UX 오라클의 Solaris DEC의 Digital Unix SCO의 SCO Unix 이러한 서버 또는 대형 시스템에서 주로 사용하는 운영체제이다 리눅스 (Linux) 유닉스 호환 운영체제 - 무료 유닉스(어떤 면에서는 유닉스보다 뛰어남) 유닉스의 PO..

리눅스 2024.03.17

[딥러닝] 잔차 학습 (residual learning) - ResNet

https://arxiv.org/abs/1512.03385 Deep Residual Learning for Image Recognition Deeper neural networks are more difficult to train. We present a residual learning framework to ease the training of networks that are substantially deeper than those used previously. We explicitly reformulate the layers as learning residual functions with arxiv.org 본 글은 Kaming He가 마이크로소프트에 근무하고 있을 당시 작성한 "Deep Residua..

[딥러닝] 이론 - 기울기 소멸 (활성화 함수)

기울기 소멸 문제 (vanishing gradient problem) 기울기 소멸은 은닉층이 많은 신경망에서 주로 발생하는데, 출력층에서 은닉층로 전달되는 오차가 크게 줄어들어 학습이 되지 않는 현상입니다. 즉, 기울기가 소멸되기 때문에 학습되는 양이 '0'에 가까워져 학습이 더디게 진행되다 오차를 더 줄이지 못하고 그 상태로 수렴하는 현상입니다. 위 상황에 적합한 상황이 활성화 함수로 시그모이드, 또는 하이퍼볼릭 탄젠트를 사용하는 경우입니다. 시그모이드와 하이퍼볼릭 탄젠트 모두, 전달 함수 값이 매우 크거나 매우 작아질 때 도함수 값이 0에 수렴합니다. [딥러닝] 이론(1) 참고 - 갑자기 활성화 함수가 왜 튀어나오냐 하실 수 있지만, 활성화 함수는 순전파에도 쓰이지만 역전파 과정에서 각 활성화 함수에..

[딥러닝] 이론 - 과적합

과적합 (Over-fitting) 과적합은 훈련 데이터를 과하게 학습해서 발생합니다. 일반적으로 훈련 데이터는 실제 데이터의 일부분입니다 (딥러닝은 훈련 데이터를 통해 학습을 진행하고 검증 데이터를 통해 모델을 평가합니다) 훈련 데이터를 과하게 학습했기 때문에 예측 값과 실제 값 차이인 오차가 감소하지만, 검증 데이터에 대해서는 오차가 증가합니다. 이러한 관점에서 과적합은 훈련 데이터에 대해 과하게 학습하여 실제 데이터에 대한 오차가 증가하는 현상을 의미합니다. 그러면 과적합은 데이터를 완벽하게 학습한거 아니냐? 즉, 모델 성능을 최대치로 만든 것 아니냐? 라고 하실 수 있지만... 아무리 훈련 데이터라고 해도 현실 세계의 정확한 정보를 완벽하게 수집하지 못 할 뿐더러, 훈련 데이터에 포함된 노이즈(이상..

[딥러닝] 이론(2)

[딥러닝] 이론(1) 과 이어지는 내용입니다. 이론(1) 에서는 딥러닝의 간단한 구성요소에 대해 알아보았습니다. 이번에는 딥러닝의 학습이 어떻게 이루어지는지, 딥러닝의 문제점과 해결 방법이 무엇인지 알아보겠습니다. 딥러닝 학습 딥러닝 학습은 크게 순전파와 역전파라는 두 단계로 진행됩니다. 순전파 (Feedforward) 순전파는 네트워크 훈련 데이터가 들어올 때 발생하며, 데이터를 기반으로 예측 값을 계산하기 위해 신경망을 교차해 지나갑니다. 즉 모든 뉴련이 이전 층의 뉴런에서 수신한 정보에 따라 변환(가중합 및 활성화 함수를 통해...)을 적용하여 다음 층(은닉층)의 뉴런으로 전송하는 방식입니다. 네트워크를 통해 입력 데이터를 전달하며, 데이터가 모든 층을 통과하고 모든 뉴런이 계산을 완료하면 그 예측..

[머신러닝] 앙상블 - 에이다부스트 (AdaBoost)

앙승블 학습을 읽고 와주세요 해당 내용에 나오는 사진과 내용은 meanxai - 에이다부스트[1/4] (Adaptive Boosting: AdaBoost) - 기본 알고리즘 에서 사용했습니다. 부스팅은 개별 트리의 실수(오차)를 통해 학습합니다. 이전 트리의 오차를 기반으로 새로운 트리를 훈련하는 것이 기본적인 아이디어입니다. (각각의 트리가 독립된 연산을 수행하는 '배깅'과 다르다는 것을 알 수 있습니다) 그 예로 에이다부스트가 있습니다. 에이다부스트는 전형적인 부스팅 학습의 일종으로써 오류 샘플의 가중치를 높여 잘못된 예측에 더 많은 주의를 기울입니다. 에이다부스트의 학습 과정 - 균등분포로 학습 데이터를 샘플링해서 weak learner (약한 모델)로 학습 후, error (추정오차)를 측정합니다..

[정보처리산업기사 필기] 애플리케이션 테스트

테스트는 소프트웨어의 오류를 찾아내기 위해서 시스템을 실행하여 평가하는 작업입니다. 테스트 과정에 필요한 역활은 소프트웨어 아키텍트와 테스트 매니저입니다. [그림 1-1]과 같이 두역활은 소프트웨어 생명 주기(Life Cycle)의 V 모델에서 각 좌측과 우측의 핵심 역활을 당담합니다. 1) 프로젝트 수행 단계에 따른 종류 테스트 설명 단위 테스트 작은 소프트웨어 단위(컴포넌트 또는 모듈)를 테스트하는 것으로서, 일반적으로 개발자에 의해 행해짐 통합 테스트 모듈 사이의 인터페이스, 통합된 모듈 간의 상호 작용을 테스트 시스템 테스트 통합된 단위 시스템의 기능이 시스템에서 정상적으로 수행되는지 테스트 인수 테스트 최종 사용자와 관련 이해관계자가 테스트를 수행함으로써 개발된 제품에 대해 운영 여부를 결정 단..

개발 2023.09.26