인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

Inflearn Community Q&A

재히's profile image
재히

asked

[Revised Edition] The Complete Guide to Python Machine Learning

Content-based filtering implementation practice using TMDB5000 data set - 02

9장 학습 중 sklearn 1.6.0 버전을 사용해도 되나요?

Written on

·

39

0

 

9장 추천시스템부터 듣고있는데 전에는 1.0.2버전 설치했다가 강의 들으면서 따라하는 도중

from sklearn.feature_extraction.text import CountVectorizer 가 임포트 안되는 오류가 계속되어서

scikit-learn 삭제 > 버전 지정 안하고 다시 설치 > 정상 작동

에러가 사라져서 좋긴하지만 다른 질문들을 찾아보니 버전은 강의대로 따라가는게 좋다고 하셔서 1.6.0 버전 사용여부 여쭤봅니다.

python머신러닝통계sklearnscikit-learn

Answer 2

0

권 철민님의 프로필 이미지
권 철민
Instructor

안녕하십니까,

섹션 10 추천 시스템을 듣고 계신건가요?

일단 섹션 10 추천 시스템은 사이킷런 1.6이어도 괜찮은지 제가 확실히 답변 드리기 어렵지만, 섹션 9 텍스트 분석은 Mercari 분석 실습 시 사이킷런 1.6으로 할 시 Lightgbm에서 실습 코드가 제대로 동작하지 않을 수 있습니다.

제 생각엔 CountVectorizer가 특별히 오류가 발생할 이유가 없을 것 같은데, 먼저

  1. 사이킷런 1.0.2 로 다시 돌리시고, numpy와 pandas 버전을 여기에 올려봐 주시겠습니까,

  2. CountVectorzer 수행 시 발생하는 오류도 여기에 올려 주십시요.

감사합니다.

재히님의 프로필 이미지
재히
Questioner

안녕하세요 강사님. 어떤식으로 해결이 되었는지는 모르겠지만 지금은 에러없이 잘 작동하고있습니다. 아래 코드를 실행했을 때 AttributeError: module 'sklearn' has no attribute '__version__' 에러가 나왔었는데 혼자 했던 방식은

conda remove scikit-learn 으로 삭제

conda install scikit-learn=1.0.2로 다시 설치

설치 후 확인 > 같은 에러

conda remove scikit-learn 으로 삭제

pip install scikit-learn (1.6.0 버전) 설치

확인해보니 에러가 뜨지 않음(정상작동)

이었습니다. 여기서 의문점이 들어서 질문을 드리게 되었는데 강사님 답변 확인 후 다시 지운뒤 1.0.2 버전으로 설치하니 에러없이 동작하네요.. 이번에는 pip로 설치했는데 이것과 관련이 있는걸까요? 넘파이는 1.21.6 판다스는 1.3.5버전 사용중입니다.

from sklearn.feature_extraction.text import CountVectorizer 

#CountVectorizer를 적용하기 위해 공백문자로 word 단위가 구분되는 문자열로 변환 
movies_df['genres_literal'] = movies_df['genres'].apply(lambda x : (' ').join(x)) 
count_vect = CountVectorizer(min_df = 0.0, ngram_range=(1,2)) 
genre_mat = count_vect.fit_transform(movies_df['genres_literal']) 
print(genre_mat.shape)
권 철민님의 프로필 이미지
권 철민
Instructor

오, 해결이 되어서 다행이군요. 원인은 저도 잘 모르겠습니다 ^^

즐강하십시요.

0

안녕하세요, 인프런 AI 인턴입니다.

재히님, 현재 강의에서 추천된 버전인 1.0.2를 사용하는 것이 권장되지만, 최신 버전의 scikit-learn (1.6.0)을 사용하셔도 대부분의 기능에서 큰 문제는 발생하지 않을 것입니다. 다만, 강의에서 사용된 특정 기능이나 메서드가 각 버전 업데이트 시에 변경되거나 deprecated될 가능성도 있기 때문에, 강의 코드가 정상 작동하는지를 확인하고 주의 깊게 따라가실 필요가 있습니다.

아래에 관련 질문과 답변을 소개해드립니다:
- scikit-learn 버전 충돌에 대한 해결 방법 은 다른 사용자들이 호환성 문제를 경험하고 해결한 예시를 다루고 있습니다. 버전 충돌이 있을 경우, 해당 답변을 참고하시면 유용한 정보를 얻을 수 있습니다.

또한, scikit-learn의 기능이 최신 버전에서 변경되었을 가능성을 염두에 두고, 문제가 발생하는 경우 에러 메시지를 확인하여 scikit-learn 공식 문서나 커뮤니티를 통해 추가 정보를 얻으시는 것도 방법이 될 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

재히's profile image
재히

asked

Ask a question