Buzzsaw: a System for High Speed Feature Engineering

Total Page:16

File Type:pdf, Size:1020Kb

Buzzsaw: a System for High Speed Feature Engineering Buzzsaw: A System for High Speed Feature Engineering Andrew Stanton and Liangjie Hong and Manju Rajashekhar Etsy Inc. 117 Adams Street Brooklyn, NY fastanton,lhong,[email protected] ABSTRACT In this paper, we present Buzzsaw: a standalone, high perfor- Feature Engineering is a critical part of machine learning systems. mance feature engineering library, designed with the following Most feature engineering solutions focus on a single language or considerations in mind: computational abstraction for their pipelines, forcing practitioners • Embeddable. It should work directly within other lan- to either embrace a restricted ecosystem or incur operational and guages. orchestrational complexity. In this paper, we describe Buzzsaw: • Extensible. Adding new feature transforms should be easy an independent system for constructing and evaluating complex and safe. feature pipelines, designed for embedded usage across multiple • Scalable. It needs to work eectively in both local and languages and platforms. We describe its core interfaces, data cluster compute environments. types, and algorithms for implementing the system and compare it • Congurable. It needs to be cong driven, not code driven. to three other common feature engineering frameworks. • Performance. It needs to be fast for both batch and real- time uses. • Maintainance. It should focus on common interfaces to 1 INTRODUCTION minimize glue code [15]. • Deterministic. It should produce consistent results at all e widespread application of machine learning techniques in re- stages of execution. cent years has rapidly expanded the capabilities of both consumer and business products. With the commoditization of ETL platforms 2 BUZZSAW and machine learning suites, much of the work of a data scientist is spent on feature engineering, plugging and playing dierent sets Buzzsaw operates on structured features, evaluating each through a of features to improve models [7]. It is oen considered the “secret user dened directed acyclic graph (DAG). Nodes are dened as Fea- sauce” of model improvement [4, 5]. However, as data size and ture Processors (FP): interfaces which compute a transform on a set model complexity increases, a divide has appeared between where of inputs and produce an output. Edges describe the dependencies feature engineering is performed and where learning algorithms between outputs of upstream feature processors to downstream are actually implemented. consumers. Structured data is submied to the graph as JSON As industry has consolidated around platforms like Spark [17] objects, where keys describe the feature names and values the ac- and MapReduce [6] for cluster compute, large investments have tual features. Buzzsaw is wrien in Rust, facilitating safety and been made in tooling for broadening platform capabilities for han- integration over foreign function interfaces (FFI). dling diverse workloads. It is natural, then, that feature engineering gravitates toward those ecosystems; aer all, raw features are read- 2.1 High Level Architecture ily available, usually as outputs of upstream jobs. Furthermore, clus- Buzzsaw operates on JSON formaed data. On execution, it be- ter compute is exceptionally well suited for large scale processing gins by packing the raw features into the Buzzsaw’s internal data of feature transforms: most transformations can be implemented representation, a DType. e processor graphs are then evaluated, with the main primitive of the paradigm, a Map. However, there each node consuming either the original input data or the output are real tradeos with these platform-specic feature pipelines, of a previously evaluated Feature Processor. Aer evaluation, an especially in early stage experimentation: Output Formaer aggregates the necessary elds, transforming (1) High speed implementations are typically developed inde- the associated DTypes into the format specied by a user provided pendently of cluster compute libraries [1, 8–10, 13]. Buzzsaw cong. (2) Cluster-compute pipelines are hard to iterate on due to ere are two independent DAGs specied in Buzzsaw: Features “Pipelines as Code”. Iteration leads to pipeline jungles [15], and Supervised. When generating training data, both DAGs are hindering maintenance. evaluated, allowing the Output Formaer to produce supervised (3) It requires touching multiple systems and platforms even features. However, when only features are required, such as during for simple experimentation. prediction, only the features graph is executed. Figure 1 examines (4) It is hard, or impossible, to bundle feature pipelines with a simple DAG. external models. (5) Debugging is dicult: features are engineered in a com- 2.2 Buzzsaw DAG pletely separate environment, creating a large surface area e core contribution of Buzzsaw is in the composition and eval- for failure. uation of the Feature Processor DAG. We start by describing the phases: a learning phase, called fit, and a generate phase which produces the actual feature vectors. During fit, Buzzsaw parses the user conguration and a sam- ple of the dataset to construct the underlying Feature Processors, learning any statistics relevant to the FP (e.g. mean and variance in the case of Z-Whitening). It produces a new conguration le, Figure 1: Example of a feature DAG the Buzzsaw pipeline cong (BPC) le, consisting of the serialized pipelines. Framework Platform DPS X Slower e generate phase loads the pipelines from a BPC le and Buzzsaw Native 1,274,044 1.00x processes documents in mini-batches provided by the user. Buzzsaw Scikit-Learn Python 66,948 19.03x is guaranteed thread-safe by use of language primitives, simplifying PySpark Python 16,624 76.64x parallel computation in languages like Python and Java. PySpark* Python 17,406 73.19x PS+B Single Library 107,996 11.80x 3 EVALUATION PS+B Single* Library 152,531 8.35x To evaluate the ecacy of our approach, we compare Buzzsaw to PS+B Batch Library 201,299 6.33x other popular frameworks on feature pipeline throughput using PS+B Batch* Library 441,656 2.88x three variants: native, a standalone executable wrapping the Buzz- KeystoneML Scala 232,805 5.47x saw library, embedded into Python, and nally compare it to the Table 1: Experiment: Feature Hashing + TF-IDF state-of-the-art pipeline, KeystoneML[16]. For Python, we look at two common frameworks for feature primitive data types and move on to dening the minimal interfaces engineering: Scikit-learn[14] and PySpark [12, 17], using the ML needed for constructing and evaluating the DAG. We close out by Pipeline’s interface built and maintained by Databricks [11]. We discussing Output Formaers. Input documents are composed of compare the three frameworks using a sample of the May 2015 namespaced, strongly typed data, similar to the DataFrame repre- Reddit comment dataset, released on Kaggle 1, resulting in a dataset sentation used in Spark ML [2]. Feature Processors are executed of 29; 590; 949 samples. For hardware, we use a dual CPU, Intel according to their topological sort order, caching resulting outputs Xeon CPU E5-2630 v2 at 2.60GHz machine with 128GB of RAM and for consumption by downstream processors. Buzzsaw passes full 4.5TB of disk space, running CentOS 7. ownership of the input channels into an FP, allowing it reuse data We measure performance for a multi-channel feature pipeline; structures and utilize other performance tricks, only copying data we convert the ‘body’ eld into a feature vector via TF-IDF, the when needed (see Figure 1). ‘author’ eld into a feature vector via feature hashing, and nally Buzzsaw internally represents features in an algebraic data type concatenate the resulting vectors to create the output. A more (ADT) called DType. Currently, Buzzsaw supports the following: complete evaluation is available in the full paper. booleans, 64-bit signed integers, 64-bit oats, string, set of strings, sparse vectors, dense vectors, and string to oat mappings. 3.1 Framework Comparisons Feature Processors (FP) are the backbone of Buzzsaw. An im- We measure overall framework throughput with Documents per plementation provides a single function, evaluate, which takes Second (DPS). We measure the relative throughput between li- in a vector of DType and returns a vector of DType. ey operate braries as compared to our Buzzsaw native implementation, la- over “columns” of data, providing computational opportunities, belled as “X Slower”. In an aempt to beer replicate performance such as vectorization over adjacent rows (e.g. L2 normalization across a cluster, we measure and remove xed cost overhead from of dense vectors). Feature Processors have a companion “SerDe” PySpark. ese are marked in 1 with an *. Experiments were run (an abbreviation of Serialize/Deserialize) object. It’s responsible for three times, using the fastest time reported. learning a FPs seings from a data sample as well as constructing Buzzsaw was the fastest framework tested, over an order of a its companion FP from saved congurations. All Feature Proces- magnitude faster than other Python frameworks. PySpark + Buzz- sors SerDe’s (FPS) tie versions to their underlying representations. saw showed good scaling, nishing over 23 times faster than vanilla When loading a saved FP, SerDe’s validate the saved conguration PySpark. Compared to the KeystoneML framework, Buzzsaw regis- is compatible with the current code base. tered nearly a 5.5X improvement in throughput over the equivalent Output Formaers produce common machine learning formats pipeline. from the DAGs, producing both supervised and feature-only records. As of writing, Buzzsaw produces libsvm [3] format, Vowpal Wab- REFERENCES bit [10] format, and a generic TSV format. [1] Mart´ın Abadi, Ashish Agarwal, Paul Barham, Eugene Brevdo, Zhifeng Chen, Craig Citro, Greg S Corrado, Andy Davis, Jerey Dean, Mahieu Devin, et al. 2016. Tensorow: Large-scale machine learning on heterogeneous distributed systems. arXiv preprint arXiv:1603.04467 (2016). [2] Michael Armbrust, Reynold S Xin, Cheng Lian, Yin Huai, Davies Liu, Joseph K 2.3 Conguration Bradley, Xiangrui Meng, Tomer Kaan, Michael J Franklin, Ali Ghodsi, et al. 2015. Users provide a cong describing how features ow through the Spark sql: Relational data processing in spark.
Recommended publications
  • Incorporating Automated Feature Engineering Routines Into Automated Machine Learning Pipelines by Wesley Runnels
    Incorporating Automated Feature Engineering Routines into Automated Machine Learning Pipelines by Wesley Runnels Submitted to the Department of Electrical Engineering and Computer Science in partial fulfillment of the requirements for the degree of Master of Engineering in Electrical Engineering and Computer Science at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY May 2020 c Massachusetts Institute of Technology 2020. All rights reserved. Author . Wesley Runnels Department of Electrical Engineering and Computer Science May 12th, 2020 Certified by . Tim Kraska Department of Electrical Engineering and Computer Science Thesis Supervisor Accepted by . Katrina LaCurts Chair, Master of Engineering Thesis Committee 2 Incorporating Automated Feature Engineering Routines into Automated Machine Learning Pipelines by Wesley Runnels Submitted to the Department of Electrical Engineering and Computer Science on May 12, 2020, in partial fulfillment of the requirements for the degree of Master of Engineering in Electrical Engineering and Computer Science Abstract Automating the construction of consistently high-performing machine learning pipelines has remained difficult for researchers, especially given the domain knowl- edge and expertise often necessary for achieving optimal performance on a given dataset. In particular, the task of feature engineering, a key step in achieving high performance for machine learning tasks, is still mostly performed manually by ex- perienced data scientists. In this thesis, building upon the results of prior work in this domain, we present a tool, rl feature eng, which automatically generates promising features for an arbitrary dataset. In particular, this tool is specifically adapted to the requirements of augmenting a more general auto-ML framework. We discuss the performance of this tool in a series of experiments highlighting the various options available for use, and finally discuss its performance when used in conjunction with Alpine Meadow, a general auto-ML package.
    [Show full text]
  • Learning from Few Subjects with Large Amounts of Voice Monitoring Data
    Learning from Few Subjects with Large Amounts of Voice Monitoring Data Jose Javier Gonzalez Ortiz John V. Guttag Robert E. Hillman Daryush D. Mehta Jarrad H. Van Stan Marzyeh Ghassemi Challenges of Many Medical Time Series • Few subjects and large amounts of data → Overfitting to subjects • No obvious mapping from signal to features → Feature engineering is labor intensive • Subject-level labels → In many cases, no good way of getting sample specific annotations 1 Jose Javier Gonzalez Ortiz Challenges of Many Medical Time Series • Few subjects and large amounts of data → Overfitting to subjects Unsupervised feature • No obvious mapping from signal to features extraction → Feature engineering is labor intensive • Subject-level labels Multiple → In many cases, no good way of getting sample Instance specific annotations Learning 2 Jose Javier Gonzalez Ortiz Learning Features • Segment signal into windows • Compute time-frequency representation • Unsupervised feature extraction Conv + BatchNorm + ReLU 128 x 64 Pooling Dense 128 x 64 Upsampling Sigmoid 3 Jose Javier Gonzalez Ortiz Classification Using Multiple Instance Learning • Logistic regression on learned features with subject labels RawRaw LogisticLogistic WaveformWaveform SpectrogramSpectrogram EncoderEncoder RegressionRegression PredictionPrediction •• %% Positive Positive Ours PerPer Window Window PerPer Subject Subject • Aggregate prediction using % positive windows per subject 4 Jose Javier Gonzalez Ortiz Application: Voice Monitoring Data • Voice disorders affect 7% of the US population • Data collected through neck placed accelerometer 1 week = ~4 billion samples ~100 5 Jose Javier Gonzalez Ortiz Results Previous work relied on expert designed features[1] AUC Accuracy Comparable performance Train 0.70 ± 0.05 0.71 ± 0.04 Expert LR without Test 0.68 ± 0.05 0.69 ± 0.04 task-specific feature Train 0.73 ± 0.06 0.72 ± 0.04 engineering! Ours Test 0.69 ± 0.07 0.70 ± 0.05 [1] Marzyeh Ghassemi et al.
    [Show full text]
  • Expert Feature-Engineering Vs. Deep Neural Networks: Which Is Better for Sensor-Free Affect Detection?
    Expert Feature-Engineering vs. Deep Neural Networks: Which is Better for Sensor-Free Affect Detection? Yang Jiang1, Nigel Bosch2, Ryan S. Baker3, Luc Paquette2, Jaclyn Ocumpaugh3, Juliana Ma. Alexandra L. Andres3, Allison L. Moore4, Gautam Biswas4 1 Teachers College, Columbia University, New York, NY, United States [email protected] 2 University of Illinois at Urbana-Champaign, Champaign, IL, United States {pnb, lpaq}@illinois.edu 3 University of Pennsylvania, Philadelphia, PA, United States {rybaker, ojaclyn}@upenn.edu [email protected] 4 Vanderbilt University, Nashville, TN, United States {allison.l.moore, gautam.biswas}@vanderbilt.edu Abstract. The past few years have seen a surge of interest in deep neural net- works. The wide application of deep learning in other domains such as image classification has driven considerable recent interest and efforts in applying these methods in educational domains. However, there is still limited research compar- ing the predictive power of the deep learning approach with the traditional feature engineering approach for common student modeling problems such as sensor- free affect detection. This paper aims to address this gap by presenting a thorough comparison of several deep neural network approaches with a traditional feature engineering approach in the context of affect and behavior modeling. We built detectors of student affective states and behaviors as middle school students learned science in an open-ended learning environment called Betty’s Brain, us- ing both approaches. Overall, we observed a tradeoff where the feature engineer- ing models were better when considering a single optimized threshold (for inter- vention), whereas the deep learning models were better when taking model con- fidence fully into account (for discovery with models analyses).
    [Show full text]
  • Deep Learning Feature Extraction Approach for Hematopoietic Cancer Subtype Classification
    International Journal of Environmental Research and Public Health Article Deep Learning Feature Extraction Approach for Hematopoietic Cancer Subtype Classification Kwang Ho Park 1 , Erdenebileg Batbaatar 1 , Yongjun Piao 2, Nipon Theera-Umpon 3,4,* and Keun Ho Ryu 4,5,6,* 1 Database and Bioinformatics Laboratory, College of Electrical and Computer Engineering, Chungbuk National University, Cheongju 28644, Korea; [email protected] (K.H.P.); [email protected] (E.B.) 2 School of Medicine, Nankai University, Tianjin 300071, China; [email protected] 3 Department of Electrical Engineering, Faculty of Engineering, Chiang Mai University, Chiang Mai 50200, Thailand 4 Biomedical Engineering Institute, Chiang Mai University, Chiang Mai 50200, Thailand 5 Data Science Laboratory, Faculty of Information Technology, Ton Duc Thang University, Ho Chi Minh 700000, Vietnam 6 Department of Computer Science, College of Electrical and Computer Engineering, Chungbuk National University, Cheongju 28644, Korea * Correspondence: [email protected] (N.T.-U.); [email protected] or [email protected] (K.H.R.) Abstract: Hematopoietic cancer is a malignant transformation in immune system cells. Hematopoi- etic cancer is characterized by the cells that are expressed, so it is usually difficult to distinguish its heterogeneities in the hematopoiesis process. Traditional approaches for cancer subtyping use statistical techniques. Furthermore, due to the overfitting problem of small samples, in case of a minor cancer, it does not have enough sample material for building a classification model. Therefore, Citation: Park, K.H.; Batbaatar, E.; we propose not only to build a classification model for five major subtypes using two kinds of losses, Piao, Y.; Theera-Umpon, N.; Ryu, K.H.
    [Show full text]
  • Feature Engineering for Predictive Modeling Using Reinforcement Learning
    The Thirty-Second AAAI Conference on Artificial Intelligence (AAAI-18) Feature Engineering for Predictive Modeling Using Reinforcement Learning Udayan Khurana Horst Samulowitz Deepak Turaga [email protected] [email protected] [email protected] IBM Research AI IBM Research AI IBM Research AI Abstract Feature engineering is a crucial step in the process of pre- dictive modeling. It involves the transformation of given fea- ture space, typically using mathematical functions, with the objective of reducing the modeling error for a given target. However, there is no well-defined basis for performing effec- tive feature engineering. It involves domain knowledge, in- tuition, and most of all, a lengthy process of trial and error. The human attention involved in overseeing this process sig- nificantly influences the cost of model generation. We present (a) Original data (b) Engineered data. a new framework to automate feature engineering. It is based on performance driven exploration of a transformation graph, Figure 1: Illustration of different representation choices. which systematically and compactly captures the space of given options. A highly efficient exploration strategy is de- rived through reinforcement learning on past examples. rental demand (kaggle.com/c/bike-sharing-demand) in Fig- ure 2(a). Deriving several features (Figure 2(b)) dramatically Introduction reduces the modeling error. For instance, extracting the hour of the day from the given timestamp feature helps to capture Predictive analytics are widely used in support for decision certain trends such as peak versus non-peak demand. Note making across a variety of domains including fraud detec- that certain valuable features are derived through a compo- tion, marketing, drug discovery, advertising, risk manage- sition of multiple simpler functions.
    [Show full text]
  • Explicit Document Modeling Through Weighted Multiple-Instance Learning
    Journal of Artificial Intelligence Research 58 (2017) Submitted 6/16; published 2/17 Explicit Document Modeling through Weighted Multiple-Instance Learning Nikolaos Pappas [email protected] Andrei Popescu-Belis [email protected] Idiap Research Institute, Rue Marconi 19 CH-1920 Martigny, Switzerland Abstract Representing documents is a crucial component in many NLP tasks, for instance pre- dicting aspect ratings in reviews. Previous methods for this task treat documents globally, and do not acknowledge that target categories are often assigned by their authors with gen- erally no indication of the specific sentences that motivate them. To address this issue, we adopt a weakly supervised learning model, which jointly learns to focus on relevant parts of a document according to the context along with a classifier for the target categories. Originated from the weighted multiple-instance regression (MIR) framework, the model learns decomposable document vectors for each individual category and thus overcomes the representational bottleneck in previous methods due to a fixed-length document vec- tor. During prediction, the estimated relevance or saliency weights explicitly capture the contribution of each sentence to the predicted rating, thus offering an explanation of the rating. Our model achieves state-of-the-art performance on multi-aspect sentiment analy- sis, improving over several baselines. Moreover, the predicted saliency weights are close to human estimates obtained by crowdsourcing, and increase the performance of lexical and topical features for review segmentation and summarization. 1. Introduction Many NLP tasks such as document classification, question answering, and summarization heavily rely on how well the contents of the document are represented in a given model.
    [Show full text]
  • Miforests: Multiple-Instance Learning with Randomized Trees⋆
    MIForests: Multiple-Instance Learning with Randomized Trees? Christian Leistner, Amir Saffari, and Horst Bischof Institute for Computer Graphics and Vision, Graz University of Technology, Inffeldgasse 16, 8010 Graz, Austria {leistner,saffari,bischof}@icg.tugraz.at http://www.icg.tugraz.at Abstract. Multiple-instance learning (MIL) allows for training classi- fiers from ambiguously labeled data. In computer vision, this learning paradigm has been recently used in many applications such as object clas- sification, detection and tracking. This paper presents a novel multiple- instance learning algorithm for randomized trees called MIForests. Ran- domized trees are fast, inherently parallel and multi-class and are thus increasingly popular in computer vision. MIForest combine the advan- tages of these classifiers with the flexibility of multiple instance learning. In order to leverage the randomized trees for MIL, we define the hidden class labels inside target bags as random variables. These random vari- ables are optimized by training random forests and using a fast iterative homotopy method for solving the non-convex optimization problem. Ad- ditionally, most previously proposed MIL approaches operate in batch or off-line mode and thus assume access to the entire training set. This limits their applicability in scenarios where the data arrives sequentially and in dynamic environments. We show that MIForests are not limited to off-line problems and present an on-line extension of our approach. In the experiments, we evaluate MIForests on standard visual MIL bench- mark datasets where we achieve state-of-the-art results while being faster than previous approaches and being able to inherently solve multi-class problems.
    [Show full text]
  • A New Modal Autoencoder for Functionally Independent Feature Extraction
    A New Modal Autoencoder for Functionally Independent Feature Extraction Yuzhu Guo Kang Pan Simeng Li Zongchang Han Kexin Wang Department of Automation Sciences and Electrical Engineering Beihang University Beijing, China {yuzhuguo, lkwxl, lsimeng, zchan, wkx933}@buaa.edu.cn Li Li Department of Automation Sciences and Electrical Engineering Beihang University Beijing, China [email protected] Abstract Autoencoders have been widely used for dimensional reduction and feature ex- traction. Various types of autoencoders have been proposed by introducing reg- ularization terms. Most of these regularizations improve representation learning by constraining the weights in the encoder part, which maps input into hidden nodes and affects the generation of features. In this study, we show that a con- straint to the decoder can also significantly improve its performance because the decoder determines how the latent variables contribute to the reconstruction of input. Inspired by the structural modal analysis method in mechanical engineering, a new modal autoencoder (MAE) is proposed by othogonalising the columns of the readout weight matrix. The new regularization helps to disentangle explanatory factors of variation and forces the MAE to extract fundamental modes in data. The learned representations are functionally independent in the reconstruction of input and perform better in consecutive classification tasks. The results were validated on the MNIST variations and USPS classification benchmark suite. Comparative experiments clearly show that the new algorithm has a surprising advantage. The new MAE introduces a very simple training principle for autoencoders and could be promising for the pre-training of deep neural networks. arXiv:2006.14390v1 [cs.LG] 25 Jun 2020 1 Introduction The success of machine learning heavily depends on data representation.
    [Show full text]
  • Feature Engineering for Machine Learning
    Feature Engineering for Machine Learning PRINCIPLES AND TECHNIQUES FOR DATA SCIENTISTS Alice Zheng & Amanda Casari Feature Engineering for Machine Learning Principles and Techniques for Data Scientists Alice Zheng and Amanda Casari Beijing Boston Farnham Sebastopol Tokyo Feature Engineering for Machine Learning by Alice Zheng and Amanda Casari Copyright © 2018 Alice Zheng, Amanda Casari. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://oreilly.com/safari). For more information, contact our corporate/insti‐ tutional sales department: 800-998-9938 or [email protected]. Editors: Rachel Roumeliotis and Jeff Bleiel Indexer: Ellen Troutman Production Editor: Kristen Brown Interior Designer: David Futato Copyeditor: Rachel Head Cover Designer: Karen Montgomery Proofreader: Sonia Saruba Illustrator: Rebecca Demarest April 2018: First Edition Revision History for the First Edition 2018-03-23: First Release See http://oreilly.com/catalog/errata.csp?isbn=9781491953242 for release details. The O’Reilly logo is a registered trademark of O’Reilly Media, Inc. Feature Engineering for Machine Learning, the cover image, and related trade dress are trademarks of O’Reilly Media, Inc. While the publisher and the authors have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the authors disclaim all responsibility for errors or omissions, including without limitation responsibility for damages resulting from the use of or reliance on this work. Use of the information and instructions contained in this work is at your own risk.
    [Show full text]
  • A Brief Introduction to Deep Learning
    A Brief Introduction to Deep Learning --Yangyan Li How would you crack it? How to avoid being cracked? Seam Carving! Labradoodle or fried chicken Puppy or bagel Sheepdog or mop Chihuahua or muffin Barn owl or apple Parrot or guacamole Raw chicken or Donald Trump But, we human actually lose! • A demo that shows we, human, lose, on the classification task, we are proud of, we have been trained for millions of years! • If we want to make it hard for bots, it has to be hard for human as well. How would you crack it? We human lose on Go! We (will) lose on many specific tasks! • Speech recognition • Translation • Self-driving • … • BUT, they are not AI yet… • Don’t worry until it dates with your girl/boy friend… Deep learning is so cool for so many problems… A Brief Introduction to Deep Learning • Artificial Neural Network • Back-propagation • Fully Connected Layer • Convolutional Layer • Overfitting Artificial Neural Network 1. Activation function 2. Weights 3. Cost function 4. Learning algorithm Live Demo Neurons are functions Neurons are functions Back-propagation Now, serious stuff, a bit… Fully Connected Layers “When in doubt, use brute force.” --Ken Thompson “If brute force is possible...” --Yangyan Li Convolutional Layers Convolutional Layers Convolution Filters Feature Engineering vs. Learning • Feature engineering is the process of using domain knowledge of the data to create features that make machine learning algorithms work. • “When working on a machine learning problem, feature engineering is manually designing what the input x's should be.” -- Shayne Miel • “Coming up with features is difficult, time- consuming, requires expert knowledge.” --Andrew Ng How to detect it in training process? Dropout Sigmod ReLU Sigmod ReLU Compute, connect, evaluate, correct, train madly… Non-linearity, distributed representation, parallel computation, adaptive, self-organizing… A brief history • McCulloch, Warren S., and Walter Pitts.
    [Show full text]
  • Truncated SVD-Based Feature Engineering for Music Recommendation KKBOX’S Music Recommendation Challenge at ACM WSDM Cup 2018
    Truncated SVD-based Feature Engineering for Music Recommendation KKBOX’s Music Recommendation challenge at ACM WSDM Cup 2018 Nima Shahbazi Mohamed Chahhou Jarek Gryz York University Sidi Mohamed Ben Abdellah York University [email protected] University [email protected] [email protected] ABSTRACT to suggest relevant preference to a specific user. Many web ser- 1 This year’s ACM WSDM Cup asked the ML community to build an vices such as Netflix, Spotify, YouTube, KKBOX use CF to deliver improved music recommendation system using a dataset provided personalized recommendation to their customers. by KKBOX. The task was to predict the chances a user would listen The ACM WSDM Cup challenged the ML community to improve to a song repetitively after the first observable listening event within KKBOX model and build a better music recommendation system 2 a given time frame. We cast this problem as a binary classification using their dataset . KKBOX currently uses CF based algorithm problem and addressed it by using gradient boosted decision trees. with matrix factorization but expects that other techniques could To overcome the cold start problem, which is a notorious problem in lead to better music recommendations. recommender systems, we create truncated SVD-based embedding In this task, we want to predict songs which a user will truly like. features for users, songs and artists. Using the embedding features Intuitively, if a user much enjoys a song, s/he will repetitively listen with four different statistical based features (users, songs, artists to it. We are asked to predict the chances of a user listening to a song and time), our model won the ACM challenge, ranking second.
    [Show full text]
  • A Hybrid Method Based on Extreme Learning Machine and Wavelet Transform Denoising for Stock Prediction
    entropy Article A Hybrid Method Based on Extreme Learning Machine and Wavelet Transform Denoising for Stock Prediction Dingming Wu, Xiaolong Wang * and Shaocong Wu College of Computer Science and Technology, Harbin Institute of Technology, Shenzhen 518055, China; [email protected] (D.W.); [email protected] (S.W.) * Correspondence: [email protected] Abstract: The trend prediction of the stock is a main challenge. Accidental factors often lead to short-term sharp fluctuations in stock markets, deviating from the original normal trend. The short- term fluctuation of stock price has high noise, which is not conducive to the prediction of stock trends. Therefore, we used discrete wavelet transform (DWT)-based denoising to denoise stock data. Denoising the stock data assisted us to eliminate the influences of short-term random events on the continuous trend of the stock. The denoised data showed more stable trend characteris- tics and smoothness. Extreme learning machine (ELM) is one of the effective training algorithms for fully connected single-hidden-layer feedforward neural networks (SLFNs), which possesses the advantages of fast convergence, unique results, and it does not converge to a local minimum. Therefore, this paper proposed a combination of ELM- and DWT-based denoising to predict the trend of stocks. The proposed method was used to predict the trend of 400 stocks in China. The predic- tion results of the proposed method are a good proof of the efficacy of DWT-based denoising for stock trends, and showed an excellent performance compared to 12 machine learning algorithms (e.g., recurrent neural network (RNN) and long short-term memory (LSTM)).
    [Show full text]