본문 바로가기

Programming

(51)
프로젝트 일지 2. 모터에 대한 이해. 아직 모터에 대한 이해가 너무나 부족하다. ac/dc, bldc/dc에 대한 차이점은 알고 있고, 이번 프로젝트에서는 dc 모터를 채택할 예정이지만, dc 모터를 어떻게 제어할 지에 대해 모르는 상황이다. DC 어떻게 제어하나? - Dc 모터의 경우 전원만 물려주면 작동한다. 극성을 바꾸면 반대로 돌기도 한다. - 또한 일반적으로 모터의 속도는 전압의 수치에 따라서 바뀐다. - 만약 정격 전압 12V의 모터에 6V를 인가한다면 당연히 모터는 더 느린 속도로 돌게 될 것이다. - 이러한 전압을 조절할 수 있는 부품이 스피드 컨트롤러와 모터 드라이버이다. DC 모터의 속도와 방향을 제어하는 방법에는 여러 가지가 있다. 1. 전압 제어 DC 모터의 속도는 전압과 비례합니다. 따라서 모터의 속도를 제어하려면 모..
프로젝트 일지 1. 실내 자율 주행에 대한 이해. 하지만 이 게시글은 단순 일지 이며, 일지에 작성된 내용이 정확하지 않을 수도 있습니다. 실내 자율 주행 로봇을 개발할 때는 전반적인 시스템 구성 및 동작 원리를 이해하는 것이 중요합니다. 따라서 아래와 같은 순서로 개발을 시작하는 것이 좋을 것입니다. 시스템 구성: 우선적으로 실내 자율 주행 로봇의 구성 요소와 구성 방법을 결정해야 합니다. 로봇의 크기, 모양, 기능 등을 정하고, 사용할 센서와 모터, 컴퓨팅 시스템 등의 하드웨어를 선택합니다. 소프트웨어 개발: 실내 자율 주행 로봇을 개발하기 위해서는 ROS와 같은 소프트웨어 플랫폼에 대한 이해가 필요합니다. ROS는 로봇의 하드웨어와 소프트웨어 간의 통신을 가능하게 하며, 로봇의 각종 센서와 모터를 제어하는데 필요한 다양한 라이브러리를 제공합니다. ..
2. 역전파 역전파 - 모델내부의 파라미터의 최적화는 미분의 성질과 연쇄법칙(Chain rule)을 기반으로 한 역전파를 통해 진행된다. - 역전파는 모델이 복잡할 수록 계산 과정이 복잡해져 코드를 직접 구현하기에는 어려움이 있다. - 하지만 파이토치에는 간단하게 사용할 수 있는 다양한 최적화 방법을 제공하고 있다. 1. 그레디언트 텐서 - 일반적으로 인공 신경망의 최적화는 손실 함수의 최솟값(Global minimum)이 나오게 하는 신경망의 최적 가중치를 찾는 과정이다. - 따라서 최적화를 위해 변화량을 나타내는 미분은 필수적인 요소이다. - 인공신경망의 구조는 다음과 같이 입력 값이 들어와 여러 레이어를 지나 출력 값을 산출하는 합성 함수의 형태이다. - 따라서 연쇄법칙을 통해 원하는 변수에 대한 미분값을 구할..
1. 텐서 텐서 - 파이토치의 기본 단위, GPU 연산을 가능하게 함. - 또한 Numpy의 배열과 유사하여 Numpy를 공부한 사람이라면 손쉽게 다룰 수 있음. 1. empty, ones, empty, zeros import torch import numpy as np x = torch.empty(5,4) print(x) tensor([[1.8515e+28, 1.7744e+28, 5.3831e-14, 1.8037e+28], [6.7120e+22, 2.8231e+23, 7.1377e+31, 5.3740e+19], [1.8888e+31, 1.9011e-19, 1.2711e+31, 4.2321e+21], [4.5581e+30, 1.1725e-19, 5.0746e+31, 7.5338e+28], [2.8884e+12, 7..
인터셉터 인터셉터 - 요청과 응답을 가로채서 변형을 가할 수 있는 컴포넌트 - 인터 셉터는 주로 다음과 같은 기능을 수행한다. 1. 요청에 대한 검증 : 요청이 유효한지 확인, 필요한 경우 에러 응답을 반환 2. 로깅 : 요청과 응답에 대한 로그를 작성 3. 권한 인가 : 요청이 인증된 사용자에 의해 수행되었는지 확인 4. 캐싱 : 응답을 캐시하여 빠른 처리를 가능하게 한다. 5. 추가 데이터 전달 : 요청과 응답에 추가적인 데이터를 전달 6. 응답 조작: 서비스에서 반환하는 데이터를 조작하거나, 응답 헤더 등을 수정. - 인터셉터는 미들웨어와 수행하는 일이 비슷하지만, 수행 시점에 차이가 존재한다. 미들웨어는 요청이 라우터 핸들러로 전달되기 전에 동작, 인터셉터는 요청에 대한 라우터 핸들러의 처리 전/후 호출되..
BioBERT BioBERT는 2019년 Bioinformatics라는 저널에 올라온 한국인이 작성한 논문이다. Abstract - BioBERT가 등장하기 이전 biomedical domain에서의 NLP를 활용한 textmining 연구는 좋은 성과를 거두지 못했다. 생명과학 분야에서의 텍스트 마이닝 더보기 생명 과학 분야에서의 텍스트 마이닝은 대체로 바이오데이터에서 유용한 정보를 추출하거나, 생물학 연구를 위한 가설을 검증하기 위해 자연어 처리 기술을 적용합니다. 다양한 응용 분야가 있는데, 대표적인 예로는 아래와 같습니다. 바이오마커 발견: 생물학 연구에서 중요한 역할을 하는 바이오마커는 생체 내에서 발생하는 생리적, 화학적 또는 분자적 변화를 나타내는데, 텍스트 마이닝 기술을 적용하면 바이오마커 후보군을 발견..
8-2 장. domain-BERT(ClinicalBERT) domain-BERT - 일반적인 위키피디아 corpus를 사용해 사전 학습 시킨 BERT를 사용하는 대신 - 특정 도메인 말뭉치에서 BERT를 처음부터 학습할 수도 있다. - 이는 BERT가 특정 도메인 임베딩을 학습시키는 데 도움이 된다. - domain BERT의 두가지 모델 ClinicalBERT, BioBERT에 대해 소개하고자 한다. ClinicalBERT - ClinicalBERT는 대규모 임상 말뭉치에서 사전 학습된 임상 domain-BERT 모델이다. - 임상노트(clinical note), 진행 노트(progress note)는 환자에 대한 매우 유용한 정보를 포함한다. - 임상 메모의 콘텍스트 표현을 이해하는 것은 자체 문법 구조, 약어 및 전문 용어와 관련되어 난이도가 높다. - 따..
8-1 장. sentence-BERT 1. Sentence-BERT - BERT의 파생 모델로, 주로 문장 표현을 계산하는데 사용된다. - 기존의 BERT 모델에서 문장의 표현을 얻기 위해서는 막대한 추론 시간이 걸린다. - 본 논문에서는 10,000개의 문장 모음에서 BERT 모델을 사용해서 가장 유사한 쌍을 찾으려면 최대 65시간이 필요하다 라고 하였다. - sentence-BERT를 사용하게 된다면 추론 시간은 크게 줄어들게 될것이다. 1.1 문장 표현 계산 - 기존의 문장 표현을 계산하는 방법을 생각해 보자 - 주어진 문장 'She cooked pasta. It was delicous'라는 문장을 예로 들어보자. tokens = [ [CLS], She, cooked, pasta, [SEP], It, was, delicous, [SEP..