Citat:
Ursprungligen postat av
Nikus
Min fettmarkerade: Det är precis det jag har haft problem med de senaste månaderna. Jag har jättesvårt att bara implementera en algoritm(via ett plugin) utan att förstå vad som händer bakom kulisserna för oftast blir svaret att "det bara är så" när någon frågar varför man anropar en specifik funktion eller vad den gör. Jag nöjer mig inte bara att lära mig använda ett plugin(scikit-learn etc) och gå vidare men kanske det är det jag ska göra?
En fråga till dig: När utvecklarna implementerade modellen som togs fram från kvantarna användes det något plugin eller utvecklade man allt från "scratch"? Jag vill verkligen få lite riktlinjer hur jag ska göra för att lära mig ML. Ska jag ha en top-down metod där jag lär mig något plugin och sedan går djupare in för att förstå varje funktion, algoritm etc eller en bottom-up metod där jag lär mig teorin(algoritmer, optimering etc) och sedan bygger upp tekniken? Det första alternativet känns som jag fuskar medan det andra som jag inte har tillräckligt kunskaper inom matematik och statistik för att hänga med i teorin(vilket är sant). Detta gör att jag hamnar i ett konstigt läge där jag känner mig värdelös. Kanske ska jag skita i ML och lära mig ett annat område inom programmering? Jag vill verkligen bli nischad i något område där jag känner mig hemma. Just nu jobbar jag mycket med data och vanliga desktopbaserade system, webserviceanrop och implementation av CRUD-funktionalitet. Det är kul men jag vill inte bara göra detta tills jag pensionerar mig(jobbat i 2 år nu och är rätt ung).
Med tanke på att jag bara har läst matematik C(idag skulle jag valt natur men då var jag ung och dum) så är detta inte möjligt men tack för tipset. Jag kanske ska inte alls fokusera att hitta den optimala algoritmen och bara implementera det jag får serverad. En vanlig kodapa mao som kan bli ersatt av indier när som helst...
Den formen av programvaruutveckling du jobbar inom om har du tyvärr ingen användning av.
Jag är specialiserad mot machine learning, och gör mitt ex jobb nu i höst, civ. ing. Många har missuppfattningen att det som ligger närmast ML är datateknik, men så är inte riktigt fallet. ML begreppet missanvänds dessutom ganska grovt för att det är hypat. Benen ML står på är avancerad mattematisk statistik, optimering och algoritmer främst. Går man kurser på universitet är dessa kurserna några av de tuffaste som går att ta på avancerad nivå. Det är näst intill omöjligt för dig då att inta den kunskapen som behövs för att bli en data scientist. Denna boken är grundstenen i de flesta ML kurser runt om i världen "Pattern Recognition and Machine Learning, Christopher M. Bishop".
Hur som helst finns det vissa teman och som kan va intressanta. Då ML kräver så kaftfull kompetens automatiseras mer och mer i frameworks så som Sklearn osv. Även om frameworks som Sklearn är användbart använder behöver man förstå vad som händer på djupet i algoritmerna. Man behöver förstå datan och vilka alogoritmer som fungerar bra på datan och varför. Mer och mer ploppar upp konstant. Neurala nätverk, och deep learning tar över mer och mer och frameworks som tensorflow växer och blir större. Neurala nätverk kräver en aning mindre mattematik och mer erfarenhet än traditionell ML. I traditionell ML handlar mycket om att transformera data med avancerad matte.
ML inom ehandeln kan möjligtvis bli att koppla upp till Microsoft Azure och låt deras tränade algoritmer göra jobbet. Det behövs och en mellanhand mellan den modell data scientists har skapat och att allt annat. Till exempel behövs det databaser, modellen ska kopplas ihop med annan mjukvara, modellen behöver snabbas upp, mm. Även enklare modellerande. Mycket av detta lär ligga inom data engineering. Du behöver ingen proffskunskap för detta, men du behöver kunna hantera stora dataset, hadoop, nosql, förstå enkel ML och vad data scientists håller på med för att agera mellanhand.
Även detta kommer kräva hårt jobb av dig för att uppnå men det är möjligt. Det finns otroligt mycket matterial på nätet att lära av. Kurser som är online, och sen kan jag rekommendera hemsidan kaggle för en inblick i data science.
Om du googlar runder på detta kommer du komma över termen data analyst. En data analyst skulle jag säga är någon som ofta har en bachelor och ligger steget under en data scientist i form av kunskap.
Jag kan förövrigt rekommendera "machine learning with python":
https://www.youtube.com/user/sentdex
Går igenom basics och väldigt pedagogiskt.