강의
수강평
게시글
질문&답변
아나콘다 설치가 꼭 필요한가요?
안녕하세요^^좋은 질문에 감사합니다.아나콘다 배포판 (Anaconda Distribution)은 개인용도로는 무료로 내려 받고 설치하실 수 있습니다.다음 링크를 따라 들어가서 설치 프로그램을 내려받아 보세요.https://www.anaconda.com/download/success영문 사용자 계정이 필요하다는 점만 주의하시면 설치에 큰 이슈도 없습니다.아나콘다 배포판을 설치하면 한번에 Python 인터프리터 + Conda 가상환경 관리 프로그램 + 다양한 데이터 분석 라이브러리들 (Streamlit은 별도) + Jupyter 노트북 등이 설치 됩니다.물론 각각 설치하시는 방법도 있지만 조금은 번거로울 수 있어서 가급적이면 아나콘다 배포판 설치를 추천드립니다. Conda를 사용하지 않고 가상환경을 만드는 방법은 "AI 인턴"의 답변을 참고해 주시기 바랍니다.그런데 개인 PC에 설치하시는 것이 아니라면 해당 PC의 관리자 분의 허락과 도움이 필요하실 수 있겠습니다. 본 교육에서는 무료로 사용할 수 있는 소프트웨어와 사이트 만을 이용하고 있다는 점 다시한번 말씀드립니다.추가적으로 궁금한 점 있으시면 언제라도 문의 주시기 바랍니다~루비네 코딩
- 1
- 3
- 63
질문&답변
google search console 적용을 위한 html 편집
안녕하세요.좋은 질문 주셔서 감사합니다^^Streamlit을 사용해서는 쉽게 앱을 만들 수 있지만, 주어진 틀 안에서 작동하기때문에 HTML, CSS, JavaScript를 직접 사용해서 만드는 것 보다는 제약이 많습니다.Streamlit은 데이터 앱을 쉽게 만들기 위한 Python 프레임워크이기 때문에직접 HTML을 편집하는 상황은 예외에 해당합니다.Streamlit을 통해서 HTML요소를 직접 추가하는 방법은 다음과 같습니다.커스텀 컴포넌트 만들기.https://docs.streamlit.io/develop/api-reference/custom-components/st.components.v1.html import streamlit.components.v1 as components components.html( , 기타 인자) 관련해서는 3번째 실습 "To Do App 만들기" 강의를 참고해 주세요. 2. st.markdown() 함수 사용방법.https://docs.streamlit.io/develop/api-reference/text/st.markdown st.markdown(, allow_unsafe_html=True, 기타 인자) 3. st.set_page_config() 함수 사용방법.https://docs.streamlit.io/develop/api-reference/configuration/st.set_page_config 이 방법으로는 일부 meta 태그 정보를 html에 넣어줄 수 있습니다.그런데요, 배포이후 html을 수정하는 방법은 보통은 추천드리지 않습니다 ㅠㅠ 작동을 보장하기 어렵습니다 ㅠㅠ먼저 위 언급한 3가지 방법으로 시도해 보시기를 추천드립니다. 🙏Streamlit이 제공하는 것보다 더욱 강력한 기능이 필요하시다면 어쩌면 풀스택 개발로레벨업이 필요하신 것인지도 모릅니다. ㅠㅠ조금이나마 도움이 되었으면 하는 바램입니다~루비네 코딩.
- 1
- 2
- 30
질문&답변
증심극한정리
안녕하세요! 루비네 코딩입니다^^너무 좋은 질문에 감사합니다!표본 한개에 대한 분산을 계산할 때에는 모평균은 정확하게 모르기 때문에 해당 표본의 평균을 중심으로 계산하게 됩니다.그런데 해당 표본의 평균이 모평균과 같으라는 보장은 없습니다!이러한 상황이 "감안"되어 분모에 n-1 이 있는 "불편 추정량"을 사용하게 됩니다. (주의: n=표본의 개수가 아닌 한개 있는 표본의 "크기")(주의: "감안"이라는 다소 느슨한 용어 사용에 대해서 양해 구합니다. 수학적으로 확인 가능합니다.)그런데 이번에 질문주신 부분은 "표준오차"를 도출해 내기위한 "분산"인데요. 여기에서의 전제는 "개개 표본은 모집단의 특성을 갖는 n개의 독립적인 확률변수들을 샘플링한 것과 같이 만들어 졌다" 입니다.그러면 "표본평균"을 나타내는 확률변수 𝑋 ̅ = 위에서 언급한 "독립적인 확률변수들의 합"/n 과 같습니다.그렇기 때문에 𝐸[𝑋 ̅ ]= 모평균 이라는 것은 확률변수들의 특성을 사용해서 보장이 됩니다.또한 Var(𝑋 ̅ ) = 모분산/n 이라는 것도 확률변수들의 독립성과 해당 모집단을 대표한다는 특성을 사용해서 보장이 됩니다.그리고 모집단의 특성을 그대로 같는 (독립적인) 확률변수들에 대해서는 어떠한 보정도 필요 없습니다.다시 정리해 보면: 표본 "한 개"의 분산을 계산할 때에는 불편추정량이 필요하고, 확률변수 𝑋 ̅ 의 분산을 계산할 때에는 모집단을 따르는 확률변수 그 자체의 특성을 사용하기 때문에 불편추정량이 필요없습니다. 확률변수 𝑋 ̅ 의 기댓값이나 분산을 계산한다는 것은 중심극한정리가 전제하는 것과 같이 표본을 거듭해서 추출하여 수렴하는 값이 되겠습니다.조금이나마 이해에 도움이 되었으면 한는 바램입니다.루비네 코딩 드림.
- 1
- 2
- 31
질문&답변
예제를 실행하여 나온 결과가 영상과 살짝 다른 부분 질문
안녕하세요.좋은 질문 주셔서 감사합니다 😄먼저 TensorFlow의 버전 이슈는 아닌것 같습니다.모통 딥러닝 모델의 파라미터 (가중치와 바이어스)는 랜덤으로 초기화 됩니다.그래서, 매번 새롭게 train 하고 test 해보면 결과 (오류)가 조금씩 다른 것을 알 수 있습니다.대다수의 경우에는, 경미한 차이이기 때문에 무시하고는 합니다.그런데 이 경우에는 조금 도드라지게 보이는 것 같기도 하네요 ㅠㅠ그래서 다음과 같이 랜덤 시드 (seed)를 설정해서 모든 랜덤적 요소를 제거해 보세요.노트북 상단에 새롭게 셀을 삽입하고 (4번 째 셀), 다음과 같이 설정합니다.(사진)아래와 같이 모델 파라미터를 초기화 해주는 kernel_initializer (Dense, LSTM layer), recurrent_initializer (LSTM layer)인자에도 랜덤 시드들 설정해 줍니다. 또한 bias는 0 값으로 초기화 되도록 합니다.(사진)주의1: 모든 시드값이 꼭 일치할 필요는 없습니다. 여기에서는 단지 관리가 쉬워서 같은 값으로 설정했습니다 (my_seed=1234). 시드값들이 서로 다르더라도 매번 동일한 조건이 적용된다는 것이 중요합니다.주의2: bias는 시드를 설정하지 않았고 그냥 0 값으로 초기화 해 보았습니다.여러번 세션을 새롭게 시작해서 실행해보았는데 MAPE가 소수점 이하 4자리 까지 매번 같은 값이 나오는 것을 확인해 보았습니다.시드 (my_seed)를 바꾸어 보시면 더욱 만족스러운 MAPE가 나오는 경우가 있습니다. 그 값으로 고정해 두시고 사용하면 되겠습니다.정리해 보면, 딥러닝 모델의 파라미터는 랜덤적으로 초기화 되지만 시드를 설정해서 "매번 똑같이 반복되는" pseudo-random (유사 난수) 조건을 만들어 준 것입니다. "유사 난수"이기 때문에 MAPE는 재현되지만 실행해 보아야 실제 그 값을 알 수 있습니다 (!) 체계적으로 낮추는 방법은 없고 만족스러운 조건이 만들어 지도록 시드값 (my_seed)를 바꾸어 try 해보는 수 밖에는 없습니다.도움이 되었기를 바래봅니다. 😀루비네 코딩~
- 1
- 1
- 156
질문&답변
피셔의 z변환 질문
안녕하세요:중요한 질문에 감사합니다 ^^1). 피셔의 z 변환의 필요성."중심극한정리"에서 알아 보았듯이 일반적인 경우 (표본으로 계산한 통계량)/(표준 오차)의 분포는표본의 크기가 커질수록 표준정규분포를 따른다는 전제를 할 수 있습니다. 이 특성을 바탕으로 신뢰구간을 도출해 낼 수 있습니다. (Section 3, "구간추정" 참고, 강의자료 71p ~ 72p).그런데, 상관계수는 [-1, +1] 구간에 속해야 하기 때문에 가장자리 (-1 또는 +1)에 가까울 수록 상관계수의 분포는 일그러져 정규분포에서 벗어난 형상을 보입니다.결과적으로 (표본으로 계산한 상관계수)/(표준 오차) 또한 표준정규분포에서 벗어난 형상을 보입니다.그러니까 -1과 +1의 위치에는 상관계수가 지나갈 수 없는 "벽" 또는 "테두리"가 있다고 상상해 볼 수 있습니다. (Section 3, 강의자료 93p ~ 94p 그림 참고).신뢰구간을 만들려면 상관계수의 분포가 정규분포와 "유사한" 형상이 되도록 변환이 필요합니다.그 역할을 피셔의 z 변환이 담당하게 됩니다. 상관계수의 분포는 피셔의 z 변환 이후 "테두리"의 영향이 줄어들고 정규분포에 "근접한" 형상을 보이게 됩니다.2). 상관계수의 분포는 피셔의 z 변환이후 "정확하게" 정규분포를 따르는가?아닙니다. 역쌍곡선 탄젠트 (atctanh)를 사용하는 피셔의 변환은 단지 테두리 (-1과 +1)의 영향을 줄여주는 효과를 보입니다."중심극한정리" 조차도 "정확하게" 정규분포를 따른다는 주장을 하고 있지는 않습니다. 단지 "중심" 부분에서 정규분포로 "근접" (approximate)할 수 있다는 주장을 하고 있습니다. 다소 어려운 주제인데 조금이나마 학습 하시는데 도움이 되시기를 바래 봅니다.감사합니다.Ruby네 코딩~
- 0
- 2
- 348
질문&답변
유저인증 라이브러리 (streamlit-authenticator) 설치 이슈
위 내용은 공지 사항이니 숙지해 주세요~~ 감사합니다~~ ^^
- 1
- 2
- 348
질문&답변
오류 메세지
참고해 주세요~~
- 1
- 2
- 811
질문&답변
theme 적용이 되지 않습니다.
안녕하세요.먼저 유저의 커스텀 테마 설정은 필수가 아니라 옵션 사항이기 때문에 "config.toml"가 인식 되지 않는다 해서 오류가 발생하지는 않습니다. 다른 이유로 streamlit 작동에 오류가 있어 보입니다. 보내주신 스샷 만으로는 정확하게 어떤 상황인지 판단하기 어려워 보입니다. 가상환경 설정 확인.다른 앱은 정상적으로 작동하는지 확인.제공된 실습 파일을 변경없이 실행했을 때에도 오류가 발생하는지 확인.재실행 해도 똑같은 문제가 발생하는지 확인.위와 같이 일단 기본적인 확인을 해보시기 바랍니다.감사합니다~
- 0
- 1
- 413
질문&답변
환경설정 conda activate myST 해도 가상환경 설정에 들어가지 않습니다.
저희 Streamlit 강의를 선택해 주셔서 감사합니다^^먼저 VS Code 터미널을 열면 "conda 터미널"이 열려야 가상환경을 사용할 수 있습니다.확인해 보는 방법은:a). 처음 conda 터미널을 열면 프롬프트가 "(base)" 이어야 합니다.b). 그리고 conda --version 을 실행해 보면 conda의 버전이 출력되어야 합니다.위와 같이 확인이 되지 않으면 "conda 터미널"이 열려있지 않은 상태입니다.그러면 다음과 같이 해보시기 바랍니다.1). CTRL + SHIFT + p 조합으로 "명령어 팔레트"를 연다.2). 검색창에서 "Python"을 타이핑 해서 "Python: 인터프리터 선택"으로 들어간다.3). "Python 3.9.13 ('base') ~\anaconda3\python.exe"를 선택한다.4). 이제 다시 VS Code 터미널을 열고 위 a)와 b)를 다시 확인해 보십시요.다시 한번 해보시고 문제가 있으시면 알려주시기 바랍니다.감사합니다.루비네 코딩_________추가 안내:위 3)번에서 "Python 3.9.13 ('base') ~\anaconda3\python.exe" 대신에 "Python 3.9.13 ('myST') ~\anaconda3\envs\myST\python.exe"를 선택할 수 있다면 (*)선택해 주세요. 이 경우 터미널을 열면 다이렉트 하게 "myST" 가상환경으로 들어가게 됩니다.(*) => 만약에 이런 경로가 보이지 않는다면 "myST"라는 가상환경이 생성되어 있지 않다는 의미가 되겠습니다. 관련 영상 참고 해서 처음부터 가상환경을 설치해 주시기 바랍니다.
- 0
- 1
- 399
질문&답변
requirements.txt 질문
안녕하세요. requirements.txt 파일은 가상환경을 만들어서 다음과 같이 필요한 모든 라이브러리를 한번에 설치하기 위해서 필요합니다. pip install -r requirements.txt섹션 1~2 에서는 강의 영상에서 필요한 라이브러리를 개별적으로 설치하는 방법에 대해서 설명하고 있습니다.그래서 별도의 requirements.txt 파일이 제공 되지는 않습니다. 프로젝트를 시작하는 섹션 3 이후에는 프로젝트 별로 requirements.txt 파일이 따로 제공됩니다.그러므로 해당 폴더 Code_03, Code_04, .... 안을 봐 주시기 바랍니다. 그리고 프로젝트 별로 새로운 가상환경을 만들고 각각의 requirements.txt 로 설치해 주시기 바랍니다.그런데요 Streamlit 버전은 조금 빠르게 업데이트 되고 있습니다.강의 실습은 버전 19에 맞추어져 있습니다.Streamlit만 버전을 명시해서 설치하려면 다음을 커맨드라인에서 실행해 주세요.pip install streamlit==1.19.0 혹시 버전 이슈가 계속된다면 조금 더 자세히 설명 주시기를 부탁드려 봅니다.감사합니다~
- 0
- 1
- 415