Jung Han
맨날 공부중
강추조
이강호(14), 한정(11)
def get_cosine_similarity(rating1, rating2):
x = 0
y = 0
xy = 0
for key in rating1:
x += rating1[key] * rating1[key]
if key in rating2:
xy += rating2[key] * rating1[key] # key가 하나라도 0이라면 반영이 안될 것.
for key in rating2:
y += rating2[key] * rating2[key]
similarity = xy / (sqrt(x) * sqrt(y))
return similarity
결론 : 둘 다 평가한 결과만 유사도에 영향
저번 수업시간 이해부족으로 인한 잘못된 대답이었습니다. 죄송합니다.
a과목 | b과목 | c과목 | d과목 | e과목 | |
---|---|---|---|---|---|
A유저 | 5 | 4 | 5 | 2 | - |
B유저 | 5 | - | - | 2 | 3 |
C유저 | 5 | 4 | - | 2 | 4 |
A와 B의 유사도보다 A와 C의 유사도가 높게 되는 것이 유사도 판단 면에서 당연!
기존방식으로 비교 되는것이 맞습니다
24일 현재
1. instance 생성
2. python3, pip3 설치
3. beautifulsoup4, boto3, python3-mysql.connector, pymongo 등
필요 python3 모듈 설치
4. mongoDB, MySQL 설치
5. 기존 코드 및 sql file import
설치된 버전 확인
크롤링 되는지 확인
: Simple Queue Service
: 애플리케이션, 마이크로서비스간 안정적인 통신을 지원하는
완전관리형 메세지 대기열
: 강추조는 SQS FIFO를 사용
평가점수 입력 후 페이지 이탈 / 저장
SQS send
message
(userId)
DB에 점수 저장
SQS(FIFO)에 쌓임
receive message
추천 알고리즘 후
MySQL로 저장
remove
message from queue
critical section(DB)
동시접근 차단
busy waiting
사이트에서 임시로 메세지에 userId값을 담아 넘겨주면
메세지 정보와 userId에 해당하는 유저의 예상점수를 출력해줌
(테스트 완료)
1.
By Jung Han