묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결딥러닝을 활용한 자연어 처리 (NLP) 과정 (기초부터 ChatGPT/생성 모델까지)
트랜스포머 추론 단계에서 질문드립니다.
predictions, _ = self.transformer([encoder_input, output], training=False) # seq_len dimension에서 last token을 선택합니다. predictions = predictions[:, -1:, :] # (batch_size, 1, vocab_size) predicted_id = tf.argmax(predictions, axis=-1)트랜스포머 최종 결과값으로batch x seq_len x vocab_size 로 단어의 갯수만큼 확률 분포를 구하는 것을 이해했습니다.그리고 추론단계의 번역이므로 1개의 단어씩 output으로 뽑아야 한다는 것도 알겠는데요.위 코드에서 생성을 위해 seq_len dimension에서 last token을 선택하는 이유(predictions[:, -1:, :] 부분) 는 무엇인가요?
-
해결됨실리콘밸리 엔지니어가 가르치는 파이썬 기초부터 고급까지
int(), float()에 대해서
head가 string이라 가정하면int(head)-> 변환된 int를 리턴float(head)->변환된 head를 리턴case로 비교시 기존 자료형과 변화된 자료형을 비교하여 원래 자료형이 int나 float가 아니면 false 인건가요?그리고 | 연산자가 있으니 if head원래 자료형 == head를 int로 바꾼 즉 int 자료형 | head 원래 자료형== head를 float으로 바꾼 즉 float 자료형 인건가요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
5 - O : 17406 질문 있습니다
구현하고 예제 및 반례를 넣어보고 디버깅도 나름 해봤는데 도저히 틀린 점을 못 찾겠습니다. 강의와 접근 방식이 조금 다르지만 비슷한 것 같은데 어떤 점에서 틀린 건지 알려주시면 감사할 것 같습니다 ㅠㅠ#include <bits/stdc++.h> using namespace std; int N, M, K, mp[51][51], temp_mp[51][51], ret=INT_MAX; vector<vector<int>> v; vector<int> choose_v; int visitied[10]={0,}; int dy[4]={1,0,-1,0}, dx[4]={0,1,0,-1}; void rotate(int y,int x,int sz){ for (int i=1;i<=sz;i++){ int start_y=y-i; int start_x=x-i; int start_val=temp_mp[start_y][start_x]; int temp_y=start_y; int temp_x=start_x; for (int j=0;j<4;j++){ int rotate_flag=i*2; while(rotate_flag--){ // printf("%d,%d ",temp_y,temp_x); temp_mp[temp_y][temp_x]=temp_mp[temp_y+dy[j]][temp_x+dx[j]]; temp_y+=dy[j]; temp_x+=dx[j]; } //printf("\n"); } temp_mp[start_y][start_x+1]=start_val; } } void choose(int sz,vector<int> &_choose_v){ // printf("sz: %d\n",sz); // for (int&i:_choose_v){ // printf("%d ",i); // } // printf("\n"); // printf("%d %d\n",visitied[0],visitied[1]); if (sz==K){ for (int i=1;i<=N;i++){ for (int j=1;j<=M;j++){ temp_mp[i][j]=mp[i][j]; } } for (int i=0;i<10;i++){ visitied[i]=0; } for (int&i:_choose_v){ rotate(v[i][0],v[i][1],v[i][2]); for (int j=1;j<=N;j++){ int sum=0; for (int k=1;k<=M;k++){ sum+=temp_mp[j][k]; } if (sum<ret){ ret=sum; } } } //printf("\n"); return; } for (int i=0;i<K;i++){ if (find(_choose_v.begin(),_choose_v.end(),i)==_choose_v.end()){ _choose_v.push_back(i); visitied[i]=1; choose(sz+1,_choose_v); visitied[i]=0; _choose_v.pop_back(); } } } int main() { cin >> N >> M >> K; for (int i=1;i<N+1;i++){ for (int j=1;j<M+1;j++){ cin >> mp[i][j]; } } for (int i=0;i<K;i++){ vector<int> temp_v; for (int j=0;j<3;j++){ int temp; cin >> temp; temp_v.push_back(temp); } v.push_back(temp_v); } choose(0,choose_v); // for (int i=1;i<N+1;i++){ // for (int j=1;j<M+1;j++){ // printf("%d ",temp_mp[i][j]); // } // printf("\n"); // } cout << ret; }choose()함수를 통해 순열을 만들고 choose()의 인자인 sz가 K가 되면, 순열의 순서에 맞게 rotate한 후 최솟값을 찾을 수 있도록 작성했습니다.
-
미해결파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI, async, await)
session 을 닫아야 하는 이유
session 은 왜 닫아야 하나요? 파이썬 코루틴 활용 강의에서 with requests.Session() as session: session.get(url) 을 통해 session 을 열고 닫아야 한다고 하셨는데, 왜 session 을 닫아야 하는지 궁금합니다.
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
auth 미들웨어 관련 질문
const jwt = require("jsonwebtoken"); const User = require("../models/User"); let auth = async (req, res, next) => { // 토큰을 request headers에서 가져오기 const authHeader = req.headers["authorization"]; // Bearer ooerkogkeorkgoek.erogkoerkog.eorgkoerkgoerkgokg const token = authHeader && authHeader.split(" ")[1]; if (token === null) return res.sendStatus(401); try { // 토큰이 유효한 토큰인지 확인 const decode = jwt.verify(token, process.env.JWT_SECRET); const user = await User.findOne({ "_id": decode.userId }); if (!user) { return res.status(400).send("없는 유저입니다."); } req.user = user; next(); } catch (error) { next(error); } }; module.exports = auth;기존에 "_id"로 되어있을 때, C:\Users\zink8060\Desktop\fullstack-app\back\node_modules\express\lib\router\route.js:211 throw new Error(msg); ^Error: Route.get() requires a callback function but got a [object Object] at Route.<computed> [as get] (C:\Users\zink8060\Desktop\fullstack-app\back\node_modules\express\lib\router\route.js:211:15) at proto.<computed> [as get] (C:\Users\zink8060\Desktop\fullstack-app\back\node_modules\express\lib\router\index.js:521:19) at Object.<anonymous> (C:\Users\zink8060\Desktop\fullstack-app\back\src\routes\users.js:7:8) at Module._compile (node:internal/modules/cjs/loader:1246:14) at Module._extensions..js (node:internal/modules/cjs/loader:1300:10) at Module.load (node:internal/modules/cjs/loader:1103:32) at Module._load (node:internal/modules/cjs/loader:942:12) at Module.require (node:internal/modules/cjs/loader:1127:19) at require (node:internal/modules/helpers:112:18) at Object.<anonymous> (C:\Users\zink8060\Desktop\fullstack-app\back\src\index.js:33:19)해당 오류가 있었는데,해당 부분을 _id로 바꿨더니 정상적으로 서버가 동작합니다.const jwt = require("jsonwebtoken"); const User = require("../models/User"); let auth = async (req, res, next) => { // 토큰을 request headers에서 가져오기 const authHeader = req.headers["authorization"]; // Bearer ooerkogkeorkgoek.erogkoerkog.eorgkoerkgoerkgokg const token = authHeader && authHeader.split(" ")[1]; if (token === null) return res.sendStatus(401); try { // 토큰이 유효한 토큰인지 확인 const decode = jwt.verify(token, process.env.JWT_SECRET); const user = await User.findOne({ _id: decode.userId }); if (!user) { return res.status(400).send("없는 유저입니다."); } req.user = user; next(); } catch (error) { next(error); } }; module.exports = auth;하지만 강사님의 코드에는 "_id"로 되어있는데, 버전문제일까요? 아니면 다른 문제가 있을까요?
-
미해결딥러닝을 활용한 자연어 처리 (NLP) 과정 (기초부터 ChatGPT/생성 모델까지)
Decoder 전체(10) 부분에서 attn_weight output shape 관련 질문 드립니다.
sample_decoder = Decoder(num_layers=2, d_model=512, num_heads=8, dff=2048, target_vocab_size=8000, maximum_position_encoding=5000) x = tf.random.uniform((64, 26), dtype=tf.int64, minval=0, maxval=200) output, attn = sample_decoder(x, enc_output=sample_encoder_output, training=False, look_ahead_mask=None, padding_mask=None) output.shape, attn['decoder_layer2_block2'].shape위 코드 결과 output은 (TensorShape([64, 26, 512]), TensorShape([64, 8, 26, 62]))인데요.atten output size 64 x 8 x 26 x 62는batch x head num x seq_len x depth(=len_k) 의 사이즈일것 같은데요.depth의 경우, d_model(512) / num_head(8) = 64 가 되야하는게 아닌지요? 62인 이유가 궁금합니다.
-
해결됨[웹 개발 풀스택 코스] HTML&CSS 기초
form 질문
div안에 form이 있는경우도 있고form안에 div가 있는 경우도 있는데 둘다 동작은 똑같이 되는건가요?
-
미해결배달앱 클론코딩 [with React Native]
yarn android 시 메트로 서버가 자동으로 시작되지 않습니다.
$ yarn android yarn run v1.22.19 $ react-native run-android info Starting JS server... info Launching emulator... info Successfully launched emulator. info Installing the app... > Configure project :react-native-flipper WARNING:Software Components will not be created automatically for Maven publishing from Android Gradle Plugin 8.0. To opt-in to the future behavior, set the Gradle property android.disableAutomaticComponentCreation=true in the `gradle.properties` file or use the new publishing DSL. > Task :app:installDebug Installing APK 'app-debug.apk' on 'Nexus_5_API_30(AVD) - 11' for :app:debug Installed on 1 device. Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0. You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins. See https://docs.gradle.org/8.0.1/userguide/command_line_interface.html#sec:command_line_warnings BUILD SUCCESSFUL in 7s 72 actionable tasks: 2 executed, 70 up-to-date info Connecting to the development server... 8081 info Starting the app on "emulator-5554"... Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.fooddelivery/.MainActivity } Done in 16.52s. 그냥 yarn android만 입력시에는 터미널이 따로 하나 띄워지는데 메트로 서버 없이 빈 터미널이 띄워집니다.RR로 리셋후yarn start로 매트로서버를 수동으로 실행시킨뒤에는 에뮬레이터 키고 연결이 잘 되는데 yarn android만 입력했을때는 메트로 서버가 자동으로 실행이 안되는데 해결 방법이 있을까요?윈도우 11java 11.0.20node 18.16.1사용중에 있습니다.
-
해결됨자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)
isAdult() 함수를 custom getter를 활용한 프로퍼티 변환
안녕하세요. 강의 정말 잘 듣고 있습니다!isAdult() 함수를 custom getter를 활용한 프로퍼티 변환에 대한 부분인데요..fun isAdult(): Boolean { return age >= 20 } fun isAdult2() = age >= 20 val isAdult5 get() = this.age >= 20 var isAdult6 get() = this.age >= 20 set(value) {} var isAdult7 = false get() = this.age >= 20isAdult() 함수를 변환하는 여러가지 방법들을 시도해 보았는데요. 다 동일한 결과를 얻더라구요.isAdult2() 는 return 하는게 단일값 이면 block 을 없애고 반환 타입도 생략한 방법이고isAdult5는 수업시간에 보여주신 custom getter를 활용한 방법입니다. Q1. isAdult를 val 이 아닌 var로 바꿔봤고 아래 코드처럼 써보니 빨간줄이 뜨더라구요.var isAdult8 get() = this.age >= 20val은 getter만 있어야 되지만, var은 setter도 있어야 하는건가 싶어서 isAdult6처럼 custom setter도 명시를 하니까 빨간줄이 사라지더라구요.그래서.. 'var로 프로퍼티를 선언했고, custom getter를 명시했다면, custom setter를 반드시 명시해줘야 하는건가?' 라고 이해하려 했는데, isAdult7의 경우 따로 custom setter를 명시해주지 않아도 빨간줄이 뜨지 않더라구요.어떤 방식으로 이해해야 할지 감이 안오네요.요약: isAdult8는 왜 안되고 isAdult6과 isAdult7은 왜 되는건가요?Q2.val person2 = Person("KIM", 10) println(person2.isAdult5) // false person2.age = 20 println(person2.isAdult5) // true 제가 지금까지 이해하기로는 val은 자바에서 final 같은거라 한번 값이 초기화되면 값을 변경 못해야 될것 같은데,, isAdult5 처럼 val로 선언했을때 isAdult5가 false를 한번 가리키게 되면 계속 false만 가리키고 있어야할것 같은데, Person의 age 값을 10에서 20으로 변경하면 val로 선언한 isAdult5이 true로 변경이 되네요. 물론 성인 여부를 확인해야 되는 기능상 age가 바뀌면 그에 따라 결과도 바뀌는것이 당연히 자연스러운것이긴 한데, 문법적으로 val 프로퍼티의 값이 어떻게 변경될 수 있는지 의아합니다.요약: val 프로퍼티 인데도 왜 값이 변경될 수 있나요? final 개념으로 이해하면 안되는 건가요감사합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
배포관련
프로젝트를 파이어베이스로 배포하려 yarn build 했는데 이런 오류가 뜨는데 도저히 어떤 오류인지 몰라서 글 남깁니다.. edit 페이지에서는 오류가 없는데 어떤 오류일까요.....
-
미해결딥러닝을 활용한 자연어 처리 (NLP) 과정 (기초부터 ChatGPT/생성 모델까지)
트랜스포머 feed forward network 보다가 질문드립니다.
제가 아직 word embedding 이 NN으로 들어갈 때 어떻게 학습하는지 개념이 헷갈리는것 같습니다. 먼저 기초적인 질문이라 죄송합니다 ^^;;교재에서 Position-wise Feed Forward NN는 단어별로 별도로 적용된다고 설명해주셨는데요!예를 들어, 강의 교재의 10(=seq_len=단어의 갯수) x 512(=d model) 이 dff가 2048인 Position-wise Feed Forward NN에 input으로 들어오면,첫번째 단어(1x512 vector)가 feed forward nn에 들어와서 학습 후 동일한 nn에 두번째 단어(1x512 vector)가 들어와서 학습...열번째 단어도 동일한 과정으로 feed forward nn이 학습되는 개념이라고 이해하면 될까요?항상 상세한 답변에 감사드립니다.
-
해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
다른 재귀문제를 몇몇 개 풀어봤지만 하노이탑은 그냥 형태를 기억해서 푸네요..
하노이탑 문제가 어떻게 재귀의 기본문제일까요.. 다른 재귀문제 많이 풀어봤지만, 하노이탑은 정답 안 본 상태에서 며칠이고 고민해도 못풀었었고 지금도 사실 잘 모르겠네요.그냥 아래 항목들을 외워서 재귀 함수 호출하면 된다고 암기했습니다.n-1만큼 A에서 B로 옮기기가장 큰 원반 A에서 C로 옮기기나머지를 B에서 C로 옮기기 영상으로 보면 코드 한 줄 한 줄 실행되는 과정 보여주시면 "되니까 신기하네"라고 생각은 하지만, 1번 과정 중에 3번도 간헐적으로 일어나고, 3번하다가 1번도 계속 일어나면서 얼기설기 엉켜있어서 이해하기 힘드네요. 다들 대략적인 형태를 기억해서 푸는것일뿐 정확히 탑이 이동하는 절차 순서에 대해서 파악하고 쓰는건 아니겠죠?!
-
해결됨실리콘밸리 엔지니어가 가르치는 파이썬 기초부터 고급까지
강의 내용에 있는걸 주석풀고 print 해보았더니..
datetime.datetime()을 해서 print했더니 왜 작동이 안될까요?
-
미해결실습으로 배우는 선착순 이벤트 시스템
안녕하세요 강사님 Redis Template에 관한 질문입니다.
사놓고 안 듣다가 이제 제대로 Redis를 학습해보려고 합니다.Redis Template를 사용하는 방식과그냥 Repository를 사용하는 방식이 있다고 들었습니다.Redis Template 말고 interface RedisRepository extends CrudRepository<>쿠폰 발급을 이렇게 정의해서 사용할 수 있나요?
-
해결됨배달앱 클론코딩 [with React Native]
강의 외 추가학습 (카카오 소셜로그인)
우선 강의를 완강하고 추가학습으로 카카오 소셜로그인을 구현해보고 있습니다. (강의 너무 잘들었습니다!)https://github.com/crossplatformkorea/react-native-kakao-login위 라이브러리 사용해서 카카오 개발자 페이지의 설정도 모두 마치고 플랫폼 등록도 하여시뮬레이터로 시도하면 아래와 같은 오류가 발생합니다. Optional({ error = misconfigured; "error_code" = KOE009; "error_description" = "invalid android_key_hash or ios_bundle_id or web_site_url"; })찾아보니 전부 Xcode의 번들 ID와 카카오에 등록한 IOS 플랫폼 번들 ID가 달라서 그렇다고 하는데실기기에 연결하면 정상적으로 카카오에 로그인시도 성공되어 응답값도 받고 있습니다.구글링을 해도 도저히 해결이 안되서 이렇게 질문을 남기게 되었는데 혹시 제가 놓친 부분이 있을까요?번들 ID 문제인가 싶어서 다른걸로도 바꿔서 시도해봤는데 역시 시뮬레이터에서만 안됩니다ㅠ
-
해결됨하루만에 배우는 AWS OpenSearch
수업자료에 대한 설명이 부족해 보입니다.
질문은 아니고요. 수업자료 버튼을 눌러서 받는 파일은 실제 수업 영상에서 언급하신 서울시에서 제공하는 인구관련 csv 파일이 아니라 다른거네요. 물론 아래 스크롤 해서 링크로 들어가면 되지만 이 부분에 대한 설명이 필요해 보입니다. 혹은 수업자료 버튼 눌러서 받아지는 파일이 잘못 업로드 된건지도 모르겠네요
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
AppBar 질문
아래 스크린샷처럼 appbar 중앙 정렬이 안되는데몇번을 돌려봐도 강사님과 같은 코드입니다.어떤 옵션이 추가 되어야 할까요?? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.코드팩토리 디스코드https://bit.ly/3HzRzUMFlutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다!
-
미해결스프링 핵심 원리 - 기본편
bean 등록 범위
@Beanpublic MemberService memberService(){return new MemberServiceImpl();} 위 코드에서 스프링 컨테이너는 memberService라는 빈 이름과 return 되는 구현 객체 MemberServiceImpl에 대해 매핑 테이블을 두는 것으로 이해했는데요,그럼 bean으로 등록되는 class는 MemberServiceImpl 뿐인건가요?MemberService는 Type이기 때문에 또 자동 등록되는건가요?
-
미해결이미지 관리 풀스택(feat. Node.js, React, MongoDB, AWS)
이미지 업로드시
리액트에서는 이미지 업로드하려고 할때 이미지를 미리보기로 가능한걸로 알고있는데 템플릿엔진 hbs에서도 이미지 파일 선택해서 이미지를 미리 볼수있도록 할수있나요?
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
FName 할당 연산자에 대한 질문입니다.
FName의 경우 전역 풀에 key값으로 저장된다고 하셨습니다.그렇다면,예를 들어 함수로 FName타입의 InFName을 받아와서 새로운 FName에 할당을 한다고 한다면,FName temp = InFName; 을 수행하면 알아서 키 값만 복사 저장이 되나요?아니면 const FName& temp = InFName; 이런 식으로 저장하여 복사 연산이 일어나지 않도록 하는 것이 좋나요? 함수의 파라미터로 FName 값을 받을 때나,(ex)void Func(FName InFName);orvoid Func(const FName& InFName); 클래스 속성에 FName을 할당하고 싶을때(ex)class ~~{// FName은 전역 풀에서 관리가 되니 따로 복사해서 들고 있을 필요가 없을 것 같다?FName* temp;} orclass ~~{FName temp;} 어떻게 해야하는지 궁금한데 엔진 코드에서 할당 연산자 오버로딩을 못 찾겠어서 질문드립니다.