Live data from Hacker News

Ask HN: What ML platform are you using?

news.ycombinator.com

71–80 of 84 posts

Re: Ask HN: What ML platform are you using?

#71
post #36

> I am very much a beginner in the space of machine learning While the (precious and useful) advice around seem to cover mostly the bigger infrastructures, please note that you can effectively do an important slice of machine learning work (study, personal research) with just a battery-efficiency-level CPU (not GPU), in the order of minutes, on a battery. That comes before going to "Big Data". And there are lightweig…

Fast CPU transformers: https://bellard.org/libnc Fast CPU convolutions: https://NN-512.com Both are completely stand-alone (no external dependencies).

> Fast CPU transformers: https://bellard.org/libnc

And especially, from Fabrice Bellard (QEMU, FFMPEG...)

I do not know how you found it: it is not even in his site's index!

--

I see that NN-512 is a personal project of yours: congratulations! Though it seems to be a go-lang application that generates specialized C for convolutional NNs... Not a general purpose library, not for beginners.

Re: Ask HN: What ML platform are you using?

#72
Please give us a try:

https://elbo.ai - Train more. Pay less

We want to make ML tasks as cheap and as easy as possible. We can provision GPU nodes from multiple cloud providers (today we have 4 - TensorDock, AWS, Linode and FluidStack). You don't have to sign up with them, manage keys or passwords, AMI Images, VPCs, Subnets, Firewall rules, EBS volumes or worry about Colab closing your session, network transfer bills, GPU usage approvals, opening ports, billing surprises. We take care of all that and let you focus on learning ML.

I faced the same problem when I started learning ML and tried different cloud providers, Colab, Paperspace, custom PC with RTX30 series GPU. Most of the solutions were either very expensive or very complicated. I started building a tool for myself to deploy GPU nodes with a single command and thought it would be a nice product to have for other ML learners like me.

  1. Sign up at https://elbo.ai for the free tier.
  2. `pip3 install elbo`
  3. `elbo login` with your token (from signup)
  4. Jupyter Notebook in a single command in under 4 minutes (typically)- `elbo notebook`
  5. Setup a GPU node to work remotely over SSH using `elbo create`
  6. Submit ML tasks defined in a YAML file using `elbo run --config `

Quick start guide - https://docs.elbo.ai/quick-start

CLI Reference - https://docs.elbo.ai/reference/cli-reference

Looking at our inventory today, you can get a decent Quadro 4000 GPU with 16 CPU and 32 GB memory for about $0.61 an hour.

    PRICE                 GPU CPU   MEM  GPU-MEM 
    $ 0.2700/h      Tesla K80   4   61Gb 12Gb AWS (spot)
    $ 0.6100/h    Quadro 4000  16   32Gb  8Gb TensorDock
    $ 0.9000/h      Tesla K80   4   61Gb 12Gb AWS
    $ 0.9180/h           V100   8   61Gb 16Gb AWS (spot)
    $ 0.9200/h    Quadro 5000   2    4Gb 16Gb FluidStack
    $ 0.9600/h          A5000   2   16Gb 24Gb TensorDock
    $ 1.4900/h          A4000  12   64Gb 16Gb FluidStack
    $ 1.4940/h            A40   2   12Gb 48Gb TensorDock
    $ 1.5000/h    Quadro 6000   8   32Gb  0Gb Linode 
    $ 1.5140/h          A6000   2   16Gb 48Gb TensorDock
    $ 2.1600/h   8x Tesla K80  32  488Gb 12Gb AWS (spot)
    $ 3.0000/h 2x Quadro 6000  16   64Gb  0Gb Linode 
    $ 3.0600/h           V100   8   61Gb 16Gb AWS
    $ 3.6720/h        4x V100  32  244Gb 16Gb AWS (spot)
    $ 3.7460/h        7x V100   6    8Gb 16Gb TensorDock
    $ 4.3200/h  16x Tesla K80  64  732Gb 12Gb AWS (spot)
    $ 4.5000/h 3x Quadro 6000  20   96Gb  0Gb Linode 
    $ 6.0000/h 4x Quadro 6000  24  128Gb  0Gb Linode 
    $ 7.3440/h        8x V100  64  488Gb 16Gb AWS (spot)
    $ 7.9200/h   8x Tesla K80  32  488Gb 12Gb AWS
    $ 9.8318/h        8x A100  96 1152Gb 80Gb AWS (spot)
    $13.0360/h        4x V100  32  244Gb 16Gb AWS
    $14.4000/h  16x Tesla K80  64  732Gb 12Gb AWS
    $24.4800/h        8x V100  64  488Gb 16Gb AWS
    $32.7726/h        8x A100  96 1152Gb 80Gb AWS

If you just need a dedicated machine on the cloud, then I would highly recommend our provider - Tensordock (https://tensordock.com/). They have a good range of ML capable GPUs and are cheaper than many other cloud providers.

We are just getting started, so if you hit any glitches or bugs, please email us at hi@elbo.ai

Thanks for reading till here and for your time!

EDIT: Updated formatting.

Re: Ask HN: What ML platform are you using?

#73
post #39
post #36

> I am very much a beginner in the space of machine learning While the (precious and useful) advice around seem to cover mostly the bigger infrastructures, please note that you can effectively do an important slice of machine learning work (study, personal research) with just a battery-efficiency-level CPU (not GPU), in the order of minutes, on a battery. That comes before going to "Big Data". And there are lightweig…

Note that this won't work with reasonably performant CNNs. Passing an image batch through a large-ish ResNet takes half a second on our GPUs, several minutes at full load on CPU. This makes training infeasible, and most models small enough to work on CPU are so far from state-of-the-art that you can't do any worthwhile computer vision research with them.

...I am curious, now that I know about Fabrice Bellard's LibNC (bellard.org/libnc), if that «image batch through a large-ish ResNet» would be faster using this library - which can work on both CPU and CUDA...

Re: Ask HN: What ML platform are you using?

#74
post #16

Thr best option for you is- Gradient Paperspace and Colab. Both are free and managed. Learn Machine Learning first. Do not spend time on managing infra for ML while you are learning ML. Focus on learning ML first. You can make decent cutting edge models and SOTA classic models just with free options. I am saying this because I have done this. I suggest that you get Colab Pro after that. AWS burns a hole on your pocke…

can you please be specific on "necessary Math"? trying to apply pareto principle and cut down amount of time needed to brush up what seemingly all of lower division math courses.

Two things I forgot to mention.

If you want to see what the curriculum of a "Math for ML" from a top research uni looks like, you should check out the website of Math for ML course offered by Universitat Tubingen [0]. If you know those, you will be able to read the math of most papers that you will come across.

Secondly, the best way to get started with ML is to do the Andrew Ng classic on Coursera. Then move on to FastAI [1]. Fastai is a fantastic learning resource and you will learn many nice things from Jeremy Howard that will help you make your own models. But do NOT limit yourself with fastai. It's a crappy software- too many limitation, syn sugars, API anti patterns, etc.

Learn PyTorch for full-fledged projects.

[0]: https://www.tml.cs.uni-tuebingen.de/teaching/2020_maths_for_...

[1]: https://fast.ai

Re: Ask HN: What ML platform are you using?

#75
post #26

Get a decent NVIDIA GPU. Then install PyTorch and off you go. I advise to make all your own tooling, as you likely have a specific use-case, and so your tooling can be tailored to that. Most ML tools are very generic, or so simply you might as well do them yourself. The advantage if having your own box, is that (1) you'll learn some systems skills building it and (2) since you invested in it, you should feel obligate…

You do not necessarily need a high performance GPU to step into ML. I'm running a couple of my hobby projects either on my notebook or an old discarded former Server hardware with onboard GPU.

+1 on that. I had a Mac Pro 5.1 that was surplus to requirements. Its 10 years old with 64GB of Ram and 2 x 6core processors. I stripped off the OS and installed Ubuntu along with an nVidia 750 - $100. For learning purposes and running hyper-parameter tuning it is pretty robust.

Re: Ask HN: What ML platform are you using?

#76
post #72

Please give us a try: https://elbo.ai - Train more. Pay less We want to make ML tasks as cheap and as easy as possible. We can provision GPU nodes from multiple cloud providers (today we have 4 - TensorDock, AWS, Linode and FluidStack). You don't have to sign up with them, manage keys or passwords, AMI Images, VPCs, Subnets, Firewall rules, EBS volumes or worry about Colab closing your session, network transfer bills…

> I am very motivated to delve into this space (it's been on my mind a while) and I want to do it right, which is why I am asking for personal experiences on this forum given that there is a very healthy mix of technology hobbyists as well as professionals on HN, of which the opinion of both is equally valuable to me for different reasons.

Regarding personal experiences, I moved to ML engineering after almost 15 years in Software Development. I found it challenging at first, to cope up with the terminology and Math. Although I was able to create data processing pipelines and simple models it was still a mystery how it all worked. After a good year and a half of trying to teach myself ML, I decided that I needed formal education. After researching possible options that work would for my work schedule and skill level, the Stanford SCPD AI Certificate program seemed to be the best. Here are some useful pointers (in no particular order).

- This blog by Pavel helped me a lot, to understand what the course was about and how to approach it -- http://coldattic.info/post/122/

- Most of Stanford Lectures notes and slides are publicly available. CS229 is a good beginner class to take (http://cs229.stanford.edu/syllabus.html)

- The best and the most interesting IMO, is CS236 on Generative Modeling. It is taught by Prof. Ermon and his team. Some of the topics covered in class (especially Score based models) were mind blowing. Here is a talk by Prof. Ermon if you are interested in generative modeling (https://www.youtube.com/watch?v=8TcNXi3A5DI).

- If your math skills are a bit rusty, then you will have to practice and work a lot more. I found the TA sessions and office hours extremely helpful.

Some additional personal experiences:

- "Deep Learning with Python" by Francois Chollet (Creator of Keras) is a good book to get started. The code samples are in TF Keras and easy to understand and implement.

- Avoid TensorFlow if you can. Its unnecessarily complicated (personal opinion). You will find PyTorch and PyTorch Lightning much more approachable to start learning.

- I also found Kaggle tutorials helpful for practical aspects of ML. For example: Categorial Variables (https://www.kaggle.com/alexisbcook/categorical-variables).

- Yannic Kilcher's ML News series is a great way to keep in touch with the latest events in ML (https://www.youtube.com/c/YannicKilcher). Also very entertaining :)

- Prof. Jeff Heaton has a bunch of good videos on practical ML applications - https://www.youtube.com/c/HeatonResearch

ML is very exciting and rewarding, Good luck on your new adventure! Feel to reach out and I would be happy to help in any way.

Re: Ask HN: What ML platform are you using?

#77
I have been building Deploifai for a year. I built it for myself early on because I wanted to train machine learning models on the cloud since we don't have the resources for a physical machine. I basically wanted to use my AWS account to create VMs with environments pre-configured, and just simply start building my ML models. Deploifai sets up the VM with pre-selected ML framework, NVIDIA drivers and Jupyterlab. It takes about 15mins to set up but it eventually ends up saving me quite a bit of time.

You can give it a try as well: https://deploif.ai (It says paid on the website, but just get on our Discord and message me). The platform now supports GCP and Azure as well. I am happy to guide you through as well. It's not complete, but in case you choose to go ahead with cloud, this could help you out :)

We'd also be happy to have someone try the tool!

Re: Ask HN: What ML platform are you using?

#78
If you want to build a web application on top of your ML project, give https://hal9.com a shot. We designed Hal9 with ease of use for deployment and maximum compatibility with web technologies that enable you to build ML apps with React, Vue, etc. We launched a couple months ago but could use some early feedback and users. Thank you!

Re: Ask HN: What ML platform are you using?

#79

I see some great recommendations in the thread already, but I think https://cocalc.com is definitely worth checking out if you consider yourself to still be more of a learner. Their focus seems to really be on helping people who are new to the field get started. It offers familiar Jupyter Notebook-like features so you should feel right at home. I have no affiliation with them whatsoever :) Just a fan of what they’re…

In case you want to start creating batch jobs too I’d recommend checking out Orchest (www.orchest.io). It has a generous free tier and supports GPU instances. The platform itself is self-hostable too and open source (https://github.com/orchest/orchest).

The main advantages are its interactive pipeline editor, support for Jupyter notebooks in the pipeline/DAG context, and a simple way to specify environment dependencies. It also supports auto start-and stopping of instances so you only pay for the compute necessary to run your data pipelines.

Disclosure, I’m one of the creators.

Re: Ask HN: What ML platform are you using?

#80
One of my deal breakers when choosing tooling is how easy is to move from a local environment to a distributed environment. Ideally, you want to start locally and move to a distributed env if you need to. So choose one tool that allows you to get started quickly and move from there.

As an example: one of the reasons why I don't use Kubeflow is because it requires having a Kubernetes cluster up and running, which is an overkill in many cases.

Check out the project I'm working on: https://github.com/ploomber/ploomber

Post reply on HN