See the machine learning benchmark results for classification, regression, and clustering |
|
Week of July 4, 2022 |
|
|
|
|
Machine learning (ML) can be a resource-intensive process. For trivial datasets running on modern platforms and up-to-date multicore hardware with lots of memory, you will barely notice the training times. However, with real-world production datasets, efficiency matters. When you are constantly retraining on new datasets and then applying results to make predictions, runtime performance can make the difference between usability and, well, not usability.
Geoff Stewart, an ML engineer at Oracle, wondered about the speed differences between the familiar scikit-learn library running on Python and the much newer Tribuo library running on Java. His article details the benchmark methodology and documents the results.
To make a realistic comparison between scikit-learn and Tribuo, Geoff considered the common ML tasks of classification, regression, and clustering. Naturally, there are many variables: which datasets, which algorithms, which data preprocessing methods, and which parameters.
If you use Python for ML, you should find this research particularly interesting.
Take care, Alan Zeichick Editor in Chief, Java Magazine @zeichick
P.S. Registration is now open for JavaOne 2022, and many of the sessions are now listed in the conference catalog. See the latest updates in our JavaOne blog post. |
|
The newest Java Magazine articles |
Java vs. Python: A comparison of machine learning libraries Scikit-learn is a very well-established Python ML library widely used in industry. Tribuo is a recently open sourced Java ML library from Oracle. Geoff Stewart compares their performance on the ML tasks of classification, regression, and clustering. This includes evaluating the results from training and testing several different models for each task. Introducing the Constrained Application Protocol (CoAP) for Java CoAP was created for smaller, constrained devices that run on low-powered networks with possibly transient or lossy connectivity. CoAP is similar to HTTP or REST communication in that the messages generally fall into the categories of GET, POST, PUT, and DELETE. Eric Bruno covers the basics of CoAP and how to program it in Java server and client applications.
Pattern matching updates for Java 19’s JEP 427: when and null Nicolai Parlog looks at changes to pattern matching in its third preview: case refinement and handling null cases. This discussion assumes that you already know how pattern matching for switch works in the second preview, which is Java 18’s JEP 420. The big picture is that switch is gaining expressiveness and is becoming a more relevant programming construct in Java.
The Eckel Index: New language features from Java 9 through Java 17 Earlier in 2022, Java Magazine published seven articles by Bruce Eckel describing new features added to the Java language since Java 8, covering everything through Java 17. Readers requested a list of the topics covered in those seven articles; here’s the list. |
|
The six learning tracks at JavaOne 2022 |
Core Java Platform track. Explore innovation fundamental to the Java platform, including the latest developments in Java virtual machines, Java language evolution, new library features, and more.
Java and Cloud Development track. Learn to build cloud native Java applications, microservices, and other containerized workloads deployed to cloud, hybrid, and multicloud environments, including Oracle Cloud Infrastructure.
App Development Tools and DevOps track. Dive into frameworks, IDEs, DevOps, app testing tools, and other developer technologies—such as GraalVM, Oracle WebLogic, Helidon, Verrazzano, Kubernetes, Micronaut, and much more.
Security and Manageability track. Check out security best practices, tools, and solutions for managing Java applications such as Java Flight Recorder, JDK Mission Control, and Java Management Service.
AI and Machine Learning track. Java is well positioned to address AI and ML. Join experts showcasing initiatives from Oracle Labs (such as Tribuo) and other ML libraries that complement Java.
Java Community track. Explore Java ecosystem-specific topics focusing on collaboration, career, and community-building initiatives.
See the latest updates in our JavaOne blog post. |
|
Join us in Las Vegas from October 17–20 to explore a wide range of Java technical and community topics that address modern application development and ecosystem participation. Keynotes, labs, and sessions showcase Java’s value—and strengthen your Java skills. Registration is open! |
|
|
Complimentary subscription to Java Magazine |
Java Magazine is a deep dive into Java and the JVM. Find detailed explanations about the language and the platform written by experts and members of the Java development team.
Join a quarter of a million subscribers in getting useful, authoritative programming information delivered directly to your inbox. |
|
|
|
|