THREE PROJECTS: Sentiment Analysis and Prediction Using Machine Learning and Deep Learning with Python GUI

THREE PROJECTS: Sentiment Analysis and Prediction Using Machine Learning and Deep Learning with Python GUI PDF

Author: Vivian Siahaan

Publisher: BALIGE PUBLISHING

Published: 2022-03-21

Total Pages: 620

ISBN-13:

DOWNLOAD EBOOK →

PROJECT 1: TEXT PROCESSING AND SENTIMENT ANALYSIS USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI Twitter data used in this project was scraped from February of 2015 and contributors were asked to first classify positive, negative, and neutral tweets, followed by categorizing negative reasons (such as "late flight" or "rude service"). This data was originally posted by Crowdflower last February and includes tweets about 6 major US airlines. Additionally, Crowdflower had their workers extract the sentiment from the tweet as well as what the passenger was dissapointed about if the tweet was negative. The information of main attributes for this project are as follows: airline_sentiment : Sentiment classification.(positivie, neutral, and negative); negativereason : Reason selected for the negative opinion; airline : Name of 6 US Airlines('Delta', 'United', 'Southwest', 'US Airways', 'Virgin America', 'American'); and text : Customer's opinion. The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, and XGB classifier, and LSTM. Three vectorizers used in machine learning are Hashing Vectorizer, Count Vectorizer, and TFID Vectorizer. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, performance of the model, scalability of the model, training loss, and training accuracy. PROJECT 2: HOTEL REVIEW: SENTIMENT ANALYSIS USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI The data used in this project is the data published by Anurag Sharma about hotel reviews that were given by costumers. The data is given in two files, a train and test. The train.csv is the training data, containing unique User_ID for each entry with the review entered by a costumer and the browser and device used. The target variable is Is_Response, a variable that states whether the costumers was happy or not happy while staying in the hotel. This type of variable makes the project to a classification problem. The test.csv is the testing data, contains similar headings as the train data, without the target variable. The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, and XGB classifier, and LSTM. Three vectorizers used in machine learning are Hashing Vectorizer, Count Vectorizer, and TFID Vectorizer. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, performance of the model, scalability of the model, training loss, and training accuracy. PROJECT 3: STUDENT ACADEMIC PERFORMANCE ANALYSIS AND PREDICTION USING MACHINE LEARNING WITH PYTHON GUI The dataset used in this project consists of student achievement in secondary education of two Portuguese schools. The data attributes include student grades, demographic, social and school-related features) and it was collected by using school reports and questionnaires. Two datasets are provided regarding the performance in two distinct subjects: Mathematics (mat) and Portuguese language (por). In the two datasets were modeled under binary/five-level classification and regression tasks. Important note: the target attribute G3 has a strong correlation with attributes G2 and G1. This occurs because G3 is the final year grade (issued at the 3rd period), while G1 and G2 correspond to the 1st and 2nd period grades. It is more difficult to predict G3 without G2 and G1, but such prediction is much more useful. Attributes in the dataset are as follows: school - student's school (binary: 'GP' - Gabriel Pereira or 'MS' - Mousinho da Silveira); sex - student's sex (binary: 'F' - female or 'M' - male); age - student's age (numeric: from 15 to 22); address - student's home address type (binary: 'U' - urban or 'R' - rural); famsize - family size (binary: 'LE3' - less or equal to 3 or 'GT3' - greater than 3); Pstatus - parent's cohabitation status (binary: 'T' - living together or 'A' - apart); Medu - mother's education (numeric: 0 - none, 1 - primary education (4th grade), 2 - 5th to 9th grade, 3 - secondary education or 4 - higher education); Fedu - father's education (numeric: 0 - none, 1 - primary education (4th grade), 2 - 5th to 9th grade, 3 - secondary education or 4 - higher education); Mjob - mother's job (nominal: 'teacher', 'health' care related, civil 'services' (e.g. administrative or police), 'at_home' or 'other'); Fjob - father's job (nominal: 'teacher', 'health' care related, civil 'services' (e.g. administrative or police), 'at_home' or 'other'); reason - reason to choose this school (nominal: close to 'home', school 'reputation', 'course' preference or 'other'); guardian - student's guardian (nominal: 'mother', 'father' or 'other'); traveltime - home to school travel time (numeric: 1 - <15 min., 2 - 15 to 30 min., 3 - 30 min. to 1 hour, or 4 - >1 hour); studytime - weekly study time (numeric: 1 - <2 hours, 2 - 2 to 5 hours, 3 - 5 to 10 hours, or 4 - >10 hours); failures - number of past class failures (numeric: n if 1<=n<3, else 4); schoolsup - extra educational support (binary: yes or no); famsup - family educational support (binary: yes or no); paid - extra paid classes within the course subject (Math or Portuguese) (binary: yes or no); activities - extra-curricular activities (binary: yes or no); nursery - attended nursery school (binary: yes or no); higher - wants to take higher education (binary: yes or no); internet - Internet access at home (binary: yes or no); romantic - with a romantic relationship (binary: yes or no); famrel - quality of family relationships (numeric: from 1 - very bad to 5 - excellent); freetime - free time after school (numeric: from 1 - very low to 5 - very high); goout - going out with friends (numeric: from 1 - very low to 5 - very high); Dalc - workday alcohol consumption (numeric: from 1 - very low to 5 - very high); Walc - weekend alcohol consumption (numeric: from 1 - very low to 5 - very high); health - current health status (numeric: from 1 - very bad to 5 - very good); absences - number of school absences (numeric: from 0 to 93); G1 - first period grade (numeric: from 0 to 20); G2 - second period grade (numeric: from 0 to 20); and G3 - final grade (numeric: from 0 to 20, output target). The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, and XGB classifier. Three feature scaling used in machine learning are raw, minmax scaler, and standard scaler. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, decision boundaries, performance of the model, scalability of the model, training loss, and training accuracy.

HATE SPEECH DETECTION AND SENTIMENT ANALYSIS USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI

HATE SPEECH DETECTION AND SENTIMENT ANALYSIS USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI PDF

Author: Vivian Siahaan

Publisher: BALIGE PUBLISHING

Published: 2023-08-04

Total Pages: 268

ISBN-13:

DOWNLOAD EBOOK →

The purpose of this project is to develop a comprehensive Hate Speech Detection and Sentiment Analysis system using both Machine Learning and Deep Learning techniques. The project aims to create a robust and accurate system that can automatically identify hate speech in text data and perform sentiment analysis to determine the emotions and opinions expressed in the text. The project is designed to address the growing concern over the spread of hate speech and offensive content online. By implementing an automated detection system, it can help social media platforms, content moderators, and online communities to proactively identify and remove harmful content, fostering a safer and more inclusive online environment. Additionally, sentiment analysis plays a crucial role in understanding public opinions, customer feedback, and social media trends. By accurately predicting sentiment, businesses can make data-driven decisions, improve customer satisfaction, and gain valuable insights into consumer preferences. This project focuses on Hate Speech Detection and Sentiment Analysis using both Machine Learning and Deep Learning techniques. It begins with exploring the dataset, analyzing feature distributions, and predicting sentiment using Machine Learning models like Logistic Regression, Support Vector Machines, K-Nearest Neighbors, Decision Trees, Random Forests, Gradient Boosting, Extreme Gradient Boosting, Light Gradient Boosting, and AdaBoost, while optimizing their performance through Grid Search for hyperparameter tuning. Subsequently, Deep Learning LSTM and 1D CNN models are implemented for sentiment analysis to capture long-term dependencies and local patterns in the text data. The project starts with exploring the dataset, understanding its structure, and analyzing the distribution of classes for hate speech and sentiment labels. This initial step allows us to gain insights into the dataset and potential challenges. After exploring the data, the distribution of text features, such as word frequency and sentiment scores, is analyzed to identify any patterns or biases that could impact the model's performance. The dataset is then divided into training, validation, and testing sets to evaluate the models' generalization capabilities. Early stopping techniques are utilized during training to prevent overfitting and enhance model generalization. Performance evaluation involves calculating metrics like accuracy, precision, recall, and F1-score to gauge the models' effectiveness. Confusion matrices and visualizations provide further insights into model predictions and potential areas for improvement. A graphical user interface (GUI) is developed using PyQt to facilitate user interaction with the Hate Speech Detection and Sentiment Analysis system. Before training the Deep Learning models, the text data is tokenized and padded for uniform input sequences. The dataset is split into training and validation sets for model evaluation, and early stopping is used to prevent overfitting during training. The final system combines predictions from both Machine Learning and Deep Learning models to provide robust sentiment analysis results. The PyQt GUI allows users to input text and receive real-time sentiment analysis predictions. The LSTM and 1D CNN models, along with their optimized hyperparameters, are saved and deployed for future sentiment analysis tasks. Users can interact with the GUI, analyze sentiment in different texts, and provide feedback for continuous improvement of the Hate Speech Detection and Sentiment Analysis system.

OPINION MINING AND PREDICTION USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI

OPINION MINING AND PREDICTION USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI PDF

Author: Vivian Siahaan

Publisher: BALIGE PUBLISHING

Published: 2023-06-27

Total Pages: 277

ISBN-13:

DOWNLOAD EBOOK →

In the context of sentiment analysis and opinion mining, this project began with dataset exploration. The dataset, comprising user reviews or social media posts, was examined to understand the sentiment labels' distribution. This analysis provided insights into the prevalence of positive or negative opinions, laying the foundation for sentiment classification. To tackle sentiment classification, we employed a range of machine learning algorithms, including Support Vector, Logistic Regression, K-Nearest Neighbours Classiier, Decision Tree, Random Forest Classifier, Gradient Boosting, Extreme Gradient Boosting, Light Gradient Boosting, and Adaboost Classifiers. These algorithms were combined with different vectorization techniques such as Hashing Vectorizer, Count Vectorizer, and TF-IDF Vectorizer. By converting text data into numerical representations, these models were trained and evaluated to identify the most effective combination for sentiment classification. In addition to traditional machine learning algorithms, we explored the power of recurrent neural networks (RNNs) and their variant, Long Short-Term Memory (LSTM). LSTM is particularly adept at capturing contextual dependencies and handling sequential data. The text data was tokenized and padded to ensure consistent input length, allowing the LSTM model to learn from the sequential nature of the text. Performance metrics, including accuracy, were used to evaluate the model's ability to classify sentiments accurately. Furthermore, we delved into Convolutional Neural Networks (CNNs), another deep learning model known for its ability to extract meaningful features. The text data was preprocessed and transformed into numerical representations suitable for CNN input. The architecture of the CNN model, consisting of embedding, convolutional, pooling, and dense layers, facilitated the extraction of relevant features and the classification of sentiments. Analyzing the results of our machine learning models, we gained insights into their effectiveness in sentiment classification. We observed the accuracy and performance of various algorithms and vectorization techniques, enabling us to identify the models that achieved the highest accuracy and overall performance. LSTM and CNN, being more advanced models, aimed to capture complex patterns and dependencies in the text data, potentially resulting in improved sentiment classification. Monitoring the training history and metrics of the LSTM and CNN models provided valuable insights. We examined the learning progress, convergence behavior, and generalization capabilities of the models. Through the evaluation of performance metrics and convergence trends, we gained an understanding of the models' ability to learn from the data and make accurate predictions. Confusion matrices played a crucial role in assessing the models' predictions. They provided a detailed analysis of the models' classification performance, highlighting the distribution of correct and incorrect classifications for each sentiment category. This analysis allowed us to identify potential areas of improvement and fine-tune the models accordingly. In addition to confusion matrices, visualizations comparing the true values with the predicted values were employed to evaluate the models' performance. These visualizations provided a comprehensive overview of the models' classification accuracy and potential areas for improvement. They allowed us to assess the alignment between the models' predictions and the actual sentiment labels, enabling a deeper understanding of the models' strengths and weaknesses. Overall, the exploration of machine learning, LSTM, and CNN models for sentiment analysis and opinion mining aimed to develop effective tools for understanding public opinions. The results obtained from this project showcased the models' performance, convergence behavior, and their ability to accurately classify sentiments. These insights can be leveraged by businesses and organizations to gain a deeper understanding of the sentiments expressed towards their products or services, enabling them to make informed decisions and adapt their strategies accordingly.

5 FIVE DATA SCIENCE PROJECTS FOR ANALYSIS, CLASSIFICATION, PREDICTION, AND SENTIMENT ANALYSIS WITH PYTHON GUI

5 FIVE DATA SCIENCE PROJECTS FOR ANALYSIS, CLASSIFICATION, PREDICTION, AND SENTIMENT ANALYSIS WITH PYTHON GUI PDF

Author: Vivian Siahaan

Publisher: BALIGE PUBLISHING

Published: 2022-04-29

Total Pages: 979

ISBN-13:

DOWNLOAD EBOOK →

PROJECT 1: SUPERMARKET SALES ANALYSIS AND PREDICTION USING MACHINE LEARNING WITH PYTHON GUI The dataset used in this project consists of the growth of supermarkets with high market competitions in most populated cities. The dataset is one of the historical sales of supermarket company which has recorded in 3 different branches for 3 months data. Predictive data analytics methods are easy to apply with this dataset. Attribute information in the dataset are as follows: Invoice id: Computer generated sales slip invoice identification number; Branch: Branch of supercenter (3 branches are available identified by A, B and C); City: Location of supercenters; Customer type: Type of customers, recorded by Members for customers using member card and Normal for without member card; Gender: Gender type of customer; Product line: General item categorization groups - Electronic accessories, Fashion accessories, Food and beverages, Health and beauty, Home and lifestyle, Sports and travel; Unit price: Price of each product in $; Quantity: Number of products purchased by customer; Tax: 5% tax fee for customer buying; Total: Total price including tax; Date: Date of purchase (Record available from January 2019 to March 2019); Time: Purchase time (10am to 9pm); Payment: Payment used by customer for purchase (3 methods are available – Cash, Credit card and Ewallet); COGS: Cost of goods sold; Gross margin percentage: Gross margin percentage; Gross income: Gross income; and Rating: Customer stratification rating on their overall shopping experience (On a scale of 1 to 10). In this project, you will perform predicting rating using machine learning. The machine learning models used in this project to predict clusters as target variable are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, LGBM, Gradient Boosting, XGB, and MLP. Finally, you will plot boundary decision, distribution of features, feature importance, cross validation score, and predicted values versus true values, confusion matrix, learning curve, performance of the model, scalability of the model, training loss, and training accuracy. PROJECT 2: DETECTING CYBERBULLYING TWEETS USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI As social media usage becomes increasingly prevalent in every age group, a vast majority of citizens rely on this essential medium for day-to-day communication. Social media’s ubiquity means that cyberbullying can effectively impact anyone at any time or anywhere, and the relative anonymity of the internet makes such personal attacks more difficult to stop than traditional bullying. On April 15th, 2020, UNICEF issued a warning in response to the increased risk of cyberbullying during the COVID-19 pandemic due to widespread school closures, increased screen time, and decreased face-to-face social interaction. The statistics of cyberbullying are outright alarming: 36.5% of middle and high school students have felt cyberbullied and 87% have observed cyberbullying, with effects ranging from decreased academic performance to depression to suicidal thoughts. In light of all of this, this dataset contains more than 47000 tweets labelled according to the class of cyberbullying: Age; Ethnicity; Gender; Religion; Other type of cyberbullying; and Not cyberbullying. The data has been balanced in order to contain ~8000 of each class. The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, XGB classifier, LSTM, and CNN. Three feature scaling used in machine learning are raw, minmax scaler, and standard scaler. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, decision boundaries, performance of the model, scalability of the model, training loss, and training accuracy. PROJECT 3: HIGHER EDUCATION STUDENT ACADEMIC PERFORMANCE ANALYSIS AND PREDICTION USING MACHINE LEARNING WITH PYTHON GUI The dataset used in this project was collected from the Faculty of Engineering and Faculty of Educational Sciences students in 2019. The purpose is to predict students' end-of-term performances using ML techniques. Attribute information in the dataset are as follows: Student ID; Student Age (1: 18-21, 2: 22-25, 3: above 26); Sex (1: female, 2: male); Graduated high-school type: (1: private, 2: state, 3: other); Scholarship type: (1: None, 2: 25%, 3: 50%, 4: 75%, 5: Full); Additional work: (1: Yes, 2: No); Regular artistic or sports activity: (1: Yes, 2: No); Do you have a partner: (1: Yes, 2: No); Total salary if available (1: USD 135-200, 2: USD 201-270, 3: USD 271-340, 4: USD 341-410, 5: above 410); Transportation to the university: (1: Bus, 2: Private car/taxi, 3: bicycle, 4: Other); Accommodation type in Cyprus: (1: rental, 2: dormitory, 3: with family, 4: Other); Mother's education: (1: primary school, 2: secondary school, 3: high school, 4: university, 5: MSc., 6: Ph.D.); Father's education: (1: primary school, 2: secondary school, 3: high school, 4: university, 5: MSc., 6: Ph.D.); Number of sisters/brothers (if available): (1: 1, 2:, 2, 3: 3, 4: 4, 5: 5 or above); Parental status: (1: married, 2: divorced, 3: died - one of them or both); Mother's occupation: (1: retired, 2: housewife, 3: government officer, 4: private sector employee, 5: self-employment, 6: other); Father's occupation: (1: retired, 2: government officer, 3: private sector employee, 4: self-employment, 5: other); Weekly study hours: (1: None, 2: <5 hours, 3: 6-10 hours, 4: 11-20 hours, 5: more than 20 hours); Reading frequency (non-scientific books/journals): (1: None, 2: Sometimes, 3: Often); Reading frequency (scientific books/journals): (1: None, 2: Sometimes, 3: Often); Attendance to the seminars/conferences related to the department: (1: Yes, 2: No); Impact of your projects/activities on your success: (1: positive, 2: negative, 3: neutral); Attendance to classes (1: always, 2: sometimes, 3: never); Preparation to midterm exams 1: (1: alone, 2: with friends, 3: not applicable); Preparation to midterm exams 2: (1: closest date to the exam, 2: regularly during the semester, 3: never); Taking notes in classes: (1: never, 2: sometimes, 3: always); Listening in classes: (1: never, 2: sometimes, 3: always); Discussion improves my interest and success in the course: (1: never, 2: sometimes, 3: always); Flip-classroom: (1: not useful, 2: useful, 3: not applicable); Cumulative grade point average in the last semester (/4.00): (1: <2.00, 2: 2.00-2.49, 3: 2.50-2.99, 4: 3.00-3.49, 5: above 3.49); Expected Cumulative grade point average in the graduation (/4.00): (1: <2.00, 2: 2.00-2.49, 3: 2.50-2.99, 4: 3.00-3.49, 5: above 3.49); Course ID; and OUTPUT: Grade (0: Fail, 1: DD, 2: DC, 3: CC, 4: CB, 5: BB, 6: BA, 7: AA). The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, and XGB classifier. Three feature scaling used in machine learning are raw, minmax scaler, and standard scaler. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, decision boundaries, performance of the model, scalability of the model, training loss, and training accuracy. PROJECT 4: COMPANY BANKRUPTCY ANALYSIS AND PREDICTION USING MACHINE LEARNING WITH PYTHON GUI The dataset was collected from the Taiwan Economic Journal for the years 1999 to 2009. Company bankruptcy was defined based on the business regulations of the Taiwan Stock Exchange. Attribute information in the dataset are as follows: Y - Bankrupt?: Class label; X1 - ROA(C) before interest and depreciation before interest: Return On Total Assets(C); X2 - ROA(A) before interest and % after tax: Return On Total Assets(A); X3 - ROA(B) before interest and depreciation after tax: Return On Total Assets(B); X4 - Operating Gross Margin: Gross Profit/Net Sales; X5 - Realized Sales Gross Margin: Realized Gross Profit/Net Sales; X6 - Operating Profit Rate: Operating Income/Net Sales; X7 - Pre-tax net Interest Rate: Pre-Tax Income/Net Sales; X8 - After-tax net Interest Rate: Net Income/Net Sales; X9 - Non-industry income and expenditure/revenue: Net Non-operating Income Ratio; X10 - Continuous interest rate (after tax): Net Income-Exclude Disposal Gain or Loss/Net Sales; X11 - Operating Expense Rate: Operating Expenses/Net Sales; X12 - Research and development expense rate: (Research and Development Expenses)/Net Sales X13 - Cash flow rate: Cash Flow from Operating/Current Liabilities; X14 - Interest-bearing debt interest rate: Interest-bearing Debt/Equity; X15 - Tax rate (A): Effective Tax Rate; X16 - Net Value Per Share (B): Book Value Per Share(B); X17 - Net Value Per Share (A): Book Value Per Share(A); X18 - Net Value Per Share (C): Book Value Per Share(C); X19 - Persistent EPS in the Last Four Seasons: EPS-Net Income; X20 - Cash Flow Per Share; X21 - Revenue Per Share (Yuan ¥): Sales Per Share; X22 - Operating Profit Per Share (Yuan ¥): Operating Income Per Share; X23 - Per Share Net profit before tax (Yuan ¥): Pretax Income Per Share; X24 - Realized Sales Gross Profit Growth Rate; X25 - Operating Profit Growth Rate: Operating Income Growth; X26 - After-tax Net Profit Growth Rate: Net Income Growth; X27 - Regular Net Profit Growth Rate: Continuing Operating Income after Tax Growth; X28 - Continuous Net Profit Growth Rate: Net Income-Excluding Disposal Gain or Loss Growth; X29 - Total Asset Growth Rate: Total Asset Growth; X30 - Net Value Growth Rate: Total Equity Growth; X31 - Total Asset Return Growth Rate Ratio: Return on Total Asset Growth; X32 - Cash Reinvestment %: Cash Reinvestment Ratio X33 - Current Ratio; X34 - Quick Ratio: Acid Test; X35 - Interest Expense Ratio: Interest Expenses/Total Revenue; X36 - Total debt/Total net worth: Total Liability/Equity Ratio; X37 - Debt ratio %: Liability/Total Assets; X38 - Net worth/Assets: Equity/Total Assets; X39 - Long-term fund suitability ratio (A): (Long-term Liability+Equity)/Fixed Assets; X40 - Borrowing dependency: Cost of Interest-bearing Debt; X41 - Contingent liabilities/Net worth: Contingent Liability/Equity; X42 - Operating profit/Paid-in capital: Operating Income/Capital; X43 - Net profit before tax/Paid-in capital: Pretax Income/Capital; X44 - Inventory and accounts receivable/Net value: (Inventory+Accounts Receivables)/Equity; X45 - Total Asset Turnover; X46 - Accounts Receivable Turnover; X47 - Average Collection Days: Days Receivable Outstanding; X48 - Inventory Turnover Rate (times); X49 - Fixed Assets Turnover Frequency; X50 - Net Worth Turnover Rate (times): Equity Turnover; X51 - Revenue per person: Sales Per Employee; X52 - Operating profit per person: Operation Income Per Employee; X53 - Allocation rate per person: Fixed Assets Per Employee; X54 - Working Capital to Total Assets; X55 - Quick Assets/Total Assets; X56 - Current Assets/Total Assets; X57 - Cash/Total Assets; X58 - Quick Assets/Current Liability; X59 - Cash/Current Liability; X60 - Current Liability to Assets; X61 - Operating Funds to Liability; X62 - Inventory/Working Capital; X63 - Inventory/Current Liability X64 - Current Liabilities/Liability; X65 - Working Capital/Equity; X66 - Current Liabilities/Equity; X67 - Long-term Liability to Current Assets; X68 - Retained Earnings to Total Assets; X69 - Total income/Total expense; X70 - Total expense/Assets; X71 - Current Asset Turnover Rate: Current Assets to Sales; X72 - Quick Asset Turnover Rate: Quick Assets to Sales; X73 - Working capitcal Turnover Rate: Working Capital to Sales; X74 - Cash Turnover Rate: Cash to Sales; X75 - Cash Flow to Sales; X76 - Fixed Assets to Assets; X77 - Current Liability to Liability; X78 - Current Liability to Equity; X79 - Equity to Long-term Liability; X80 - Cash Flow to Total Assets; X81 - Cash Flow to Liability; X82 - CFO to Assets; X83 - Cash Flow to Equity; X84 - Current Liability to Current Assets; X85 - Liability-Assets Flag: 1 if Total Liability exceeds Total Assets, 0 otherwise; X86 - Net Income to Total Assets; X87 - Total assets to GNP price; X88 - No-credit Interval; X89 - Gross Profit to Sales; X90 - Net Income to Stockholder's Equity; X91 - Liability to Equity; X92 - Degree of Financial Leverage (DFL); X93 - Interest Coverage Ratio (Interest expense to EBIT); X94 - Net Income Flag: 1 if Net Income is Negative for the last two years, 0 otherwise; and X95 - Equity to Liabilitys. The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, and XGB classifier. Three feature scaling used in machine learning are raw, minmax scaler, and standard scaler. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, decision boundaries, performance of the model, scalability of the model, training loss, and training accuracy. PROJECT 5: DATA SCIENCE FOR RAIN CLASSIFICATION AND PREDICTION WITH PYTHON GUI This dataset contains about 10 years of daily weather observations from many locations across Australia. RainTomorrow is the target variable to predict. You will determine rain or not in the next day. This column is Yes if the rain for that day was 1mm or more. Observations were drawn from numerous weather stations. The daily observations are available from http://www.bom.gov.au/climate/data. The dataset contains 23 attributes. Some of them are as follows: About some of them are: DATE - The date of observation; LOCATION - The common name of the location of the weather station; MINTEMP - The minimum temperature in degrees celsius; MAXTEMP - The maximum temperature in degrees celsius; RAINFALL - The amount of rainfall recorded for the day in mm; EVAPORATION - The so-called Class A pan evaporation (mm) in the 24 hours to 9am; SUNSHINE - The number of hours of bright sunshine in the day; WINDGUESTDIR - The direction of the strongest wind gust in the 24 hours to midnight; WINDGUESTSPEED- The speed (km/h) of the strongest wind gust in the 24 hours to midnight; and WINDDIR9AM - Direction of the wind at 9am. The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, and XGB classifier. Three feature scaling used in machine learning are raw, minmax scaler, and standard scaler. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, decision boundaries, performance of the model, scalability of the model, training loss, and training accuracy.

SIX BOOKS IN ONE: Classification, Prediction, and Sentiment Analysis Using Machine Learning and Deep Learning with Python GUI

SIX BOOKS IN ONE: Classification, Prediction, and Sentiment Analysis Using Machine Learning and Deep Learning with Python GUI PDF

Author: Vivian Siahaan

Publisher: BALIGE PUBLISHING

Published: 2022-04-11

Total Pages: 1165

ISBN-13:

DOWNLOAD EBOOK →

Book 1: BANK LOAN STATUS CLASSIFICATION AND PREDICTION USING MACHINE LEARNING WITH PYTHON GUI The dataset used in this project consists of more than 100,000 customers mentioning their loan status, current loan amount, monthly debt, etc. There are 19 features in the dataset. The dataset attributes are as follows: Loan ID, Customer ID, Loan Status, Current Loan Amount, Term, Credit Score, Annual Income, Years in current job, Home Ownership, Purpose, Monthly Debt, Years of Credit History, Months since last delinquent, Number of Open Accounts, Number of Credit Problems, Current Credit Balance, Maximum Open Credit, Bankruptcies, and Tax Liens. The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, and XGB classifier. Three feature scaling used in machine learning are raw, minmax scaler, and standard scaler. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, decision boundaries, performance of the model, scalability of the model, training loss, and training accuracy. Book 2: OPINION MINING AND PREDICTION USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI Opinion mining (sometimes known as sentiment analysis or emotion AI) refers to the use of natural language processing, text analysis, computational linguistics, and biometrics to systematically identify, extract, quantify, and study affective states and subjective information. This dataset was created for the Paper 'From Group to Individual Labels using Deep Features', Kotzias et. al,. KDD 2015. It contains sentences labelled with a positive or negative sentiment. Score is either 1 (for positive) or 0 (for negative). The sentences come from three different websites/fields: imdb.com, amazon.com, and yelp.com. For each website, there exist 500 positive and 500 negative sentences. Those were selected randomly for larger datasets of reviews. Amazon: contains reviews and scores for products sold on amazon.com in the cell phones and accessories category, and is part of the dataset collected by McAuley and Leskovec. Scores are on an integer scale from 1 to 5. Reviews considered with a score of 4 and 5 to be positive, and scores of 1 and 2 to be negative. The data is randomly partitioned into two halves of 50%, one for training and one for testing, with 35,000 documents in each set. IMDb: refers to the IMDb movie review sentiment dataset originally introduced by Maas et al. as a benchmark for sentiment analysis. This dataset contains a total of 100,000 movie reviews posted on imdb.com. There are 50,000 unlabeled reviews and the remaining 50,000 are divided into a set of 25,000 reviews for training and 25,000 reviews for testing. Each of the labeled reviews has a binary sentiment label, either positive or negative. Yelp: refers to the dataset from the Yelp dataset challenge from which we extracted the restaurant reviews. Scores are on an integer scale from 1 to 5. Reviews considered with scores 4 and 5 to be positive, and 1 and 2 to be negative. The data is randomly generated a 50-50 training and testing split, which led to approximately 300,000 documents for each set. Sentences: for each of the datasets above, labels are extracted and manually 1000 sentences are manually labeled from the test set, with 50% positive sentiment and 50% negative sentiment. These sentences are only used to evaluate our instance-level classifier for each dataset3. They are not used for model training, to maintain consistency with our overall goal of learning at a group level and predicting at the instance level. The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, and XGB classifier. Three feature scaling used in machine learning are raw, minmax scaler, and standard scaler. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, decision boundaries, performance of the model, scalability of the model, training loss, and training accuracy. Book 3: EMOTION PREDICTION FROM TEXT USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI In the dataset used in this project, there are two columns, Text and Emotion. Quite self-explanatory. The Emotion column has various categories ranging from happiness to sadness to love and fear. You will build and implement machine learning and deep learning models which can identify what words denote what emotion. The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, and XGB classifier. Three feature scaling used in machine learning are raw, minmax scaler, and standard scaler. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, decision boundaries, performance of the model, scalability of the model, training loss, and training accuracy. Book 4: HATE SPEECH DETECTION AND SENTIMENT ANALYSIS USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI The objective of this task is to detect hate speech in tweets. For the sake of simplicity, a tweet contains hate speech if it has a racist or sexist sentiment associated with it. So, the task is to classify racist or sexist tweets from other tweets. Formally, given a training sample of tweets and labels, where label '1' denotes the tweet is racist/sexist and label '0' denotes the tweet is not racist/sexist, the objective is to predict the labels on the test dataset. The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, XGB classifier, LSTM, and CNN. Three feature scaling used in machine learning are raw, minmax scaler, and standard scaler. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, decision boundaries, performance of the model, scalability of the model, training loss, and training accuracy. Book 5: TRAVEL REVIEW RATING CLASSIFICATION AND PREDICTION USING MACHINE LEARNING WITH PYTHON GUI The dataset used in this project has been sourced from the Machine Learning Repository of University of California, Irvine (UC Irvine): Travel Review Ratings Data Set. This dataset is populated by capturing user ratings from Google reviews. Reviews on attractions from 24 categories across Europe are considered. Google user rating ranges from 1 to 5 and average user rating per category is calculated. The attributes in the dataset are as follows: Attribute 1 : Unique user id; Attribute 2 : Average ratings on churches; Attribute 3 : Average ratings on resorts; Attribute 4 : Average ratings on beaches; Attribute 5 : Average ratings on parks; Attribute 6 : Average ratings on theatres; Attribute 7 : Average ratings on museums; Attribute 8 : Average ratings on malls; Attribute 9 : Average ratings on zoo; Attribute 10 : Average ratings on restaurants; Attribute 11 : Average ratings on pubs/bars; Attribute 12 : Average ratings on local services; Attribute 13 : Average ratings on burger/pizza shops; Attribute 14 : Average ratings on hotels/other lodgings; Attribute 15 : Average ratings on juice bars; Attribute 16 : Average ratings on art galleries; Attribute 17 : Average ratings on dance clubs; Attribute 18 : Average ratings on swimming pools; Attribute 19 : Average ratings on gyms; Attribute 20 : Average ratings on bakeries; Attribute 21 : Average ratings on beauty & spas; Attribute 22 : Average ratings on cafes; Attribute 23 : Average ratings on view points; Attribute 24 : Average ratings on monuments; and Attribute 25 : Average ratings on gardens. The models used in this project are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, Adaboost, LGBM classifier, Gradient Boosting, XGB classifier, and MLP classifier. Three feature scaling used in machine learning are raw, minmax scaler, and standard scaler. Finally, you will develop a GUI using PyQt5 to plot cross validation score, predicted values versus true values, confusion matrix, learning curve, decision boundaries, performance of the model, scalability of the model, training loss, and training accuracy. Book 6: ONLINE RETAIL CLUSTERING AND PREDICTION USING MACHINE LEARNING WITH PYTHON GUI The dataset used in this project is a transnational dataset which contains all the transactions occurring between 01/12/2010 and 09/12/2011 for a UK-based and registered non-store online retail. The company mainly sells unique all-occasion gifts. Many customers of the company are wholesalers. You will be using the online retail transnational dataset to build a RFM clustering and choose the best set of customers which the company should target. In this project, you will perform Cohort analysis and RFM analysis. You will also perform clustering using K-Means to get 5 clusters. The machine learning models used in this project to predict clusters as target variable are K-Nearest Neighbor, Random Forest, Naive Bayes, Logistic Regression, Decision Tree, Support Vector Machine, LGBM, Gradient Boosting, XGB, and MLP. Finally, you will plot boundary decision, distribution of features, feature importance, cross validation score, and predicted values versus true values, confusion matrix, learning curve, performance of the model, scalability of the model, training loss, and training accuracy.

Artificial Intelligence with Python

Artificial Intelligence with Python PDF

Author: Prateek Joshi

Publisher: Packt Publishing Ltd

Published: 2017-01-27

Total Pages: 437

ISBN-13: 1786469677

DOWNLOAD EBOOK →

Build real-world Artificial Intelligence applications with Python to intelligently interact with the world around you About This Book Step into the amazing world of intelligent apps using this comprehensive guide Enter the world of Artificial Intelligence, explore it, and create your own applications Work through simple yet insightful examples that will get you up and running with Artificial Intelligence in no time Who This Book Is For This book is for Python developers who want to build real-world Artificial Intelligence applications. This book is friendly to Python beginners, but being familiar with Python would be useful to play around with the code. It will also be useful for experienced Python programmers who are looking to use Artificial Intelligence techniques in their existing technology stacks. What You Will Learn Realize different classification and regression techniques Understand the concept of clustering and how to use it to automatically segment data See how to build an intelligent recommender system Understand logic programming and how to use it Build automatic speech recognition systems Understand the basics of heuristic search and genetic programming Develop games using Artificial Intelligence Learn how reinforcement learning works Discover how to build intelligent applications centered on images, text, and time series data See how to use deep learning algorithms and build applications based on it In Detail Artificial Intelligence is becoming increasingly relevant in the modern world where everything is driven by technology and data. It is used extensively across many fields such as search engines, image recognition, robotics, finance, and so on. We will explore various real-world scenarios in this book and you'll learn about various algorithms that can be used to build Artificial Intelligence applications. During the course of this book, you will find out how to make informed decisions about what algorithms to use in a given context. Starting from the basics of Artificial Intelligence, you will learn how to develop various building blocks using different data mining techniques. You will see how to implement different algorithms to get the best possible results, and will understand how to apply them to real-world scenarios. If you want to add an intelligence layer to any application that's based on images, text, stock market, or some other form of data, this exciting book on Artificial Intelligence will definitely be your guide! Style and approach This highly practical book will show you how to implement Artificial Intelligence. The book provides multiple examples enabling you to create smart applications to meet the needs of your organization. In every chapter, we explain an algorithm, implement it, and then build a smart application.

STROKE: Analysis and Prediction Using Scikit-Learn, Keras, and TensorFlow with Python GUI

STROKE: Analysis and Prediction Using Scikit-Learn, Keras, and TensorFlow with Python GUI PDF

Author: Vivian Siahaan

Publisher: BALIGE PUBLISHING

Published: 2023-07-15

Total Pages: 359

ISBN-13:

DOWNLOAD EBOOK →

In this project, we will perform an analysis and prediction task on stroke data using machine learning and deep learning techniques. The entire process will be implemented with Python GUI for a user-friendly experience. We start by exploring the stroke dataset, which contains information about various factors related to individuals and their likelihood of experiencing a stroke. We load the dataset and examine its structure, features, and statistical summary. Next, we preprocess the data to ensure its suitability for training machine learning models. This involves handling missing values, encoding categorical variables, and scaling numerical features. We utilize techniques such as data imputation and label encoding. To gain insights from the data, we visualize its distribution and relationships between variables. We create plots such as histograms, scatter plots, and correlation matrices to understand the patterns and correlations in the data. To improve model performance and reduce dimensionality, we select the most relevant features for prediction. We employ techniques such as correlation analysis, feature importance ranking, and domain knowledge to identify the key predictors of stroke. Before training our models, we split the dataset into training and testing subsets. The training set will be used to train the models, while the testing set will evaluate their performance on unseen data. We construct several machine learning models to predict stroke. These models include Support Vector, Logistic Regression, K-Nearest Neighbors (KNN), Decision Tree, Random Forest, Gradient Boosting, Light Gradient Boosting, Naive Bayes, Adaboost, and XGBoost. Each model is built and trained using the training dataset. We train each model on the training dataset and evaluate its performance using appropriate metrics such as accuracy, precision, recall, and F1-score. This helps us assess how well the models can predict stroke based on the given features. To optimize the models' performance, we perform hyperparameter tuning using techniques like grid search or randomized search. This involves systematically exploring different combinations of hyperparameters to find the best configuration for each model. After training and tuning the models, we save them to disk using joblib. This allows us to reuse the trained models for future predictions without having to train them again. With the models trained and saved, we move on to implementing the Python GUI. We utilize PyQt libraries to create an interactive graphical user interface that provides a seamless user experience. The GUI consists of various components such as buttons, checkboxes, input fields, and plots. These components allow users to interact with the application, select prediction models, and visualize the results. In addition to the machine learning models, we also implement an ANN using TensorFlow. The ANN is trained on the preprocessed dataset, and its architecture consists of a dense layer with a sigmoid activation function. We train the ANN on the training dataset, monitoring its performance using metrics like loss and accuracy. We visualize the training progress by plotting the loss and accuracy curves over epochs. Once the ANN is trained, we save the model to disk using the h5 format. This allows us to load the trained ANN for future predictions. In the GUI, users have the option to choose the ANN as the prediction model. When selected, the ANN model is loaded from disk, and predictions are made on the testing dataset. The predicted labels are compared with the true labels for evaluation. To assess the accuracy of the ANN predictions, we calculate various evaluation metrics such as accuracy score, precision, recall, and classification report. These metrics provide insights into the ANN's performance in predicting stroke. We create plots to visualize the results of the ANN predictions. These plots include a comparison of the true values and predicted values, as well as a confusion matrix to analyze the classification accuracy. The training history of the ANN, including the loss and accuracy curves over epochs, is plotted and displayed in the GUI. This allows users to understand how the model's performance improved during training. In summary, this project covers the analysis and prediction of stroke using machine learning and deep learning models. It encompasses data exploration, preprocessing, model training, hyperparameter tuning, GUI implementation, ANN training, and prediction visualization. The Python GUI enhances the user experience by providing an interactive and intuitive platform for exploring and predicting stroke based on various features.

Deep Learning With Python

Deep Learning With Python PDF

Author: Jason Brownlee

Publisher: Machine Learning Mastery

Published: 2016-05-13

Total Pages: 266

ISBN-13:

DOWNLOAD EBOOK →

Deep learning is the most interesting and powerful machine learning technique right now. Top deep learning libraries are available on the Python ecosystem like Theano and TensorFlow. Tap into their power in a few lines of code using Keras, the best-of-breed applied deep learning library. In this Ebook, learn exactly how to get started and apply deep learning to your own machine learning projects.

EMOTION PREDICTION FROM TEXT USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI

EMOTION PREDICTION FROM TEXT USING MACHINE LEARNING AND DEEP LEARNING WITH PYTHON GUI PDF

Author: Vivian Siahaan

Publisher: BALIGE PUBLISHING

Published: 2023-06-28

Total Pages: 327

ISBN-13:

DOWNLOAD EBOOK →

This is a captivating book that delves into the intricacies of building a robust system for emotion detection in textual data. Throughout this immersive exploration, readers are introduced to the methodologies, challenges, and breakthroughs in accurately discerning the emotional context of text. The book begins by highlighting the importance of emotion detection in various domains such as social media analysis, customer sentiment evaluation, and psychological research. Understanding human emotions in text is shown to have a profound impact on decision-making processes and enhancing user experiences. Readers are then guided through the crucial stages of data preprocessing, where text is carefully cleaned, tokenized, and transformed into meaningful numerical representations using techniques like Count Vectorization, TF-IDF Vectorization, and Hashing Vectorization. Traditional machine learning models, including Logistic Regression, Random Forest, XGBoost, LightGBM, and Convolutional Neural Network (CNN), are explored to provide a foundation for understanding the strengths and limitations of conventional approaches. However, the focus of the book shifts towards the Long Short-Term Memory (LSTM) model, a powerful variant of recurrent neural networks. Leveraging word embeddings, the LSTM model adeptly captures semantic relationships and long-term dependencies present in text, showcasing its potential in emotion detection. The LSTM model's exceptional performance is revealed, achieving an astounding accuracy of 86% on the test dataset. Its ability to grasp intricate emotional nuances ingrained in textual data is demonstrated, highlighting its effectiveness in capturing the rich tapestry of human emotions. In addition to the LSTM model, the book also explores the Convolutional Neural Network (CNN) model, which exhibits promising results with an accuracy of 85% on the test dataset. The CNN model excels in capturing local patterns and relationships within the text, providing valuable insights into emotion detection. To enhance usability, an intuitive training and predictive interface is developed, enabling users to train their own models on custom datasets and obtain real-time predictions for emotion detection. This interactive interface empowers users with flexibility and accessibility in utilizing the trained models. The book further delves into the performance comparison between the LSTM model and traditional machine learning models, consistently showcasing the LSTM model's superiority in capturing complex emotional patterns and contextual cues within text data. Future research directions are explored, including the integration of pre-trained language models such as BERT and GPT, ensemble techniques for further improvements, and the impact of different word embeddings on emotion detection. Practical applications of the developed system and models are discussed, ranging from sentiment analysis and social media monitoring to customer feedback analysis and psychological research. Accurate emotion detection unlocks valuable insights, empowering decision-making processes and fostering meaningful connections. In conclusion, this project encapsulates a transformative expedition into understanding human emotions in text. By harnessing the power of machine learning techniques, the book unlocks the potential for accurate emotion detection, empowering industries to make data-driven decisions, foster connections, and enhance user experiences. This book serves as a beacon for researchers, practitioners, and enthusiasts venturing into the captivating world of emotion detection in text.

Deep Learning with Python

Deep Learning with Python PDF

Author: Francois Chollet

Publisher: Simon and Schuster

Published: 2017-11-30

Total Pages: 597

ISBN-13: 1638352046

DOWNLOAD EBOOK →

Summary Deep Learning with Python introduces the field of deep learning using the Python language and the powerful Keras library. Written by Keras creator and Google AI researcher François Chollet, this book builds your understanding through intuitive explanations and practical examples. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Machine learning has made remarkable progress in recent years. We went from near-unusable speech and image recognition, to near-human accuracy. We went from machines that couldn't beat a serious Go player, to defeating a world champion. Behind this progress is deep learning—a combination of engineering advances, best practices, and theory that enables a wealth of previously impossible smart applications. About the Book Deep Learning with Python introduces the field of deep learning using the Python language and the powerful Keras library. Written by Keras creator and Google AI researcher François Chollet, this book builds your understanding through intuitive explanations and practical examples. You'll explore challenging concepts and practice with applications in computer vision, natural-language processing, and generative models. By the time you finish, you'll have the knowledge and hands-on skills to apply deep learning in your own projects. What's Inside Deep learning from first principles Setting up your own deep-learning environment Image-classification models Deep learning for text and sequences Neural style transfer, text generation, and image generation About the Reader Readers need intermediate Python skills. No previous experience with Keras, TensorFlow, or machine learning is required. About the Author François Chollet works on deep learning at Google in Mountain View, CA. He is the creator of the Keras deep-learning library, as well as a contributor to the TensorFlow machine-learning framework. He also does deep-learning research, with a focus on computer vision and the application of machine learning to formal reasoning. His papers have been published at major conferences in the field, including the Conference on Computer Vision and Pattern Recognition (CVPR), the Conference and Workshop on Neural Information Processing Systems (NIPS), the International Conference on Learning Representations (ICLR), and others. Table of Contents PART 1 - FUNDAMENTALS OF DEEP LEARNING What is deep learning? Before we begin: the mathematical building blocks of neural networks Getting started with neural networks Fundamentals of machine learning PART 2 - DEEP LEARNING IN PRACTICE Deep learning for computer vision Deep learning for text and sequences Advanced deep-learning best practices Generative deep learning Conclusions appendix A - Installing Keras and its dependencies on Ubuntu appendix B - Running Jupyter notebooks on an EC2 GPU instance