안녕하세요. 수업 잘 듣고 있습니다. 문제 풀이 중에 질문이 있어서 문의 남깁니다. 작업형 1 모의 8번 문제도 groupby 메소드를 사용하고 ( .groupby( ).sum() ) 모의 9번 문제도 groupby 메소드를 사용( .groupby( ).count() )한 다음 특정 조건의 값을 찾는 과정을 진행하는 부분에서 같아보입니다. 다만 8번 문제에서는 .reset_index( ) 와 .iloc[ ] 를 사용해 원하는 값을 출력했고, 9번 문제는 이걸 사용하지 않고 .index[ ] 로 사용해서 풀이를 하셧는데요. 그래서 스스로 연습해보려고 8번 문제에서는 .index[ ] 를 사용해서 풀어봤더니 ('대구', 0) 라고 나오더라고요. 9번 문제는 .reset_index( ) 와 .iloc[ ] 를 사용해서 정답인 "11"을 바로 출력 가능했습니다. 문제에서 가장 적거나(오름차순), 가장 많은(내림차순) 구하는 경우도 있지만, 몇번째 값을 찾으라는 것도 있으니 그냥 .reset_index( ) 와 .iloc[ ] 를 사용하는 법 하나만 외워서 풀어도 될까요?? 여러 방법을 알고 있으면 좋긴하겠지만, 제 경우는 서로 헷갈리는 경우가 있어 머리가 더 복잡하더라고요. 그래서 두 방법중에서는 .reset_index( ) 와 .iloc[ ] 사용법을 외우는게 괜찮지 않을까 싶어서 여쭤봅니다. 혹시 index[ ] 를 사용하는 법이 쉬우면서 범용성이 좋다면 요령을 알려주시면 감사하겠습니다 아래는 제가 연습하면서 작성한 코드입니다. 문제9 에 .reset_index( ) 와 .iloc[ ] 적용해서 품 # 문제 9 import pandas as pd df = pd.read_csv("members.csv") df["subscribed"] = pd.to_datetime(df["subscribed"]) df["month"] = df["subscribed"].dt.month df = df.groupby("month").count().reset_index() print(df.sort_values("subscribed",ascending=True).iloc[0,0]) 문제8에 .index[] 사용시 출력값이 깔끔하지 않음 # 문제 8 import pandas as pd df = pd.read_csv("members.csv") # print(df.head()) # print(df.isnull().sum()) df = df.fillna(method = "bfill") # << 바로 뒤에 있는 값으로 대체 method = "bfill" 바로 앞에 있는 값 대체 시, method = "ffill" # print(df.head()) # print(df.isnull().sum()) dfgb = df.groupby(["city", "f2"]).sum(numeric_only=True).reset_index() ## dfgb.sort_values("views",ascending=False).index[2] # 출력값 ('대구', 0) dfgb = dfgb.sort_values("views",ascending=False) dfgb.sort_values("views",ascending=False).iloc[2,0] # 출력값 '대구'
validation data나 마지막 test나 model.predict_proba()통해 확률로 결과를 얻고 나서, 평가 할때는 y_val이나 제공된 y_test 는 [0또는 1]로 구성된 배열입니다 이 경우, model.predict()로 우선 0또는 1로 예측하고 평가도 이미 주어진 y_val또는 y_test로 한 뒤 결과 제출시에만 model.predict_proba()를 사용해서 아웃풋 포멧에 맞춰야 하는것은 아닌가요?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 아래 보시면 학습용 데이터와 검증용 데이터로 구분하는 것은 이해가 되는데, y부터 마지막까지의 식이 왜 나오는지 이해가 안됩니다...다시 설명 부탁드립니다. # 학습용 데이터와 검증용 데이터로 구분 from sklearn.model_selection import train_test_split y = (y_train['income'] == '>50K').astype(int) X_tr, X_val, y_tr, y_val = train_test_split(X_train, y, test_size=0.1, random_state=2000)
2. 데이터에서 'solar'와 03' 값을 고정한 상태에서, 'wind'의 세기가 증가함에 따라 'temperature'가 감소하는지를 검증하기 위해 다중 선형 회귀 분석을 수행하고, 'wind'의 회귀 계수에 대한 p-value 값을 구하시오. (유의수준: 0.05) 위의 문제를 보면 wind의 회귀계수에 대한 p-value 를 구하고 답안으로 제출되는데. 앞에 나열된 전제조건은 "데이터에서 'solar'와 03' 값을 고정한 상태에서, 'wind'의 세기가 증가함에 따라 'temperature'가 감소하는지를 검증" 은 별다른 작업이 이루어 지지 않아서 이해가 잘 되지 않아서 질문드립니다.
안녕하세요! 2유형에서 궁금한 점이 있어 추가 질문드립니다. age 컬럼 같은 경우 음수, 소숫점 등과 같이 명확한 이상치가 보일 경우 결측치를 채우기 전 이상치를 먼저 처리하는게 나을까요? 결측치를 평균 혹은 중앙 값으로 채운다고 가정 했을 때, 이상 값이 있으면 성능에 영향을 주지 않을까 싶어서 질문드립니다 만약 이상치가 많이 존재하고 이를 처리한다고 하면, 이상치 행을 아예 삭제해야하나요? 아니면 결측치와 마찬가지로 이상치를 제외한 평균, 중앙 값을 계산해서 값을 변경해주는게 좋을까요? 오늘도 감사합니다!
안녕하세요. NLP 강의 들었었는데 쉽고 정확하게 강의해주셔서 이번에 새로나온 강의도 신청하게 되었습니다! ㅎㅎ 질문 드립니다. 1) RLHF에서 1단계는 GPT-3가 특정 질문에 대해 아무말 대잔치하며 생성했을 때, 인간이 선호하는 방식은 바로 이거야 라고 알려주어 아무말 대잔치를 못하도록 모델이 학습되는 과정(=SFT) 이라고 이해가 되는데 맞나요? 2) 2단계는 1단계에서 생성한 여러 답변들에 인간이 랭킹을 매긴다는 것을 이해했습니다. 인간이 매긴 랭킹들에 대한 데이터 셋을 RM(Reward Model)이 학습한다는건, 예를들어 RM의 input은 1단계에서 GPT가 생성한 문장셋, output은 각 문장셋들에 대한 인간이 매긴 각 랭킹을 맞추도록 학습하는 과정이 맞나요? 3) 3단계는 "1단계에서 Fine-Tuned된 모델을 이제는 인간이 보상해주는 대신 2단계에서 생성한 RM이 인간역할을 하며 지도해준다" 라고 이해해도 될까요? 좋은 강의 다시 한번 감사합니다 :)
(체험) 제 3유형 (풀이용) 1번 문제에서 질문입니다. "개수를 세어서 크로스탭으로 만드는 함수가 있다"라고 말하시고 pd.crosstab 함수를 사용하시고, chi2_contingency 함수에 넣어서 카이제곱 통계량을 산출하셨습니다. 여기서 왜 크로스탭으로 만들어야하는지 이해가 안되서 질문을 드립니다. 카이제곱 통계량 계산시 chi2_contingency 함수에 입력 파라미터로 무조건 크로스탭 함수를 만들어서 넣어야 하기 때문인가요? 이해가 안가서 글남깁니다.