트랜스포머 인코더
8:01
6 ай бұрын
딥러닝 트랜스포머 소개
5:24
워드 임베딩
7:39
8 ай бұрын
RNN 딥러닝, classification
4:38
딥러닝,  RNN. introduction
6:01
10 ай бұрын
detectron2, mediapipe, mmlabs.
5:23
Mask r cnn 간단히 알아보기
4:57
물체인식 기준, mAP
6:57
10 ай бұрын
OOP 상속 vs 조합 Composition
7:21
faster r cnn 대충알기
6:14
11 ай бұрын
Object detection 인트로
5:05
11 ай бұрын
딥러닝, CNN, module, 디자인
6:08
CNN 배치 정규화
5:55
Жыл бұрын
딥러닝, 풀링 레이어
6:30
Жыл бұрын
딥러닝, CNN options
5:35
Жыл бұрын
딥러닝, CNN Depth Channel
6:17
딥러닝 이미지 전처리
7:17
Пікірлер
@Salad_Pals
@Salad_Pals Күн бұрын
오지네요
@Salad_Pals
@Salad_Pals Күн бұрын
천재 십니까?
@Salad_Pals
@Salad_Pals Күн бұрын
설명 지리네요
@Lee렐루
@Lee렐루 2 күн бұрын
와 진짜 설명 너무 잘해주셔서 감사합니다!!!! 재미있게 봤어요
@조채린_코어팀CF
@조채린_코어팀CF 11 күн бұрын
시각적으로 개념적인 부분과 코드를 한 화면에 같이 보여주셔서 너무 좋으네요..
@sunhookim9008
@sunhookim9008 14 күн бұрын
딥러닝을 급하게 공부해야하는 상황인데 진심으로 감사드립니다!!
@yeonghwankang8416
@yeonghwankang8416 16 күн бұрын
오호 넘 좋네용
@BeomjuShin
@BeomjuShin 17 күн бұрын
정말 훌륭한 강의입니다. 조회수가 작은게 이해가 안되네요.
@BeomjuShin
@BeomjuShin 18 күн бұрын
설명이 매우 훌륭하십지다. 잘봤습니다.
@joshuaisland501
@joshuaisland501 21 күн бұрын
잘들었습니다. 감사합니다.
@보리타작-x9s
@보리타작-x9s 21 күн бұрын
목소리가 좋아서 자꾸 오게됩니다..
@SHLee-vp5ey
@SHLee-vp5ey 24 күн бұрын
예제에서 move constructor가 존재하는 경우 emplace(cats.end(), "nabi") 를 쓰면, "생성자 이동이 있으므로 함수가 암시적으로 삭제되었는데 삭제된 함수를 참조하려고 한다"라는 오류가 발생합니다. 이것이 cats.size()가 cats.capacity()를 초과한 결과, 반복자 및 참조가 전부 무효화되었기 때문인 것은 이해했습니다. 그런데 copy constructor만을 사용하거나 emplace_back을 쓰면 이러한 오류가 발생하지 않던데, 왜 그런건지 궁금합니다.
@코드없는프로그래밍
@코드없는프로그래밍 24 күн бұрын
이해하신 부분이 맞습니다. emplace_back()은 항상 컨테이너의 끝에 새 요소를 추가합니다. 재할당이 필요해도 끝 위치는 명확하므로 무효화된 반복자 문제가 발생하지 않습니다.
@코드없는프로그래밍
@코드없는프로그래밍 24 күн бұрын
벡터가 재할당될 때, 복사 생성자만 있는 경우 다음과 같은 과정을 거칩니다: a) 새로운 메모리 공간을 할당합니다. b) 기존 요소들을 새 메모리 공간으로 복사합니다. c) 새로운 요소를 추가합니다. d) 기존 메모리를 해제합니다. 과정에서 복사 생성자는 각 요소의 새로운 복사본을 만들기 때문에, 기존 객체나 포인터에 의존하지 않습니다. 따라서 기존 반복자나 참조가 무효화되어도 새로운 객체들은 영향을 받지 않습니다. 다만 복사가 일어나기때문에 성능은 떨어집니다
@JaeyongPark-n9v
@JaeyongPark-n9v Ай бұрын
영상 보던 중 문득, - Mediator Pattern - Commander Pattern 두 패턴과 닮았다고 생각했어요. 좋은 영상 제작하시느라 고생하셨습니다.
@jeonghyeonkim6273
@jeonghyeonkim6273 Ай бұрын
와 너무 감사합니다!
@SiriciusZIA
@SiriciusZIA Ай бұрын
영상 너무 좋은데 조회수가 이것밖에 안나오다니 ㅠㅠ 너무감사해요
@드름고-j2f
@드름고-j2f Ай бұрын
좋은 정보 감사합니다. 이해가 잘 되게 설명해주셔서 도움이 많이 되었습니다.
@오늘의추천-s8n
@오늘의추천-s8n Ай бұрын
설명을 진짜 잘하세요! 감사합니다.
@minsookang7950
@minsookang7950 Ай бұрын
감사합니다 운영자님!
@황정연-x9u
@황정연-x9u Ай бұрын
코테를 풀다가 시간 복잡도에서 계속 걸려서 찾다보니 여기까지 왔네요.. 정말 다행입니다.! 다만 제가 쓰는 자바스크립트는 테스트 환경에서 heapq를 임포트가 불가능한지라..ㅠㅠ
@miumpre2839
@miumpre2839 Ай бұрын
const char*로 받아도 3가지 타입에 대해서 추가 공간할당없이 레퍼런스로 받을수있는데 string_view의 기능을 사용안한다면 const char*이 더 좋은가요?
@사물탕
@사물탕 Ай бұрын
patience 가 100이고, i를 10의 배수일 때마다 val_loss를 계산하는 거면, 결국 1000번(10 x 100 )의 트레이닝동안 val loss가 감소하지 않을 때 조기종료가 일어나는 게 맞나요?
@정현찬-g3n
@정현찬-g3n 2 ай бұрын
책을 보고 cuda 공부하려고 하는데(예제로 배우는 cuda 프로그래밍, cuda 기반 gpu 병렬 처리 프로그래밍), 외장그래픽카드 없는 (ryzen5) 일반 노트북에서 실습 가능한가요? 그래픽카드가 있는 컴퓨터에서만 실습 가능한가요?
@코드없는프로그래밍
@코드없는프로그래밍 2 ай бұрын
Cuda를 지원하는 엔비디아 gpu가 필수입니다
@정현찬-g3n
@정현찬-g3n 2 ай бұрын
@@코드없는프로그래밍 혹시 코랩으로 실습 가능할까요?
@코드없는프로그래밍
@코드없는프로그래밍 2 ай бұрын
Colab은 어렵고 aws nvidia gpu instance면 가능합니디. 한시간에 약 900원정도입니다
@정현찬-g3n
@정현찬-g3n 2 ай бұрын
@@코드없는프로그래밍 답변 감사합니다
@jhjh6612
@jhjh6612 2 ай бұрын
이 분야 공부하는 대학생인데, 너무 이해가 잘됩니다!! 좋은 강의 감사합니다!!!
@사물탕
@사물탕 2 ай бұрын
디코더 영상 올라오는 날은 제 생일이에요
@하하-w7j1k
@하하-w7j1k 2 ай бұрын
좋은 강의 감사합니다. 객체의 멤버 변수를 초기화 할 때, 1. 생성자 함수를 이용해서 초기화 한다면 객체 생성 후 멤버 변수의 값이 기본값으로 저장 -> 생성자 함수를 통해서 임시 메모리에 초기화 값 저장 -> 멤버 변수에 할당된 메모리의 값이 임시 메모리에 있는 값으로 대입 2. 멤버 이니셜라이저 리스트를 이용해서 초기화 한다면 객체 생성 후 멤버 변수값을 원하는 값으로 초기화하여 효율적이라고 하셨는데 멤버 이니셜라이저 리스트를 이용해서 초기화 하는 원리는 내부 구조가 어떻게 되어있길래 기본값으로 저장하지 않고 바로 초기화가 가능한가요?
@코드없는프로그래밍
@코드없는프로그래밍 2 ай бұрын
안녕하세요. 멤버 이니셜라이저 리스트가 더 효율적인 이유는 객체의 생성과 초기화를 한 번에 수행하기 때문입니다. 이는 C++ 컴파일러의 최적화와 관련이 있습니다. 멤버 이니셜라이저 리스트는 객체의 생성과 초기화를 한 번에 수행합니다.이는 C++ 컴파일러의 최적화와 관련이 있습니다. 멤버 이니셜라이저 리스트를 사용할 때의 내부 동작은 다음과 같습니다: a) 메모리 할당: 객체에 필요한 메모리가 할당됩니다. b) 직접 초기화: 멤버 변수들이 이니셜라이저 리스트에 지정된 값으로 직접 초기화됩니다. 이 과정에서 임시 객체나 추가적인 대입 연산이 필요하지 않습니다. c) 생성자 본문 실행: 이후 생성자의 본문이 실행됩니다(있는 경우).
@objects7672
@objects7672 2 ай бұрын
설명 정말 잘하시네요... 감사합니다...
@사물탕
@사물탕 2 ай бұрын
저는 정말 전재산을 털어서 선생님의 인강을 즐을수만 있다면 Diffusion model, vit 등 배우고싶어요 진심으로요
@사물탕
@사물탕 2 ай бұрын
Batch 내에서는 w1,w2 가 같은 건가요? 2:49
@사물탕
@사물탕 2 ай бұрын
배치 내에서 weight는 다 share 하는거죵?
@사물탕
@사물탕 2 ай бұрын
정발 최고의 설병
@사물탕
@사물탕 2 ай бұрын
진짜 너무대박이에요
@jeju3267
@jeju3267 2 ай бұрын
정말 감사합니다
@사물탕
@사물탕 2 ай бұрын
정말 감사해요
@사물탕
@사물탕 2 ай бұрын
Vision transformer 영상 부탁드랴도 될까요~!?
@코드없는프로그래밍
@코드없는프로그래밍 2 ай бұрын
이번년도안에 올리겠습니다
@사물탕
@사물탕 2 ай бұрын
@@코드없는프로그래밍 감사해요 정말 너무너무너무 좋아요
@LioJeon
@LioJeon 2 ай бұрын
강의 하나 하나가 매우 유익합니다.
@하하-w7j1k
@하하-w7j1k 2 ай бұрын
안녕하세요, 선생님 강의를 보다가 질문이 있어 댓글 남깁니다. void storeByRRef(const std::string& s) { std::string b = std::move(s); std::cout << "s:" << s << std::endl; } int main() { std::string a = "abc"; storeByRRef(a); } 위의 코드에서 storeByRRef함수의 매개변수로 넘겨준 a는 스택의 s가 a의 주소를 참조하는데 s는 const이므로 값을 바꿀 수 없어 변수 b에 std::move함수를 이용해서 s를 R-value로 변경하여 값을 저장하려고 하지만 s는 const이므로 R-vlaue로 변경이 되지 않아 새롭게 힙에 "abc"를 깊은 복사를 하여 이 메모리의 주소를 b에 부여하는 것 아닌가요? 그렇다면 단순히 깊은 복사가 일어나는 것과 무슨 차이가 있는지 궁금합니다 즉, 위의 코드와 아래 코드의 차이점을 명확히 알지 못하겠습니다 void storeByRRef(std::string& s) { std::string b = s; std::cout << "s:" << s << std::endl; } int main() { std::string a = "abc"; storeByRRef(a); }
@코드없는프로그래밍
@코드없는프로그래밍 2 ай бұрын
안녕하세요. 말씀하신데로 첫 번째 코드에서 s는 const이므로 std::move(s)를 사용해도 실제로 이동(move)이 발생하지 않습니다. 대신, 일반 복사가 수행됩니다. 두 코드 모두 실질적으로 깊은 복사를 수행하지만, 첫 번째 코드는 불필요하게 std::move를 사용하여 코드를 복잡하게 만들고 의도를 불명확하게 합니다. 두 번째 코드가 더 간단하고 의도가 명확합니다.
@이선훈-r1n
@이선훈-r1n 2 ай бұрын
안녕하세요 좋은 강의 감사합니다. 혹시 디자인 패턴 관련한 교과서를 추천해주실 수 있나요?