묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
모델 과적합 관련
선생님 안녕하세요.강의 4분30초 부근 만들어진 모델을 test데이터로 성능을 측정했을 때, 정확도가 0.92정도로 꽤 높다고 생각합니다. 하지만 강의에선 flatten으로 인해 파라미터 개수가 급격히 증가하여 과적합이 일어났다고 설명하셨는데, 만약 과적합이 일어났다면 test데이터로 성능을 측정했을 때 더 낮은 정확도가 나와야하는것 아닌가요?train데이터셋으로 모델을 훈련시킬 때 정확도가 99%가 나왔기 때문에 과적합이라고 설명해주신건 이해를 했습니다. 하지만 test데이터셋으로 모델 성능평가를 했을 때 높은 정확도가 나왔음에도 과적합이라고 생각하는건 이해가 되지 않아서 문의 드립니다.
-
미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
실무에서 이미지데이터가 충분히 많을경우에는 augmentation을 사용하지 않아도 되나요?
안녕하세요 선생님!좋은강의 감사합니다 잘듣고 있습니다!!궁금한것이 생겨 질문을 드립니다실제 회사나 연구소에서 이미지 데이터가 많거나 영상데이터로 학습을 하는경우(이미지데이터가 충분히 많다고 가정한경우) 굳이 이미지 augmentation을 하지 않아도 되나요...?
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
darknet 으로 학습?
yolov3 과 darknet 의 차이좀 명괘하게 알려주세요. 학습 시키려면 어떤걸로 사용해야 하는지?
-
미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
학습 데이터셋에서 검증 데이터셋 나눌 때
선생님 안녕하세요. 두가지 질문이 있습니다.검증데이터셋을 구성할 때, 학습데이터 내의 데이터로 검증 데이터셋을 구성하는 이유는 학습데이터셋에 대한 과적합을 확인하기 위해서 인가요?그렇다면 다른 데이터셋으로 진행할 때도 학습데이터셋 내에서 검증 데이터셋을 구성하는 것이 맞는건가요? 학습,검증데이터셋을 나눠줄 때 사이킷런의 train_test_split 을 사용하는 이유는 단순히 데이터셋을 나누기에 적합한 함수이기 때문에 사용하는 것이죠? test data, valid data를 나누는데 함수 이름이 train_test_split이라서 헷갈리네요.
-
미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
선생님, load_boston이 import가 안돼요
안녕하세요 선생님,제가 load_boston을 import했을 때, 다음과 같이 오류가 나왔었습니다.ImportError: `load_boston` has been removed from scikit-learn since version 1.2.따라서 scikit-learn을 0.24.2버젼으로 바꿨는데, 여전히 이 오류가 계속 나옵니다.도저히 방법을 모르겠습니다.도와주세요.감사합니다.
-
미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
오차 역전파(Backpropagation)의 Gradient 적용 메커니즘 - 01 교재내용
강의 교재 내에 히든 뉴런 부분 중 a^2=g(z^2)라고 되어 있는데 제가 다운받은 교재에는 a^2 = g(z)라고 되어 있어서요 교재 내용이 다른거 같은데 어떻게 된걸까요?
-
해결됨Python을 이용한 개인화 추천시스템 | 추천알고리즘 | 추천인공지능
4장 SGD를 사용한 MF 기본 알고리즘 오류
안녕하세요좋은 강의 감사합니다. 4장 SGD를 사용한 MF 기본 알고리즘 오류 에서pivot 테이블을 만드는 과정에서 오류가 생겨 질문드립니다.아래와 같은 오류가 생기는데 어떤 이유인지요? 코드가 잘못된 것 같지는 않습니다.pivot 대신 pivot_table 을 쓰니 또 되네요. pivot_table 은 값이 중복인 경우에 첫 값을 쓴다고 되어있는데 올바른 해결책이 맞나요? R_temp = ratings.pivot(index = 'user_id', columns = 'movie_id', values = 'rating').fillna(0)--------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-10-bcd5f752ec01> in <cell line: 1>() ----> 1 R_temp = ratings.pivot(index = 'user_id', 2 columns = 'movie_id', 3 values = 'rating').fillna(0) 7 frames /usr/local/lib/python3.10/dist-packages/pandas/core/reshape/reshape.py in _make_selectors(self) 187 188 if mask.sum() < len(self.index): --> 189 raise ValueError("Index contains duplicate entries, cannot reshape") 190 191 self.group_index = comp_index ValueError: Index contains duplicate entries, cannot reshape 추가로 질문드립니다. pivot_table을 사용해도 rmse가 계속 nan이 나오네요저는 코드가 잘못된 부분을 찾기가 힘든데 도움 부탁드립니다.prediction = self.b + self.b_u[i] + self.b_d[j] + self.P[i, :].dot(self.Q[j, :].T) 으로 바꾸어도 같은 오류가 납니다.class MF(): def __init__(self, ratings, hyper_params): self.R = np.array(ratings) self.num_users, self.num_items = np.shape(self.R) self.K = hyper_params['K'] # feature의 개수 self.alpha = hyper_params['alpha'] # learning rate self.beta = hyper_params['beta'] # regularization coef self.iterations = hyper_params['iterations'] # SGD 반복 횟수 self.verbose = hyper_params['verbose'] # 출력 여부 def rmse(self): xs, ys = self.R.nonzero() # R에서 0이 아닌 요소의 index self.predictions = [] self.errors = [] for x,y in zip(xs, ys): prediction = self.get_prediction(x,y) # 평점 예측치 함수 self.predictions.append(prediction) self.errors.append(self.R[x,y] - prediction) self.predictions = np.array(self.predictions) self.errors = np.array(self.errors) return np.sqrt(np.mean(self.errors**2)) def train(self): # P, Q 의 값 초기화 self.P = np.random.normal(scale = 1. / self.K, # 표준편차 설정, mean은 설정 안하면 자동으로 0 size = (self.num_users, self.K)) self.Q = np.random.normal(scale = 1. / self.K, size = (self.num_users, self.K)) self.b_u = np.zeros(self.num_users) # 사용자 평가경향 초기화 self.b_d = np.zeros(self.num_items) self.b = np.mean(self.R[self.R.nonzero()]) # 평점의 전체 평균, 0이 아닌 것에 대해서만 평균을 낸다. rows, columns = self.R.nonzero() # 평점이 있는 요소들의 idx만 가져오겠다는 뜻 --> 나중에 SGD를 적용하기 위해서 self.samples = [(i,j, self.R[i,j]) for i,j in zip(rows, columns)] training_process = [] # SGD 실행될때마다 RMSE 기록 for i in range(self.iterations): np.random.shuffle(self.samples) # 다양한 시작점 지정 self.sgd() rmse = self.rmse() training_process.append((i+1, rmse)) if self.verbose: if (i+1) % 10 == 0: print('Iteration : %d ; train RMSE = %.4f'%(i+1, rmse)) return training_process def get_prediction(self, i,j): # i 유저의 j 번째 아이템에 대한 예측치 # 전체 평점 + 유저의 경향성 + 아이템의 경향성 + i번째 유저의 j번째 아이템에 대한 예측 prediction = self.b + self.b_u[i] + self.b_d[j] + self.P[i, :].dot(self.Q[j, ].T) return prediction def sgd(self): for i,j,r in self.samples: # i,j는 인덱스, r은 평점 prediction = self.get_prediction(i,j) e = (r-prediction) # 오차 # 사용자의 평가경향 업데이트, 4장 슬라이드 10페이지 식 self.b_u[i] += self.alpha * (e - (self.beta * self.b_u[i])) self.b_d[j] += self.alpha * (e - (self.beta * self.b_d[j])) self.P[i,:] += self.alpha * ((e * self.Q[j,:]) - (self.beta * self.P[i,:])) self.Q[j,:] += self.alpha * ((e * self.P[i,:]) - (self.beta * self.Q[j,:])) # 원코드는 pivot_table 대신 pivot 사용 R_temp = ratings.pivot_table(index = 'user_id', columns = 'movie_id', values = 'rating').fillna(0) hyper_params = { 'K':30, 'alpha' : 0.001, 'beta' : 0.02, 'iterations' : 100, 'verbose' : True } mf = MF(R_temp, hyper_params) train_process = mf.train() get_prediction 함수에서 아래를 해보니까, 처음에는 조금 숫자가 나오다가 계속 nan이 나오는데 여기에서 문제가 있는것 같습니다. 근데 원인을 모르겠어요; print(self.b) print(self.b_u[i]) print(self.b_d[j]) print(self.P[i, :].dot(self.Q[j, ].T))
-
해결됨[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
이중 객체 검출 질문입니다.
단어를 어떻게 말씀드려야 할지 모르겠어서 이중 객체 검출이라는 용어를 사용했습니다.앞 선 질문에서 "몸 전체에 대한 레이블링과 얼굴 부분에 대한 레이블링, 총 2가지 레이블링" 이라고 하신 부분에 이어 질문이 있습니다.예시를 들어 자동차의 번호판 같은 것을 검출하고 싶을 때 입니다. 바로 번호판을 Annotation 작업을 해서 수행하면 상가 간판, 도로 표지판 등 네모난 물체에 글씨가 적혀있는 부분까지 오인 검출이 됩니다. 따라서 자동차를 먼저 검출하고 자동차 번호판은 자동차에만 있으니 이어서 번호판을 검출하도록 알고리즘을 작성하면 효율성이 올라갈 것 같아서 해보려고 합니다. 이렇게 이중으로 검출을 하고 싶다면 알고리즘을 어떻게 작성할지 큰 틀이 궁금해서 질문 드립니다. 직접Annotation 작업을 한다면 어떻게 해야 하는지, 그리고 올려주신 YOLO V5를 사용한다고 한다면 어떻게 이중으로 검출하라고 알고리즘을 구성할지 궁금합니다. 추가 질문으로는 객체 검출 알고리즘(YOLO 등)의 가중치가 Pre-training 된 것을 사용하는 부분입니다. 제가 이해한 학습이란 객체 검출 알고리즘을 사용하려고 하는 데이터에 대해 훈련을 시키면 가중치가 업데이트 되며 학습이 되는 것 입니다. 근데 Pre-training된 것을 사용하는 것에 어떤 의미가 있는지 궁금합니다.강의 재미있게 수강하고 있습니다. 감사합니다!
-
해결됨Python을 이용한 개인화 추천시스템 | 추천알고리즘 | 추천인공지능
2장 사용자집단별 추천 코드 질문
안녕하세요좋은 강의 감사합니다.2장 사용자집단별 추천 부분 코드 질문이 있어서 문의드립니다.def score(model): id_pairs = zip(x_test['user_id'], x_test['movie_id']) y_pred = np.array([model(user,movie) for (user, movie) in id_pairs]) y_true = np.array(x_test['rating']) return RMSE(y_true, y_pred)부분에서요id_pairs는 25000개 인데, 코드를 돌리고 y_pred나 y_true를 출력해보면 168개밖에 안나오더라고요. 이게 무슨 이유 때문인지 잘 이해가 가지 않는데 설명이 가능하실까요? 감사합니다!
-
해결됨[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
custom dataset을 만들 때 물체가 겹쳐있는 경우
안녕하세요, 선생님. 늘 좋은 수업 감사합니다. 다름이 아니라, object detection을 위한 custom dataset annotation을 만드는 도중에'겹쳐져있는 물체'에 대한 의문 사항이 생겨 글 남깁니다.가급적 bounding box끼리는 겹치지 않게 하는 것이 좋다고 강의 중 언급하셨는데요,다른 class가 아니라 같은 class의 물체가 겹쳐있을 때에도 둘 이상의 bbox는 겹쳐서는 안되나요?겹침을 피하기 위해 bbox를 그리다보니 첨부 이미지와 같이 물체 전체를 담지 못하고 일부가 잘리게 되는데요, object detection 예시들을 보면 겹쳐있는 물체(ex.이동중인 사람들)들도 각각을 잘 감지하는 것을 확인할 수 있습니다. 겹치지 않도록 annotation한 ground truth를 학습했는데 어떻게 그와 같은 결과가 가능한 걸까요?
-
미해결처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part4]
8분 33초 df_train.corr()['SalePrice'] 부분 질문입니다.
안녕하세요 항상 좋은 강의 해주셔서 감사합니다.df_train.corr()['SalePrice'] 를 실행했더니,ValueError: could not convert string to float: 'RL'이런 벨류 에러가 뜹니다.따라서 인터넷에 찾아보았더니, 'RL'과 같은 문자열을 실수(float)으로 변환할 수 없다고 하며, 이러한 문자열이 존재하는 열은 데이터 타입이 숫자형이 아닌 문자형(object)일 가능성이 높다고 하는데, 위에서 해당 feature를 봤을 떄는 실수형이던데 왜 이런 오류가 발생하는지 아실까요?
-
미해결TensorFlow Object Detection API 가이드 Part1 - 코드 10줄 수정으로 물체검출하기
강의 슬라이드 전달 요청
아래 내용 보았습니다.강의 슬라이드 전달 요청드립니다.수강평 작성 아이디 : kinghm10 전달 받을 메일 : kinghm10@naver.com 입니다. 요청 드립니다. 아래 내용 보고 강의 슬라이드는 수강평 작성후 수강평 작성 인프런 아이디와 강의 슬라이드를 전달받을 이메일 주소를 알려주시면 해당 이메일로 [TensorFlow와 실전 프로젝트로 배우는 딥러닝 컴퓨터비전 올인원] (강의 링크) 강의 30,000원 할인쿠폰(쿠폰사용 가능기간 1개월)과 함께 강의 슬라이드를 전달드립니다.공부하시다가 궁금하신 점 있으시면 편하게 질문주세요~.
-
미해결AI 포트폴리오 만들기 - Airbnb 클론 프로젝트
강의자료 부탁드립니다.
woohakim@naver.com 강의자료 부탁드립니다! 감사합니다.
-
해결됨최신 논문과 유튜브 동영상으로 만드는 2D Pose estimation 실전 프로젝트 따라하기
dcpose 커스텀 학습 수업자료 문의 & 추가 요청 문의
우선 강의 너무 잘 들었고, 유용하게 활용할 수 있을 것 같아 너무 감사합니다!!문의 드릴 내용은 마지막 강의 커스텀 학습 시 다운받은 수업자료가 오류가 있는지 압축이 제대로 풀리지 않는데 확인 부탁드립니다.추가로 DCPose 커스텀 데이터 학습 후 웹캠 등을 활용하여 실시간 자세 추정 데모 강의도 추가해주실 수 있는지 문의드립니다.
-
미해결TensorFlow 2.0으로 배우는 딥러닝 입문
ANN 구현
앞선 강의(softmax regression)에서는 train_data = train_data.repeat().shuffle(60000).batch(batch_size) 형태로 구현됐었는데이후 강의(ann, autoencoder...)에서는 train_data = train_data.shuffle(60000).batch(batch_size) 형태로 구현돼 있습니다.repeat()의 유무는 중요하지 않은건가요?
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
mm_mask_rcnn_train_balloon
안녕하세요, 강사님!항상 친절한 답변 덕에 하나씩 하나씩 잘 헤쳐나가고 있는 중입니다.지금은 mm_mask_rcnn_train_balloon 코드를 기반으로 커스텀 데이터셋을 계속해서 연습해보고 있는 중입니다.직접 폴리곤을 그려서 클래스 2개까지는 잘 성공을 했다가 클래스 3개로 늘려서 연습해보고 있는 중인데 아래와 같은 문제가 계속해서 발생하는데 해결을 못하고 있습니다.
-
미해결혼자 공부하는 머신러닝+딥러닝
다중회귀 모델의 데이터량 관련
안녕하세요! 다중회귀 관련 궁금한 점이 있어 문의드립니다.예를 들어 예측 시마다 최근 데이터 40개로 150개의 변수를 가진 다중회귀식을 학습 및 예측하는 방식의 회귀 모델은 활용이 가능할까요(규제모델을 함께 적용은 시킨다는 전제하에서요)예측 시마다 최근 데이터로 재학습을 하는 방식입니다.
-
미해결Google 공인! 텐서플로(TensorFlow) 개발자 자격증 취득
슬랙 가입 메일이 안왔습니다.
아래 엔터를 실수로 누르는 바람에 글을 완성하지 못했습니다. 양해 부탁드립니다. 슬랙 초대 메일 좀 부탁드립니다. columair@gmail.comwoorrrrrr@naver.com 입니다.
-
미해결Google 공인! 텐서플로(TensorFlow) 개발자 자격증 취득
슬랙 가입 메일이 안와
초대 이메일 부탁드립니다. columair@gmail.com
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
안녕하세요 선생님 질문입니다!
4:34를 보면서 질문드리고 있는데 이해하고 있는 부분이 맞는지 모르겠습니다 첫번째 300* 300* 3의 이미지가 첫번째 conv를 통과하여 생성된 38*38*512의 feature map에서 3*3 4(anchor box개수)*(pascal data set이라면 20 + 1+ 4: 바운딩박스 좌표)를 해서 마지막 detection 단으로 보내서 학습을 하는 것 까지 이해를 하겠는데, 3*3 과 같은 컨볼루션을 통해 바운딩박스가 학습되는 원리를 모르겠습니다. 여기서 2가지 conv연산이 들어가는데 그 중 하나는 앵커박스를 통하여 바운딩박스를 학습하고 다른 하나는 컨볼루션 연산을 통해서 feature map의 사이즈를 줄이는(정보를 압축?) 하는 쪽으로 하는게 맞는지요..글 주변이 없어서 죄송합니다.