Python Training Courses

Python Training

Python Programming Language courses

Testi...Client Testimonials

Python Programming

Clarifications on doubts are really good

Vijaya Kumar Janjanam - Nagra Media UK Ltd

Python Programming

Good balance of lectures and exercises - course adapted to suit our needs.

Gareth Jones - Nagra Media UK Ltd

Python Programming

* Enjoyable exercises.
* Quickly moved into more advanced topics.
* Trainer was friendly and easy to get on with.
* Customized course for needs of team.

Thanks to Kristian for a detailed and enjoyable course, I learned a lot.

Matthew Lucas - Nagra Media UK Ltd

Python Programming

I preferred the exercise and learning about the nooks and crannies of Python

Connor Brierley-Green - Natural Resources Canada

Python Programming

Joey has an infectious enthusiasm about programming. And he was very good at adapting to our needs and interests on the fly.

Randy Enkin - Natural Resources Canada

Python Programming

Many examples made me easy to understand.

Lingmin Cao - Natural Resources Canada

Python Programming

fact that customisation was taken seriously

jurgen linsen - BVBA 7pines

Natural Language Processing with Python

I did like the exercises

- Office for National Statistics

Python Programming

Helpful and very kind.

Natalia Machrowicz - MEELOGIC CONSULTING POLSKA SP Z O O

Python Programming

We did practical exercises (the scripts we wrote can be used in our everyday work). It made the course very interesting.
I also liked the way the trainer shared his knowledge. He did it in a very accessible way.

Malwina Sawa - MEELOGIC CONSULTING POLSKA SP Z O O

A practical introduction to Data Analysis and Big Data

Willingness to share more

Balaram Chandra Paul - MOL Information Technology Asia Limited

Python Programming

Very good approach to memorize/repeat the key topics. Very nice "warm-up" exercises.

Python Programming

* Enjoyable exercises.
* Quickly moved into more advanced topics.
* Trainer was friendly and easy to get on with.
* Customized course for needs of team.

Matthew Lucas - NAGRA MEDIA UK LTD

Python Course Outlines

Code Name Duration Overview
pythontextml Python: Machine learning with text 14 hours In this instructor-led, live training, participants will learn how to use the right machine learning and NLP (Natural Language Processing) techniques to extract value from text-based data. By the end of this training, participants will be able to: Solve text-based data science problems with high-quality, reusable code Apply different aspects of scikit-learn (classification, clustering, regression, dimensionality reduction) to solve problems Build effective machine learning models using text-based data Create a dataset and extract features from unstructured text Build and evaluate models to gain insight Troubleshoot text encoding errors Audience Developers Data Scientists Format of the course Part lecture, part discussion, exercises and heavy hands-on practice To request a customized course outline for this training, please contact us.
pythonprog Python Programming 28 hours This course is designed for those wishing to learn the Python programming language. The emphasis is on the Python language, the core libraries, as well as on the selection of the best and most useful libraries developed by the Python community. Python drives businesses and is used by scientists all over the world – it is one of the most popular programming languages. The course can be delivered using Python 2.7.x or 3.x, with practical exercises making use of the full power of both versions of the language. This course can be delivered on any operating system (all flavours of UNIX, including Linux and Mac OS X, as well as Microsoft Windows). The practical exercises constitute about 70% of the course time, and around 30% are demonstrations and presentations. Discussions and questions can be asked throughout the course. Note: the training can be tailored to specific needs upon prior request ahead of the proposed course date. Introduction to Python Programming Running Python code Using Python Development Tools (IDEs and command line tools) Working with Python and iPython shells as well as iPython Notebook Data Types and Operations Integers and floats Strings and bytes Tuples and lists Dictionaries and ordered dictionaries Sets and frozen sets Organizing and Distributing Code Creating modules and packages Distributing code to repositories Object Oriented and Functional Programming Creating and using functions and classes Modifying functions and classes with decorators Introducing meta-classes Error Handling and Testing Handling and raising exceptions Writing and executing tests (doc tests and unit tests) Checking code coverage by tests Working with Files and Directories Accessing different types of files and file handling principles Creating, reading, updating and deleting files (including regular text files, csv, as well as Microsoft Word and Microsoft Excel files) Extracting data from text files using Regular Expressions Creating and deleting directories, listing and searching for files Accessing Databases Selecting, inserting, updating and deleting data Generic database API based on SQLite 3, PostgreSQL and MySQL Using the Object Relational Mapper (SQLAlchemy) Working with NoSQL databases Conquering The Web Retrieving web pages Parsing HTML and XML Filling web forms automatically Creating web applications in Python
progbio Programming for Biologists 28 hours This is a practical course, which shows why programming is a powerful tool in the context of solving biological problems. During the course participants will be taught the Python programming language, a language widely considered both powerful as well as easy to use. This course might be considered as a demonstration how bioinformatics improves biologists lives. The course is designed and aimed for people without computer science background who want to learn programming. This course is suited for: Researchers dealing with biological data. Scientists who would like to learn how to automate everyday tasks and analyse data. Managers who want to learn how programming improves workflows and conducting projects. By the end of the course, participants will be able to write short programs, which will allow them to manipulate, analyse and deal with biological data and present results in a graphical format. Introduction to the Python programming language Why Python? Using Python to deal with biological data Working with the iPython shell Your first programme Writing Python scripts Importing modules Working with protein and RNA/DNA sequences Finding motives Transcription and translation in silico Handling sequence alignments Parsing data in different biological formats Parsing FASTA Data format conversions Running biological analyses BLAST Accessing biological web services Dealing with biological 3D structures using Python Python facilitates statistical analysis Visualizing data Creating bar and scatter plots Calculating an Area Under Curve (AUC) Working with .xls and .csv files Importing data from and exporting to MS Excel / OpenOffice Calc Writing .xls and .csv files Using Python to create an automated data processing pipeline
3627 Introduction to Programming 35 hours The purpose of the training is to provide a basis for programming from the ground up to the general syntax of programming paradigms. The training is supported by examples based on programming languages ​​such as C, Java, Python, Scala, C #, Closure and JavaScript. During the training, participants gain a general understanding of both the programming patterns, best practices, commonly used design and review of the implementation of these topics through various platforms. Each of the issues discussed during the course are illustrated with examples of both the most basic and more advanced and based on real problems. Introduction What is programming and why should devote his attention History of programming Opportunity to automate tasks using the software The role of the programmer and the computer in the enterprise Programming today the development of the current market trends Declarative and imperative programming. How or What? Turing machine Consolidation, compilation and interpretation "on the fly". Reminder issues of logic and Boolean algebra predicates logical sentences tautologies Boolean algebra The first program structurally functionally object And how else? Simple types Representation of strings Integers Floating-point numbers Boolean Type Null A blank or Uninitialized Strong and weak typing Data structures Concepts FIFO and FILO Stacks Queues Declaring arrays and lists Indexing Maps Records Trees Operators Assignment Operators. Arithmetic operators. comparison Operators And a comparison of the values ​​in different languages Bitwise Concatenation Increment and decrement operators The most common errors Controlling the program The if, if else instructions Goto instructions, discuss the problems of application. The switch The for loop, for-in The while loop, do-while foreach loop Stopping loop Creating a reusable code Functional Programming Object-Oriented Programming Functional programming paradigms What is the function of Function and procedure Fundamentals of lambda calculus Function Arguments Returning values Functions as arguments Anonymous functions Closures Recursion The paradigms of object-oriented programming Representation of entities from the real world entities in philosophy, ontology Deciding what you want to object, or other types of Declaration of classes Creating instances of classes Fields, a state of the object Methods, as the behavior of an object abstraction Encapsulation Inheritance polymorphism Association and aggregation Delegation and separation of relationships between objects Modules, packages and libraries Sharing API The modeling of the system as classes and objects Describing and programming relationships between classes Program from a business perspective Good programming practice Pitfalls and common errors High-level code in the interpretation of low-level Code optimization KISS principle DRY principle Principle Worse is Better Separation abstraction of implementation Methods of error detection logic programs Conventions godowania Commenting the code Software Metrics Overview of these technologies and languages The area of application of these languages The main features of language Prospects for development The future direction of development: algorithmic, optimization of code, implementing patterns, design patterns, architectural patterns, analytical standards Reduction of the control structure - the use of artificial intelligence and automated decision-making Which platform to choose? Individual consultations
mlfunpython Machine Learning Fundamentals with Python 14 hours The aim of this course is to provide a basic proficiency in applying Machine Learning methods in practice. Through the use of the Python programming language and its various libraries, and based on a multitude of practical examples this course teaches how to use the most important building blocks of Machine Learning, how to make data modeling decisions, interpret the outputs of the algorithms and validate the results. Our goal is to give you the skills to understand and use the most fundamental tools from the Machine Learning toolbox confidently and avoid the common pitfalls of Data Sciences applications. Introduction to Applied Machine Learning Statistical learning vs. Machine learning Iteration and evaluation Bias-Variance trade-off Machine Learning with Python Choice of libraries Add-on tools Regression Linear regression Generalizations and Nonlinearity Exercises Classification Bayesian refresher Naive Bayes Logistic regression K-Nearest neighbors Exercises Cross-validation and Resampling Cross-validation approaches Bootstrap Exercises Unsupervised Learning K-means clustering Examples Challenges of unsupervised learning and beyond K-means
python_nltk Natural Language Processing with Python 28 hours This course introduces linguists or programmers to NLP in Python. During this course we will mostly use nltk.org (Natural Language Tool Kit), but also we will use other libraries relevant and useful for NLP. At the moment we can conduct this course in Python 2.x or Python 3.x. Examples are in English or Mandarin (普通话). Other languages can be also made available if agreed before booking.Overview of Python packages related to NLP   Introduction to NLP (examples in Python of course) Simple Text Manipulation Searching Text Counting Words Splitting Texts into Words Lexical dispersion Processing complex structures Representing text in Lists Indexing Lists Collocations Bigrams Frequency Distributions Conditionals with Words Comparing Words (startswith, endswith, islower, isalpha, etc...) Natural Language Understanding Word Sense Disambiguation Pronoun Resolution Machine translations (statistical, rule based, literal, etc...) Exercises NLP in Python in examples Accessing Text Corpora and Lexical Resources Common sources for corpora Conditional Frequency Distributions Counting Words by Genre Creating own corpus Pronouncing Dictionary Shoebox and Toolbox Lexicons Senses and Synonyms Hierarchies Lexical Relations: Meronyms, Holonyms Semantic Similarity Processing Raw Text Priting struncating extracting parts of string accessing individual charaters searching, replacing, spliting, joining, indexing, etc... using regular expressions detecting word patterns stemming tokenization normalization of text Word Segmentation (especially in Chinese) Categorizing and Tagging Words Tagged Corpora Tagged Tokens Part-of-Speech Tagset Python Dictionaries Words to Propertieis mapping Automatic Tagging Determining the Category of a Word (Morphological, Syntactic, Semantic) Text Classification (Machine Learning) Supervised Classification Sentence Segmentation Cross Validation Decision Trees Extracting Information from Text Chunking Chinking Tags vs Trees Analyzing Sentence Structure Context Free Grammar Parsers Building Feature Based Grammars Grammatical Features Processing Feature Structures Analyzing the Meaning of Sentences Semantics and Logic Propositional Logic First-Order Logic Discourse Semantics  Managing Linguistic Data  Data Formats (Lexicon vs Text) Metadata
mlfsas Machine Learning Fundamentals with Scala and Apache Spark 14 hours The aim of this course is to provide a basic proficiency in applying Machine Learning methods in practice. Through the use of the Scala programming language and its various libraries, and based on a multitude of practical examples this course teaches how to use the most important building blocks of Machine Learning, how to make data modeling decisions, interpret the outputs of the algorithms and validate the results. Our goal is to give you the skills to understand and use the most fundamental tools from the Machine Learning toolbox confidently and avoid the common pitfalls of Data Sciences applications. Introduction to Applied Machine Learning Statistical learning vs. Machine learning Iteration and evaluation Bias-Variance trade-off Machine Learning with Python Choice of libraries Add-on tools Regression Linear regression Generalizations and Nonlinearity Exercises Classification Bayesian refresher Naive Bayes Logistic regression K-Nearest neighbors Exercises Cross-validation and Resampling Cross-validation approaches Bootstrap Exercises Unsupervised Learning K-means clustering Examples Challenges of unsupervised learning and beyond K-means
BigData_ A practical introduction to Data Analysis and Big Data 35 hours Participants who complete this training will gain a practical, real-world understanding of Big Data and its related technologies, methodologies and tools. Participants will have the opportunity to put this knowledge into practice through hands-on exercises. Group interaction and instructor feedback make up an important component of the class. The course starts with an introduction to elemental concepts of Big Data, then progresses into the programming languages and methodologies used to perform Data Analysis. Finally, we discuss the tools and infrastructure that enable Big Data storage, Distributed Processing, and Scalability. Audience Developers / programmers IT consultants Format of the course     Part lecture, part discussion, hands-on practice and implementation, occasional quizing to measure progress. Introduction to Data Analysis and Big Data What makes Big Data "big"? Velocity, Volume, Variety, Veracity (VVVV) Limits to traditional Data Processing Distributed Processing Statistical Analysis Types of Machine Learning Analysis Data Visualization Languages used for Data Analysis R language Why R for Data Analysis? Data manipulation, calculation and graphical display Python Why Python for Data Analysis? Manipulating, processing, cleaning, and crunching data Approaches to Data Analysis Statistical Analysis Time Series analysis Forecasting with Correlation and Regression models Inferential Statistics (estimating) Descriptive Statistics in Big Data sets (e.g. calculating mean) Machine Learning Supervised vs unsupervised learning Classification and clustering Estimating cost of specific methods Filtering Natural Language Processing Processing text Understaing meaning of the text Automatic text generation Sentiment/Topic Analysis Computer Vision Acquiring, processing, analyzing, and understanding images Reconstructing, interpreting and understanding 3D scenes Using image data to make decisions Big Data infrastructure Data Storage Relational databases (SQL) MySQL Postgres Oracle Non-relational databases (NoSQL) Cassandra MongoDB Neo4js Understanding the nuances Hierarchical databases Object-oriented databases Document-oriented databases Graph-oriented databases Other Distributed Processing Hadoop HDFS as a distributed filesystem MapReduce for distributed processing Spark All-in-one in-memory cluster computing framework for large-scale data processing Structured streaming Spark SQL Machine Learning libraries: MLlib Graph processing with GraphX Scalability Public cloud AWS, Google, Aliyun, etc. Private cloud OpenStack, Cloud Foundry, etc. Auto-scalability Choosing right solution for the problem The future of Big Data Closing remarks
seleniumpython Selenium with Python for test automation 14 hours Selenium is an open source library for automating web application testing across multiple browsers. Selenium interacts with a browser as people do: by clicking links, filling out forms and validating text. It is the most popular tool for web application test automation. Selenium is built on the WebDriver framework and has excellent bindings for numerous scripting languages, including Python. In this training participants combine the power of Python with Selenium to automate the testing of a sample web application. By combining theory with practice in a live lab environment, participants will gain the knowledge and practice needed to automate their own web testing projects using Python and Selenium. Audience      Testers and Developers Format of the course     Part lecture, part discussion, heavy hands-on practice Introduction to Selenium with Python     Python vs Java for writing test scripts Installation and setup Selecting a Python IDE or editor Overview of Selenium architecture     Selenium IDE     Selenium WebDriver     Selenium Grid Python scripting essentials for test automation Working with Selenium Webdriver The anatomy of a web application Locating page elements through Page Objects Creating a unit test Accessing a database Developing a test framework Running test suites against multiple browsers Working with SeleniumGrid Troubleshooting Closing remarks
pythonautomation Python: Automate the boring stuff 14 hours This instructor-led training is based on the popular book, "Automate the Boring Stuff with Python", by Al Sweigart. It is aimed at beginners and covers essential Python programming concepts through practical, hands-on exercises and discussions. The focus is on learning to write code to dramatically increase office productivity. By the end of this training, participants will know how to program in Python and apply this new skill for: Automating tasks by writing simple Python programs. Writing programs that can do text pattern recognition with "regular expressions". Programmatically generating and updating Excel spreadsheets. Parsing PDFs and Word documents. Crawling web sites and pulling information from online sources. Writing programs that send out email notifications. Use Python's debugging tools to quickly resolve bugs. Programmatically controlling the mouse and keyboard to click and type for you. Audience Non-programmers wishing to learn programming with Python Professionals and company teams wishing to optimize their office productivity Managers wishing to automate tedious processes and workflows Format of the course Part lecture, part discussion, exercises and heavy hands-on practice Introduction to Python Controlling the flow of your program Working with lists Working with the dictionary data type Manipulating strings Pattern matching with regular expressions Reading, writing and managing files Debugging your code Pulling information from the internet (web scraping) Working with Excel, Word, and PDF Documents Working with CSV and JSON Keeping time Scheduling tasks Launching programs Sending emails and other messages Manipulating images GUI Automation Closing remarks
kivy Kivy: Building Android Apps with Python 7 hours Kivy is an open-source cross-platform graphical user interface library written in Python, which allows multi-touch application development for a wide selection of devices. In this instructor-led, live training participants will learn how to install and deploy Kivy on different platforms, customize and manipulate widgets, schedule, trigger and respond to events, modify graphics with multi-touching, resize the screen, package apps for Android, and more. By the end of this training, participants will be able to Relate the Python code and the Kivy language Have a solid understanding of how Kivy works and makes use of its most important elements such as, widgets, events, properties, graphics, etc. Seamlessly develop and deploy Android apps based on different business and design requirements Audience Programmers or developers with Python knowledge who want to develop multi-touch Android apps using the Kivy framework Android developers with Python knowledge Format of the course Part lecture, part discussion, exercises and heavy hands-on practice To request a customized course outline for this training, please contact us.  
pythonmultipurpose Advanced Python 28 hours In this instructor-led training, participants will learn advanced Python programming techniques, including how to apply this versatile language to solve problems in areas such as distributed applications, finance, data analysis and visualization, UI programming and maintenance scripting. Audience Developers Format of the course Part lecture, part discussion, exercises and heavy hands-on practice Notes If you wish to add, remove or customize any section or topic within this course, please contact us to arrange.   Introduction     Python versatility: from data analysis to web crawling Python data structures and operations     Integers and floats     Strings and bytes     Tuples and lists     Dictionaries and ordered dictionaries     Sets and frozen sets     Data frame (pandas)     Conversions Object-oriented programming with Python     Inheritance     Polymorphism     Static classes     Static functions     Decorators     Other Data Analysis with pandas     Data cleaning     Using vectorized data in pandas     Data wrangling     Sorting and filtering data     Aggregate operations     Analyzing time series Data visualization     Plotting diagrams with matplotlib     Using matplotlib from within pandas     Creating quality diagrams     Visualizing data in Jupyter notebooks     Other visualization libraries in Python Vectorizing Data in Numpy     Creating Numpy arrays     Common operations on matrices     Using ufuncs     Views and broadcasting on Numpy arrays     Optimizing performance by avoiding loops     Optimizing performance with cProfile Processing Big Data with Python     Building and supporting distributed applications with Python     Data storage: Working with SQL and NoSQL databases     Distributed processing with Hadoop and Spark     Scaling your applications Python for finance     Packages, libraries and APIs for financial processing         Zipline         PyAlgoTrade         Pybacktest         quantlib         Python APIs Extending Python (and vice versa) with other languages     C#     Java     C++     Perl     Others Python multi-threaded programming     Modules     Synchronizing     Prioritizing UI programming with Python     Framework options for building GUIs in Python         Tkinter         Pyqt Python for maintenance scripting     Raising and catching exceptions correctly     Organizing code into modules and packages     Understanding symbol tables and accessing them in code     Picking a testing framework and applying TDD in Python Python for the web     Packages for web processing     Web crawling     Parsing HTML and XML     Filling web forms automatically Closing remarks
mldlnlpintro ML、DL與NLP入門與進階大綱 14 hours The aim of this course is to provide a basic proficiency in applying Machine Learning methods in practice. Through the use of the Python programming language and its various libraries, and based on a multitude of practical examples this course teaches how to use the most important building blocks of Machine Learning, how to make data modeling decisions, interpret the outputs of the algorithms and validate the results. Our goal is to give you the skills to understand and use the most fundamental tools from the Machine Learning toolbox confidently and avoid the common pitfalls of Data Sciences applications. 第1部分机器学习入门与进阶大纲 1.1单参数线性回归Linear Regression with one variable 1)曲线拟合:一系列点拟合直线h(x)=theta0+theta1*x   2)误差函数cost function:J(theta0, theta1);目标:min J   3)bowl-shape function:两个参数时,cost function是三维函数   4)梯度下降Gradient descent:让参数沿着梯度下降的方向走,并迭代地不断减少J,即稳态   5)学习率a:a太小,学习很慢;a太大,容易过学习 1.2多变量线性回归Linear Regression with multiple variable 1)多特征multiple features:输出由多维输入决定,即输入是多维特征;   2)假设h(x)=θ0+θ1x1+……所谓多参数线性回归,即每个输入x有(n+1)维[x0……xn]   3)单参数的梯度递降单变量学习方法、多参数梯度下降学习方法   4)特征scaling:feature归一化到[-1,1]:mean normalization   5)学习率a 6)特征和多项式回归 7)Normal Equation 1.3 逻辑回归和过拟合问题Logistic Regression & Regularization 1)分类classification   2)假设表达Hypothesis Representation   3)判定边界Decision Boundary   4)损失函数Cost Function   5)简化损失函数和梯度下降Simplified Cost Function and Gradient Descent   6)参数优化Parameter Optimization   7)多类分类Multiclass classification   8)过拟合问题The problem of overfitting   9)规则化线性/逻辑回归Regularized Linear/Logistic Regression 1.4 神经网络Neural Network的表示 1)为什么引入神经网络:非线性假设   2)神经元与大脑:输入向量,中间层,输出层   3)神经网络的表示形式:逻辑回归   4)怎样用神经网络实现逻辑表达式:AND,OR,NOT   5)分类问题:one-vs-all 1.5 神经网络学习Neural Networks Learning 1)代价函数Cost Function   2)后向传播算法Back Propagation algorithm   3)后向传播推导Back Propagation Intuition   4)梯度检测   5)随机初始化 1.6 怎样选择机器学习方法系统 1)候选机器学习方法:诊断   2)评价方法假设:error   3)模型选择和训练、验证实验数据:欠拟合、过拟合   4)区别诊断偏离bias和偏差variance 偏差:J(train)大,J(cv)大,J(train)≈J(cv),bias产生于d小,欠拟合阶段; 方差:J(train)小,J(cv)大,J(train)<<J(cv),variance产生于d大,过拟合阶段;   5)正则化和偏差/方差 regularization就是为了防止欠拟合而在代价函数中引入的一个分量。regularization项就是cost function J(θ)中的最后一项,其中λ太大导致欠拟合,λ太小导致过拟合   6)学习曲线:什么时候增加训练数据才是有效的 过拟合的高方差: 增加m使得J(train)和J(cv)之间gap减小,有助于性能提高; 增加训练数据的个数对于过拟合是有用的,对于欠拟合是徒劳 1.7 机器学习系统设计 1)决定基本策略:收集大量数据;提取复杂特征;建立精确的特征库;   2)Error分析   3)对Skewed Classes建立Error Metrics   4)在精度Precision和召回率Recall间均衡   5)机器学习数据选定 1.8 支持向量机SVM 1)SVM的损失函数:cost function   2)最大间距分类:判定边界   3)SVM核-Gaussian Kernel:非线性判定边界   4)核技巧:内积、相似度计算 5)SVM中高斯核的使用 6)SVM的使用与选择 1.9 聚类 1)无监督学习有密度估计与聚类-无标签的机器学习; 有监督学习有回归与分类-有标签的机器学习; 2)Kmeans聚类算法:首先随机指定k个类的中心U1~Uk,然后迭代地更新该中心。其中C(i)表示第i个数据离那个类中心最近,也就是将其判定为属于那个类,然后将这k各类的中心分别更新为所有属于这个类的数据的平均值;   3)聚类问题的代价函数:最小化所有数据与其聚类中心的欧氏距离和;   4)如何选择初始化时的类中心:进行不同初始化(50~1000次),每一种初始化的情况分别进行聚类,最后选取代价函数J(C,U)最小的作为聚类结果;   5)聚类个数的选择:elbow-method,做图k-J(cost function),找图中的elbow位置作为k的选定值 1.10 降维 1)为什么要降维:特征太多会造成模型复杂,训练速度过慢;多维数据很难进行可视化分析 2)主成分分析PCA:寻找平面使得两点之间的正交距离总和最小;计算各个feature的平均值、将每一个feature scaling、将特征进行mean normalization、 求n×n的协方差矩阵Σ、根据SVD求取特征值和特征向量、按特征值从大到小排列,重新组织U、选择k个分量 3)从压缩数据中恢复元数据:逆过程,近似 4)怎样决定降维个数/主成分个数:定义一个threshold(如10%),如果error ratio<threshold,主成分是可以接受的 5)应用PCA进行降维的建议:加入regularization项;可以用交叉验证数据和测试数据进行检验,但是选择主分量时只应用训练数据;   第2部分深度学习入门大纲 2.1 K-means特征学习 1)通过最小化数据点和最近邻中心的距离来寻找各个类中心 2)矢量量化vector quantization:通过最小化重构误差,一个数据样本x(i)可以通过这个字典映射为一个k维的码矢量。就是寻找D的一个过程 3)数据、预处理、初始化:需要先对数据进行均值和对比度的归一化;使用白化来消去数据的相关性。注意白化参数的选择;通过高斯噪声和归一化来初始化k-means的聚类中心;使用抑制更新来避免空聚类和增加稳定性 4)与稀疏特征学习的比较:注意数据的维数和稀疏影响。K-means通过寻找数据分布的”heavy-tailed"方向来找到输入数据的稀疏投影 5)在图像识别上的应用:更多的聚类中心往往是有帮助的。当然,前提是我们要有足够的训练样本   6)构建深度网络:尽可能地使用局部感受野。K-means是否成功,其瓶颈在于输入数据的维数,越低越好。如果无法手动的选择好的局部感受野,那么尝试去通过一个自动的依赖性测试来帮助从数据中挑选出一组低维的数据。 2.2稀疏滤波Sparse Filtering 1)核心思想就是避免对数据分布的显式建模,而是优化特征分布的稀疏性从而得到好的特征表达 2)非监督特征学习:学习一个模型,这个模型描述的就是数据真实分布的一种近似。包括denoisingautoencoders,restricted Boltzmann machines (RBMs), independent component analysis (ICA) 和sparse coding等 3)特征分布:优化high dispersal和population sparsity 4)Sparse filtering:Optimizing for population sparsity、Optimizing for high dispersal、Optimizing for lifetime sparsity 5)Deep Sparse filtering:多层网络来计算这些特征   6)与divisive normalization的联系   7)与ICA 和sparse coding的联系 2.3单层非监督学习网络 1)网络中隐含层神经元节点的个数(需要学习的特征数目),采集的密度(也就是convolution时的移动步伐,也就是在什么地方计算特征)和感知区域大小对最终特征提取效果的影响很大,甚至比网络的层次数,deep learning学习算法本身还要重要; Whitening在预处理过程中还是很有必要的; 如果不考虑非监督学习算法的选择的话,whitening、 large numbers of features和small stride都会得到更好的性能; 2)非监督特征学习框架:通过以下步骤去学习一个特征表达:        ①从无便签的训练图像中随机提取一些小的patches;        ②对这些patches做预处理(每个patch都减去均值,也就是减去直流分量,并且除以标准差,以归一化。对于图像来说,分别相当于局部亮度和对比度归一化。然后还需要经过白化);        ③用非监督学习算法来学习特征映射,也就是输入到特征的映射函数 学习到特征映射函数后,给定一个有标签的训练图像集,我们用学习到的特征映射函数,对其进行特征提取,然后用来训练分类器:        ①对一个图像,用上面学习到的特征来卷积图像的每一个sub-patches,得到该输入图像的特征;        ②将上面得到的卷积特征图进行pooling,减少特征数,同时得到平移等不变性;        ③用上面得到的特征,和对应的标签来训练一个线性分类器,然后在给定新的输入时,预测器标签。 3)特征学习: ①sparse auto-encoders ②sparse restricted Boltzmann machine ③K-means clustering ④Gaussian mixtures   4)特征提取与分类 2.4CNN卷积神经网络推导和实现 1)全连接的反向传播算法: ①Feedforward Pass前向传播 ②Backpropagation Pass反向传播 2)Convolutional Neural Networks 卷积神经网络 ①Convolution Layers 卷积层:Computing the Gradients梯度计算 ②Sub-sampling Layers 子采样层:Computing the Gradients 梯度计算 ③Learning Combinations of Feature Maps 学习特征map的组合:Enforcing Sparse Combinations 加强稀疏性组合 3)CNN的训练主要是在卷积层和子采样层的交互上,其主要的计算瓶颈是: ①前向传播过程:下采样每个卷积层的maps; ②反向传播过程:上采样高层子采样层的灵敏度map,以匹配底层的卷积层输出maps的大小; ③sigmoid的运用和求导 ④CNN卷积神经网络代码理解:cnnsetup、cnntrain、cnnff、cnnbp、cnnapplygrads、cnntest 2.5Multi-Stage多级架构分析 1)分级通过堆叠一个或者多个特征提取阶段,每个阶段包括一个滤波器组合层、非线性变换层和一个pooling层,pooling层通过组合(取平均或者最大的)局部邻域的滤波器响应,因而达到对微小变形的不变性 2)滤波器组层Filter Bank Layer-FCSG:一组卷积滤波器(C)、再接一个sigmoid/tanh非线性变换函数(S),然后是一个可训练的增益系数(G)   3)校正层Rectification Layer-Rabs:卷积是越相似,输出值越大 4)局部对比度归一化层Local Contrast Normalization Layer-N   5)平均池化和子采样层Average Pooling and Subsampling Layer -PA   6)最大值池化和子采样层Max-Pooling and Subsampling Layer -PM 2.6深度网络高层特征可视化 1)模型:DBNs、降噪自动编码器 2)Maximizing the activation 最大化激活值 3)Sampling from a unit of a Deep Belief Network 从DBN的一个节点中采样 4)Linear combination of previous layers’ filters 上层滤波器的线性组合   5)实验:Data and setup、Activation Maximization、Sampling a unit、Comparison of methods   第3部分深度学习进阶大纲 1)关于特征        ①特征表示的粒度        ②初级(浅层)特征表示        ③结构性特征表示        ④需要有多少个特征? 2)Deep Learning的基本思想 3)浅层学习(Shallow Learning)和深度学习(Deep Learning) 4)Deep learning与Neural Network 5)Deep learning训练过程       ①传统神经网络的训练方法       ②deep learning训练过程 6)Deep Learning的常用模型或者方法       ①AutoEncoder自动编码器       ②Sparse Coding稀疏编码       ③Restricted Boltzmann Machine(RBM)限制波尔兹曼机       ④Deep BeliefNetworks深信度网络       ⑤Convolutional Neural Networks卷积神经网络     第4部分自然语言处理NLP学习大纲 1)应用领域:机器翻译Machine Translation、信息检索Information Retrieval、自动文摘Automatic summarization/abstracting、文档分类Document Categorization、问答系统Question-answering system、信息过滤Information filtering、语言教学Language Teaching、文字识别Character Recognition、自动校对Automatic Proofreading、语音识别Speech recognition  2)形式语言与自动机 ①形式语法:4元组 ②最左推导、最右推导和规范推导 ③句型与句子 ④正则文法 ⑤上下文无关文法CFG ⑥上下文有关文法CSG ⑦确定的有限自动机DFA ⑧不确定的有限自动机NFA  3)语料库语言学 ①国内语料库:汉语现代文学作品语料库、现代汉语语料库、中学语文教材语料库、现代汉语词频统计语料库 ②布朗语料库、LLC口语语料库、朗文语料库、宾州大学语料库、北京大学语料库、台湾中科院平衡语料库、Chinese LDC、LC-STAR项目 ③抽取词汇、标注词性、拼音、WordNet、知网 ④同义关系、反义关系、上下位关系、部分关系  4)概率语法 ①n阶马尔科夫链语言模型 ②隐马尔科夫模型HMM ③概率上下文无关文法 ④概率链接语法  5)词法分析 ①有词典切分/无词典切分 ②基于规则分析方法/基于统计方法 ③最大匹配法(正向、逆向、双向) ④最少分词法 ⑤基于统计模型法的分词方法  6)语法理论与句法分析 ①规则系统、原则系统 ②X理论、格理论、管辖理论、θ理论、约束理论、控制理论、界限理论、 ③功能合一文法FUG ④词汇功能语法、广义的短语结构语法、树连接语法、 ⑤线图分析法:字底向上chart ⑥概率上下文无关文法PCFG  7)语义计算 ①语义网络:概念关系、事件语义网络表示、事件的语义关系、基于语义网络的推理分析 ②格语法:定义、格表、格框架约束 ③CD理论:基本动作、剧本、计划 ④主题模型PLSA、LDA ⑤关键字树
openface OpenFace: Creating Facial Recognition Systems 14 hours OpenFace is Python and Torch based open-source, real-time facial recognition software based on Google’s FaceNet research. In this instructor-led, live training, participants will learn how to use OpenFace's components to create and deploy a sample facial recognition application. By the end of this training, participants will be able to: Work with OpenFace's components, including dlib, OpenVC, Torch, and nn4 to implement face detection, alignment, and transformation. Apply OpenFace to real-world applications such as surveillance, identity verification, virtual reality, gaming, and identifying repeat customers, etc. Audience Developers Data scientists Format of the course Part lecture, part discussion, exercises and heavy hands-on practice To request a customized course outline for this training, please contact us.
restfulapi Designing RESTful APIs 14 hours APIs (Application Programming Interface) allow for your application to connect with other applications. In this instructor-led, live training, participants will learn how to write high-quality APIs as they build and secure a backend API server. By the end of this training, participants will be able to: Choose from a number of frameworks for building APIs Understand and model the APIs published by companies such as Google and Facebook Create and publish their own Restful APIs for public consumption Secure their APIs through token-based authentication Audience Developers Format of the course Part lecture, part discussion, exercises and heavy hands-on practice Note To customize this course for other languages, such as PHP, Javascript, etc., please contact us to arrange To request a customized course outline for this training, please contact us.
pythonadvml Python for Advanced Machine Learning 21 hours In this instructor-led, live training, participants will learn the most relevant and cutting-edge machine learning techniques in Python as they build a series of demo applications involving image, music, text, and financial data. By the end of this training, participants will be able to: Implement machine learning algorithms and techniques for solving complex problems Apply deep learning and semi-supervised learning to applications involving image, music, text, and financial data Push Python algorithms to their maximum potential Use libraries and packages such as NumPy and Theano Audience Developers Analysts Data scientists Format of the course Part lecture, part discussion, exercises and heavy hands-on practice To request a customized course outline for this training, please contact us.

Upcoming Courses

CourseCourse DateCourse Price [Remote / Classroom]
Python Programming - 苏州 - 晋合广场Mon, 2017-11-06 09:30¥35330 / ¥40530
Introduction to Programming - 香港 - 中環中心Mon, 2017-11-06 09:30¥42510 / ¥65710

Other regions

Weekend Python courses, Evening Python training, Python boot camp, Python instructor-led , Python classes, Python on-site, Python instructor, Python training courses,Weekend Python training, Python coaching, Python one on one training , Python private courses, Python trainer

Course Discounts

Course Discounts Newsletter

We respect the privacy of your email address. We will not pass on or sell your address to others.
You can always change your preferences or unsubscribe completely.

Some of our clients