Categories
Misc

Tilling AI: Startup Digs into Autonomous Electric Tractors for Organics

Who knew AI would have an impact on organic produce markets? Bakur Kvezereli did. Raised on an Eastern European organic tomato farm, he saw labor shortages, pesticide problems and rising energy costs. Years later, studying at MIT in 2014, it dawned on him that AI could help address these issues for farmers. A few years Read article >

The post Tilling AI: Startup Digs into Autonomous Electric Tractors for Organics appeared first on The Official NVIDIA Blog.

Categories
Misc

Accelerating Sequential Python User-Defined Functions with RAPIDS on GPUs for 100X Speedups

Motivation Custom “row-by-row” processing logic (sometimes called sequential User-Defined Functions) is prevalent in ETL workflows. The sequential nature of UDFs makes parallelization on GPUs tricky. This blog post covers how to implement the same UDF logic using RAPIDS to parallelize computation on GPUs and unlock 100x speedups. Introduction Typically, sequential UDFs revolve around records with … Continued

Motivation

Custom “row-by-row” processing logic (sometimes called sequential User-Defined Functions) is prevalent in ETL workflows. The sequential nature of UDFs makes parallelization on GPUs tricky. This blog post covers how to implement the same UDF logic using RAPIDS to parallelize computation on GPUs and unlock 100x speedups.

Introduction

Typically, sequential UDFs revolve around records with the same grouping key. For example, analyzing a user’s clicks per session on a website where a session ends after 30 minutes of inactivity. In Apache Spark, you’d first cluster on user key, and then segregate user sessions using a UDF like in the example below. This UDF uses multiple CPU threads to run sequential functions in parallel.

Running on the GPU with Numba

Dask-CUDA clusters use a single process and thread per GPU, so running a single sequential function won’t work for this model. To run serial functions on the hundreds of CUDA cores available in GPUs, you can take advantage of the following properties:

  • The function can be applied independently across keys.
  • The grouping key has high cardinality (there are a high number of unique keys)

Let’s look at how you can use Numba to transform our sessionization UDF for use on GPUs. Let’s break the algorithm into two parts.

Each cuda  thread does sequential work specific  to session. As we have a lot of sessions and cuda threads  we get a lot of parallelism.

For CPU we have less threads so we get less parallelism.
Figure 1: Comparison b/w execution on CPUs and GPUs for the UDF.

Part 1. Session change flag

With this function, we create session boundaries. This function is embarrassingly parallel so that we can launch threads for each row of the dataframe.

Part 2. Serial logic on a session-level

For session analysis, we have to set a unique session flag across all the rows that belong to that session for each user. This function is serial at the session level, but as we have many sessions (approx 18 M) in each dataframe, we can take advantage of GPU parallelism by launching threads for each session. 

Using these functions with dask-cuDF Dataframe

We invoke the above functions on each partition of a dask-cudf dataframe using a map_partition call. The main logic of the code above is still similar to pure python while providing a lot of speedups. A similar serial function in pure python takes about `17.7s` vs. `14.3 ms` on GPUs. That’s a whopping 100x speedup.

Conclusion

When working with serial user-defined functions that operate on many small groups, transforming the UDF using numba, as shown above, will maximize performance on GPUs. Thus, with the power of numba, Dask, and RAPIDS, you can now supercharge the map-reduce UDF ETL jobs to run at the speed of light.

Want to start using Dask and RAPIDS to analyze big data at the speed of light? Check out the RAPIDS Getting Started webpage, with links to help you download pre-built Docker containers or install directly via Conda.

Categories
Misc

Can tensorflow do like vuforia area targets. Which we train our virtual captured 3D scan data and use it in AR or WebAR?

Can tensorflow do like vuforia area targets. Which we train our virtual captured 3D scan data and use it in AR or WebAR? submitted by /u/hudadong
[visit reddit] [comments]
Categories
Misc

How to use tensorflow’s FFT?

Hey everyone. I am having some trouble reconciling my FFT results from MATLAB and TF. The results are actually very different. Here is what I have done:

1). I would attach my data file here but didn’t find a way to do so. Anyways, my data is stored in a .mat file, and the variable we will work with is called ‘TD’. In MATLAB, I first subtract the mean of the data, and then perform fft:

f_hat = TD-mean(TD); x = fft(f_hat); 

2). In TF, I use

tf.math.reduce_mean 

to calculate the mean, and it only differs from MATLAB’s mean on the order of 10^-8. So in TF I have:

mean_TD = tf.reduce_mean(TD) f_hat_int = TD - mean_TD f_hat_tf = tf.dtypes.cast(f_hat_int,tf.complex64) x_tf = tf.signal.fft(f_hat_tf) 

So up until ‘f_hat’ and ‘f_hat_tf’, the difference is very slight and is caused only by the difference in the mean. However, x and x_tf are very different. I am wondering did I not use TF’s FFT correctly?

Thanks!

https://preview.redd.it/0e6o48jegd351.png?width=560&format=png&auto=webp&s=c782992b54309d31492b6d9c6463079945d9b784

submitted by /u/LivingAd9344
[visit reddit] [comments]

Categories
Misc

examples of some of the most impressive complex tensorflow applications you’ve seen?

submitted by /u/Bulbasaur2015
[visit reddit] [comments]

Categories
Misc

Possible to retrain onnx model?

I am trying to use a model built in Pytorch in a project that I am working on and will need to retrain it. Would it be possible for me to somehow retrain the model in TF if I have imported an onnx version of it? It would save alot of time compared to the alternative, porting the whole thing over manually from Pytorch.

submitted by /u/hoagie_friend
[visit reddit] [comments]

Categories
Misc

Trying to conceptualize what a tensor "is"

I am trying to understand what a tensor is and how its properties are useful in machine learning.

I’m looking for feedback on whether I’m on the right track in this journey.

I want to answer why and how a tensor works for classifying, really, anything.

A tensor classifies by its very nature by defining a space. The more dimensions you add to that space the more complex a space you can describe.

Is the act of applying transform rules to a tensor what allows it to describe all the other variations of the concept the tensor is trying to describe? Or is it just transforming the tensor into one of the mirror representations (more on this later)?

A tensor is like a feature. Hotdog is something you can classify using a tensor. The “crispness” of that classification increases as you increase the ranks. The more ranks you add to the tensor the better you can represent what a hotdog is.

Not enough ranks and a nose feature is easily confused as a carrot. Maybe a feature described with a tensor of lower ranks will find it impossible to gain the resolution required to distinguish between a hotdog and a carrot at all.

Is there such a thing as too many ranks? Or does it just become harder and harder to train? Do more ranks increase the possibility of overfitting? I don’t know – but I’d love someone to reason though it.

The permutations of values in the dimensions the object represents must have to have an unimaginable number of mirror representations that would also represent a hotdog That’s why trained models with different values can give the same outcome. Could this be what a transform is doing?

There are even more slightly skewed representations of a hotdog that exist as the values at each dimension are wiggled. But those skews exist, for example, in the visual data because adding a rank of “what is it used for” to the data makes those visual confusions impossible. You would never confuse a hotdog for a flash light if the value of edible was added to the dataset being trained.

One or more of the tensors dimensions would be 99.99999% successful because they would all conclude to use that as the best datapoint.

But visual data doesn’t have such obvious binary data – I mean it’s binary, but it visual data can’t take the district property of:

“1” – edible and “0” – inedible.

Instead the binary nature of the decision exists in a more complex representation between the dimensional values (lol, actually also all the mirrors) – eg you can represent it as:

“0” – edible and “1” – inedible.

Training on data is the process of bumping the values at random until they fall into one of these permutations that’s able answer the question with the desired classification.

Overtraining is when you bump it to only recognize the data itself as the “space”, being the data is the defining binary decision it encodes for – not what the data is trying to embody.

submitted by /u/theregalbeagler
[visit reddit] [comments]

Categories
Misc

Data Science – Top Resources from GTC 21

Accelerated data science can dramatically boost the performance of end-to-end analytics workflows, speeding up value generation while reducing cost. Learn how companies like Spotify and Walmart use NVIDIA-accelerated data science.

Data analytics workflows have traditionally been slow and cumbersome, relying on CPU compute for data preparation, training, and deployment. Accelerated data science can dramatically boost the performance of end-to-end analytics workflows, speeding up value generation while reducing cost. Learn how companies like Spotify and Walmart use NVIDIA-accelerated data science.

The developer resources listed below are exclusively available to NVIDIA Developer Program members. Join today for free in order to get access to the tools and training necessary to build on NVIDIA’s technology platform here

On-Demand Sessions

GPU-Accelerated Model Evaluation: How we took our offline evaluation process from hours to minutes with RAPIDS
Speakers: Joseph Cauteruccio, Machine Learning Engineer, Spotify; Marc Romeyn, Machine Learning Engineer, Spotify;

Learn how Spotify utilized cuDF and Dask-CUDF to build an interactive model evaluation system that drastically reduced the time it took to evaluate our recommender systems in an offline setting. As a result, model evaluations that previously took hours to complete as CPU workloads now run in minutes, allowing us to increase our overall iteration speed and thus build better models.

Accelerated ETL, Training and Inference of Recommender Systems on the GPU with Merlin, HugeCTR, NVTabular, and Triton
Speaker: Even Oldridge, Senior Manager, Recommender Systems Framework Team, NVIDIA

In this talk, we’ll share the Merlin framework, consisting of NVTabular for ETL, HugeCTR for training, and Triton for inference serving. Merlin accelerates recommender systems on GPU, speeding up common ETL tasks, training of models, and inference serving by ~10x over commonly used methods. Beyond providing better performance, these libraries are also designed to be easy to use and integrate with existing recommendation pipelines.

How Walmart improves computationally intensive business processes with NVIDIA GPU Computing
Speakers: Richard Ulrich, Senior Director, Walmart; John  Bowman, Director, Data Science, Walmart

Over the last several years, Walmart has been developing and implementing a wide range of applications that require GPU computing to be computationally feasible at Walmart scale.   We will present CPU vs. GPU performance comparisons on a number of real-world problems from different areas of the business and we highlight, not just the performance gains from GPU computing, but also what capabilities GPU computing has enabled that would simply not be possible on CPU-only architectures. 

How Cloudera Data Platform uses a single pane of glass to deploy GPU accelerated applications s across hybrid and multi-clouds
Speakers: Karthikeyan Rajendran, Product Manager, NVIDIA; Scott McClellan, General Manager of Data Science, NVIDIA

Learn how Cloudera Data Platform uses a single pane of glass to deploy GPU-accelerated applications across hybrid and multi-clouds.

GPU-Accelerated, High-Performance Machine Learning Pipeline
Speaker: Lei Zhang, Senior Machine Learning Engineer, Adobe

The Adobe team is currently working with NVIDIA to build an unprecedented GPU-based, high-performance machine learning pipeline.

Click here to view all of the other Data Science sessions and demos on NVIDIA On-Demand.

Categories
Misc

Getting Started on Jetson – Top Resources from GTC 21

Hands-on learning is key for anyone new to AI and robotics. Priced for everyone, the Jetson Nano Developer Kit is the best way to get started learning how to create AI projects.

The NVIDIA Jetson Nano Developer Kit is a small AI computer for makers, learners, and developers. Jetson Nano is also the perfect tool to start learning about AI and robotics in real-world settings, with ready-to-try projects and the support of an active and passionate developer community. Begin developing your first AI projects today.

The developer resources listed below are exclusively available to NVIDIA Developer Program members. Join today for free in order to get access to the tools and training necessary to build on NVIDIA’s technology platform here.

On-Demand Sessions

Jetson 101: Learning Edge AI Fundamentals

Speaker: Dustin Franklin, Developer Evangelist for Jetson, NVIDIA

Discover how to get started creating your own AI-powered projects on Jetson Nano with deep learning and computer vision. 

Optimizing for Edge AI on Jetson

Speaker: John Welsh, Developer Technology Engineer of Autonomous Machines

Learn about workflows for optimizing deep learning models for inference at the edge with NVIDIA Jetson.

Demos

Getting started with Jetson Nano 2GB Developer Kit

Jetson Community Projects

Explore and learn from Jetson projects created by us and our community. These have been created for Jetson developer kits. Scroll down to see projects with code, videos and more.

Categories
Misc

Graphics – Top Resources from GTC 21

Engineers, product developers and designers worldwide attended GTC to learn how the latest NVIDIA technologies are accelerating real-time, interactive rendering and simulation workflows.

Engineers, product developers and designers worldwide attended GTC to learn how the latest NVIDIA technologies are accelerating real-time, interactive rendering and simulation workflows.

We showcased the latest NVIDIA-powered AI and real-time ray tracing tools that have made creativity faster and easier for artists and designers. We also discussed with industry luminaries about their vision for the future of AI and real-time ray tracing, and how Autodesk and Adobe have integrated the technology into their most popular applications. All of these GTC sessions are now available through NVIDIA On-Demand.

The developer resources listed below are exclusively available to NVIDIA Developer Program members. Join today for free in order to get access to the tools and training necessary to build on NVIDIA’s technology platform.

On-Demand Sessions

A Shared Vision for the Future of AI: Fireside Chat with NVIDIA founder and CEO Jensen Huang, and Adobe CTO Abhay Parasnis
Learn from the CTO of Adobe, Abhay Parasnis, and NVIDIA founder and CEO Jensen Huang about the powerful impact AI has on the world’s most inspiring creators and where it will take us next.

Digital Human for Digital Twins
Speakers: NVIDIA, wrnch, Reallusion

Watch this talk about the importance of simulating human action and movement in a digital environment, and how advancements in AI are paving the way for digital-twin humans.

The Future of GPU Ray Tracing
Speakers: Adobe/Solid Angle, OTOY, Blur Studio, Epic Games, Pixar, Redshift Rendering Technologies, Isotropix, Chaos Group

This panel discussion features leaders of GPU accelerated ray tracing sharing their thoughts around the technology and impact to creative professionals and workflows.

New SDK Releases

NVIDIA OptiX 7.3 Available Now
Download the latest version of OptiX that offers improved ray tracing performance while reducing GPU resources.

Accelerate Special Effects with NanoVDB
NanoVDB adds real time rendering GPU support for OpenVDB. Download the latest version now, which includes memory savings while generating complex special effects.

All the professional graphics and simulation sessions at GTC are now available for free on NVIDIA On-Demand.