욜로나 레티나넷 등을 이용하여 사진이나 영상 분석을 하고 싶습니다. 최종적인 목표는 사진 혹은 영상의 특정 부분을 구분하는 것입니다. (ex. 여러 개의 사진 혹은 영상 중 사람이 있는 것과 없는 것을 판단하여 사람이 있는 영상(사진)과 사람이 없는 영상(사진) 구분하기) 제가 머신러닝을 한번도 공부한 적이 없어서 어떤 방식으로 공부를 해야 좋을지 갈피가 잡히지 않습니다. 컴퓨터공학 전공이고 웹 프로그램을 업으로 삼고 있기는 하지만 통계학은 한번도 접해본 적이 없고, 수학은 20여년 전 고교 졸업 후 해본적 없습니다. 파이썬 역시 아주 가벼운 프로그램을 작성해 본 경험만 있습니다. [파이썬 머신러닝 완벽 가이드] -> [딥러닝 컴퓨터 비전 완벽 가이드] 순서로 강의를 볼 계획이고 현재 [파이썬 머신러닝 완벽 가이드]의 5장의 회귀를 공부하고 있습니다. 처음에 영상만 보다가 이해하기가 힘이 들어 교재를 구매해 함께 보면서 스터디 중입니다. [파이썬 머신러닝 완벽 가이드]를 완강한 후 [딥러닝 컴퓨터 비전 완벽 가이드]를 시작해야 하나요? 또한, 강의와 질문-답변들을 보면서 100% 이해한다기 보다는 어렴풋하게 개념을 잡고 간다는 생각으로 공부를 하고 있는데 이게 맞는지도 궁금합니다. 소소 코드는 최대한 이해하려고 노력하고 있습니다. 마지막으로 추천해 주시고 싶은 다른 강의나 책, 사이트가 있으시면 같이 보겠습니다. 감사합니다. 참고로, 두 달 전 머신러닝 스터디를 시작할 때 1. [파이썬 머신러닝 완벽 가이드] 의 3장 평가까지 완강 2. [딥러닝 컴퓨터 비전 완벽 가이드] 의 욜로 부분을 보면서 강의에 나온 소스로 테스트 성공 3. 리눅스 서버에 욜로5 설치 후 테스트 실패 - (https://datacook.tistory.com/60 사이트를 참조하여 학습을 시키고 학습이 잘 되었는지 테스트를 하는데 원하는 결과를 얻지 못했습니다.) 의욕만 많아서 급하게 테스트를 하니 디버깅 하기도 어렵고 어디서 어떻게 손을 봐야할지 잘 모르겠어서 다시 천천히 [파이썬 머신러닝 완벽 가이드] 를 공부하고 있는 중입니다.
스프링 JPA를 배우라는 주변의 조언을 듣고 타 사이트에서 자바 이론 강의를 들었습니다. 그리고 해당 강의를 듣고 있는데 '스프링 핵심 원리 이해2. 객체 지향 원리 적용' 부터 본격적으로(?) 잘 이해가 되지 않는 상황입니다. 자바 강의를 다시 듣는게 맞을까요? 아니면 이해가 잘 안되도 이 강의를 끝까지 한 번 쭉 보는게 맞을까요? ㅜㅜ
안녕하세요! 이전에 강의를 들었던 학생인데 갑자기 궁금한 점이 생겨서 질문드립니다!(구글링에 어떤 키워드로 검색해야 할지 몰라서 여기다가 남겨요~!) 현재 시계열 예측 회귀문제를 다루고 있는데요! 시계열 교차검증을 수행하면서 모델의 예측 성능 테스트를 하다가 문득 궁금한 점이 들었습니다. 질문을 쉽게 설명드리기 위해서 간단한 예시하나만 들겠습니다! 예를 들어, 2021-01-01 ~ 2021-05-31일까지의 학습 데이터가 존재합니다. 이 때 예측하려는 것은 2021-06-01일의 값입니다. 이를 해결하기 위해 시계열 예측 모델을 만들고 다음과 같이 시계열 교차검증을 수행했습니다. Scikit-learn 의 TimeSeriesSplit 에서 n_splits=10, test_size=1 로 설정하고 10개로 분할하고 검증 데이터 사이즈는 1일 치로 설정했습니다. (참고로 for 문을 돌면서 모델을 초기화했습니다! ex. lr_reg = LinearRegression() 이런 식으로 계속..) 예를 들어... 1번째 CV) 2021-01-01 ~ 2021-05-21 기간의 데이터 학습 -> 2021-05-22 데이터 예측함으로써 검증 2번째 CV) (1번째 이후 모델 초기화 후) 2021-01-01 ~ 2021-05-22 기간의 데이터 학습 -> 2021-05-23 데이터 예측함으로써 검증 ... 반복 10번째 CV) (9번째 이후 모델 초기화 후) 2021-01-01 ~ 2021-05-30 기간의 데이터 학습 -> 2021-05-31 데이터 예측함으로써 검증 위와 같은 교차검증 방법으로 모델링을 한 후 최종적으로 예측하려는 2021-06-01 의 데이터를 예측했을 때의 예측 값(A)를 얻었습니다. 그리고 위와 같이 시계열 교차검증 방법을 하지 않고 단순히 2021-01-01 ~ 2021-05-31 데이터를 한번에 학습시키고 2021-06-01 의 데이터를 예측했을 때의 값(B)를 얻었습니다. 이 때, A와 B 값은 동일한가요? 즉, 학습 데이터 기간은 둘 다 동일하되 A값을 얻을 때 처럼 시계열 교차검증을 하면서 모델링 되는 모델의 파라미터값과 B값을 얻을 때 처럼 한 번에 모든 기간의 데이터를 학습시켜 모델링 되는 모델의 파라미터값 간의 차이가 존재하나요? 사견으로는 TimeSeriesSplit for loop를 돌면서 모델을 초기화시켰기 때문에 파라미터도 초기화되었을 것 같아 A, B 두 예측 결과 값이 동일할 것으로 예상되는데.. 선생님의 의견이 궁금해서 질문 남깁니다! 긴 질문 읽어주셔서 감사합니다 :) 선생님의 다른 강의들도 많이 보고 앞으로도 많이 보려고 합니다! 더 많은 강의 다루어주시면 감사하겠습니다~!
1강부터 쭉 들어왔지만 질문할만큼 막힌적이 없었는데... 이번에는 너무막혀.. 도움을 청해봅니다 ㅠㅠ 우선 강의 부분에서 가장 최대의 높이를 구하는 것을 해결할 수 있었습니다. 더 나아가 원 문제를 찾아보게 되었습니다. 원 문제를 질문하게 되어 먼저 죄송하다는 말씀 드리겠습니다... 원문제인 https://www.acmicpc.net/problem/2655 의 문제를 풀어보는데 너무 막히고 있습니다. 직접 구현한 코드는 다음과 같습니다. cache배열의 원소를 pair로묶어, first에는 높이를, second에는 직전 block의 번호를 저장 시켰습니다. 이를 활용하여 출력하는 코드를구현하였는데, 분명 주어진 예시는 통과가 되는데 어디서 반례가 있는건지.... 해결되지 않고있습니다 ㅠ.ㅠ 꼭좀 도와주시면 감사하겠습니다 ㅠ.ㅠ 1) 첫 vt.push_back(Block(0, 0, 0)) 은 prt함수에서 0이 되었을때 탈출되는데, 배열을 0부터 채워넣으면 마지막값을 출력 못하는 문제가 발생하여 dummy 값으로 0번 배열을 채워준 후, 1번 배열부터 사용하고, 정렬하였습니다. 2) cnt 배열같은 경우 각 배열마다 몇개의 block을 사용하였는지를 저장하였습니다. 이를 통하여 차후 prt 함수를 호출할 때, 가장 높은 놈을 인자로 넘겨 출력하도록 하였습니다. 3) prt 함수는 넘겨받은 인자를 시작으로, vt[num].second 값들을 확인하면서 자신의 아래 block의 index 번호를 알아내어 해당 인덱스를 출력하여 재귀를 타고 내려가는 함수입니다. index가 0이되면 return 하기때문에 이를 위해 앞에서 말했듯 dummy 값이 하나 맨아래층에 존재합니다. 4) main에서 cache배열의 출력은 디버깅 용 입니다. 답안을 백준에 제출할때는 제거후 제출했습니다. #include <bits/stdc++.h> using namespace std; // https://www.acmicpc.net/problem/2655 #define rep(i,k) for(i = 0; i < k; i++) #define REP(i,n,k) for(i = n; i < k; i++) class Block{ public: int bottom, height, weight; public: Block(int a, int b, int c) : bottom(a), height(b), weight(c) {}; bool operator < (const Block& tmp) const { if(bottom != tmp.bottom) return bottom > tmp.bottom; } }; vector<Block > vt; int cnt[102]; vector<pair<int, int> > cache(102); void prt(int num){ if (num != 0) { cout << num << "\n"; prt(cache[num].second); } } int main() { ios_base::sync_with_stdio(0); cin.tie(0); freopen("input.txt", "rt", stdin); int num, i; cin >> num; vt.push_back(Block(0, 0, 0)); REP(i, 1, num+1){ int b, h, w; cin >> b >> h >> w; vt.push_back(Block(b, h, w)); } sort(vt.begin()+1, vt.end()); cnt[1] = 1; cache[1].first = vt[1].height; cache[1].second = 0; for(i = 2; i <= num; i++){ int res(0), indexcnt(0); for(int j = i-1; j > 0; j--){ if(vt[j].weight > vt[i].weight && res < cache[j].first){ res = cache[j].first; indexcnt = j; } } cache[i].first = res+vt[i].height; cache[i].second = indexcnt; cnt[i] = cnt[indexcnt] + 1; } int maxcnt(-1); REP(i, 1, num+1){ if(maxcnt < cnt[i]) maxcnt = cnt[i]; } cout << maxcnt << "\n"; cout << "cache : "; REP(i, 1, num+1){ cout << cache[i].first << " "; } cout << "\n"; int maxh(0), idx(0); REP(i, 1, num+1){ if(maxh < cache[i].first) { maxh = cache[i].first; idx = i; } } prt(idx); return 0; } 꼭 저의 방식이 아니더라도 사용한 벽돌을 백트레킹 할수 있는 방법을 알려주시면 감사하겠습니다 ㅠ.ㅠ
const optionalFunc = ( a : number , b ?: number ): number => { return a + b ; }; optionalFunc ( 10 , 10 ) ; 위에 코드처럼 작성하면 사진과 같이 b에 에러가 발생합니다. 인자를 모두 string타입으로 받는경우에 옵셔널 파라미터를 사용해도 에러가 발생하지않는데 왜 number타입에서는 저렇게 오류가 발생하는것인가요??
현업에서 스프링부트를 사용해서 개발을 하고있는데요. 스프링부터가 임베디드 와스를 제공해주니 그냥 그런가보다.. 하고 자세히 들여다보진 않았었는데 톰캣이나 와스의 내부의 구조와 동작방식 등을 더 자세히 알고싶어졌어요. 물론 구글링을 해도 좋은 정보가 많이 나오지만 저는 책을 한권 사서 처음부터 끝까지 쭉 완독하면서 하는 공부 스타일을 좋아해서요.. 관련해서 영한님께서 추천해주시고싶은 책이 있으신지요? 감사합니다. ^^
안녕하세요 아래 비슷한 문의가 있어서 답변도 확인해보고, 알려주신대로 eslintrc.js 파일 등을 세팅해서, 재설정을 해보았는데요 저는 아래같은 에러가 뜨네요 제가 설치한 플러그인은, Auto close Tag, ESLint (2.1.23), Live Server (5.6.1) Material Icon Theme 4.70, Night Owl 2.0.0 , TSLint 1.3.3, TSLint Vue 1.5.6 , Vetur 0.34.1 이렇게 입니다. ESLint 플러그인도 installed 된 리스트에 있는데도 불구하고, 왜 이런 에러가 발생할까요? [Error - 5:22:38 PM] Failed to load plugin '@typescript-eslint' declared in '.eslintrc.js': Cannot find module '@typescript-eslint/eslint-plugin' Require stack: - /Users/jyhan/Develope/inflearn/vscode/vue-news/__placeholder__.js Referenced from: /Users/jyhan/Develope/inflearn/vscode/vue-news/.eslintrc.js Happened while validating /Users/jyhan/Develope/inflearn/vscode/vue-news/.eslintrc.js This can happen for a couple of reasons: 1. The plugin name is spelled incorrectly in an ESLint configuration file (e.g. .eslintrc). 2. If ESLint is installed globally, then make sure '@typescript-eslint/eslint-plugin' is installed globally as well. 3. If ESLint is installed locally, then '@typescript-eslint/eslint-plugin' isn't installed correctly. Consider running eslint --debug /Users/jyhan/Develope/inflearn/vscode/vue-news/.eslintrc.js from a terminal to obtain a trace about the configuration files used.
[webpack-cli] Failed to load '/Users/ohyunseok/Documents/PROJECT/Slacku/react-frontend/webpack.config.ts' config [webpack-cli] webpack.config.ts:1:8 - error TS1259: Module '"path"' can only be default-imported using the 'esModuleInterop' flag 1 import path from 'path'; ~~~~ node_modules/@types/node/path.d.ts:162:5 162 export = path; ~~~~~~~~~~~~~~ This module is declared with using 'export =', and can only be used with a default import when using the 'esModuleInterop' flag. webpack.config.ts:1:8 - error TS1259: Module '"path"' can only be default-imported using the 'esModuleInterop' flag 1 import path from 'path'; ~~~~ node_modules/@types/node/path.d.ts:162:5 162 export = path; ~~~~~~~~~~~~~~ This module is declared with using 'export =', and can only be used with a default import when using the 'esModuleInterop' flag. webpack.config.ts:3:8 - error TS1259: Module '"/Users/ohyunseok/Documents/PROJECT/Slacku/react-frontend/node_modules/webpack/types"' can only be default-imported using the 'esModuleInterop' flag 3 import webpack, { Configuration as WebpackConfiguration } from 'webpack'; ~~~~~~~ node_modules/webpack/types.d.ts:12245:1 12245 export = exports; ~~~~~~~~~~~~~~~~~ This module is declared with using 'export =', and can only be used with a default import when using the 'esModuleInterop' flag. error Command failed with exit code 2.
[하루 10분|Web Project] HTML/JS/CSS로 나만의 심리테스트 사이트 만들기
안녕하세요~ 왕초보도 이해하기 쉬운 강의 만들어주셔서 정말 감사합니다!! 강의 내용을 응용해 다른 서비스를 만들어 보았는데요, 이번 수업에서는 어떤 결과가 나오든 일괄적으로 "카톡공유하기" 버튼이 있잖아요~ 그런데 제가 해보고 싶은 것은 12개의 각기 다른 결과마다 "주문하기" 버튼을 누르면 해당하는 쇼핑몰 페이지로 링크되게 하고 싶습니다. 어떻게 하면 될까요? 설명해주시면 너무 감사하겠습니다~^^
wait에서 두 번째 매개변수로 람다식을 넣어주셨는데요! 영상으로는 15분 01초 정도입니다. 이게 람다식 넣어줘서 다시 검사하자는 논리는 이해하겠는데, lock같은 경우 Lock기초 편에서 t1과 t2가 동시에 lock을 걸었고, t1이 간발의 차로 얻은 상황이면 t2는 t1이 unlock을 호출할 때까지 대기한다고 설명을 들었는데, 애초에 대기를 한다면 cv.wait 코드가 있는 줄로 못넘어가는 것이 아닌가 생각되는데... 제가 어디서 잘못 생각했을까요?
안녕하세요 제로초님. 최근 nestjs + prisma 2 버전을 사용할 일 있어 공부중인데 prisma 2.0을 사용하면 typeorm 처럼 각 모듈마다 엔티디를 만들어서 사용 할 수 없을까요? 현재까지는 prisma.schema 파일에 전부 테이블을 만들어서 생성을 할려고 하는데 prisma 1.0에서는 .yml 파일 만들어서 사용 하는거 같은데 어떻게 해야될지 감이 안 와서 질문을 올립니다. (각 테이블마다 별개로 만들고 싶은데 찾아보니 잘 안나오는것 같아 질문을 올립니다) 2. 저번에도 같은 질문을 올렸는데 typeorm처럼 prisma2.0은 dto를 만들때 엔티티에서 상속받아서 사용을 못하나요?(PickType, PartialType, ....) 감사합니다. ps.) nestjs 강의 나오면 빠르게 수강하겠습니다^^