Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Machine Learning for .NET (github.com/dotnet)
143 points by T-A on May 7, 2018 | hide | past | favorite | 20 comments


FYI: this library has been in development for nearly a decade and is very mature. It is as old as the likes of Scikit-Learn or Theano. It is, or at least was, widely used within MS.

MS only decided to open source it recently.

Disclaimer: I was one of the early team members.


I spent a good couple of hours trying to get into machine learning, using Microsoft.ML,from zero previous knowledge. I did the iris and sentiment tutorial on Microsofts docs, but when I tried moving to my own (very simple) dataset, I got exception after exception not understanding why. No one else seem to have the problems (because it's so new - to the public) and the source on github is apparently incomplete so I couldn't dig all the answers out myself. It might be stable and mature but it's not a good entry point for beginners imo.


Wonder what this offers over Accord.NET[0].

[0] https://github.com/accord-net/framework/


Finally, Microsoft! I have always felt weird about Microsoft prioritizing Python before their own language. Not that I do a lot of ML, but I plan to maybe use it for some projects in the future and then it would feel nice to have an official .NET package for it.


Would be nice if they provided performant .Net wrappers around some of the more popular open source ML libraries (pandas for example), assuming that is technically possible.


What can pandas do that SQL can't?


Pandas and SQL are cousins, at best.

Here's the 2,215 page user manual, to give you some idea of the power contained within:

https://pandas.pydata.org/pandas-docs/stable/pandas.pdf

They really serve two related but different purposes, I'm sure if you check it out you will be impressed.


pandas is higher-level; it's more similar to R. It does a bunch of modeling, statistics, and time series stuff.


It gets more and more interesting. First, swift for tensorflow, then ML.NET. I like that ML is maturing and that we are getting statically typed tools.


I wonder if R integration is coming in a sense that azure ml offers it - as one of the building blocks.


Well you can use CNTK in R via Keras already, but only directly in Python I think


What are the use cases for this versus CNTK (and vice versa)? Is there any overlap?


Very interesting. Nice to have another option available. I've dabbled with the Stanford NLP libraries from .NET, but the GPL restriction makes it difficult to actually use in production code.

https://github.com/sergey-tihon/Stanford.NLP.NET


I'm curious to know why GPLv2 makes it difficult for your use-case. Are you developing software that your clients install or host themselves?


It's just very problematic to use anything GPL in commercial software, compared to MIT or Apache licensed libaries.


I don't see anything problematic in GPLv2 if the software is running on your own machines.


That is the problem. We're selling a compiled product that is installed on other people's machines. It's very complicated, and the guidance that I have gotten from bosses and lawyers is stay away from GPL code.


Like others have said, the GPL isn't a problem if you're hosting a web application. The AGPL (Affero GPL) is what would affect that.


We're still producing effectively boxed software, though.


Not if you know what the license actually means, which you will if you did it at a company.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: