So you can integrate with the rest of the code base. It seems your company uses a mix of Java and python. What are you going to do if a little corner of the site needs machine learning; pass the data around with a database, or a cache, drop to R, and so on? Why not just do it all in the same language? It's faster, cleaner, and easier to maintain.
Know any ...
There may be a lot of reasons like:
Workforce flexibility: One Java / Python programmers can be moved to other tasks or projects easily.
Candidates availability: there are plenty of Java / Python programmers. You do not want to introduce a new programming language to later find out that there are no qualified workers or they are just too expensive.
Machine Learning: The Art and Science of Algorithms that Make Sense of Data (Flach)
Learning From Data (Abu-Mostafa et al.)
Introduction to Statistical Learning (James et al.)
Elements of Statistical Learning (Hastie et al.)
Pattern Recognition and Machine Learning (Bishop)
Some special interest examples:
It is in general true that for purely data science and statistics exercises R offers the best and fastest (especially if using the data.table package) tools and methods, that otherwise would be heavier to implement in Python (I assume by Python we all mean Pandas, though). Most data scientists do in fact use R to perform their models and calculations, or ...
If I could only recomend one to you, it would be: The Elements of Statistical Learning and Prediction by Hastie, Tibshirani and Friedman. It provides the math/statistics behind a lot of commonly used techniques in data science.
For Bayesian Techniques, Bayesian Data Analysis by Gelman, Carlin, Stern, Dunson, Vehtari and Rubin is excellent.
I strongly suggest Talking Machines. It's a very well put together podcast from a professor at Harvard. They cater to both machine learning experts and enthusiasts.
Their interviews are often done from NIPS, and the guests are usually top tier practitioners.
Start with the Coursera's Machine Learning course. It does a really good job in introducing the student to the domain of Machine Learning and helps you lay a solid foundation in the concepts.
In case, you feel that the math is a bit dumbed down in that course, you can take this course, taught by the same professor and is more math-intensive than the former.
Most of the "standard textbooks" (e.g., Goldberg, Mitchell, etc.) are pretty dated now. If you just want to have some confidence that you understand how the basic algorithms work, they're fine, but they tend to emphasize material that's doesn't necessarily match the more modern way of understanding and talking about things like theoretical issues.
I've used ...
Based on my experience, not just for ImageNet, if you have enough data it's better to train your network from scratch. There are numerous reasons that I can explain why.
First of all, I don't know whether you have had this experience or not but I've trained complicated CNNs neworks with over 25 million parameters. After reaching 95% accuracy, after ...
Data science jobs cover a wide range of different activities so any answer is likely to be subjective. I'm in academia so my knowledge of the job market is limited, but from what I can see:
The current context is very favorable to data scientists looking for a job, so anybody with some basic knowledge of ML has a chance. You're already above this level so ...
I like Amir Ali Akbari's suggestions, and I'll add a few of my own, focusing on topics and skills that are not adequately covered in most machine learning and data analysis books that focus on math and/or programming.
Osborne 2012, Best Practices in Data Cleaning
McCallom 2012, Bad Data Handbook: Cleaning Up The Data So You Can Get Back To ...
Other answers recommended a good set of books about the mathematics behind data science. But as you mentioned, its not just mathematics and activities like data collection and inference from data has their own rules and theories, even if not being as rigorous as mathematical backgrounds (yet).
For theses parts, I suggest the book Beautiful Data: The Stories ...
I've seen quite a few companies using the title Data Scientist for "Data Engineer" type roles. Particularly in the big data space.
If the company is using Hadoop or a distributed framework like Spark to do it's analytics in then Java or Python (or probably Scala) would be the languages that would make the most sense .
Although you need book, I recommend the following courses respectively for understanding statistics which are used for machine learning and other tasks in data science. They are free.
Learn Statistics - Intro to Statistics Course
Intro to Descriptive Statistics
Inferential Statistics: Learn Statistical Analysis
If I want to recommend a book, I would ...
In Data Skeptic they talk about different aspects of data science:
Data Skeptic is a podcast that alternates between short mini episodes with the host explaining concepts from data science to his non-data scientist wife, and longer interviews featuring practitioners and experts on interesting topics related to data, all through the eye of scientific ...
List of NLP competitions on Kaggle by popularity [number of teams]:
Two Sigma Connect: Rental Listing Inquiries [2709 teams]
Home Depot Product Search Relevance [2125 teams]
Quora Question Pairs [2123 teams]
There's this website called Sportsdatamart which allows you to
download CSV and XLS file formats for a number of Football series
like the England Premier League, the Italian Serie A, the German
Bundesliga and the Spanish La Liga.
On Football Data UK, you can find EXCEL and CSV data files to
use for quantitative testing of betting systems in spreadsheet
Non-Negative Matrix Factorization (NMF) is described well in the paper by Lee and Seung, 1999.
NMF takes as an input a term-document matrix and generates a set of topics that represent weighted sets of co-occurring terms. The discovered topics form a basis that provides an efficient representation of the original documents.
NMF is ...
Firstly, for understanding the Markov switching models, a nice knowledge of Markov models and the way they work. Most importantly, an idea of time series models and how they work, is very important.
I found this tutorial good enough for getting up to speed with the concept.
This is another tutorial on a similar application of the switching model, which is ...
First of all, data only comes in so many forms that it might make sense to stick to a more "concrete definition". Data Science is necessarily practical. But here are a few other books with a more theoretical grounding. Others will certainly know many more...
A probabilistic theory of pattern recognition by Devroye, Györfi, Lugosi
An Introduction to ...
Though neither are well defined, as commonly used they are somewhat orthogonal concepts.
In my opinion, AI has a fairly narrow definition - it is about optimization through actions. AI is about decision making, either in deterministic or probabilistic environments. Typically, this is operationalized as action selection to maximize some reward function, or ...
Some which I regularly hear to, are:
What's the point by FiveThirtyEight
It is a very nice podcast, where not only the concepts, but also the applications of data science to a wide range of domains, are discussed.
Linear digressions by Udacity
It focuses more on ML and concepts of data science. Hosted by two really nice data scientists Katie and Ben. ...
I'd have to disagree with the other posters on the java question. There are certain noSQL databases (like hadoop) that one needs to write mapreduce jobs in java. Now you can use HIVE to achieve much the same result.
The python / R debate continues. Both are extensible languages, so potentially both could have the same ability to process. I ...
Yes, multiple papers have used this. I've heard of multiple ways to exploit this hierarchial structure. This paper Hierarchical Deep Convolutional Neural Network for Large Scale
Visual Recognition uses multiple levels by predicting the more coarse distribution and I think it then passes this as features to the more low level classification. YOLO9000 actually ...
I am using keras with tensorflow backend. I checked and the categorical_crossentropy loss in keras is defined as you have defined. This is the part of code (not the whole function definition)-
def categorical_crossentropy(target, output, from_logits=False, axis=-1):
if not from_logits:
# scale preds so that the class probas of each sample sum to ...
I think the closest problem that has been addressed with deep learning is image inpainting, that is, filling a blacked out region in the image:
For instance, this paper: Semantic Image Inpainting with Perceptual and Contextual Losses.
So it is certainly possible to fill missing information from an image with deep learning.
Check out the Github repositories for Christopher Long (octonion):