# Movie review classification -------------------------------------------------------------------------------- title: "Introduction" description: "Create a powerful ML pipeline that analyzes historic ZOHO CRM data and meaningfully predicts the likeliness of a successful deal using the Catalyst QuickML components." last_updated: "2026-08-20T10:20:36.197Z" source: "https://docs.catalyst.zoho.com/en/tutorials/movie-review-classification/introduction/" service: "All Services" -------------------------------------------------------------------------------- # Movie review classification ## Introduction This tutorial will guide you through building a movie recommendation model using [Catalyst QuickML](https://docs.catalyst.zoho.com/en/quickml/getting-started/introduction/). The model predicts movies that a user is most likely to enjoy by analyzing historical interactions between users and movies. We'll provide you with a sample dataset that can be used as the data source for the model. Before proceeding with the steps, let’s understand the basics of a recommendation system. A recommendation system is a branch of machine learning that focuses on predicting user preferences and delivering personalized suggestions. It does this by analyzing factors such as past user interactions, behavior patterns, item attributes, and demographic data. These systems are widely applied in domains like ecommerce, media streaming, and social networking, helping users discover relevant products, movies, books, or other content tailored to their interests. By providing personalized suggestions, recommendation systems enhance user satisfaction, boost engagement, improve retention, and drive business growth by presenting the most relevant options for each user. To learn more about recommendation models, their types, and evaluation metrics, refer to our [help document](https://docs.catalyst.zoho.com/en/quickml/help/learning-center/recommendation/). Now, let's have a quick overview of the tutorial. 1. Pre-process the Dataset Begin by [cleaning and preparing the datasets](https://docs.catalyst.zoho.com/en/quickml/help/data-preprocessing/data-cleaning/) — typically a Item features dataset (movie attributes), Interaction dataset (movie rating attributes), and User features dataset (user attributes). This step involves handling missing values, encoding categorical fields, and applying necessary data transformations to make the data ready for training. 2. Build the Unified Recommendation Pipeline In Catalyst QuickML, you can create a single [pipeline](https://docs.catalyst.zoho.com/en/quickml/help/create-data-pipeline/) for a recommendation model that integrates both data preprocessing and ML operations. Use [node operations](https://docs.catalyst.zoho.com/en/quickml/help/operations-in-quickml/encoding/) to perform tasks such as selecting or dropping fields and applying the appropriate encoder to transform categorical variables. Next, link the processed datasets directly to your chosen [recommendation algorithm](https://docs.catalyst.zoho.com/en/quickml/help/ml-algorithms/recommendation/) within the same pipeline. QuickML will then automatically evaluate the trained model to assess its accuracy and recommendation quality—delivering a unified, reusable workflow for your end-to-end process. 3. Deploy the Model via Endpoint Once trained, generate an [endpoint URL](https://docs.catalyst.zoho.com/en/quickml/help/pipeline-endpoints/) in QuickML. This endpoint allows external applications to send user or item data and receive real-time movie recommendations from the model. The final output, after creating all of the required data and ML pipelines in the [Catalyst console](https://console.catalyst.zoho.com/baas/index), will look like this: -------------------------------------------------------------------------------- title: "Prerequisites" description: "This tutorial will guide you through building a movie review classification model using Catalyst QuickML." last_updated: "2026-08-20T10:20:36.197Z" source: "https://docs.catalyst.zoho.com/en/tutorials/movie-review-classification/prerequisites/" service: "All Services" related: - Machine Learning Algorithms (/en/quickml/help/ml-algorithms/classification-algorithms/) -------------------------------------------------------------------------------- # Prerequisites Since this tutorial is focused on [Catalyst QuickML](https://docs.catalyst.zoho.com/en/quickml/getting-started/introduction/), all tasks, including building data and [ML pipelines](https://docs.catalyst.zoho.com/en/quickml/help/create-ml-pipelines/), creating models, and training them for classification, will be performed within the [Catalyst console](https://console.catalyst.zoho.com/baas/index). Before getting started, download the following dataset: * **Movie review data ** This tutorial will guide you through the preprocessing and extraction operations on this dataset, which will then be used for training the sentiment analysis model. Now, let's begin the tutorial. -------------------------------------------------------------------------------- title: "Create a project" description: "This tutorial will guide you through building a movie review classification model using Catalyst QuickML." last_updated: "2026-08-20T10:20:36.197Z" source: "https://docs.catalyst.zoho.com/en/tutorials/movie-review-classification/create-a-project/" service: "All Services" related: - Catalyst Projects (/en/getting-started/catalyst-projects) -------------------------------------------------------------------------------- # Create a Project Let's create a Catalyst project from the Catalyst console. 1. Log in to the Catalyst console, then click Create a new Project <br /> 2. Enter the project's name as **Movie-Reviews-SentimentAnalysis** in the pop-up window that appears. <br /> 3. Click Create. Your project will be created and opened. <br /> -------------------------------------------------------------------------------- title: "Upload the dataset" description: "This tutorial will guide you through building a movie review classification model using Catalyst QuickML." last_updated: "2026-08-20T10:20:36.197Z" source: "https://docs.catalyst.zoho.com/en/tutorials/movie-review-classification/upload-dataset/" service: "All Services" related: - Create Your First pipeline (/en/quickml/help/create-ml-pipeline) -------------------------------------------------------------------------------- # Upload the Dataset Let's begin by uploading the dataset in Catalyst QuickML using the available dataset dataset connectors. 1. Navigate to the QuickML service in the Catalyst console and click Start Exploring. <br /> 2. Navigate to the Datasets component and click Import Dataset. <br /> 3. An Import Dataset pop-up will be displayed. In the **Data Sources** step, navigate to File Upload and click Upload File. <br /> Upload the movie reviews dataset that you have already downloaded. We can have the Quotes Type as "**Double Quotes(")**" and Escape Character as "**Backslash(\)**" and click Next. <br /> The name of the dataset will be auto-populated based on the uploaded file. You can edit it, if required, and click Upload. <br /> The dataset is now uploaded successfully. <br /> The dataset will be displayed in the **All Datasets** section. You can click on the dataset name to view the dataset's details. <br /> Once you click on the **Movie Review Sentiments dataset** in the list, you'll be redirected to the Dataset Details page. 1. The dataset's [statistical profile](https://docs.catalyst.zoho.com/en/quickml/help/data-profiler-and-viewer/) overview, sample preview, and visualization chart are shown below. <br /> <br /> 2. In addition to it, upon selecting the text column, statistical information about the textual records (reviews in our case) and a [word cloud](https://docs.catalyst.zoho.com/en/quickml/help/learning-center/text-analytics/#visualizations) are generated automatically once the dataset is uploaded. <br /> -------------------------------------------------------------------------------- title: "Create an Pipeline" description: "This tutorial will guide you through building a movie review classification model using Catalyst QuickML." last_updated: "2026-08-20T10:20:36.197Z" source: "https://docs.catalyst.zoho.com/en/tutorials/movie-review-classification/create-pipeline/" service: "All Services" related: - ML Algorithms in QuickML (/en/quickml/help/ml-algorithms/classification-algorithms) - Operations in QuickML (/en/quickml/help/operations-in-quickml/encoding) -------------------------------------------------------------------------------- # Create a text analytics model ## Create a text analytics pipeline Let's create a [text analytics pipeline](https://docs.catalyst.zoho.com/en/quickml/help/pipeline-builder-interface/walkthrough/#pipeline) using the uploaded dataset. Click **Create** in the bottom left corner of the QuickML page and select Pipeline from the options shown. <br /> In the Create Pipeline window, choose Text Analytics as the pipeline type. <br /> You'll be asked to choose a pipeline builder mode that works for you. Select Smart Mode. <br /> 2. In the Create Pipeline pop-up window, name the pipeline **Movie Reviews sentiment** and the model **Movie Reviews sentiment model**. Then, select the **Movie Review Sentiments dataset** in the Choose Dataset dropdown and select the target column **Label** (since we're building a model to extract the sentiments from movie reviews). <br /> Click Create to create the pipeline. You'll land on the Text analytics Smart mode pipeline builder. Smart mode builder is a prebuilt pipeline template with the required operations to build a pipeline seamlessly in short time. <br /> Smart mode pipeline builder contains three main stages: Preprocessing, Extraction, and Algorithm in the pipeline template, a sample preview as shown above. Also, if you navigate to the profile tab in the builder beside the sample preview, there is an option to show the profile for sample data and whole data. <br /> Profile for the Sample data is generated by default after configuring each operation in the pre-processing and extraction stages, but if you need a profile of the whole dataset during the pipeline building process, select whole data and click generate. ## Pre-processing configuration The first step in building any ML model is pre-processing. In the smart builder, we have predefined, required, pre-processing operations. These operations are different from the prediction models that we had in earlier tutorials. Below is a list of operations to be configured in the pre-processing stage: 1. Tokenization : Word 2. Case conversion : Lower 3. Stemming : Porter stemming 4. Lemmatization : WordNet Lemmatizer 5. Noise removal : Stop words 6. Text Normalization : Default 7. Label Encoder : Target column Let's go through each stage and see why it's necessary to configure it. 1. Tokenization Tokenization refers to breaking down a large amount of text into smaller units like words. Here, select the option **Word** in the tokenization operation. <br /> 2. Case conversion This converts the raw text data with different cases into a unified case. Here, set case conversion as **Lower**. <br /> 3. Stemming and 4. Lemmatization Both these techniques reduce words to their root forms, helping normalize word variations for more consistent analysis. Here, configure the stemming operation with **Porter Stemmer**, a predefined library of words. <br /> Configure the lemmatization operation with **WordNet Lemmatizer**, a predefined library of words. <br /> 5. Noise Removal Noise removal removes unwanted words or parts of the sentences. Here, select the noise removal method as **Stop Words**, which fetches the unwanted words from its predefined library. <br /> 6. Text Normalization Text normalization converts different formats of text into a standard format using dictionary mapping. Here, set the text normalization operation to **Default**. <br /> 7. Label Encoder Label encoding is a method used to transform categorical variables into numerical values by assigning a unique integer to each category. In our movie reviews dataset, the target column **Label** contains the categorical values POSITIVE and NEGATIVE. These values need to be encoded in order to convert them to a numerical format. <br /> The pre-processing stage configuration is completed. ## Pre-processing execution Once all the pre-processing operations are configured, they need to be applied to the dataset. Click **Run** (as shown in the image below) and wait for the execution to finish. <br /> Upon completion, the operations are executed, and the pipeline is saved. Now, you can view the [profile](https://docs.catalyst.zoho.com/en/quickml/help/data-profiler-and-viewer/) and [preview](https://docs.catalyst.zoho.com/en/quickml/help/data-profiler-and-viewer/) for each operation in the pre-processing stage on sample data. To generate a profile for the entire dataset (instead of just the sample data), go to the Profile tab, choose **Whole Data** in the Generate Profile pop-up, and click Generate. <br /> This will apply all the pre-processing operations configured to the whole dataset and generate a profile for each operation. For now we selected Noise Removal stage to view the whole dataset profile. <br /> Now the pre-processing stage is configured and executed, and the data is transformed. Let's configure the extraction stage. ## Extraction configuration Textual data can't be fed directly into an algorithm; it must first be converted into a numerical format. The feature extraction stage, or extraction, contains several vectorization techniques that help us convert all the textual data in our Text column into numerical features. In this context, each word, sentence, or character presented to a model is treated as a feature. In the extraction stage, click on **Configure Operation** and select the **Bag of Words** option. <br /> It will auto populate the default hyperparameter values for the selected operation. Adjust the desired hyperparameter values for any of the selected extraction operation <br /> ## Algorithm selection The final step in building a text analytics pipeline is selecting the algorithm. Click on the **Configure Operation** button in the Algorithm stage and select **Multinomial Naive Bayes Classification**. <br /> In order to make sure the model is optimized for our particular dataset, we can also adjust the tuning parameters; in our case, let's just stick with the default settings. When everything is configured, save the pipeline and start executing it to generate your model. <br /> Click **Save** to save the pipeline and execute it by clicking **Execute** at the top-right corner of the pipeline builder page. This will redirect you to the pipeline details page, which provides details about the executed pipeline with execution status. You can see that the pipeline execution is successful. <br /> Click **Execution Stats** to view more details about each stage of the model execution. <br /> The Movie reviews Sentiment analysis model is now ready and can be used to identify the sentiment of each user review of movies. Our model and its details can be accessed under the **Models** module. (Click on **Movie Review sentiments model** after the pipeline is successful executed.) <br /> When you click the **Movie Review Sentiment model** button, its model details page will be opened with necessary information about evaluation metrics, and versioning details. ## Model evaluation The model details page contains evaluation metrics that help to understand performance during the training and validation process, cross validation metrics, and model versioning details. Model versions are used to track the improvement, degradation, and accuracy of the model. You can view information about the model in the model details page. <br /> -------------------------------------------------------------------------------- title: "Create an Endpoint" description: "This tutorial will guide you through building a movie review classification model using Catalyst QuickML." last_updated: "2026-08-20T10:20:36.199Z" source: "https://docs.catalyst.zoho.com/en/tutorials/movie-review-classification/create-endpoint/" service: "All Services" related: - Pipeline Endpoints (/en/quickml/help/pipeline-endpoints) -------------------------------------------------------------------------------- # Create an endpoint Now let's create an endpoint for the Movie review sentiment analysis model to allow [external applications](https://docs.catalyst.zoho.com/en/quickml/help/pipeline-endpoints/#model-tester) to interact with the model to get responses. 1. Navigate to the **Endpoints** component in the left menu and click Create Endpoint. <br /> 2. Provide a name for the endpoint in the EndpointName field (we'll name it **Movie review sentiment analysis**) and select the model pipeline name from the dropdown values in the Choose Model field.Then click Create Endpoint. <br /> 3. Once the endpoint is created, you can view the endpoint's details page. Details about the endpoint are available in the **Details** section. You can test the model by providing a sample request in the Request column and clicking **Get result**. This will generate the predicted value in the Response box. <br /> 4. Click Publish and use the endpoint URL to integrate the created ML model with any other applications. <br /> 5. Upon publishing the endpoint, it will generate API details that include the endpoint API URL, scope, headers, and more information that's used to access the model from external applications. <br /> Note : You can also check out this document to implement pipeline authentication to ensure secured access to endpoints, the ML models, and datasets.