강추조
이강호(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.