본문 바로가기
728x90

전체 글121

벡터화 발전과정 4 - 워드 임베딩 (Word2Vec / FastText / GloVe) 2003년 요슈아 벤지오(Yoshua Bengio) 교수가 NPLM(Neural Probabilistic Language Model) 이란 모델을 통해 제안된 워드 임베딩. 하지만 이 모델은 너무 느렸다. 2013년, 구글이 NPLM의 정밀도와 속도를 개선하여 Word2Vec을 만들었고, 그 이후로 FastText나 GloVe 등과 같은 방법들이 제안되었다.. Word2Vec 원핫보다 저차원이고, neighbor words간 유사도를 가짐 word2vec은 워드임베딩 종류의 하나이고, Unsupervised or Self learning 이라고도 한다. 왜냐하면 그 유의미한 Dense Vector들을 자기가 학습하면서 기울기를 조정하여 업데이트해가기 때문이다. 분포 가설(Distributional Hyp.. 2023. 2. 23.
벡터화 발전과정 3 - 임베딩 (Embbeding) / Sparse - Dense - Embedding vector 희소 벡터 (sparse vector) 들이 난무하는 DTM, TF-IDF, 원-핫 벡터 단어장에는 0이 너무 너무 많다. 단어장의 크기가 커지면, 그만큼 차원이 늘어면서 차원의 저주(curse of dimensionality)가 시작된다. 차원의 저주란, 희소벡터의 비율이 같은 일정 데이터를 2D에 표현했을 때보다, 3D로 표현했을때 더 density가 떨어진다는 뜻이다. 골다골증인 것처럼 데이터에 구멍이 송송송송 빈다. 데이터가 많으면 많을 수록 표현이 잘 되고 좋은 것은 맞지만, 필요없는 0 같은 노이즈가 많이 끼면 오히려 학습에 방해가 되고, 학습을 마치더라도 유의미한 결과라고 하기 어렵다. 그래서 Sparse vector 를 Dense vector 로 바꾼다. 즉, 벡터 하나하나 의미가 있는 아.. 2023. 2. 22.
토큰화 / 인덱싱 / 벡터화 / 임베딩 토큰화 split 하는 것. 이 때에 띄어쓰기나 형태소 단위로 끊어줄 수 있음 인덱싱 각 단어를 고유한 번호(인덱스)로 매핑하는 것 의미나 관계를 고려하지는 않음. 벡터화 단어나 텍스트를 수치화하는 작업 중 하나 각 단어나 문장을 수치 벡터로 변환하는 것을 의미 단어나 텍스트를 고차원 벡터로 변환 인덱싱과 다르게 단어의 의미나 관련성을 고려 빈도기준의 DTM, 빈도+문서간관계 TD-IDF, 독립적인 관계 One-Hot, 분포로 잠재 의미를 담아내는 LSA, (LSA는 희소 vector가 아니라 희소 matrix를 밀집 행렬로 바꾼거라 임베딩이라 하지 않고 벡터화에 속함) 분포로 단어의 토픽을 찾아내는 LDA, (LDA는 벡터에 확률 분포가 들어감) 임베딩 (like. 2차 벡터화) 벡터화되어 고차원으로 .. 2023. 2. 22.
영어 공부는 AI 처럼 chatGPT 같은 NLP Generator는 몇 분, 길어야 몇 시간만 공부하면 영작을 해낸다. 왜 사람은 못하지? 내 생각에 한국사람들은 정말 영어를 잘한다. 어제는 티비 프로 이름이 "포비든 앨리" 라고 나오더라. 설마,, 금지된 골목?? 이렇게 어려운 단어를 영어 그대로 제목으로 쓴다고? 이렇게 놀랬다. 참 영어 다들 잘한다. 다 못한다고 하면서 다 잘한다. 그런데도 왜 유럽처럼 자유롭게 영작은 못하는거냐구. 난 그 이유가 단어를 잘못외워서라고 생각한다. 단어외울때 품사를 안외우니깐,, red 의 품사가 뭐냐고 물으면 빨갛다니까 동사라고 하거나, 뭐 빨간 그런거 아니냐고 ㅋㅋㅋ 얼버무린다. 형용사라고 말하는 사람 정말 잘 없다. 문법은 품사의 자리를 찾아주는거라 단어의 품사를 모르면 자리를 찾아줄.. 2023. 2. 22.
분류성능평가지표 : F1-score , Accuracy, ROC curve, AUC curve 2022.12.07 - [ML] - 오차행렬, FP, FN, F-score, Threshold Confusion Matrix TN : 4 / FP : 1 FN : 1 / TP : 2 from sklearn.metrics import confusion_matrix # assume y_true and y_pred are your true and predicted labels, respectively y_true = [0, 1, 1, 0, 1, 1, 0, 0] y_pred = [0, 1, 0, 0, 1, 1, 0, 1] cm = confusion_matrix(y_true, y_pred) >> array([[4, 1], [1, 2]]) Precision이나 Recall은 모두 실제 Positive인 정답을 모델.. 2023. 2. 20.
나이브 베이즈 이론 연습문제 CASE 1 CASE 2 총 8개의 메일 중 4개의 메일이 스팸 메일이므로 P(spam) = 4/8 = 1/2 총 8개의 메일 중 3개의 메일이 coupon이라는 단어를 포함하므로 P(coupon) = 3/8 총 4개의 스팸 메일 중 2개의 메일이 coupon이라는 단어를 포함하므로 P(coupon | spam) = 2/4 = 1/2 P(coupon | spam)과 P(spam)를 곱한 후에 P(coupon)로 나눠줍니다. 정답은 2/3 즉, 66.7%입니다. 2023. 2. 20.
벡터화 발전과정 2 - soynlp (비지도학습 한국어 형태소 분석기) Soynlp - 품사 태깅, 형태소 분석 등을 지원하는 한국어 형태소 분석기. - 비지도 학습으로 데이터에 자주 등장하는 단어들을 형태소로 분석함. - 내부에 단어사전 같은 단어 점수표를 만들어 동작하며 . 이 점수는 응집 확률(cohesion probability) 과 브랜칭 엔트로피(branching entropy) 를 활용함. - 학습은 txt string (말뭉치, 진짜뭉치)을 DoublespaceLineCorpus로 띄어쓰기 두개 기준으로 떼어내 문서단위로 구분하고, 이를 WordExtractor로 단어를 추출하여 .train 시키면, 단어점수표가 만들어짐. 단어점수표 구조 응집 확률 (cohesion probability) 내부 문자열(subword)가 "얼마나 응집"하여 "자주" 등장하는가의.. 2023. 2. 20.
cGAN / Pix2pix GAN의 목적 1. Pg -> Pdata (만들어낸 이미지의 분포가 실제 이미지의 분포로 수렴하면 성공) 2. D(G(z)) -> 1/2 (Generator가 만들어낸 결과(G(z))를 Discriminator가 판별했을 때, 1이 진짜, 0이 가까이지만 잘 모르겠어서 1/2로 판별해내면 성공. 첨에는 0으로 잘 가려내겠지만 나중에는 1인가? 하다가 결국 그 평균인 1/2에 수렴해야함) D(x) : x는 진짜에서 뽑아온 분포니, D가 판별했을 때 진짜이도록, 즉 1이 되도록 D(G(z)) : G(z) output 자체가 가짜니 D입장에서는 ; D가 판별했을 때 가짜이도록, 즉 0이 되도록 G입장에서는 ; D가 판별했을 때 진짜이도록, 즉 1이 되도록 결국, log 1 + log 0.5 가 될 것임. lo.. 2023. 2. 18.
벡터화 발전과정 (BoW/DTM/TF-IDF/SVD/LSA/LDA/토픽모델링) 벡터화 분산표현이 대중화되기 전에 쓰이던 방법 단어의 의미! 를 부여하기 위한 인간의 노력들. 크게 빈도 / 분포 를 이용한 두가지 방법으로 나뉨 단어 빈도를 이용한 벡터화 1. BoW (Bag of Words) 문서 내 단어들을 다 쪼개서 >> 하나의 가방에 넣고 순서 무시하고 흔들어버림 >> 단어별 빈도수에 따라 정렬 >> 단어 분포를 보고 문서의 특성을 파악 Keras로는 tokenizer.word_counts를 딕셔너리로 만들면 BoW. sklearn로는 CountVectorizer.fit_transform(sentence).toarray() 로 BoW 만듬. Bow에는 단어별 빈도수까지 들어있기 때문에 단순 단어 색인인 fit_on_texts로 만든 word_index와는 다름. 한계 : 어순에.. 2023. 2. 18.
Keras Tokenizer 와 SentencePiece 비교 이해 Keras vs SentencePiece 1. fit_on_texts() : keras.preprocessing.text.Tokenizer에 내장된 함수로, 사전을 만들기 위한 준비작업 Sentencepiece : 파일을 불러올 때 SentencePieceTrainer.Train("--input 파일명 --model_prefix=korean_spm --vocab_size= 보카사이즈") 이렇게 불러오면, prefix 단위로 토큰화, idx 매길 준비를 한다. 불러올 때 이미 토큰화를 내재적으로 하기때문에, 다른 두개와 달리 토큰화된 문장 list가 아니라 온전한 원문 문장 list를 매개변수로 전달함. 2. texts_to_sequences() : word to 숫자 Sentencepiece : Enco.. 2023. 2. 15.
전처리, 분산표현, 임베딩, 토큰화 자연어 (Natural) : 인류의 언어. 200가지의 언어 중 40가지 정도가 문자를 가짐. 문맥 의존 언어 (context sensitive language) parsing이 어려움. 문맥, 현실세계의 이해를 필요로 할 때가 많아 단순 파싱이 되지 않음. 착한 영희 친구를 parsing 하여 다 떨어뜨리면, 영희가 착한건가 친구가 착한건가.. She drove down the street in her car. 그녀는 그녀의 차를 타고 길을 운전한건가, 차안에 있는 길을 운전한건가. 인공어 (Artificial) : 프로그래밍 언어. C언어, 파스칼 등등. 문맥 자유 언어 (context free language) parsing이 너무 잘됨. 문맥이 자유로우니 그냥 나누면 끝. 1. 전처리 자연어의 N.. 2023. 2. 14.
OCR (광학문자인식)과 딥러닝 OCR(Optical Character Recognition, 광학 문자 인식) 1) Detection - 인식 2) Recognition - 해독 1. Detection Object Detection(객체 인식) 방법이 사용됨 Regression(회귀) 방식 : 기준으로 하는 박스 대비 문자의 박스가 얼마나 차이가 나는지를 학습 Segmentation(세그멘테이션) : 픽셀 단위로 해당 픽셀이 문자를 표현하는지를 분류하는 문제(pixel-wise classification) 객체 : 물체에 따라 크기가 일정하고, 물체간 거리가 충분히 확부된다. 문자 : 문자는 영역과 배치가 자유롭고, 검출하기 위한 설정이 필요, 글자간 거리가 촘촘함. (박스가 겹침) 논문근거 기술분류 Regression-based :.. 2023. 1. 31.
비지도학습 / K-means, DBSCAN / PCA, T-SNE 비지도학습 지도학습과 달리 training data로 정답(label)이 없는 데이터가 주어지는 학습방법. 주어진 데이터가 어떻게 구성되어 있는지 스스로 알아내는 방법 지도학습이 회귀, 분류라면, 비지도학습은 분류! 종류 군집화 (clustering) : K-means, DBSCAN (주로 Classification) 차원축소 (dimensionality reduction) :PCA(Principal Component Analysis), T-SNE 생성모델 (generative model) 군집화 (clustering) 1. K-means 정답 label 도 없고, 분류기준이 되는 클래스나 카테고리도 없는 데이터를 가까운, 유사한 것들끼리 묶어주는 것. 묶을 기준이 없기 때문에 k개의 기준점을 중심으로 .. 2023. 1. 30.
Chatbot 챗봇의 종류 1.대화형 챗봇 NLP처리를 기본으로 한 챗봇으로 질문을 분석하여 답변을 주는 프로세스를 가진다. 비용, 전문성, 개발소요시간 모두 최상으로 소요된다. 2. 트리형 챗봇 인공지능은 아니며, 질문을 받으면 그 다음 단계로 넘어갈 버튼을 제시한다. 자주하는 질문에 쓰기 좋으며, 챗봇1세대의 방식이다. 비용은 매우 낮고, 전문성은 낮은 정도, 시간은 보통으로 소요된다. 3. 추천현 챗봇 인공지능일수도 있고, 아닐수도 있다. 질문을 받으면 추천하는 답변을 여러개 제시한다. 만약 1개만 제시한다면 대화형 챗봇이 된다. 비용과 전문성은 보통이고, 시간은 많이 소요되는 편이다. 4. 시나리오형 챗봇 제공할 서비스나 결과물이 정해져 있을 때 많이 사용한다. 고객에게 받아야할 정보를 단계적으로 받을 수 있어.. 2023. 1. 27.
추천시스템 - ALS ALS(Alternating Least Squares) 알고리즘 설명 사용자 또는 상품 측면의 벡터가 주어져 있을 때 최소제곱해(Least Squares) 도출 이전 스텝에서 설명한 Matrix Factorization 모델을 implicit 패키지를 사용하여 학습해 봅시다. implicit 패키지는 이전 스텝에서 설명한 암묵적(implicit) dataset을 사용하는 다양한 모델을 굉장히 빠르게 학습할 수 있는 패키지입니다. 이 패키지에 구현된 als(AlternatingLeastSquares) 모델을 사용하겠습니다. Matrix Factorization에서 쪼개진 두 Feature Matrix를 한꺼번에 훈련하는 것은 잘 수렴하지 않기 때문에, 한쪽을 고정시키고 다른 쪽을 학습하는 방식을 번갈아 수.. 2023. 1. 26.
Ex12_ NLP / 뉴스 요약봇 1. 데이터 전처리 null값 제거 : .nunique()로 null 확인 후, .dropna로 제거 중복 제거 : drop_duplicates()로 제거 텍스트 정규화와 stopwords 제거 정규화사전, 불용어사전(NLTK) 를 불러오거나 만들어주거나 한 후에 preprocess_sentence라고 함수를 만드는데 text 컬럼은 정규화와 불용어 모두 처리하고, clean_text=[ ]에 담고 headlines 컬럼은 자연스러운 문맥을 위해 정규화만 하고, clean_healines =[ ] 에 담아둠. 2. train, test 나누기 최대길이 정하기 길이분포를 구하여 그래프로도 한번 보고 적당한 text_max_len, headlines_max_len을 임의로 잡는데, 잡을 때 평균보다는 약간 .. 2023. 1. 25.
추천 시스템 알고리즘/ MF / CSR 추천 시스템(Recommender System) 언제 사용하는가? 아이템은 너무 많고, 유저의 취향이 다양할 때 주요 특징 범주형(이산적) 데이터를 다룬다. 데이터들을 일직선 좌표에 두고 유사도를 계산하여 추천한다. 코사인 유사도 (Cosine similarity) 두 벡터의 방향이 이루는 각에 코사인을 취해 구함. 두 벡터의 방향이 완전히 동일하면 (둘다 왼쪽아래-오른쪽위) : 1, 둘의 교차각이 90도라면 (왼쪽아래-오른쪽위)와 (오른쪽아래-왼쪽위) : 0, 둘의 교차각이 180도라면 (왼쪽아래-오른쪽위)와(오른쪽위-왼쪽아래) : -1 1 ~ -1까지 값을 가지며, 1일수록 유사도가 높음. 사이킷런으로 구사함. 기타 다른 유사도 계산법 코사인 유사도 이외에도 유클리드 거리, 자카드 유사도, 피어슨 상.. 2023. 1. 25.
MLE, MAP / prior, posterior, likelihood 베이지안 머신러닝 모델 모델 파라미터를 고정된 값이 아닌 불확실성(uncertainty)을 가진 확률 변수로 보는 것, 데이터를 관찰하면서 업데이트되는 값으로 보는 것 베이즈 정리(Bayes' theorem) prior(prior probability, 사전 확률) 데이터를 관찰하기 전 파라미터 공간에 주어진 확률 분포 확률분포 먼저 고정 후 데이터 받음. p(θ) likelihood(가능도, 우도) 파라미터의 분포 p(θ)가 정해졌을 때 x라는 데이터가 관찰될 확률 prior 분포를 고정한 후, 주어진 파라미터 분포에 대해서 우리가 갖고 있는 데이터가 얼마나 '그럴듯한지' 계산하는것 p(X=x∣θ) , L(θ∣x) 입력 데이터의 집합을 X, 라벨들의 집합을 Y라고 할 때, likelihood는 파라미터.. 2023. 1. 18.
머신러닝과 인간. 그 끝의 딥러닝 데이터는 유한하나, 나는 모든것을 알고싶다. 이를 위한 아주 과학적이고 수학적인 접근법 통계. 사람의 한계치를 넘은 계산량과 속도를 기계에게 일임하여 이를 해결하려는 시도가 머신러닝. 유한한 데이터로 확률분포만을 알아낸다면 새로운 데이터로도 예상되는 결과를 추정할 수 있다. 하지만 문제는 데이터가 유한하다는 사실. 그렇기에 많은 변수들이 있는 실제에 가깝기는 상당히 어렵다. 그래서 머신러닝은 그 변수들을 파라미터라고 할당해주고 범용적인 모델을 만들어낸다. 그리고 이 파라미터값을 조절하여 데이터의 분포를 표현한다. 머신러닝의 목표 모델의 확률분포가 실제 분포에 가장 가까울 수 있는 최적의 파라미터값을 찾는 것. 새로운 데이터를, 아직 일어나지 않은 일을, 다가올 미래를. 두려움인가, 통제인가, 기대인가, .. 2023. 1. 18.
생성 모델들 / GAN 모델의 종류 판별 모델 (Discriminative Modeling) : 입력된 데이터셋을 특정 기준에 따라 분류하거나, 특정 값을 맞히는 모델 생성 모델 (Generative Modeling) : 학습한 데이터셋과 비슷하면서도 기존에는 없던 새로운 데이터셋을 생성하는 모델. 하기는 모드 생성모델에 해당. Pix2Pix 간단한 이미지를 입력할 경우 실제 사진처럼 보이도록 바꿔줄 때 많이 사용되는 모델 단순화된 이미지(Input Image) 와 실제 이미지(Ground Truth) 가 쌍을 이루는 데이터셋으로 학습을 진행 How to use 스케치로 그려진 그림을 실사화하기 흑백 사진을 컬러로 변환하기 위성사진을 지도 이미지로 변환하기 낮에 찍힌 사진을 밤 배경의 사진으로 변환하기 CycleGAN Pix2.. 2023. 1. 17.
확률과 통계 1. 확률 (Probability) 이항(discrete) / 연속(continuous) 서로 배타적(mutually exclusive) : 시행의 모든 시도에서 한 사건 발생 시 다른 하나사건이 발생하지 않을 경우 집합(set), 원소(elements), 사건(events), 부분집합(subset), 전체집합(universal set), 공집합(null,empty set) 교집합(intersection), 합집합(union), 같음(equality) 여집합(complementary set; Set - A), 차집합(difference; A-B != B-A in Union), 서로소집합(disjoint set; A and B are mutually exclusive) A1​,A2​,…,An​ 이 서로 배.. 2023. 1. 16.
Entropy / Cross - Entropy Entropy 불확실성(uncertainty)에 대한 척도. 예측모델의 궁극적인 목표는 불확실성 제어에 있다. 불확실성이 없을 때, 즉 내가 사람이라는 사실에 있어 entropy는 0이다. 어떤 사건이 같은 비율로 발생한다고 하고, 사건의 갯수를 n이라고 하면, entropy는 log(n)이다. 만약 양념치킨과 후라이드 치킨이 반반일 때의 entropy는 log(2) = 0.69이다. 여기서 2는 사건의 갯수로, 양념을 집거나 후라이드를 집는 사건, 총 2개가 된다. 하지만 치킨맛이 2개가 아닌 여러개고, 맛마다 치킨조각이 다르다면, 공식이 필요해진다. H(q) : 엔트로피 C : 범주갯수 = 치킨 맛이 몇개인가 q : 사건의 확률질량함수 (probability mass function) = 각 사건이 .. 2023. 1. 12.
Regression (회귀) / 이진분류는 회귀인가 분류인가? Regression 두시간 반을 갈아넣어 만든 표..... ㅠㅠㅠㅠㅠ 선형 회귀 분석(Linear Regression) 1. 표기법 종속변수 Y와 한 개 이상의 독립변수 X와의 선형 상관관계를 모델링하는 회귀분석 기법 주어진 데이터에 우리의 선형 식이 잘 맞도록 회귀계수 및 오차를 구하는 것 β : 회귀계수 = weight / ϵ : 종속 변수와 독립 변수 사이에 오차 = bias 수학과의 차이는, W, b는 단순스칼라 값이 아니라 행렬로 거의 대부분 오게됨 2. 용어설명 잔차(residual) 관측값(y_test)과 회귀직선의 예측값(y_pred)과의 차이, 보통 e로 표기 잔차로 그래프를 그린 후에 특정 패턴이 나타나면 회귀직선이 적합하지 않다는 의미. 잔차의 개념을 잘 알면 손실함수를 이해할 수 있.. 2023. 1. 12.
Regularization, Normalization Normalization(정규화) Scaling input features so that they have similar ranges or distributions. - 데이터 전처리 과정 중 하나. - 데이터의 형태를 좀 더 의미있고, 학습에 적합하게 만드는 과정 - z-score, minmax scaler로 value를 0-1 사이로 분포를 조정 Normalization refers to scaling input features so that they have similar ranges or distributions. This can help prevent certain features from dominating others during training which could lead to biase.. 2023. 1. 11.
model.summary 에서의 param# 구하기 param_number = output_size * (input_size + 1) = output_channel_number * (input_channel_number * kernel_height * kernel_width + 1) - for. conv ### num_param 1. conv2d (Conv2D) = 32 * ((3 * 3)+1) = 320 2. conv2d_1 (Conv2D) = 64 * ((32 * 3 * 3)+1) = 18496 3. conv2d_2 (Conv2D) = 64 * ((64 * 3 * 3)+1) = 36928 4. dense(Dense) = 64 * (576+1) = 36928 5. dense_1(Dense) = 10 * (64+1) = 650 ### num_param 1.. 2023. 1. 6.
Convolution Layer 심화학습 퍼실님 Question keras.layers의 Conv2D()는 필터의 크기 (가로, 세로)와 필터의 갯수를 인자로 받습니다. 그러나 각 층의 input 값으로 들어가는 feature map들은 depth가 3, 16, 32 등등 제각각인데요, 그렇다면 Conv2d()의 인자로 depth 정보는 왜 입력하지 않아도 되는걸까요? Conv2D()의 인자 중 필터의 수는 ouput(feature map)의 형태 중 어느 부분에 영향을 줄까요? 필터 수가 늘어나거나, 필터의 크기가 커지는 것은 이미지를 인식하고 해석하는 과정에서 어떤 영향을 줄까요? My Answer 1. input image의 depth (= num of channels = num of feature maps) = filter 의 num o.. 2022. 12. 29.
NLP 기본개념 희소 표현(Sparse Representation) 단어 벡터의 각 차원마다 고유의 의미를 부여하는 방식 (너무 양이 많아 결국 한계가 옴) 분산 표현(Distributed Representation) 유사한 맥락에서 나타나는 단어는 그 의미도 비슷하다 라는 분포가설에서 비롯하여, 유사한 맥락에 나타난 단어들끼리는 두 단어 벡터 사이의 거리를 가깝게 하고, 그렇지 않은 단어들끼리는 멀어지도록 조금씩 조정 Embedding layer 컴퓨터용 단어사전을 만드는 곳 (단어 n개 쓸꺼고 k 깊이(차원)로 표현한 것) Weight이다 Lookup Table이다 (LUT : 주어진 연산에 대해 미리 계산된 결과들의 집합(배열), 매번 계산하는 시간보다 더 빠르게 값을 취득해 갈 수 있도록 사용되는 레퍼런스로 사용.. 2022. 12. 29.
활성화함수 종류 vanishing gradient 현상이 발생한다. (0과 1에 결과값이 포화 saturate 된다. 포화된다는 말 자체가 kill the gradient. 기울기가 죽어버리면 에포크를 많이 돌려도 더이상 학습되지 않는다. ) exp 함수 사용 시 비용이 크다. 요즘은 ReLU를 더 많이 사용한다. Hyperbolic Tangent : 쌍곡선 함수 중 하나. (쌍곡선함수 hyperbolic tuction : 일반 삼각함수와 유사한 성질을 갖는 함수지만 삼각함수와 달리 주기함수는 아니다. tanh 함수는 함수의 중심값을 0으로 옮겨 sigmoid의 최적화 과정이 느려지는 문제를 해결. vanishing gradient 문제 존재. (값이 1, -1에 포화됨) sigmoid, tanh 함수에 비해 학습이 빠.. 2022. 12. 29.
인공지능, 머신러닝 그리고 딥러닝 인공지능 사람이 직접 프로그래밍 하지 않고, 기계가 자체 규칙 시스템을 구축하는 과학 머신러닝 데이터를 통해 스스로 학습하는 방법론. 데이터를 분석, 패턴학습, 판단,예측을 수행함. 기존의 머신러닝은 데이터를 입력하기 위해 사람이 직접 피처(Feature)를 가공한다. 데이터의 여러가지 표현방식 중 주로 '표' 형태로 된 정형 데이터를 처리하도록 설계되었기 때문. 그래서 데이터 전처리나, 좋은 피쳐를 조합하여 만들거나 하는 피처 엔지니어링(Feature Engineering) 이 중요하다. 그만큼 머신러닝은 더 좋은 모델을 만들기 위해 '사람의 개입'이 많다. 딥러닝 머신러닝의 하위 집합이며, 그 과정의 모델 형태가 신경망인 방법론. Deep learning is inspired by neural net.. 2022. 12. 27.
TF-IDF TF_IDF (TF * IDF) A : " a new car, used car, car review" B : "A friend in need is a friend indeed." Term Frequency Score 어떤단어가 많이 출현할 수록 그 문서와의 관계가 높을 것이다. = 가장 중요한 단어다. 단점 : A friend in need is a friend indeed. 경우, a 와 friend의 tf score가 같아 연관성을 나타내기 부족했음 IDF log (총문장의 갯수 / 이 단어가 출현한 문장의 갯수) 2022. 12. 19.
728x90