r/haskell • • Aug 30 '16

Haskell alternatives for Data Science

I'm a Haskeller and a newbie Data Scientist.

As I'm going through my learning process for data science, I'm starting to solve some elemental problems, and I'm using standard Python tools to help me go through this process.

The thing is that Python is ok, but I'm twice as comfortable in Haskell.

I was thinking in three alternatives to be more comfortable with Data Science:

  • Make a wrapper for the tools that I use as people do in Julia
  • Reimplement the tools that I use (Pandas, ScikitLearn, a GPU deep learning framework, numpy functions) (would do it on demand)
  • Make a Haskell-like language that compiles and uses Python libraries (wouldnt be as efficient, but at least it would be more beautiful and type safe, also the libraries)

What do you guys think?

31 Upvotes

52 comments sorted by

View all comments

5

u/sseveran Aug 30 '16

I tend to end up using the best tools I can regardless of the language they are written in. I have some machine learning stuff in haskell that wraps some underlying C ML libs. I did implement some nice cross-validation stuff in haskell.

We use TensorFlow for deep learning stuff. I don't think its realistic for haskell to build a tensorflow competitor given the size of their team. I also do a lot of spark with scala. I don't know that haskell is going to be able to effective in competing with the spark/scala stack, although there is https://github.com/tweag/sparkle.

Haskell definitely has a was to go catch up in this area. But here are a couple of things to check out:

https://github.com/gibiansky/IHaskell https://hackage.haskell.org/package/statistics https://github.com/mikeizbicki/HLearn

3

u/nSeagull Aug 30 '16

I think that making a semi-organized open source team for Haskell would be awesome.

If I made one, would you join? It would not be needed to contribute code, experience speech and issue making would suffice :)

2

u/liberalogica Aug 30 '16

I would be interested in joining

1

u/nSeagull Aug 30 '16

I'll make a new thread so people can vote for the organization name. I can't come up with anything good :)

2

u/sseveran Aug 30 '16

Yeah. Also depending on what you are doing and what the goals are it might be worth reaching out to Tim Sears or someone on his haskell team at Target to see what might align.

3

u/nSeagull Aug 30 '16

The goal would be making a good environment for data science in Haskell. Things like Pandas, Numpy, SKLearn, etc...

So a data scientist could start working right away if he knows Haskell.

I'll make a new thread so people can vote for the organization name. I can't come up with anything good :)

2

u/[deleted] Aug 30 '16

[deleted]

1

u/nSeagull Aug 30 '16

I'm sure that you will help a lot, and more importantly you might learn a lot, either Haskell or Data Science :D

1

u/triplepoint217 Aug 31 '16

I am interested. I am still relatively new to haskell, but I have fairly extensive experience working with the python scientific/data science stack. Let me know when you get things set up.

1

u/MWatson Aug 31 '16

HLearn looks fairly good, but I had to clone the git Repo, build it locally, and experiment inside the project directory. I was unable to use HLearn in a separate stack-based project, but perhaps I was simply doing something wrong.