![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/pF99x/btqvbOwvVzl/4dE8u22vMxYBqoG7M4ekck/img.jpg)
협업필터링, 영어로는 Collaborative Filtering을 구현해보겠다. 아직 자연어처리에서 글 분류가 완벽하지 않지만 최근에 collaborative filtering을 코드로 짜볼 기회가 있었기에, 잊기 전에 한 번 만들어보려고 한다. 0. 서론 Collaborative Filtering(이하 협업필터링. 영어로 쓰기 너무 길어서.)에 대해 간단히 알아보자. 협업 필터링이란 간단히 말하면 유사한 것들끼리는 유사한 결과를 보일 것이라는 가정으로, 아직 모르는 값을 예측하는 것이다. (나는 그렇게 이해했다. 그렇게 보면 필터링이란 이름은 딱히 어울리지 않는 것 같다. 분석이나 예측이 더 가깝지 않을까...?) 협업필터링 과정은 유사한 것들을 찾는 유사도 계산과 결과 예측, 이렇게 2단계로 크게 나..
이번엔 multi classification을 해볼 것이다. 내가 가진 것은 페이스북 게시글로, 약 4000개 정도 된다. supervised learning을 진행하려고 labeling을 쭉 하는데 너무 많아서 2000개만 하고 일단 돌려봤다. labeling을 하는데, 내가 분류를 해도 헷갈리는 것이나 여러 항목에 걸쳐 있는 글들이 많았다. 경계도 모호하고 분류도 완벽하지 않다. 아마 학습시킬 때도 문제가 될 것 같다. 분류를 통합하거나 태그 형식으로 바꾸거나. 마치 도서관에서 일할 때 도서 분류를 하는 느낌이다. 개요 글을 분류하는 데에는 여러가지 방법이 있더라. 검색해보니 Doc2Vec, fasttext, Word2Vec(문장은 단어 vector의 평균으로), LSTM 또는 RNN, CNN 등이 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bgZ4fl/btquA1XTwO9/husnBlIeib85kpHCCnAWVk/img.png)
Unsupervised Learning 비지도 학습(Supervised Learning)이란, labeling이 되어있지 않은 자료들을 가지고 학습을 하는 것을 말한다. 보통 classification(clustering) 같은 곳에 쓰인다. 내 데이터들은 분류가 제대로 되지 않았다. 데이터 중 한 가지 주제(택시 동승)에 대해서만 정규표현식으로 분류가 됐다. 그 마저도 100% 정확도는 아니고 98%정도이다. 데이터가 4000개 글 정도 되는데, 하나하나 직접 분류하자니 시간이 많이 걸린다. 꽤 오래 한 것 같은데 이제 1000개 했다. 처음에 7개 정도로 분류할랬는데, 그것도 하다보니 애매하다. 경계도 모호하고 두 가지 이상의 종류에 속한 글도 있다. 사람이 해도 다 다를 분류이다. 여튼 인공지능을 ..
자연어처리와 인공지능으로 페이스북 글을 분류하기*내가 구현한 첫 기계학습 모델. 부족한 게 많음. 현재 상황페이스북의 어떤 그룹에는 여러 가지 글이 올라오는데, 그 중에 택시 동승자를 구하는 글들도 있다.호옥시 내일(15일.금) 저녁 9시에 택시타고 **역 가실 분 있으신가요캐리어하나있어용이런 글 들이다. 나는 여러 가지 글 중 이 글이 택시 동승자를 구하는 글인지 구분하는 classifier를 만드려고 한다. 사실 이미 있다.하지만 그건 인공지능이 아니라 정규표현식을 통해 구분하는 함수라, 예상치 못한 형식이 나오면 제대로 구분하지 못한다.(그래도 정규표현식을 이용한 분류기 정확도는 95% 이상이다) 이미 페이스북 그룹의 글들은 파싱한 상태이고, 정규표현식으로 구분한 정보도 있는 상태다python의 d..
Traceback (most recent call last): File "/home//testvenv/lib/python3.6/site-packages/konlpy/tag/_mecab.py", line 107, in __init__ self.tagger = Tagger('-d %s' % dicpath)NameError: name 'Tagger' is not definedUbuntu 18.04 MeCabKoNLPy를 사용하려다, 다른 KoNLPy의 tag들은 시간이 너무 오래 걸려서, 간단히 사용하기는 힘들었다.그래서 처리 속도가 가장 빠른 tag인 MeCab을 사용하기로 했다. KoNLPy에서 Mecab 오류위에 나온대로, KoNLPy에서 Mecab을 쓰려는데 오류가 난다. 그러면서 http://konl..
- Total
- Today
- Yesterday
- pythonpython
- django
- python3.8
- ifkakao
- javascrip
- Supervised Learning #KoNLPy #Keras #NLP #자연어처리 #글 분류 #LSTM
- 협업필터링
- matrix market
- MachineLearning #KMenas #KoNLPy #Word2Vec #AI #ML #인공지능 #Unsupervised #Clustering #Classification
- django3
- buffalo
- item-based
- queryset
- django mysql database sqlite
- 추천
- memory-based
- Collaborative Filtering
- WSL2
- Python
- gensim
- KAKAO
- IBCF
- windows subsystem for lunux
- matrix factorization
- 메모리기반
- MBCF
- n core setting
- 아이템기반
- pytorch
- 서버환경
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |