I think the most important point of teaching maths for data science is to build mental models in the data scientists head. It takes time and part of the process of learning maths and usually takes 2 years (or two years course in university). Bypassing that process backfires—startups raising money for AI/ML normally take 2 years before shipping the product.
I think the mental model part is the most difficult to teach, but obviously, we are paid for specialised skills—like coding in python, hence everyone wants to jump into coding python without putting effort into learning maths and building proper mental models, which I think is wrong. The coding part is easy—I am comfortable with Octave/Matlab and Python or Rust. I would back Andrew Ng for choosing Octave for example—it’s one of the most concise ways to get ML concepts working, although I disliked it when I was a student, then I tried to translate the following code into Python:
%% Main loop
while(gen<maxgen)
gen
% perform uniform selection, then intermediate crossover
chx=zeros(lamda,nvar); % create storage space for new chrom
sigx=zeros(lamda,nvar); % create storage space for new sigmas
for n=1:lamda % loop over all population
if(rand<xovr) % roll the dice and see if we need to cross
alpha=rand(1,nvar)*1.5-0.25; % create vector of random
% then crossover
chx(n,:)=alpha.*chrom(mod(n-1,p)+1,:)+(1-alpha).*chrom(ceil(rand*p),:);
sigx(n,:)=abs(alpha.*sig(mod(n-1,p)+1,:)+(1-alpha).*sig(ceil(rand*p),:));
else
chx(n,:)=chrom(mod(n-1,p)+1,:); % just copy if not crossing
sigx(n,:)=sig(mod(n-1,p)+1,:);
end
end
I build a very similar project—http://thepattern.digital/ ( full source code available https://github.com/applied-knowledge-systems/the-pattern ) and it won the platinum prize on RedisHackathon 2021.
My differentiator from connected papers is that I turn “strings into things” using external UMLC methathesaurus, so my nodes are industry-wide “concepts” and edges in the graph are a list of papers connecting the same concepts.
Shall we collaborate and take both projects further?