머신 러닝 분야를 개척하려는 프로그래머


19

저는 소프트웨어 개발자입니다 (주로 약 5 년의 경험을 가진 .NET 및 Python). 머신 러닝 분야에서 직업을 얻거나 실제로 그 분야에서 시작할 수있는 무엇을 할 수 있도록 어떻게해야합니까? 대학원 학위는 어려운 요건입니까?


2
이 질문은 커뮤니티 위키 질문처럼 보입니다.
앤드류

답변:


16

더 많은 기계 학습을 배우는 것에 대해 누군가와 이야기 할 때마다 항상 Hastie와 Tibshirani의 통계 학습 요소를 지적 합니다. 이 책은 온라인에서 무료로 이용할 수있는 행운을 가지고 있습니다 (하드 카피에는 특정한 호소력이 있지만 필수는 아닙니다).이 주제에 대한 훌륭한 소개입니다. 나는 아직 모든 것을 읽지 못했지만 많은 것을 읽었으며 실제로 더 잘 이해하는 데 도움이되었습니다.

제가 진행하고있는 또 다른 자료 는 온라인과 무료로 제공되는 Stanford Machine Learning 수업 입니다. 앤드류 응 (Andrew Ng)은 일을 통해 당신을 걷는 훌륭한 일을합니다. 알고리즘 구현에 대한 저의 배경이 약하고 (자체 학습 프로그래머) 옥타브에서 구현하는 방법을 보여주기 때문에 (특히 R은 이미 패키지로 구현되어 있음) 특히 도움이됩니다. 또한 몇 달 전에 레딧 통계 에서이 메모 를 찾았습니다 . 그래서 그 내용을 살펴보고 비디오를보고 내 메모로 반영합니다.

내 배경이 통계에 있고 기계 학습 개념에 약간의 노출이 생겼습니다 (좋은 친구가 실제로 그 안에 있습니다). 나는 항상 기계 학습에 부족한 것처럼 느껴져서 모두 그것을 배우려고 노력했습니다. 내 스스로 조금 더. 고맙게도 거기에는 많은 훌륭한 자료가 있습니다.

업계 또는 대학원 요구 사항에 대한 직업을 구하는 한, 조언을 할 수있는 좋은 위치에 있지는 않지만 (아무도 고용하지 않은 것으로 밝혀졌습니다) 비즈니스 세계는 실제로 일을 할 수있는 사람들을 좋아하는 것으로 보입니다. 당신이 무언가를 할 수 있다고 말하는 종이 조각에 대해서는 조금 덜 염려합니다.

내가 당신이라면, 나는 자유 시간을 기계 학습 지식에 자신감을 가지고 보내고 기회를 볼 때 물건을 구현할 것입니다. 당신의 지위가 그 기회를 제공하지 못할 수도 있지만, 다른 의무를 유지하면서 회사에 가치를 더하는 무언가를 구현할 수 있다면 누군가 당신에게 화를내는 것을 상상할 수 없습니다. 여기서 좋은 점은이 직업에서 약간의 머신 러닝을하고 있다면, 새로운 직업을 찾을 때 이미 가지고있는 경험에 대해 이야기 할 수 있다는 것입니다. 정도.

많은 자원이 있고 그 흥미로운 점이 있습니다. 운이 좋기를 바랍니다!

또 다른 아이디어 : 머신 러닝 학습 과정에 대한 블로그를 시작하고 여가 시간에 진행중인 몇 가지 프로젝트를 문서화 할 수 있습니다. 프로그래밍 프로젝트 로이 작업을 수행했으며 자유 시간에 작업중 인 프로젝트에 대해 이야기 할 수 있으며 (고용주에게 잘 어울립니다) 작업에 대한 블로그로 안내 할 수도 있습니다 (분명히 전문적으로 유지하십시오) . 지금까지 나는 꽤 많은 사람들을 내 황홀한 작은 프로그래밍 블로그에 보냈다. 그것.


(+1) ML 클래스, 실제 지식 / 작업> 인증서 및 블로그에 관한 훌륭한 조언.
steffen

전문 블로그는 좋은 생각처럼 들립니다!
Rishi Dua

"비즈니스 세계는 실제로 일을 할 수있는 사람들을 좋아하는 것 같습니다"-예, 이것은 종이 조각에도 적용됩니다.
P.Windridge

통계 학습의 요소는 포괄적이지만 통계학을 전공하지 않은 사람들에게는 어렵습니다. 대신 같은 저자에 의해 (R의 응용 프로그램)을 사용한 통계 학습 소개를 추천합니다. 훨씬 간단합니다.
Abhishek Divekar

3

온라인 대회에 참여하여 손을 더럽힐 것을 제안하는 다른 모든 훌륭한 조언 외에도 예측 모델링 대회 사이트를 참조하십시오.

등에 관해서 는 다음을 살펴보십시오.

학위관련하여 나는 인증서가 덜 중요하다는 @asjohnson에 동의합니다. 적어도 내가 작업하는 영역 (웹의 데이터 마이닝 / ML)에 대해 이것을 확인할 수 있습니다. 생물 정보학과 같은보다 "학술적인"영역에서는 다를 수 있습니다. a) 열정적이며 b) 소규모 포트폴리오 (예 : 온라인 경쟁 ...)를 보여줌으로써 실제 작업 ( "스마트하고 일을 완수")했음을 입증 할 수있는 것이 IMHO보다 효과적이어야합니다.


(+1) 온라인 대회. 나는 당신이 kaggle 또는 다른 경쟁 중 하나에서 무언가를하고 잠재적 고용주가 그것을 확인할 수있는 장소에서 코드와 프로세스 (블로그를 생각하고 있음)를 추적했다고 생각합니다. 그것은 당신의 관심있는 질문을 생각하는 것보다 많은 모순을 보여주고 많은 방법으로 더 쉽습니다. 관심있는 경쟁 중 하나를 선택하면 바로 데이터와 답변을 제출하고 비교할 수 있습니다.
asjohnson

2

Tom Mitchell의 기계 학습을 읽으십시오. 이것은 기계 학습 분야에서 시작해야 할 좋은 책입니다.

알아 두어야 할 사항 : 시나리오와 제공된 매개 변수 및 임의 확률에 따라 동일한 알고리즘이 더 나은 성능을 발휘할 수도 있습니다. 훈련 데이터에 대한 최적화 매개 변수에 빠지지 마십시오. 이것은 기계 학습의 응용 프로그램이 아닙니다 .

특정 응용 프로그램에 적합한 많은 기술이 있지만 모든 응용 프로그램에 적합하지는 않으며 기계 학습을 더 잘 이해하기 위해 읽을 수있는 이론이 많이 있습니다. 머신 러닝을 능숙하게하려면 자신이하고있는 일을 알아야합니다. 그렇지 않으면 결과가 잘 일반화 될지 확신 할 수 없습니다.

행운을 빕니다.


0

파이썬을 사용하는 O'Reilly 시리즈의 일부를 포함하여 머신 러닝에 관한 많은 훌륭한 책들이 있습니다. 이 중 하나 또는 여러 가지를 통해 작업하는 것이 좋은 출발점이 될 수 있습니다.

또한 한 두 코스 또는 자체 학습을 통해 통계에 대한 지식을 얻는 것이 중요하지 않다고 제안합니다. 그 이유는 알고리즘과 역학에 중점을 둔 일부 기계 학습 서적이 있기 때문에 알고리즘이 알려주는 것이 우연 때문이라는 근본적인 질문을 무시하기 때문입니다. 그리고 이것은 반드시 알아야합니다.

행운을 빕니다 & 재미, 그것은 중대한 분야입니다.


0

아주 좋은 질문입니다. 머신 러닝은 예술과 과학이며 데이터를 세 심하게 정리하고 시각화하여 최종적으로 해당 비즈니스에 적합한 모델을 구축하는 동시에 확장 가능하고 다루기 쉬운 상태를 유지한다는 사실을 미리 알아야합니다. 현명하고 다른 무엇보다 중요한 기술은 확률에 중점을두고 복잡한 방법으로 넘어 가기 전에 간단한 방법을 먼저 사용하는 것입니다. 파이썬이 충분해야하기 때문에 R & Perl 조합을 선호합니다. 실제 작업을 수행 할 때는 항상 자신의 데이터를 가져와야하므로 SQL에 대한 지식 (또는 회사가 지원하는 다른 no-sql)이 필수입니다.

ML 분야의 경험을 능가하는 것은 없으므로 스택 교환과 같은 사이트에 참여하는 kaggle 도이 분야에 노출되는 좋은 방법입니다. 행운을 빕니다.


0

나는 그 오래된 질문을 알고 있지만 많은 프로그래머가 여전히 시작하는 방법을 모른다는 사실을 감안할 때.

그래서 저는 "머신 러닝 엔지니어가되기위한 공부를위한 완전한 일일 계획"을 만들었습니다. 저장소를 .

이것은 모바일 개발자 (자체 교육, CS 학위 없음)에서 기계 학습 엔지니어로 전환하기위한 여러 달의 학습 계획입니다.

저의 주요 목표는 주로 실습과 초보자를위한 대부분의 수학을 추상화하는 기계 학습을 배우는 접근법을 찾는 것이 었습니다. 이 접근 방식은 소프트웨어 엔지니어를 위해 설계된 하향식 및 결과 우선 접근 방식이므로 비 전통적입니다.

더 나아질 것으로 생각되는 기여를 자유롭게 만드십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.