Zoho Ventures into Chipmaking, Plans $700M Investment

Indian software giant Zoho is planning a $700 million investment in semiconductor manufacturing, according to two sources familiar with the proposal.

The Chennai-based firm, which provides global cloud software and services to businesses, is seeking incentives from the Indian government to set up a plant to produce compound semiconductors. Compound chips use materials other than silicon and have specialized commercial applications.

Zoho’s proposal is currently being reviewed by the IT ministry panel overseeing India’s semiconductor initiatives. The ministry has requested more details from Zoho on its intended chip customer base.

The move comes as India aims to establish itself as a semiconductor hub. A $10 billion incentive program will attract chipmakers and reduce reliance on imports. One source said Zoho had identified a technology partner to help establish the chipmaking operation from the ground up.

Zoho declined to comment on the matter, however, the company’s founder and CEO, Sridhar Vembu, had announced plans for a chip design project in Tamil Nadu in March without providing further details.

Zoho reported over $1 billion in annual revenue for the financial year ending March 2023, according to media reports. In February, the Indian government approved over $15 billion in investments by companies like Tata Group and CG Power to set up semiconductor plants for sectors like defence and automobiles.

The post Zoho Ventures into Chipmaking, Plans $700M Investment appeared first on AIM.

Thomas Miller, PhD, explores Northwestern University’s Online Graduate Programs in Data Science

Sponsored Content

Northwestern University Online Data Science

The integration of data science and business strategy has created a demand for professionals who can make data-driven decisions that propel their organizations forward. Graduate-level education in data science equips individuals with advanced analytical skills vital for navigating today's data-driven world.

Deep expertise in statistical analysis, machine learning, and data visualization prepares professionals to extract meaningful insights from complex datasets and drive informed decision-making across various industries, from healthcare to finance.

Students in Northwestern’s online MS in Data Science program build the essential analysis and leadership skills needed for successful data science careers. Classes are led by a distinguished faculty of industry experts.

Students develop expertise in their areas of interest by selecting a general data science track or one of five specializations:

  • Analytics and Modeling
  • Analytics Management
  • Artificial Intelligence
  • Data Engineering
  • ,or Technology Entrepreneurship

Graduates of the program leave with a highly-sought-after skill set and are well-prepared to analyze and interpret data to make informed, impactful decisions in a wide range of fields. Applications are accepted quarterly. Students study part-time, at their own pace.

Join Thomas Miller, for an online information session to learn more about Northwestern online graduate programs in Data Science. Find out about admission requirements, curriculum, faculty, certificate options, and more.

Date: Wednesday, May 29, 1–2pm CT
Link: Online Session with Thomas Miller.

More On This Topic

  • Launch your career with a Northwestern data science degree
  • Nine Tools I Wish I Mastered Before My PhD in Machine Learning
  • Free University Data Science Resources
  • 5 Free University Courses to Learn Data Science
  • 5 Free Stanford University Courses to Learn Data Science
  • Learn Probability in Computer Science with Stanford University for FREE

Exploring Natural Sorting in Python

natsort
Image by Author

What Is Natural Sorting, And Why Do We Need It?

When working with Python iterables such as lists, sorting is a common operation you’ll perform. To sort lists you can use the list method sort() to sort a list in place or the sorted() function that returns a sorted list.

The sorted() function works fine when you have a list of numbers or strings containing letters. But what about strings containing alphanumeric characters, such as filenames, directory names, version numbers, and more? The sorted() function performs lexicographic sorting.

Look at this simple example:

# List of filenames  filenames = ["file10.txt", "file2.txt", "file1.txt"]    sorted_filenames = sorted(filenames)  print(sorted_filenames)

You'll get the following output:

Output >>> ['file1.txt', 'file10.txt', 'file2.txt']  

Well, 'file10.txt' comes before 'file2.txt' in the output. Not the intuitive sorting order we’re hoping for. This is because the sorted() function uses the ASCII values of the characters to sort and not the numeric values. Enter natural sorting.

Natural sorting is a sorting technique that arranges elements in a way that reflects their natural order, particularly for alphanumeric data. Unlike lexicographic sorting, natural sorting interprets the numerical value of digits within strings and arranges them accordingly, resulting in a more meaningful and expected sequence.

In this tutorial, we’ll explore natural sorting with the Python library natsort.

Getting Started

To get started, you can install the natsort library using pip:

$ pip3 install natsort

As a best practice, install the required package in a virtual environment for the project. Because natsort requires Python 3.7 or later, make sure you’re using a recent Python version, preferably Python 3.11 or later. To learn how to manage different Python versions, read Too Many Python Versions to Manage? Pyenv to the Rescue.

Natural Sorting Basic Examples

We’ll start with simple use cases where natural sorting is beneficial:

  • Sorting file names: When working with file names containing digits, natural sorting ensures that files are ordered in the natural intuitive order.
  • Version sorting: Natural sorting is also helpful for ordering strings of version numbers, ensuring that versions are sorted based on their numerical values rather than their ASCII values. Which might not reflect the desired versioning sequence.

Now let's proceed to code these examples.

Sorting Filenames

Now that we’ve installed the natsort library, we can import it into our Python script and use the different functions that the library offers.

Let's revisit the first example of sorting file names (the one we saw at the beginning of the tutorial) where the lexicographic sorting with the function was not what we wanted.

Now let's sort the same list using the natsorted() function like so:

import natsort    # List of filenames  filenames = ["file10.txt", "file2.txt", "file1.txt"]    # Sort filenames naturally  sorted_filenames = natsort.natsorted(filenames)  print(sorted_filenames)

In this example, natsorted() function from the natsort library is used to sort the list of file names naturally. As a result, the file names are arranged in the expected numerical order:

Output >>> ['file1.txt', 'file2.txt', 'file10.txt']

Sorting Version Numbers

Let's take another similar example where we have strings denoting versions:

import natsort    # List of version numbers  versions = ["v-1.10", "v-1.2", "v-1.5"]    # Sort versions naturally  sorted_versions = natsort.natsorted(versions)    print(sorted_versions)  

Here, the natsorted() function is applied to sort the list of version numbers naturally. The resulting sorted list maintains the correct numerical order of the versions:

Output >>> ['v-1.2', 'v-1.5', 'v-1.10']

Customizing Sorting with a Key

When using the built-in sorted() function, you might have used the key parameter to customize. Similarly, the sorted() function also takes the optional key parameter which you can use to sort based on specific criteria.

Let's take an example: we have file_data which is the list of tuples. The first element in the tuple (at index 0) is the file name and the second item (at index 1) is the size of the file.

Say we want to sort based on the file size in ascending order. So we set the key parameter to lambda x: x[1] so that the file size at index 1 is used as the sorting key:

import natsort    # List of tuples containing filename and size  file_data = [  ("data_20230101_080000.csv", 100),  ("data_20221231_235959.csv", 150),  ("data_20230201_120000.csv", 120),  ("data_20230115_093000.csv", 80)  ]    # Sort file data based on file size  sorted_file_data = natsort.natsorted(file_data, key=lambda x:x[1])    # Print sorted file data  for filename, size in sorted_file_data:      print(filename, size)  

Here’s the output:

data_20230115_093000.csv 80  data_20230101_080000.csv 100  data_20230201_120000.csv 120  data_20221231_235959.csv 150

Case-Insensitive Sorting of Strings

Another use case where natural sorting is helpful is when you need case-insensitive sorting of strings. Again the lexicographic sorting based on ASCII values will not give the desired results.

To perform case-insensitive sorting, we can set alg to natsort.ns.IGNORECASE which will ignore the case when sorting. The alg key controls the algorithm that natsorted() uses:

import natsort    # List of strings with mixed case  words = ["apple", "Banana", "cat", "Dog", "Elephant"]    # Sort words naturally with case-insensitivity  sorted_words = natsort.natsorted(words, alg=natsort.ns.IGNORECASE)    print(sorted_words)

Here, the list of words with mixed case is sorted naturally with case-insensitivity:

Output >>> ['apple', 'Banana', 'cat', 'Dog', 'Elephant']

Wrapping Up

And that's a wrap! In this tutorial, we reviewed the limitations of lexicographic sorting and how natural sorting can be a good alternative when working with alphanumeric strings. You can find all the code on GitHub.

We started with simple examples and also looked at sorting based on custom keys and handling case-insensitive sorting in Python. Next, you may explore other capabilities of the natsort library. I’ll see you all soon in another Python tutorial. Until then, keep coding!

Bala Priya C is a developer and technical writer from India. She likes working at the intersection of math, programming, data science, and content creation. Her areas of interest and expertise include DevOps, data science, and natural language processing. She enjoys reading, writing, coding, and coffee! Currently, she's working on learning and sharing her knowledge with the developer community by authoring tutorials, how-to guides, opinion pieces, and more. Bala also creates engaging resource overviews and coding tutorials.

More On This Topic

  • Exploring Data Cleaning Techniques With Python
  • Exploring Infinite Iterators in Python's itertools
  • Exploring the OpenAI API with Python
  • Exploring Tree of Thought Prompting: How AI Can Learn to Reason…
  • Exploring the Power and Limitations of GPT-4
  • Exploring Neural Networks

Colab’s collaborative tools for engineers line up $21M in new funding

Engineers Adam Keating and Jeremy Andrews were tired of using spreadsheets and screenshots to collab with teammates — so they launched a startup, Colab, to build a better way. The two met as undergraduates at Memorial University of Newfoundland, where they studied mechanical engineering together. While they were completing their last internships prior to graduating […]

© 2024 TechCrunch. All rights reserved. For personal use only.

L&T Technology Services Trains 3,000 Engineers in GenAI

L&T Technology Services, one of the leading global pure-play engineering services companies, is doubling down on generative AI. Making major announcements with giants like NVIDIA, Intel, Microsoft, Google, and AWS among others, LTTS is all set to accelerate the growth of AI startups and enterprise adoption in India.

In an exclusive interview with AIM, Abhishek Sinha, chief operating officer and board member at LTTS, said that over the past year, LTTS has trained over 3,000 engineers on generative AI technologies, surpassing its initial target of 2,000.

He also said that the company has developed a training program on generative AI for its top 200-300 leaders to enable them to have informed conversations with customers about the technology’s potential applications.

Meanwhile, top Indian IT companies like TCS, Infosys, and Wipro have trained about 825,000 employees combined in generative AI. A majority of Indian IT companies are now working with customers in deploying generative AI, going beyond PoCs.

LTTS told AIM that it is currently working on nine use cases in areas like digital twins for flexible production, AI-powered optical inspection, predictive maintenance, demand forecasting, supply chain management, and medical applications.

“As we started talking to customers, the customers started reaching out to say, ‘We are also exploring and are not sure, can you do a PoC for me?’” said Sinha.

LTTS is currently conducting over 90 PoCs for customers, some paid and some unpaid, demonstrating strong interest across industry segments.

LTTS has also filed more than 52 patents related to generative AI technologies in the past nine months. In the coming months, the company looks to build more use cases and train an additional 1,800 employees.

Recently, the company concluded a 6-8 week generative AI hackathon for employees, where they were given training and problem statements from the business. The hackathon was supported by hyperscalers like Google, Amazon and Microsoft.

GenAI Needs Time to Mature for Enterprises

While generative AI presents immense potential, Sinha acknowledged customers’ concerns around intellectual property and data security when engaging service providers. He expects the industry to evolve with the creation of ‘private clouds’ by customers to share non-core data with partners for generative AI applications.

For instance, Google is working with companies like Dataiku, Redis, SingleStore, and Starburst to integrate with its Vertex AI platform, enabling customers to train AI models using their data stored in Google Cloud.

Similarly, Snowflake and NVIDIA are collaborating to allow businesses to securely build and deploy custom AI models within the Snowflake Data Cloud using their own data.

“From a consumer perspective, generative AI is an amazing thing that has happened in the world,” said Sinha. He also believes that this technology has the power to revolutionise the way individuals interact with and benefit from AI-driven solutions.

However, when it comes to the business perspective, Sinha urged for a more cautious approach. “I think the time has not come yet,” he remarked, suggesting that the adoption of generative AI in the corporate world may require more time to mature.

Sinha acknowledged that product organisations, such as Google, are actively developing and releasing generative AI models.

“Now, within the product organisations like Google and others, they are creating these models. They’re putting it out there,” he said, recognising the efforts of these companies in pushing the boundaries of generative AI.

Sinha believes that investing in generative AI makes perfect business sense for companies like Google, highlighting the potential benefits and opportunities that generative AI presents for these organisations.

But for service providers, not so much. “I think there’s still some time to go,” he said, indicating that the evolution of generative AI in these contexts is still in its early stages.

“Customers are dabbling with the usage of GenAI, but they are doing so within their boundaries, within their companies. Their IP belongs to them. Their employees can do whatever play with that IP.

“So if you create a private cloud, private co-pilot or whatever for the customer data to be used by their employees, there’s no risk,” he remarked.

However, Sinha pointed out that exposing data beyond a company’s employees to outside parties introduces risks. He believes the industry will evolve to create secure clouds and bubbles, differentiating between core and non-core data.

Core data, such as critical algorithms, will remain protected, while non-core data may be shared with trusted partners.

In a recent conversation with AIM, Srinivas Konidena, CTO and VP at ADP, a payroll and HR system provider, echoed similar views and emphasised the importance of data security and privacy in their business.

“We are very paranoid about our data,” said Konidena, adding that “Whenever we make a decision, we are reminded not to think of it as our data. It’s the client’s and employee’s data.”

However, this is not the case with companies in the West; they are already at it in terms of implementing generative AI solutions. For instance, Accenture recorded a cumulative GenAI revenue of $1.1 billion during the first two quarters.

Capgemini claimed to be working on 300+ generative AI projects. Cognizant mentioned having 250 early engagements using its generative AI services and solutions, with 350+ opportunities in its pipeline.

The post L&T Technology Services Trains 3,000 Engineers in GenAI appeared first on AIM.

Feature Engineering for Beginners

Feature Engineering for Beginners
Image created by Author

Introduction

Feature engineering is one of the most important aspects of the machine learning pipeline. It is the practice of creating and modifying features, or variables, for the purposes of improving model performance. Well-designed features can transform weak models into strong ones, and it is through feature engineering that models can become both more robust and accurate. Feature engineering acts as the bridge between the dataset and the model, giving the model everything it needs to effectively solve a problem.

This is a guide intended for new data scientists, data engineers, and machine learning practitioners. The objective of this article is to communicate fundamental feature engineering concepts and provide a toolbox of techniques that can be applied to real-world scenarios. My aim is that, by the end of this article, you will be armed with enough working knowledge about feature engineering to apply it to your own datasets to be fully-equipped to begin creating powerful machine learning models.

Understanding Features

Features are measurable characteristics of any phenomenon that we are observing. They are the granular elements that make up the data with which models operate upon to make predictions. Examples of features can include things like age, income, a timestamp, longitude, value, and almost anything else one can think of that can be measured or represented in some form.

There are different feature types, the main ones being:

  • Numerical Features: Continuous or discrete numeric types (e.g. age, salary)
  • Categorical Features: Qualitative values representing categories (e.g. gender, shoe size type)
  • Text Features: Words or strings of words (e.g. "this" or "that" or "even this")
  • Time Series Features: Data that is ordered by time (e.g. stock prices)

Features are crucial in machine learning because they directly influence a model's ability to make predictions. Well-constructed features improve model performance, while bad features make it harder for a model to produce strong predictions. Feature selection and feature engineering are preprocessing steps in the machine learning process that are used to prepare the data for use by learning algorithms.

A distinction is made between feature selection and feature engineering, though both are crucial in their own right:

  • Feature Selection: The culling of important features from the entire set of all available features, thus reducing dimensionality and promoting model performance
  • Feature Engineering: The creation of new features and subsequent changing of existing ones, all in the aid of making a model perform better

By selecting only the most important features, feature selection helps to only leave behind the signal in the data, while feature engineering creates new features that help to model the outcome better.

Basic Techniques in Feature Engineering

While there are a wide range of basic feature engineering techniques at our disposal, we will walk through some of the more important and well-used of these.

Handling Missing Values

It is common for datasets to contain missing information. This can be detrimental to a model's performance, which is why it is important to implement strategies for dealing with missing data. There are a handful of common methods for rectifying this issue:

  • Mean/Median Imputation: Filling missing areas in a dataset with the mean or median of the column
  • Mode Imputation: Filling missing spots in a dataset with the most common entry in the same column
  • Interpolation: Filling in missing data with values of data points around it

These fill-in methods should be applied based on the nature of the data and the potential effect that the method might have on the end model.

Dealing with missing information is crucial in keeping the integrity of the dataset in tact. Here is an example Python code snippet that demonstrates various data filling methods using the pandas library.

import pandas as pd  from sklearn.impute import SimpleImputer    # Sample DataFrame  data = {'age': [25, 30, np.nan, 35, 40], 'salary': [50000, 60000, 55000, np.nan, 65000]}  df = pd.DataFrame(data)    # Fill in missing ages using the mean  mean_imputer = SimpleImputer(strategy='mean')  df['age'] = mean_imputer.fit_transform(df[['age']])    # Fill in the missing salaries using the median  median_imputer = SimpleImputer(strategy='median')  df['salary'] = median_imputer.fit_transform(df[['salary']])    print(df)

Encoding of Categorical Variables

Recalling that most machine learning algorithms are best (or only) equipped to deal with numeric data, categorical variables must often be mapped to numerical values in order for said algorithms to better interpret them. The most common encoding schemes are the following:

  • One-Hot Encoding: Producing separate columns for each category
  • Label Encoding: Assigning an integer to each category
  • Target Encoding: Encoding categories by their individual outcome variable averages

The encoding of categorical data is necessary for planting the seeds of understanding in many machine learning models. The right encoding method is something you will select based on the specific situation, including both the algorithm at use and the dataset.

Below is an example Python script for the encoding of categorical features using pandas and elements of scikit-learn.

import pandas as pd  from sklearn.preprocessing import OneHotEncoder, LabelEncoder    # Sample DataFrame  data = {'color': ['red', 'blue', 'green', 'blue', 'red']}  df = pd.DataFrame(data)    # Implementing one-hot encoding  one_hot_encoder = OneHotEncoder()  one_hot_encoding = one_hot_encoder.fit_transform(df[['color']]).toarray()  df_one_hot = pd.DataFrame(one_hot_encoding, columns=one_hot_encoder.get_feature_names(['color']))    # Implementing label encoding  label_encoder = LabelEncoder()  df['color_label'] = label_encoder.fit_transform(df['color'])    print(df)  print(df_one_hot)

Scaling and Normalizing Data

For good performance of many machine learning methods, scaling and normalization needs to be performed on your data. There are several methods for scaling and normalizing data, such as:

  • Standardization: Transforming data so that it has a mean of 0 and a standard deviation of 1
  • Min-Max Scaling: Scaling data to a fixed range, such as [0, 1]
  • Robust Scaling: Scaling high and low values iteratively by the median and interquartile range, respectively

The scaling and normalization of data is crucial for ensuring that feature contributions are equitable. These methods allow the varying feature values to contribute to a model commensurately.

Below is an implementation, using scikit-learn, that shows how to complete data that has been scaled and normalized.

import pandas as pd  from sklearn.preprocessing import StandardScaler, MinMaxScaler, RobustScaler    # Sample DataFrame  data = {'age': [25, 30, 35, 40, 45], 'salary': [50000, 60000, 55000, 65000, 70000]}  df = pd.DataFrame(data)    # Standardize data  scaler_standard = StandardScaler()  df['age_standard'] = scaler_standard.fit_transform(df[['age']])    # Min-Max Scaling  scaler_minmax = MinMaxScaler()  df['salary_minmax'] = scaler_minmax.fit_transform(df[['salary']])    # Robust Scaling  scaler_robust = RobustScaler()  df['salary_robust'] = scaler_robust.fit_transform(df[['salary']])    print(df)

The basic techniques above along with the corresponding example code provide pragmatic solutions for missing data, encoding categorical variables, and scaling and normalizing data using powerhouse Python tools pandas and scikit-learn. These techniques can be integrated into your own feature engineering process to improve your machine learning models.

Advanced Techniques in Feature Engineering

We now turn our attention to to more advanced featured engineering techniques, and include some sample Python code for implementing these concepts.

Feature Creation

With feature creation, new features are generated or modified to fashion a model with better performance. Some techniques for creating new features include:

  • Polynomial Features: Creation of higher-order features with existing features to capture more complex relationships
  • Interaction Terms: Features generated by combining several features to derive interactions between them
  • Domain-Specific Feature Generation: Features designed based on the intricacies of subjects within the given problem realm

Creating new features with adapted meaning can greatly help to boost model performance. The next script showcases how feature engineering can be used to bring latent relationships in data to light.

import pandas as pd  import numpy as np    # Sample DataFrame  data = {'x1': [1, 2, 3, 4, 5], 'x2': [10, 20, 30, 40, 50]}  df = pd.DataFrame(data)    # Polynomial Features  df['x1_squared'] = df['x1'] ** 2  df['x1_x2_interaction'] = df['x1'] * df['x2']    print(df)

Dimensionality Reduction

In order to simplify models and increase their performance, it can be useful to downsize the number of model features. Dimensionality reduction techniques that can help achieve this goal include:

  • PCA (Principal Component Analysis): Transformation of predictors into a new feature set comprised of linearly independent model features
  • t-SNE (t-Distributed Stochastic Neighbor Embedding): Dimension reduction that is used for visualization purposes
  • LDA (Linear Discriminant Analysis): Finding new combinations of model features that are effective for deconstructing different classes

In order to shrink the size of your dataset and maintain its relevancy, dimensional reduction techniques will help. These techniques were devised to tackle the high-dimensional issues related to data, such as overfitting and computational demand.

A demonstration of data shrinking implemented with scikit-learn is shown next.

import pandas as pd  from sklearn.decomposition import PCA    # Sample DataFrame  data = {'feature1': [2.5, 0.5, 2.2, 1.9, 3.1], 'feature2': [2.4, 0.7, 2.9, 2.2, 3.0]}  df = pd.DataFrame(data)    # Use PCA for Dimensionality Reduction  pca = PCA(n_components=1)  df_pca = pca.fit_transform(df)  df_pca = pd.DataFrame(df_pca, columns=['principal_component'])    print(df_pca)

Time Series Feature Engineering

With time-based datasets, specific feature engineering techniques must be used, such as:

  • Lag Features: Former data points are used to derive model predictive features
  • Rolling Statistics: Data statistics are calculated across data windows, such as rolling means
  • Seasonal Decomposition: Data is partitioned into signal, trend, and random noise categories

Temporal models need varying augmentation compared to direct model fitting. These methods follow temporal dependence and patterns to make the predictive model sharper.

A demonstration of time series features augmenting applied using pandas is shown next as well.

import pandas as pd  import numpy as np    # Sample DataFrame  date_rng = pd.date_range(start='1/1/2022', end='1/10/2022', freq='D')  data = {'date': date_rng, 'value': [100, 110, 105, 115, 120, 125, 130, 135, 140, 145]}  df = pd.DataFrame(data)  df.set_index('date', inplace=True)    # Lag Features  df['value_lag1'] = df['value'].shift(1)    # Rolling Statistics  df['value_rolling_mean'] = df['value'].rolling(window=3).mean()    print(df)

The above examples demonstrate practical applications of advanced feature engineering techniques, through usage of pandas and scikit-learn. By employing these methods you can enhance the predictive power of your model.

Practical Tips and Best Practices

Here are a few simple but important tips to keep in mind while working through your feature engineering process.

  • Iteration: Feature engineering is a trial-and-error process, and you will get better with it each time you iterate. Test different feature engineering ideas to find the best set of features.
  • Domain Knowledge: Utilize expertise from those who know the subject matter well when creating features. Sometimes subtle relationships can be captured with realm-specific knowledge.
  • Validation and Understanding of Features: By understanding which features are most important to your mode, you are equipped to make important decisions. Tools for determining feature importance include:
    • SHAP (SHapley Additive exPlanations): Helping to quantify the contribution of each feature in predictions
    • LIME (Local Interpretable Model-agnostic Explanations): Showcasing the meaning of model predictions in plain language

An optimal mix of complexity and interpretability is necessary for having both good and simple to digest results.

Conclusion

This short guide has addressed fundamental feature engineering concepts, as well as basic and advanced techniques, and practical recommendations and best practices. What many would consider some of the most important feature engineering practices — dealing with missing information, encoding of categorical data, scaling data, and creation of new features — were covered.

Feature engineering is a practice that becomes better with execution, and I hope you have been able to take something away with you that may improve your data science skills. I encourage you to apply these techniques to your own work and to learn from your experiences.

Remember that, while the exact percentage varies depending on who tells it, a majority of any machine learning project is spent in the data preparation and preprocessing phase. Feature engineering is a part of this lengthy phase, and as such should be viewed with the import that it demands. Learning to see feature engineering what it is — a helping hand in the modeling process — should make it more digestible to newcomers.

Happy engineering!

Matthew Mayo (@mattmayo13) holds a Master's degree in computer science and a graduate diploma in data mining. As Managing Editor, Matthew aims to make complex data science concepts accessible. His professional interests include natural language processing, machine learning algorithms, and exploring emerging AI. He is driven by a mission to democratize knowledge in the data science community. Matthew has been coding since he was 6 years old.

More On This Topic

  • Feature Store Summit 2022: A free conference on Feature Engineering
  • Building a Tractable, Feature Engineering Pipeline for Multivariate…
  • Using RAPIDS cuDF to Leverage GPU in Feature Engineering
  • A Practical Approach To Feature Engineering In Machine Learning
  • Free Data Engineering Course for Beginners
  • Feature Stores for Real-time AI & Machine Learning

Cisco’s Splunk Acquisition Should Help Security Pros See Threats Sooner in Australia and New Zealand

Cisco announced in 2023 it would acquire Splunk for US $28 billion (AU $42.4 billion). Described as “the Moby Dick” of deals, it aimed to combine Cisco’s extended detection and response systems with Splunk’s security information and event management tech.

Because of both Splunk and Cisco’s existing customer bases in Australia and New Zealand, this is big news for these local markets. Since the deal closed in March 2024, customers have been wondering what the combination could mean for their security technology future.

Craig Bates, Splunk vice president of Australia and New Zealand, said the deal will help customers defend against modern threats by tooling security operations centres up with end-to-end security and observability. He added security data unification will be key to organisations in the future as they battle threats increasingly launched with the aid of AI.

What does the Cisco and Splunk combination mean for cyber security software customers?

Cisco touted the Splunk deal as driving the next generation of AI-enabled security and observability. Primarily, it meant adding Splunk’s SIEM threat prediction and prevention capabilities to its existing XDR stable, creating a powerful XDR and SIEM proposition.

Bates said unifying the network and endpoint strengths of Cisco with Splunk’s security and observability solution, underpinned by an AI-powered platform, would support customer resilience. He added the combination would accelerate Splunk’s existing roadmap.

SEE: Our guide to the best SIEM tools and software available on the market

“One thing that is clear in Australia and New Zealand is that, today, every business is a digital business. The impact of outages and the like are now a board-level concern, and having that end-to-end capability will allow organisations to take the next step on their resilience journey.”

Creating the ‘SOC of the future’

One of Splunk’s goals has been to help cyber security teams create the ‘SOC of the future.’ Part of this has been taking a federated approach to data so clients could achieve fuller visibility and attack surface coverage. It has also been about unifying security operations to break down silos that have existed within organisations across the detection, investigation and response chain.

Bates said the Cisco and Splunk combination will support Splunk’s commitment to SOC evolution and threat defence, including those likely to blossom in an AI era. He said the combination of Cisco capabilities like user protection and cloud protection with Splunk’s security platform supported end-to-end visibility for organisations in a modern threat environment.

Increasing security observability

One of the hallmarks of the digital business reality is that organisations need to be online, available and proactive around the clock. Bates argued this is boosting the market demand for full-stack observability capabilities and that Cisco and Splunk’s offering was the most comprehensive across all types of environments for technology customers.

He pointed to coverage and synergies between the two combined organisations across on-premise, hybrid and multicloud, which would support organisations’ desires to get a more proactive understanding of their digital systems to support better customer experiences. “Observability is top of mind, and it is becoming a topline priority,” Bates said.

DOWNLOAD: Brush up on XDR systems with this beginners guide from Sophos

Unification of security-related data

Data unification will be another advantage of the Cisco and Splunk deal. Bates said the combination of Cisco and Splunk could allow customers to bring together data across security, IT and engineering teams. He said this would move security operations towards more complete visibility, something that he expects will be “table stakes” in the era of artificial intelligence.

Readiness for cyber security in an AI era

Splunk believes customers will utilise AI to automate and improve activities they undertake across security investigation and response. Bates said this would help customers become more proactive, supporting the identification and mitigation of threats faster than previously.

The addition of AI to the team could also help close the cyber skills gap, he said. With Australia and New Zealand in the midst of a tech skills crisis, cyber security professionals are among the hardest to come by, a pressure that AI capacities could help ease over time.

Splunk’s State of Security 2024: The Race to Harness AI report found that, of 1,600 global security leaders, 93% were using public generative AI themselves, 46% thought it would be ‘game-changing’ for security and 50% were developing a formal plan for AI deployment. The top foreseen use cases of generative AI included identifying risks and threat intelligence analysis.

The top four cyber security use cases for generative AI.
The top four cyber security use cases for generative AI. Image: Splunk

The top four cyber security use cases for generative AI. Image: Splunk

Bates said coming together with Cisco would support organisations with the AI challenge. Splunk hopes the unification of data will help organisations deploy AI to enhance detection, response and remediation, as well as combat an expected rise in AI-related threats from bad actors.

Leveraging channel partners for value

Splunk has promised channel partners will have a long-term opportunity in Australia and New Zealand as the company comes together with Cisco. “Our partner programs are remaining as is and will continue to go to market in the same way across both organisations,” Bates said.

The combined capabilities of Cisco and Splunk will help partners build practices with end-to-end offerings, Bates said. He added the key to this will be the channel’s ability to provide business value for customers, including supporting them during a tech skills shortage.

“Skills continue to be a real challenge for customers — they don’t have the people or time to step out of the day-to-day business to think about some of the innovations they could drive. Partners able to clearly articulate business value across our offering will make a big impact,” he said.

VMware Makes Workstation Pro and Fusion Pro Free for Personal Use

VMware

Previously, Workstation Pro cost $199 for a new license, and Fusion Pro was priced at $149. Now, anyone can download and use the fully-featured Pro versions at no cost for personal, non-commercial use. A free personal use license can be obtained by registering for a VMware account.

However, commercial organizations still require paid licenses to use Workstation Pro and Fusion Pro. For businesses, Workstation Pro is licensed at $199 per device and Fusion Pro costs $199 per user. Support and subscription options are also available for enterprises.

VMware Workstation Pro is a hosted hypervisor that runs on top of an existing Windows or Linux operating system, allowing users to create and run multiple virtual machines on the same physical computer, while VMware Fusion Pro enables running Windows and Linux virtual machines on Mac computers.

This makes it a perfect choice for developers and computer students to deploy their virtual machines with the least complexity possible.

Furthermore, VMWare is retiring the earlier versions of VMWare Workstation and VMWare Fusion. For a seamless transition to the latest version, they’ve mentioned detailed steps for existing users on how to upgrade to the pro variants.

They also shared a table to explain migration in simple terms:

VMware Makes Workstation Pro and Fusion Pro Free for Personal Use

While attempting to download the Workstation Pro and Fusion Pro free for personal use, make sure to select the Personal variants; otherwise, it will throw an error saying Not Entitled.

The post VMware Makes Workstation Pro and Fusion Pro Free for Personal Use appeared first on AIM.

OpenAI Hires Google Veteran to Build  ‘Google Search Alternative’

OpenAI has hired Shivakaram Venkataraman, a 21-year veteran of Google, as its new vice president. Venkataraman’s extensive experience in search advertising at Google makes him a valuable asset for OpenAI as it plans to build ‘Google Search Alternative’.

According to his LinkedIn profile, Venkataraman previously led Google’s search ads business and has a deep understanding of the company’s search infrastructure and data systems. His expertise will likely prove invaluable as OpenAI develops its own search product.

Originally from Hyderabad, Venkataraman earned his degree in computer science engineering from the Indian Institute of Technology, Chennai, in 1990. He then pursued a doctorate in computer science at the University of Wisconsin-Madison in the US.

Venkataraman began his career as a summer intern at Hewlett-Packard Laboratories and later worked as a software engineer at IBM.

At Google, he rose to lead its core search advertisement business and was promoted to vice president of Google Labs, a division focusing on virtual and augmented reality research, revived after more than a decade.

He was also appointed the head of Google’s blockchain division to oversee “blockchain and other next-gen distributed computing and data storage technologies.”

The hiring comes as OpenAI prepares to launch its own search engine, which could potentially compete with Google’s core product.

As OpenAI’s new Vice President, Venkataraman’s role is unclear, but his expertise in search advertising and infrastructure will undoubtedly be a major asset for the company. OpenAI did not respond to AIM’s request for comment by the time of writing.

Meanwhile, in order to tackle the likes of Perplexity AI and ChatGPT, Google introduced ‘AI Overviews’ at Google I/O 2024. This feature generates summaries for the queries provided by the user.

“Sometimes you want a quick answer, but you don’t have time to piece together all the information you need. Search will do the work for you with AI Overviews,” said Liz Reid VP of Google Search.

Powered by the Gemini model customised for Google Search, it combines Gemini’s advanced capabilities — including multi-step reasoning, planning, and multimodality — with best-in-class Search systems.

The post OpenAI Hires Google Veteran to Build ‘Google Search Alternative’ appeared first on AIM.

Meet the Child Prodigy from India Who Helped Build OpenAI’s GPT-4o

OpenAI recently released GPT-4o at its latest Spring Update event, which won hearts with its ‘omni’ capabilities across text, vision, and audio. OpenAI’s demos, which included a real-time translator, a coding assistant, an AI tutor, a friendly companion, a poet, and a singer, soon became the talk of the town.

However, little did the world know that an Indian who was a child prodigy, Prafulla Dhariwal, was behind it until OpenAI chief Sam Altman posted about it on X.

“GPT-4o would not have happened without the vision, talent, conviction, and determination of Prafulla Dhariwal over a long period of time. that (along with the work of many others) led to what i hope will turn out to be a revolution in how we use computers,” posted OpenAI chief Sam Altman on X, praising Dhariwal’s efforts behind GPT-4o.

“GPT-4o (o for ‘Omni’) is the first model to come out of the Omni team, OpenAI’s first natively fully multimodal model. This launch was a huge org-wide effort, but I’d like to give a shout out to a few of my awesome team members who made this magical model even possible!” posted Dhariwal on X, highlighting the contributions of his team.

Who is Prafulla Dhariwal?

Dhariwal hails from Pune, India, and has always been a child prodigy, winning tech competitions since his early years. His parents recognised his natural talent at a very young age. “When he was only one-and-a-half years old, we bought a computer,” his mother recalled in an old interview.

She added that whenever Prafulla’s dad sent an email, he would sit next to him, eager to learn. At 11, he designed his first website.

Here's prafulla dhariwal, a young prodigy. Chad vibes were observed from beginning
https://t.co/b5LazKx7Dr https://t.co/SMA6cNCpJU pic.twitter.com/LIVdEJgsEU

— Adarsh (@adarshxs) May 16, 2024

His feats don’t end there. Prafulla also featured in a Pogo ad called ‘Amazing Kid Genius’ and received a scholarship for a 10-day trip to NASA.

In high school, he scored 295 out of 300 in the physics-chemistry-mathematics (PCM) group in his Class XII exams and achieved a score of 190 in the Maharashtra Technical Common Entrance Test (MT-CET). Additionally, he scored 330 out of 360 in the Joint Entrance Exam (JEE-Mains).

Prafulla received the prestigious Abasaheb Naravane Memorial Award for achieving the highest marks in PCM. He also represented India in international Olympiads, including the International Astronomy Olympiad in China and the International Mathematics Olympiad in Argentina.

After completing high school, Dhariwal chose to pursue his undergraduate studies at the Massachusetts Institute of Technology (MIT) instead of IIT. He studied there from 2013 to 2017, majoring in computer science and mathematics.

When asked if it was a tough choice to make between IIT and MIT, he said, “Absolutely! Both institutes are the best. Fortunately, MIT is providing me a scholarship that includes both tuition fees and residential facilities. That’s why I have decided to go to MIT,” said Dhariwal in an old interview.

The Journey So Far

After completing his undergraduate degree, Dhariwal joined OpenAI in 2017 as a research scientist, focusing on generative models and unsupervised learning.

Dhariwal has also worked on the Jukebox project, a generative model for music that can create high-fidelity and diverse songs with coherence for several minutes. This model uses a multi-scale VQ-VAE to compress raw audio into discrete codes, which are then modeled using autoregressive Transformers.

Building on his expertise in generative models, Dhariwal has also contributed to the development of diffusion models that outperform GANs in image synthesis. These diffusion models achieve superior image sample quality and can be used for both unconditional and conditional image synthesis, further showcasing his impact on the field of AI.

Moreover, he has made significant contributions to advanced AI models, such as Glow for generating high-resolution images quickly, the Variational Lossy Auto-encoder to prevent issues in autoencoders, PPO (Proximal Policy Optimisation) for reinforcement learning, and GamePad for applying reinforcement learning to formal theorem proving.

With OpenAI’s model now capable of engaging in natural, real-time voice conversations, the next pitstop for OpenAI appears to be music generation, and undoubtedly, Dhariwal will be at the center of it all.

The post Meet the Child Prodigy from India Who Helped Build OpenAI’s GPT-4o appeared first on AIM.