안녕하세요.
현재 산업공학과 1학년 수료하고 군대에 온 군인입니다.
1학년 때 컴퓨터 언어 1도 배우질 않았고 2,3학년 때 c언어나 R, 파이썬 배웁니다.
요즘 데이터 싸이언스 분야가 각광받고 있는 추세라 들었습니다. 근데 솔직히 컴공쪽이 가는 개발자나 전산직도 생각이 있어요.
그래서 군대에 있는 동안 예습 겸 컴퓨터 언어를 배우려고 합니다.
질문1. 지금 C언어 vs 파이썬 어느 걸 공부하는게 좋을까요?
질문2. 개발자와 데이터 사이언스 어느 쪽이 대우가 좋고 어느 걸 추천하시나요?
질문3. 데이터 싸이언스가 석사 필수라는데 무조건 대학원 진학 해야 되나요?
질문4. 데이터 사이언스와 개발이나 전산직 두마리 토끼를 동시에 잡을 수 있을까요?
- dc official App
데이터 사이언스라고 하면 두루뭉실해서 어떤걸 원하는지 잘 모르겠지만, 머신러닝/딥러닝 같은걸 직업삼고 싶다면, 프로그래밍보다 수학,통계쪽 지식이 빵빵해야함. 나는 전산물리연구실에서 시뮬레이션 및 머신러닝을 활용한 물성연구를 하고 있는데, 프로그래밍은 그냥 도구일 뿐이고, 수학이나 통계학, 혹은 머신러닝 분야에 대한 깊은 수학적 지식이 요구되는 경우가 많음. 연구에서 문제 생겼을 때 그걸 푸는 키도 보통은 수학이 동원되고... 인터넷이나 딥러닝교재에서 나오는 신경망 코드 같은건 연구에서 쓰이지 않는 아주 기초적인 거고, 실제로는 훨씬 더 깊게 응용해야 하는 경우가 대부분임.
답1. 파이썬이 당연히 활용도가 높지만, 데이터 사이언스쪽으로 와도 최소 2가지의 상반된 언어를 익힌 사람이 유리함. 나같은 경우는 예를 들면, 데이터 전처리나 시각화, 모델학습은 파이썬으로 하고, 대규모 연산이 필요한 시뮬레이션을 돌려서 학습기반이 되는 데이터를 얻을 때는 c를 씀.
답2. 모르게따.
답3. 데이터 사이언스는 연구를 해본 사람과 안해본 사람의 차이가 매우 큼... 이건 이공계열 학생이라면 다 체감할거임. 석사를 하면 최소 2년간은 깊이있는 문제풀이에 몰두하게 되고, 이 과정에서 배운 지식이나 노하우는 확실히 학부생과 차이가 남
답4. 하나만 잘하기도 어려울텐데...
답3 보충. 예를 들면 컨볼루션 신경망(CNN)을 작성해서 학습을 하는데, 생각보다 학습이 안된다. ==> 이럴때 뭐가 문제일까? 데이터?, 필터의 개수? 모델의 구조? 또는 학습을 했는데, 특이하게 training loss보다 validation loss가 더 작게 그려진다. ==> 이것은 학습이 잘못된 것인가? 아니면 다른 학습과정에 의한 자연스러운 현상인가? 이런거에 대해 대답하려면, 시중에 나와있는 평범한 머신러닝 교재로는 택도 없고, 실제로 문제를 맞딱뜨리고, 그걸 해결하려고 이것저것 공부하고 이런 과정이 필요함.
요즘 군대 편하냐? 공부할 시간 많음?
군대에서 굳이 공부하려면 딴거 하지 말고 영어 / 선형대수 / 통계 <- 이렇게만 해라