분류 전체보기
-
[머신러닝] Boosting, GradientBoosting, 분류 알고리즘 정리🤖𝗔𝗜/🤖광주 인공지능사관학교 2020. 8. 12. 16:59
Boosting : 여러 개의 분류기가 순차적으로 학습을 수행하되, 앞에서 학습한 분류기가 예측이 틀린 데이터에 대해서 올바르게 예측할 수 있도록 다음 분류기에게 가중치(weight)를 부여하면서 학습과 예측을 진행. 분류기에 약한 학습기를 사용 약한 학습기 : 예측 성능이 상대적으로 떨어지는 학습 알고리즘, 결정 트리가 좋은 예 GradientBoosting 주요 매개 변수 ( 하이퍼 파라미터 ) AdaBoost ( Adaptive Boost ) 잘못 분류한 샘플에 가중치를 높여서 다음 모델을 훈련 시킴. XGBoost (extreme gradient boosting) - GBM을 개선하여 속도를 높인 것 ( 병렬 수행 및 다양한 기능으로 ) - 일반적인 GBM에 비해 수행 시간이 빠른 것이지 다른 머..
-
[Django] 파이썬 장고 기초🍓𝗪𝗲𝗯 2020. 8. 12. 10:14
django : 서버 역할을 할 수 있는 웹 프레임워크 프레임워크란, 웹 개발을 하기 위한 도구들을 미리 갖춘 것을 말한다. 클라이언트와 서버가 명확히 구분되어 있지 않다. 빠르게 만들 수 있다. 가장 유명한 서비스 : instagram. 내가 글을 쓰고, 댓글을 쓰고... crud가 들어가는 서비스에 적합하다. 실시간 통신은 조금 어렵다. 장고로 개발을 하지만, 그 내에서 클라이언트와 서버에 대한 ( 요청과 응답으로 이루어진 웹에 대한, ) 개념을 명확히 이해하고 있어야 한다. express는 바닥부터 만드는 느낌이라면, django는 만들어진 것이 많아서 거기에서 조합하는 느낌! 요청에 대한 처리를 할 수 있게 된다. 로그인 요청이 들어왔을 때, 우리 사이트의 회원인지 아닌지를 데이터베이스에 접근하여..
-
[알고리즘] Merge Sort🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺 2020. 8. 11. 18:13
정렬된 두 배열 merge_sort(num_list, start_idx, end_idx) 처음부터 끝 인덱스 까지는 0, len(num_list)-1 중간값 mid_idx = (start_idx + end_idx) // 2 start_idx < end_idx 일 때 : merge_sort() 두번 호출하고, 합친다. 1. merge_sort(num_list, start_idx, mid_idx) 2. merge_sort(num_list, mid_idx+1, end_idx) 그리고 합친다! combine(num_list, start_idx, mid_idx, end_idx) l_idx = start_idx # start_idx ~ mid_idx r_idx = mid_idx + 1 # mid_idx+1 ~ en..
-
[자연어 처리] 기계 번역 Seq2Seq🤖𝗔𝗜/🤖광주 인공지능사관학교 2020. 8. 11. 15:33
Seq2Seq : 입력된 시퀀스로부터 다른 도메인의 시퀀스를 출력하는 분야에서 사용되는 모델 봇(Chatbot)과 기계 번역(Machine Translation), 내용 요약(Text Summarization), STT(Speech to Text) 등에서 쓰인다. 구성 : 인코더와 디코더로 구성된다. 인코더 : 입력 문장의 모든 단어들을 순차적으로 입력받은 뒤에, 마지막에 이 모든 단어 정보들을 압축해서 하나의 벡터로 만든다. => 컨텍스트 벡터 -> 디코더로 전송한다. 즉, 한글 문장 받아서 LSTM 마지막 시점의 은닉/셀 상태 리턴하도록. 디코더 : 컨텍스트 벡터를 받아서 번역된 단어를 한 개씩 순차적으로 출력한다. 인코더와 디코더는 RNN 형태이다. 성능 문제로 인해 LSTM 셀로 구성. 인코더 :..
-
MobileNET에 대한 고찰.🤖𝗔𝗜/🤖광주 인공지능사관학교 2020. 8. 11. 12:52
데이콘 DACON, 캐글 Kaggle : 딥러닝, 머신러닝 대회에서 정확도가 높은 코드가 공개되기 때문에 봐보면 좋다. 전이 학습 1000개의 범주가 아니기 때문에, 우리의 문제에 맞게 레이어 재구축을 해야 한다. 학습용 데이터가 없어도 충분히 문제 해결이 가능하다. 우리가 가진 데이터를 가중치를 최적화할 수 있게끔 추가적으로 학습시켜야 한다.(훈련시켜야 한다) MobileNET에 대한 고찰. 이미지를 채널 3개로 분리해서 모두 연산을 해야 하지?? - Depth-wise Separable Convolution 연산하는 속도가 증가하기 때문이다! 학습에 필요한 파라미터 수를 획기적으로 줄인다. ( 연산의 효율성을 높임으로써 경량화한다 ) 먼저 Depthwise Convolution 하고 -> Pointw..
-
[크롬의 개발자 도구 : 네트워크] 보는 법 공부🍓𝗪𝗲𝗯 2020. 8. 5. 10:11
크롬의 개발자 도구 네트워크를 볼 줄 알아야한다. General 컴퓨터의 주소 : IP 사람이 보기 편하기 위해 도메인으로 ip 연결해줌 !-! 도메인이 IP 연결되어 있는 구조라고 생각하면 편하다. :443은 포트인데, 장고할 때 다시 할겨~ Referrer Policy : Referrer 방문직전에 위치해 있던 페이지. 방문 출처 정책 no-referrer 어디서 들어오든 상관 없다~! 헤더에 referrer 포함하지 않겠다. ex) 결제하는 사이트에서 이전 스텝들을 밟아와야 할 때. Request Headers 요청을 보내는 헤더! 호스트 / 루트 (홈) accept : 이러한 형식으로 응답을 보내달라. *은 무엇이든 상관 없다. cache: 자주 사용하는 데이터를 미리 복사 해둔 임시 저장소. (..
-
[자연어 전처리] TF, DF, IDF 구현 실습🍓𝗪𝗲𝗯 2020. 8. 2. 21:03
TF : 특정 문서에서 특정 단어가 등장한 횟수 DF : 특정 단어가 등장한 문서의 수 IDF : DF의 역수 -> 로그를 취해서, 수가 너무 커지는 것을 방지한다. 분모에는 1을 더해서 df가 0일 때를 방지한다. 직접 구현해보기 실습. 실습은 colab에서 진행했다. 한글 텍스트로 진행하기 위해서, konlpy 모듈을 설치해야 한다. 필요한 모듈들을 import 한다. Okt 모듈을 사용하기 위해서는 from konlpy.tag import Okt를 해야한다. doc_list 글들을 공백 기준으로 합치고, 그 다음 morphs()로 형태소 기준으로 토큰화한다. 그리고 set()함수로 겹치는 것들을 제거한다. TF : 특정 문서에서 특정 단어가 등장한 횟수 이므로, 문서에 있는 단어의 수를 count(..
-
[자연어 전처리] Konlpy를 이용한 한글 텍스트 워드클라우드🍓𝗪𝗲𝗯 2020. 8. 2. 20:20
실습 목표 : 최소 5줄 이상의 텍스트를 이용해, konlpy 모듈로 토큰화하고, stopwords 리스트를 만들어 이를 제거하고, 빈도수 딕셔너리를 만든 뒤, 이를 워드클라우드로 표현해보기 구글 Colab에서 진행! 5줄 이상의 텍스트는 한글가사로 가득 찬, 검정치마의 한시오분으로 했다❤️ 우린 아직 흑백영화처럼 사랑하고 언제라도 쉽고 빠르게 표현하고 맘에 없는 말은 절대 고민하지 않고 뭔가 아쉬울 땐, 밤 지새우고 남들이 아니라는 것도 상관없지 우린 같은 템포, 다른 노래인 거야 아직 더 서투르고 솔직해야 하지만 반복에 기계처럼 계산하고 준비된 사람들 하지만 자기야 나는 너를 매일 다른 이유로 더 사랑했었고 이젠 한시 오분 멈춰있는 시계처럼 너 하나만 봐 네가 없는 날은 어떻게든 흘러가기만 기다려 투..