Blog Content

  • 객체 지향 프로그래밍 개념 정리

    Category 개발레시피/└ 언어 on 2021. 2. 25. 17:40

    1. 객체란? 객체(Object)란 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것을 말한다. 2. 객체 간의 관계 객체는 개별적으로 사용될 수 있지만, 대부분 다른 객체와 관계를 맺고 있다. 이 관계의 종류에는 집합 관계, 사용 관계, 상속 관계가 있다. 집합 관계 : 자동차 객체 엔진 객체, 타이어 객체, 핸들 객체 사용 관계 : 객체 간의 상호작용. 사람은 자동차를 사용하므로 사람과 자동차는 사용의 관계 상속 관계 : 상위(부모) 객체를 기반으로 하위(자식) 객체를 생성하는 관계. 자동차 객체 ---> 기계 객체 3. 객체 지향 프로그래밍의 특징 - 캡슐화(Encapsulation) : 객체의 필드, 메소드를 하나로 묶고, 실제 구현 ..

    Read more
  • Generator based AI 개선

    Category 개발레시피/└ 머신러닝 on 2020. 12. 16. 17:13

    1. BERT Embedding 방식의 필요성 - one-hot encoding embedding 방식 : text를 벡터로 바꿔주지만 단어간 유사도를 측정하기 어렵고, 희귀 단어, 이름, 숫자나 단어장에 없는 단어에 대한 학습에 어려움이 존재 - 이로 인해 OOV (out of vocabulary) 문제 발생 - 사전에 training 하지 않은 label이 input으로 들어올 경우 OOV 문제로 예측을 정상적으로 하지 못하는 현상 - 따라서 미등록 단어 (OOV) 문제에 대해 해결하고자 embedding 방식을 변경할 필요가 있었음. 2. BERT Embedding 방식? - 구글에서 개발한 NLP 사전 훈련 기술이며, 특정 분야에 국한된 기술이 아니라 모든 자연어 처리 분야에서 좋은 성능을 내는 ..

    Read more
  • Generator based AI

    Category 개발레시피/└ 머신러닝 on 2020. 12. 16. 17:02

    Generator based AI 1. Approach - tf-idf로 추출한 label값과 value의 시작 글자를 입력받아 첫 번째 글자를 예측 - 이 글자를 다시 반복해서 모델에 집어넣어 두 번째 글자를 예측 - 이 과정을 "eos"가 출력될 때까지 반복 2. Dataset - value: target value - label: mobile element의 tf-idf로 라벨링한 대표값 3. Embedding - 기존: label값에 대하여 one hot encoding 사용 - one hot의 단점: text를 숫자로 바꿔주지만 단어간 유사도를 측정하기 어려움 - 또한 미등록 단어(out of vocabulary)문제 발생 - 따라서 BERT model을 사용하기로함. 4. Classifier ..

    Read more
  • Object Detection

    Category 개발레시피/└ 머신러닝 on 2020. 9. 4. 17:49

    1. Object Detection이란? Object Detection은 Image Classification task에 사물의 위치를 Bounding Box로 예측하는 Regression task가 추가된 문제! multi-labeled classification : 한 이미지에 여러 class 존재 boounding box regression : box의 좌표 값을 예측 따라서 Object Detection = Multi-labeled Classification + Bounding Box Regression 2. Sliding Window 다양한 scale의 window를 이미지의 왼쪽 위부터 오른쪽 아래까지 sliding하며 score를 계산하는 방법을 의미. 하나의 이미지에서 여러번 score를 ..

    Read more
  • [Android] adb 자주쓰는 명령어 모음 / adb 명령어로 APK 추출

    Category 개발레시피/└ 유틸 on 2020. 1. 7. 15:54

    1. adb shell 실행 #adb shell 2. 설치된 패키지 검색 $pm list packages -f 특정 단어를 포함한 package 찾기 $pm list packages -f|grep "검색어" 3. apk 추출하기 ex)package:/data/app/com.example.app-1.apk=com.example.app 위 검색 결과 중 빨간색 문자만 쓴다. #adb pull /data/app/~~~~.apk downloaded.apk 4. 현재 실행중인 application name 가져오기 #adb shell dumpsys window windows | find "mCurrentFocus"

    Read more
  • 단일 스레드와 멀티 스레드

    Category 개발레시피/└ 유틸 on 2018. 12. 28. 16:16

    단일 스레드와 멀티 스레드 스레드란?스레드는 CPU의 이용의 기본 단위다.프로세스 내에서 프로그램 명령을 실행하는 기본 단위이자 흐름, 개체라고 할 수 있다.스레드는 스레드 ID, 프로그램 카운터, 레지스터 집합, 스택 으로 구성된다.스레드는 같은 프로세스에 속한 다른 스레드와 코드, 데이터 섹션, 열린 파일이나 신호와 같은 운영체제 자원들을 공유한다. 프로세스에 하나의 제어 모델이 있으면 단일 스레드이며,프로세스가 다수의 제어 스레드를 가진다면 다중 스레드 모델이다. 단일 스레드- 하나의 프로세스에서 하나의 스레드 실행- 하나의 레지스터와 스택으로 표현 멀티 스레드- 프로그램을 다수의 실행 단위로 나누어 실행- 프로세스 내에서 자원을 공유하여 자원생성과 관리의 중복을 최소화- 서버가 많은 요청을 효율적..

    Read more
  • [딥러닝] 로지스틱 회귀: 참 거짓의 판단 장치

    Category 개발레시피/└ 머신러닝 on 2018. 12. 26. 19:51

    아래 내용은 '모두의 딥러닝' 책을 스터디 하여 정리한 내용입니다. 참 거짓 판단 장치: 로지스틱 회귀참과 거짓 중에 하나를 내놓는 과정은 로지스틱 회귀의 원리를 거쳐 이루어진다.참, 거짓을 구분하는 로지스틱 회귀의 원리를 이용해 '참, 거짓 미니 판단 장치'를 만들어 주어진 입력 값의 특징을 추출하고,이를 저장해서 '모델'을 만든다.그 후 누군가 비슷한 질문을 하면 지금까지 만들어 놓은 이 모델을 꺼내어 답을 한다.이것이 바로 딥러닝의 동작 원리이다. 1. 로지스틱 회귀의 정의좌표의 형태가 직선으로 해결되기에 적절하지 않은 경우도 있다.예를 들어 공부한 시간에 따른 합격 여부가 있다고 해보자. 합격을 1, 불합격을 0이라고 했을 때 이는 일차 방정식을 만들 수 있을까?점들의 특성을 정확하게 담아내려면 ..

    Read more
  • [딥러닝] 경사 하강법 (오차 수정하기)

    Category 개발레시피/└ 머신러닝 on 2018. 12. 24. 15:55

    오차 수정하기: 경사 하강법 그래프에서 오차를 비교하여 가장 작은 방향으로 이동시키는 방법미분 기울기를 이용 미분 : 한 점에서의 순간 기울기함수 f(x)를 x로 미분하라는 것은,x의 변화량이 0에 가까울 만큼 작을 때y 변화량의 차이를x 변화량으로 나눈 값(순간 변화율)을 구하라는 뜻 1. 경사 하강법이차 함수 그래프에서 기울기 a를 변화시켜서 그 자리에서 미분하면 각 점에서의 순간 기울기가 그려진다.우리가 찾는 최솟값 m에서의 순간 기울기는이차 함수 포물선이므로, x축과 평행한 선이 된다.즉 기울기가 0이다.따라서 우리가 할 일은 '미분 값이 0인 지점'을 찾는 일이다.이를 위해 다음 과정을 거치는데1) a1에서 미분을 구한다2) 구해진 기울기의 반대 방향으로 이동시킨 a2에서의 미분을 구한다3) a..

    Read more
  • [딥러닝] 선형 회귀

    Category 개발레시피/└ 머신러닝 on 2018. 12. 24. 14:16

    선형 회귀 x값이 변함에 따라 y값도 변한다는 정의 안에서, 독립적으로 변할 수 있는 값 x를 독립 변수라고 한다.또한, 이 독립 변수에 따라 종속적으로 변하는 y를 종속변수라고 한다. 선형회귀 : 독립변수 x를 사용해 종속변수 y의 움직임을 예측하고 설명하는 작업을 말한다.정확한 직선을 그려내는 과정이다. 독립변수가 x 하나뿐이어서 이것만으로 정확히 설명할 수 없을 때는 x1, x2, x3...등 x값을 여러 개 준비해 놓을 수 있다.단순선형회귀 : 하나의 x값만으로도 y값을 설명할 수 있을 때(ex : '공부한 시간'에 따른 성적)다중선형회귀 : x값이 여러개 필요할 때 1. 가장 훌륭한 예측선 그리기 y = ax + b 의 식으로 일차 함수 그래프를 나타낼 수 있다.선형 회귀는 결국 최적의 a, b..

    Read more
  • [Docker] Dockerfile 명령어

    Category 개발레시피/└ 유틸 on 2018. 12. 21. 17:59

    Dockerfile 명령어FROM : 베이스 이미지 지정MAINTAINER : Dockerfile 생성자RUN : 커맨드 실행CMD : 데몬 실행LABEL : 라벨 설정EXPOSE : 포트 exportENV : 환경변수 설정ADD : 파일 및 디렉터리 추가COPY : 파일 복사VOLUME : 볼륨 마운트ENTRYPOINT : 데몬 실행USER : 사용자 설정WORKDIR : 작업 디렉터리 지정ONBUILD : build 완료 후 실행될 명령어 Dockerfile로 Docker이미지 생성docker build -t [생성할 이미지명]:[태그명] [Dockerfile 경로]

    Read more