Analysis of traveling wave propagation in one-dimensional integrate-and-fire neural networks   

One-dimensional neural networks comprised of large numbers of Integrate-and-Fire neurons have been widely used to model electrical activity propagation in neural slices. Despite these efforts, the vast majority of these computational models have no analytical solutions.

Consequently, my Ph.D. research focuses on a specific class of homogeneous Integrate-and-Fire neural network, for which analytical solutions of network dynamics can be derived. One crucial analytical finding is that the traveling wave acceleration quadratically depends on the instantaneous speed of the activity propagation, which means that two speed solutions exist in the activities of wave propagation: one is fast-stable and the other is slow-unstable.

Furthermore, via this property, we analytically compute temporal-spatial spiking dynamics to help gain insights into the stability mechanisms of traveling wave propagation. Indeed, the analytical solutions are in perfect agreement with the numerical solutions. This analytical method also can be applied to determine the effects induced by a non-conductive gap of brain tissue and extended to more general synaptic connectivity functions, by converting the evolution equations for network dynamics into a low-dimensional system of ordinary differential equations.

Building upon these results, we investigate how periodic inhomogeneities affect the dynamics of activity propagation. In particular, two types of periodic inhomogeneities are studied: alternating regions of additional fixed excitation and inhibition, and cosine form inhomogeneity. Of special interest are the conditions leading to propagation failure. With similar analytical procedures, explicit expressions for critical speeds of activity propagation are obtained under the influence of additional inhibition and excitation. However, an explicit formula for speed modulations is difficult to determine in the case of cosine form inhomogeneity. Instead of exact solutions from the system of equations, a series of speed approximations are constructed, rendering a higher accuracy with a higher order approximation of speed.


          Google’s neural network is a multi-tasking pro   
Google’s “MultiModal” can manage eight tasks at once. Read more
          Ecological land systems classification using multisource data and neural networks   
none
           Review of Artificial Neural Networks (ANN) applied to corrosion monitoring    
Mabbutt, S. J., Picton, P., Shaw, P. and Black, S. (2012) Review of Artificial Neural Networks (ANN) applied to corrosion monitoring. Journal of Physics: Conference Series. 364(1), 012114. 1742-6596.
          Simple Tips to Improve Memory   

These are some of the simple things in everyday life that you can change to strengthen your memory.

Learn languages

Overall learning something new, whether a new language, take cooking classes or ballroom dancing is good for the brain. But it turns out that learning ballroom dancing as a couple is especially good. With dance do not only exercise, but you have to think on the fly, and be flexible to change.

Change the font on your computer

Making the text a little harder to read your brain Take advantages brain. You can do this by changing the font on your computer, adding bold or italics, or by the smaller screen to make the text smaller.

Play Tetris

In one study, a group of teenagers who regularly played Tetris had changes in parts of the brain involved in critical thinking, reasoning, language and processing, among others. The game requires us to manipulate as they drop pieces to create an orderly row of tiles. The Tetris, you can have 25 years, is still available for all types of devices, including iPhone or Android.

Meditate consciously

People who meditate regularly induce physical changes in the brain, it is believed that as a result of the formation of new synaptic networks, This increases not only the attention but also self-awareness and empathy. It costs nothing and can be done anywhere, anytime.

Become handed (or right)

Many people who have suffered a stroke after suffer paralysis side so they are forced to learn to use the non-dominant side of your body to perform everyday tasks like writing. This helps them create new neural networks. Any of us can benefit from this practice. Brush your teeth, tie the belt or eat with your left hand. These practices activate new parts of our brain.

Read aloud

Read a book or newspaper out loud stimulates different parts of the brain that are stimulated to read silently. By keeping these areas retain active brain neural connections. Airline pilots better review your task list if read aloud, even with no one in the cab.

Write Hand

Change the keyboard for pen and paper is better for the brain, according to a study published in the Journal of Cognitive Neuroscience. Research in children has shown that writing with pen and paper more active brain areas by simply typing.

Distract yourself

Turns out distracting noises that can do more than make you crazy. In fact, a study by researchers at the University of Amsterdam found that people exposed to an annoying background noise, solved more anagrams than those without this distraction.


-------------------------------------------------- ------------------------------
Picture by lifesciencedb.BrianMSweis at en.wikipedia [CC-BY-SA-2.1-jp], from Wikimedia Commons


          Energies, Vol. 10, Pages 842: Applicability of an Artificial Neural Network for Predicting Water-Alternating-CO2 Performance   
The injection of CO2 as part of the water-alternating-gas (WAG) process has been widely employed in many mature oil fields for effectively enhancing oil production and sequestrating carbon permanently inside the reservoirs. In addition to simulations, the use of intelligent tools is of particular in...
          Energies, Vol. 10, Pages 844: Prediction of Polymer Flooding Performance with an Artificial Neural Network: A Two-Polymer-Slug Case   
Many previous contributions to methods of forecasting the performance of polymer flooding using artificial neural networks (ANNs) have been made by numerous researchers previously. In most of those forecasting cases, only a single polymer slug was employed to meet the objective of the study. The int...
          Deep-Learning Networks Rival Human Vision   
For most of the past 30 years, computer vision technologies have struggled to help humans with visual tasks, even those as mundane as accurately recognizing faces in photographs. Recently, though, breakthroughs in deep learning, an emerging field of artificial intelligence, have finally enabled computers to interpret many kinds of images as successfully as, or better than, people do. Companies are already selling products that exploit the technology, which is likely to take over or assist in a wide range of tasks that people now perform, from driving trucks to reading scans for diagnosing medical disorders. Recent progress in a deep-learning approach known as a convolutional neural network (CNN) is key to the latest strides. To give a simple example of its prowess, consider images of animals. Whereas humans can easily distinguish between a cat and a dog, CNNs allow machines to categorize specific breeds more successfully than people can. It excels because it is better ...

Source: Odd Onion

http://www.oddonion.com/2017/06/28/deep-learning-networks-rival-human-vision-2/


          Comment on The State of G2 by MoJo   
Hello I presume this is dcat, well thanks for running this and maintaining the crawler and the G2 specs site. It is appreciated, and hope to see this project going. The G2 specs could even be used for the apt-spoken of DeChat a truly decentralized Chatting network where hubs and leaves turn into chat hubs and chat leaves. Also I always wondered how P2P and AI could be infused together like each individual being part of a Neural Network, G2 could be the perfect platform to study that on.
           Nonlinear system identification and control using dynamic multi-time scales neural networks    
Han, Xuan (2010) Nonlinear system identification and control using dynamic multi-time scales neural networks. Masters thesis, Concordia University.
          Prisma v1.0 APK Free Download   
Prisma v1.0 Apk-XpoZ
Prisma – Art Photo Editor with Free Picture Effects & Cool Image Filters for Instagram Pics and Selfies! 


App Review:

Be an artist! Turn your photos into awesome artworks:
– Modern art filters!
– Stunning photo effects
– Fast sharing

Prisma transforms your photos into artworks using the styles of famous artists: Munk, Picasso as well as world famous ornaments and patterns. A unique combination of neural networks and artificial intelligence helps you turn memorable moments into timeless art.


Download:  Link 1  -  Link 2  -  Link 3






Prisma 1.0, Prisma 1.0 hack, Prisma 1.0 Pro, Prisma 1.0 premium, Prisma 1.0 crack, Prisma 1.0 cheat, Prisma 1.0 cheats, Prisma 1.0 cheat engine, Prisma 1.0 cheat tool, Prisma 1.0 cheat tools, Prisma 1.0 free, Prisma 1.0 unlock, Prisma 1.0 modded, Prisma 1.0 mod, Prisma 1.0 mods, Prisma 1.0 apk, Prisma 1.0 modded apk, Prisma 1.0 android, Prisma 1.0 tweak, Prisma 1.0 tweaks, Prisma 1.0 root, Prisma 1.0 amazon app store, Prisma 1.0 hacked, Prisma 1.0 cracked, Prisma 1.0 android jelly bean, Prisma 1.0 android ice cream sandwich, Prisma 1.0 android kitkat, Prisma 1.0 android honeycomb, Prisma 1.0 android gingerbread, Prisma 1.0 android l, Prisma 1.0 full version, Prisma 1.0 iap, Prisma 1.0 iap free, Prisma 1.0 iap crack, Prisma 1.0 iap hack, Prisma 1.0 mobile, Prisma 1.0 play store, Prisma, Prisma hack, Prisma Pro, Prisma premium, Prisma crack, Prisma cheat, Prisma cheats, Prisma cheat engine, Prisma cheat tool, Prisma cheat tools, Prisma free, Prisma unlock, Prisma modded, Prisma mod, Prisma mods, Prisma apk, Prisma modded apk, Prisma android, Prisma tweak, Prisma tweaks, Prisma root, Prisma amazon app store, Prisma hacked, Prisma cracked, Prisma android jelly bean, Prisma android ice cream sandwich, Prisma android kitkat, Prisma android honeycomb, Prisma android gingerbread, Prisma android l, Prisma full version, Prisma iap, Prisma iap free, Prisma iap crack, Prisma iap hack, Prisma mobile, Prisma play store

          Comment on BAAG is born by Marcel Kratochvil   
Alex, After just reading about BAAG for the first time and the motiviation behind it, I can agree with and understand the need for battling this. And yet I am not convinced by the attack on guessing and the need to eliminate it. The need (as put on your about page) to eliminate guesswork from the decision making process is to deny the basics for how the human thought process works. The brain based on neural networks, does not use logic for processing information. To ultimately try and remove a core part of the human thinking patterns where we have to make constant assumptions all the time to avoid information overload is a natural thinking strategy. It also allows us to think outside the box and not become mindless automatons. I would see a better solution is to not battle it, but to train people in the correct use of guessing versus logical deduction and when each method is best. The examples you provide highlight the need for educating people more on this, rather than battling against it. By alienating guessing, by making it appear bad you are deliberately driving home a point for a reason, which I can understand. After all, I have done this myself, and its a good tactic - only when used right. When you move into the multimedia worldview and store it in the database, logic that we are used to disappears and there is an element of calculated guessing all the time. For example, compare two photos and ask which is the better one? It cannot be logically calculated. And sometimes when it comes to performance tuning and problem resolving in a mission critical system that has time constraints, guesswork is crucial to quickly resolve it (I will not give any Star Trek analogies here especially Movie #4, but will try and track down some Hitch Hiker Guide to the Galaxy ones). Though it is guesswork based on experience and knowledge. I believe with the passion you have raised on this topic, it is worth discussing it further. I am now aware of this issue, which I wasn't before this morning began. Marcel.
          Comment on 5 Step Life-Cycle for Neural Network Models in Keras by sam   
That doesn't help a learner - how do you decide what to start with?
          Comment on 5 Step Life-Cycle for Neural Network Models in Keras by Jason Brownlee   
Trial and error.
          Comment on 5 Step Life-Cycle for Neural Network Models in Keras by sam   
Why 12 neurons in the hidden layer?
          Quantitative Manager (Job #6454)   
The successful candidate will be a creative, resourceful and experienced with Agile methods and techniques to implement Scrum; and must be a self-starter and have strong background in statistics, machine learning and big data including information retrieval, natural language processing, algorithm analysis, and real-time distributed computing methods. As a quantitative manager you have personnel management responsibility and can exercise your talents to lead teams of expert data scientists and engineers on multiple assignments and projects in a disciplined and fast paced environment. You must be confident to tackle complex engineering problems, and will be expected to work on design algorithms and codify large-scale statistical models for real time processing based on our analytics architecture.

Advanced Analytics
The Advanced Analytics service area is comprised of professionals that possess competency and experience in the areas of risk management, business and operational targeting processes, computational linguistics, machine learning, knowledge discovery, semantic engineering, probabilistic and statistical data mining. Advanced Analytics professionals use these skills to assess, analyze, and improve the effectiveness and efficiency of targeting methods, operational control processes, offer recommendations to improve operations, and assist clients with enterprise risk and compliance activities.

Requirements
Minimum Qualifications
• Excellent communication skills and ability to understand and communicate business requirements
• Excellent analytical and problem-solving skills
• Strong programming skills and experience in SPSS, SAS, R, Matlab and similar toolset and deep understanding of exploratory data analysis
• Background in statistical techniques, NLP and machine learning, predictive modeling, data mining, statistical inference and classification algorithms
• Develop statistical models and analytical methods to predict, quantify, and forecast multiple business concerns and provide performance reporting capabilities
• Experience in modeling techniques, statistical analysis, propensity score matching, multivariate analysis, logistic regression, time series, survival analysis, decision trees, and neural networks
• BA/BS in Statistics, Mathematics, CS or related technical field, and MS or PhD preferred
• Strong sense of passion, teamwork and responsibility
• Willingness to travel and flexibility to commute to clients in the Washington D.C. metro area as needed
          A New Approach for Recognizing Saudi Arabian License Plates using Neural Networks   
Deriche, Mohamed and Moinuddin, Muhammad A New Approach for Recognizing Saudi Arabian License Plates using Neural Networks. IEEEGCC 2007.
          Networked computation   
Everyone has heard the term "neurocomputation" - referring to an artificial brain made from artificial, electronic neurons.

I deal with a form of computation that may - or may not - have anything to do with the way a natural brain works. It is simply, network computation. This means that any artificial neural network is a stretch. It is simply an artificial computational network, and that probably has nothing to do with thinking at all.

That doesn't mean that pattern recognition and sophisticated functions are beyond the range of network computation, it isn't. In fact, very sophistical physical, logical and mathematical manipulations are possible. But every time I try and tell people about my work, they leap to a science-fiction induced fantasy about artificial "brains".

Pardon me. Thinking is not coherently congruent with computation. There. I said it.
          Sensemaking of Complex Systems   
Sensemaking seems very much related to to pattern recognition - which obviously assumes you are congnizant of having seen that pattern before. Note that this is not saying, "I have seen this exact phenomonon before." For example, one might have seen collective swarming behavior in fish, in birds, in ants, even in people - there is a pattern to which we have given the name "swarm" characterized by some combination of synchrony, orientation (direction), attraction, bifurcation, (n-furcation) and dispersion.

How people go about the business of sensemaking is often quite different that the way artificial intelligence goes about sensemaking. By this I mean, humans often have much more sensual and contextual information upon which they make classifications. This is different than raw information, such as that stored in computer memory, in that human contextual information is encoded in highly coupled networks - the real neural network. Computer memory is discrete, rank and file - the substrate being independently and identically distributed (iid).

How would an artificial neural network go about sensemaking regarding the swarming behavioral pattern? The "sense" would have to be made in some of many other contextual patterns. One such contextual pattern is the "shape" of a connective, Compositional Pattern Producing Network, as found in HyperNEAT. However, that is just one context, and we need a network of contexts for sensemaking. Moreover, these contexts exist at various timescales, from nearly instantaneous to universally constant.

Some equate thought with computation. I'm not sure I agree. There is a composition between networked computation and linear computation (serial and/or parallel) that seems necessary for categorical sensemaking. And, of course, because something makes sense doesn't mean it is true or the right thing to do. That takes some interstitial experimentation - or meta-computing - with comparison to some real-world data.

So, I will go back to my Chinese Room and continue working on that categorical composition.
          SwarmFest 2009, June 28 - 30 in Santa Fe   
SwarmFest is the annual International conference for Agent Based Modeling and Simulation - IMO, a necessary skillset needed to understand complexity in systems. I just received notification that I have been accepted to present at this year's conference, and I am excited.

Why is this important to me?

My presentation details recent findings I've made regarding using a form of Swarm in which the schedule and rules for the agents are not hard-coded in the experiment. The our case, agents "discover" the rules and patterns based upon whatever pre-existing structure and connection it finds. This provides part of the solution space called a context. The discovery mechanism that searches the context for solutions is a topology and weight evolving artificial neural network, originally developed by Ken Stanley and Risto Miikkulainen at the University of Texas, called NEAT. (NEAT is actually the great-grandfather. WattsNEAT is our N-th generation implementation of HyperNEAT).

Now for the cool part. In order to configure the compute fabric for the many expriment contexts we might create in which to evolve solutions to problem experiments, we utilize WattsNEAT to evolve configurations of the compute fabric itself. This is our solution to the problem of partitioning data and structures for massively parallel computation.

If you have followed along so far, we have just used WattsNEAT to configure a compute fabric in which to effectively and efficiently run WattsNEAT in massively parallel compute fabrics. For those of you who have used Torque or SGE rolls in a Rocks cluster, the resulting advantage is an intelligent distribution and scheduling agent that configures the compute fabric according to the context (schedules, priorities, and component configurations it discovers at the time).

This is not as static as it may initially appear.

I'm moving to get the specifics (of which there are many) down and put (at least) into a provisional patent. After that, we will decide the bifurcation strategy between proprietary paths and open source.
          NIMD - A new parallel compute formalism   
We have been working with configurations for applications running on hybrid, heterogeneous compute clusters. Ours started out being a plain vanilla Rocks Cluster using CUDA Rolls.

The challenge in developing massively parallel computer applications centers around the way in which data and tasks are partitioned. Specifically, these partitioning decisions are closely coupled with both the internal and external message channels within and between the cluster components. We at Watt's Advanced Research Projects have found that an adaptive approach to the computational contexts works best for us. We have developed an "intelligent distributor" that can discover the context of the compute cluster - the schedules, priorities, resources, utilizations and configurations - using evolutionary neural networks to "reconfigure" the compute fabric and making efficient and effective use of the cluster's context.

We have termed this compute fabric NIMD (for networked instruction, multiple data). It differs from traditional MIMD in the fact the architecture is non-hierarchical, and more specifically can be recurrent. The additional complexity is not problematic, but provides an ensemble approach to solution space for the compute fabric. Thinking back, even hierarchical parallelism schemes are non-deterministic to some degree. We seem to make better use of that fact.
          Mod / Sim on Rocks CUDA Cluster   
We have been experimenting with modeling and simulation of complex system on our Rocks / CUDA cluster - GenCluster - in Albuquerque, NM USA.

The challenge is designing proper partitions for data and tasks to take advantange of the massively parallel processing - which it seems is a prime candidate for the evolutionary neural networks we run on the cluster. If you are running a Rocks / CUDA cluster, I'd like to hear from you, and perhaps we can share any non-confidential information on the simulation of systems complexity.
           Adaptive neural network control of fes-induced cyclical lower leg movements    
Stroeve, S.H. and Franken, H.M. and Veltink, P.H. and Luenen, W.T.C. van (1992) Adaptive neural network control of fes-induced cyclical lower leg movements. Annual Review in Automatic Programming, 17 . pp. 25-30. ISSN 0066-4138
           Neural Networks for Reconstructing Muscle Activation from External Sensor Signals During Human Walking    
Veltink, Peter H. and Rijkhoff, Nico J.M. and Rutten, Wim L.C. (1990) Neural Networks for Reconstructing Muscle Activation from External Sensor Signals During Human Walking. In: IEEE International Workshop on Intelligent Motion Control, 1990, 20-22 Aug 1990, Istanbul, Turkey (pp. pp. 469-473).
          Il Politecnico di Milano riceve l’oscar internazionale per la ricerca nel campo dell’intelligenza artificiale   
Per la prima volta, l’oscar per la ricerca nell’ambito dell’Intelligenza artificiale è stato assegnato ad una realtà italiana, il Politecnico di Milano, grazie agli studi realizzati dal team guidato dal Professore d’informatica Cesare Alippi. Il riconoscimento è l’International Neural Networks Society Gabor Award, Award nel campo dell’intelligenza computazionale al servizio di oggetti ed infrastrutture, definita [...]
          EEG-Informed fMRI Reveals Spatiotemporal Characteristics of Perceptual Decision Making   
Single-unit and multiunit recordings in primates have already established that decision making involves at least two general stages of neural processing: representation of evidence from early sensory areas and accumulation of evidence to a decision threshold from decision-related regions. However, the relay of information from early sensory to decision areas, such that the accumulation process is instigated, is not well understood. Using a cued paradigm and single-trial analysis of electroencephalography (EEG), we previously reported on temporally specific components related to perceptual decision making. Here, we use information derived from our previous EEG recordings to inform the analysis of fMRI data collected for the same behavioral task to ascertain the cortical origins of each of these EEG components. We demonstrate that a cascade of events associated with perceptual decision making takes place in a highly distributed neural network. Of particular importance is an activation in the lateral occipital complex implicating perceptual persistence as a mechanism by which object decision making in the human brain is instigated.
          Object Discrimination Based on Depth-from-Occlusion   
We present a model of how objects can be visually discriminated based on the extraction of depth-from-occlusion. Object discrimination requires consideration of both the binding problem and the problem of segmentation. We propose that the visual system binds contours and surfaces by identifying "proto-objects"-compact regions bounded by contours. Proto-objects can then be linked into larger structures. The model is simulated by a system of interconnected neural networks. The networks have biologically motivated architectures and utilize a distributed representation of depth. We present simulations that demonstrate three robust psychophysical properties of the system. The networks are able to stratify multiple occluding objects in a complex scene into separate depth planes. They bind the contours and surfaces of occluded objects (for example, if a tree branch partially occludes the moon, the two "half-moons" are bound into a single object). Finally, the model accounts for human perceptions of illusory contour stimuli.
          TuxMachines: OSS Leftovers   
  • AMD Plays Catch-Up in Deep Learning with New GPUs and Open Source Strategy

    AMD is looking to penetrate the deep learning market with a new line of Radeon GPU cards optimized for processing neural networks, along with a suite of open source software meant to offer an alternative to NVIDIA’s more proprietary CUDA ecosystem.

  • Baidu Research Announces Next Generation Open Source Deep Learning Benchmark Tool

    In September of 2016, Baidu released the initial version of DeepBench, which became the first tool to be opened up to the wider deep learning community to evaluate how different processors perform when they are used to train deep neural networks. Since its initial release, several companies have used and contributed to the DeepBench platform, including Intel, Nvidia, and AMD.

  • GitHub Declares Every Friday Open Source Day And Wants You to Take Part

    GitHub is home to many open-source development projects, a lot of which are featured on XDA. The service wants more people to contribute to open-source projects with a new initiative called Open Source Friday. In a nutshell, GitHub will be encouraging companies to allow their employees to work on open-source projects at the end of each working week.

    Even if all of the products you use on a daily basis are based on closed source software, much of the technology world operates using software based on open source software. A lot of servers are based off of various GNU/Linux based operating systems such as Red Hat Enterprise Linux. Much of the world’s infrastructure depends on open source software.

  • Open Source Friday

    GitHub is inviting every one - individuals, teams, departments and companies - to join in Open Source Friday, a structured program for contributing to open source that started inside GitHub and has since expanded.

  • Open Tools Help Streamline Kubernetes and Application Development

    Organizations everywhere are implementing container technology, and many of them are also turning to Kubernetes as a solution for orchestrating containers. Kubernetes is attractive for its extensible architecture and healthy open source community, but some still feel that it is too difficult to use. Now, new tools are emerging that help streamline Kubernetes and make building container-based applications easier. Here, we will consider several open source options worth noting.

  • Survey finds growing interest in Open Source

    Look for increased interest - and growth - in Open Source software and programming options. That's the word from NodeSource, whose recent survey found that most (91%) of enterprise software developers believe new businesses will come from open source projects.

  • Sony Open-Sources Its Deep Learning AI Libraries For Devs

    Sony on Tuesday open-sourced its Neural Network Libraries, a framework meant for developing artificial intelligence (AI) solutions with deep learning capabilities, the Japanse tech giant said in a statement. The company is hoping that its latest move will help grow a development community centered around its software tools and consequently improve the “core libraries” of the framework, thus helping advance this emerging technology. The decision to make its proprietary deep learning libraries available to everyone free of charge mimics those recently made by a number of other tech giants including Google, Amazon, and Facebook, all of whom are currently in the process of trying to incentivize AI developers to use their tools and grow their software ecosystems.

  • RESULTS FROM THE SURVEY ABOUT LIBREOFFICE FEATURES

    Unused features blur the focus of LibreOffice, and maintaining legacy capabilities is difficult and error-prone. The engineering steering committee (ESC) collected some ideas of what features could be flagged as deprecated in the next release – 5.4 – with the plan to remove them later. However, without any good information on what is being used in the wild the decision is very hard. So we run a survey in the last week to get insights into what features are being used.

  • COMPETITION FOR A LIBREOFFICE MASCOT
  • Rehost and Carry On, Redux

    After leaving Sun I was pleased that a group of former employees and partners chose to start a new company. Their idea was to pick up the Sun identity management software Oracle was abandoning and continue to sustain and evolve it. Open source made this possible.

    We had made Sun’s identity management portfolio open source as part of our strategy to open new markets. Sun’s products were technically excellent and applicable to very large-scale problems, but were not differentiated in the market until we added the extra attraction of software freedom. The early signs were very good, with corporations globally seeking the freedoms other IDM vendors denied them. By the time Oracle acquired Sun, there were many new customers approaching full production with our products.

    History showed that Oracle could be expected to silently abandon Sun’s IDM portfolio in favour of its existing products and strong-arm customers to migrate. Forgerock’s founders took the gamble that this would happen and disentangled themselves from any non-competes in good time for the acquisition to close. Sun’s practice was open development as well as open source licensing, so Forgerock maintained a mirror of the source trees ready for the inevitable day when they would disappear.

    Sure enough, Oracle silently stepped back from the products, reassigned or laid off key staff and talked to customers about how the cost of support was rising but offering discounts on Oracle’s products as mitigation. With most of them in the final deployment stages of strategic investments, you can imagine how popular this news was. Oracle become Forgerock’s dream salesman.

  • Boundless Reinforces its Commitment to Open Source with Diamond OSGeo Sponsorship
  • A C++ developer looks at Go (the programming language), Part 2: Modularity and Object Orientation

read more


          forex trading platform   

This is a new forex trading software that is designed with the power of Artificial Intelligence Neural Network. I think it's worth checking it out...

Tags:


          Take the Machine Learning Class at Coursera   

Coursera is offering its Machine Learning course again, beginning March 8, and I highly recommend it. You already know the obvious, that it is a course on an incredibly timely career skill and it is free, but until you take the course you can't know just how good the course really is.

You will learn how to write algorithms to perform linear regression, logistic regression, neural networks, clustering and dimensionality reduction. Throughout the course Professor Ng explains the techniques that are used to prepare data for analysis, why particular techniques are used, and how to determine which techniques are most useful for a particular problem.

In addition to the explanation of what and why, there is an equal amount of explaining how. The 'how' is math, specifically linear algebra. From the first week to the last, Ng clearly explains the mathematical techniques and equations that apply to each problem, how the equations are represented with linear algebra, and how to implement each calculation in Octave or Matlab.

The course has homework. Each week, there is a zip file that contains a number of incomplete matlab files that provide the structure for the problem to be solved, and you need to implement the techniques from the week's lessons. Each assignment includes a submission script that is run from the command line. You submit your solution, and it either congratulates you for getting the right answer, or informs you if your solution was incorrect.

It is possible to view all of the lectures without signing up for the class. Don't do that. Sign up for the class. Actually signing up for the class gives you a schedule to keep to. It also allows you to get your homework checked. When you watch the lectures, you will think you understand the material; until you have done the homework you really don't. As good as the teaching is, the material is still rigorous enough that it will be hard to complete if you are not trying to keep to a schedule. Also, if you complete the course successfully, you will be able to put it on your resume and LinkedIn profile.

You have the time. When I took the class, there was extra time built in to the schedule to allow people who started the course late to stay on pace. Even if you fall behind, the penalty for late submission is low enough that it is possible to complete every assignment late and still get a passing grade in the course.

I am going to take the course again. I want to make review the material. I also want to try to implement the homework solutions in Clojure, in addition to Octave. I will be posting regularly about my progress.

You may also be able to find a study group in your area. I decided to retake the course when I found out that there was going to be a meetup group in my area. Even without a local group, the discussion forums are a great source of help throughout the class. The teaching assistants and your classmates provide a lot of guidance when you need it.


          AI Trying To Design Inspirational Posters Goes Horribly And Hilariously Wrong   

Whenever an artificial intelligence (AI) does something well, we’re simultaneously impressed as we are worried. AlphaGO is a great example of this: a machine learning system that is better than any human at one of the world’s most complex games. Or what about Google’s neural networks that are able to create their own AIs autonomously?...

The post AI Trying To Design Inspirational Posters Goes Horribly And Hilariously Wrong appeared first on Breaking News, Sports, Entertainment.


          Complexity Sci Potted History Part 2: Like the Whirlpool in the Treacherous Sea of Complex Systems Dynamics   

Potted History of Complexity Science: Part 2: The 20th Century CatchUp

Ok, there's going to be more than two parts... if you are wondering what on earth this is all about, please see my previous blog post by way of a very long introduction. I'm interweaving organisation theory with complexity science and the life sciences here, in chronological order, a potted history at warp speed...

1900s – 1950s: A period of ‘classical’ approach to organization theory

Key thinkers of this era contributed to what Hatch[1]defined as a ‘classical’ inspiration to organization theory. Hatch uses a machine as the metaphor of organization theory with a classical perspective, where the image of the organization is seen as a machine designed and constructed by management to achieve predefined goals. The image of the manager is as an engineer who designs, builds and operates the organizational machine.[2]  She said: “There are two streams contained within what organization theorists now call the Classical School. The sociological stream focused on the changing shapes and roles of formal organizations within society and the broader influences of industrialization on the nature of work and its consequences for workers. This was the interest of Classical scholars such as Emile Durkheim, Max Weber and Karl Marx. The other stream comprises what organization theorists sometimes call Classical management theory to distinguish it from the more sociological approach. This stream was shaped by Frederick Taylor, Henri Fayol, and Chester Barnard, among others, and focused on the practical problems faced by managers of industrial organizations.[3]

The mechanical metaphor assumes that top-down control of people and the organisation is possible, and that all parts of the machine will act as desired by the one in control. The metaphor doesn’t allow for the free will, spontaneity or creativity of the humans within it, and nor does it allow for general unpredictable outcomes emerging from within, between or external to it. Complexity science does seek to permit a description of all those things in harmony with any processes and flows within the organisation.  While the classical period had many proponents who applied the mechanistic metaphor in practice, for management the key figurehead in particular had to be Taylor, the father of ‘Taylorism’.

1911 F. W. Taylor, ‘Founder of Scientific Management’, America

Hatch[4]labels Taylor as a ‘classical’ inspiration to organization theory. She said: “At the turn of the century, Frederick W Taylor proposed applying scientific methods to discover the most efficient working techniques for manual forms of labour… The new system permitted management to define the tasks that workers performed, and also to determine how they approached these tasks… Taylor’s method shifted control of work tasks from craftsworkers to management… Taylor’s system undermined the authority of the workers and their master craftsmen by introducing managerial control and supervision, and by offering differential pay for performance which eroded worker solidarity… These aspects of Scientific Management earned it considerable and lasting ill-repute as being ruinously ignorant of the trust and cooperation between management and workers upon which organizations depend. So much furore was created by Taylor that Scientific Management was the subject of an American Congressional investigation. This controversy has recently re-emerged in postmodern criticism of modernist management practices where Taylorism and its subsequent developments by Henry Ford (involving the mass-production assembly line which some postmodernists refer to as Fordism) are a favorite target along with the Tayloristic practices associated with the total quality management (TQM) movement. Today, postmodern organization theorists reinterpret Taylorism as an early manifestation of the managerial ideology of control.”[5]

In reference to the prevailing style of management seen now, Lewin says this was developed early this century by F W Taylor. Lewin writes, “His book, The Principles of Scientific Management, became a classic in management literature, and its effect lingers today. Taylor was strongly influenced by prevailing scientific thought, particularly Newton’s laws of motion and the new science of thermodynamics, which together allowed scientists to calculate how a machine could operate with maximum efficiency. Taylor imposed this collective, mechanistic paradigm of science on the world of work, where he became obsessed with efficiency as applied to organizations. There was tremendous waste of effort, he said, because management was unscientific. In the best reductionist tradition, Taylor analysed the system down to its component parts, saw how each worked, and then sought the ‘one best method’ to attain the greatest possible efficiency. Workers, he said, were to be viewed as ‘passive units of production’, and the system, or the workplace, was like a machine. The job of the manager was to ensure that the machine ran smoothly. The workers, while offered financial incentives for faster work, were merely cogs in the machine. The system was extremely hierarchical, with workers expected simply to carry out their narrowly-defined jobs. Taylorism was responsible for tremendous increases in productivity in the workplace, and effectively created modern Industrial Age management. Although management theory has undergone many revisions since the early decades of the century, particularly with the impact of Peter Drucker’s thinking, Taylorism still remains the dominant influence today, with the machine model of business as its core, and embodied in a command and control style of management.”[6]

Taylorism therefore took the mechanistic metaphor to the next level, and although you could argue in favour of some of the outcomes of it for the supposed ‘benefit’ of society (mobilisation of the workforce, industrialisation and economic growth), as indicated above there is so, so, so much criticism. If workers were just carrying out narrowly defined jobs, where was their own thinking and initiative? Had they been stripped of their ‘agency’? Many workers were suddenly not ‘required’ to think, and definitely didn’t have permission to act on their own thinking if they did. This style of management also drove the idea that failure wasn’t ok, because you’d never design a machine to fail intentionally, would you? Risk taking and innovation by the general rank and file was out of the question. The natural ebb and flow of processes emerging from the interactions between people, as complexity science would shed light on, had been stripped out.

1879 – 1955 - Albert Einstein, Germany/Switzerland/US

Meanwhile though, great minds were at work, including Einstein. “Einsteincontributed more than any other scientist to the modern vision of physical reality. His special and general theories of relativity are still regarded as the most satisfactory model of the large-scale universe that we have.”[7]However, it was not only his theories that provided the foundations for more recent developments in science. He himself provided inspiration. Einstein’s famous quote ‘Searching for the secrets of the old one’ – was an inspiration to Stuart Kauffman’s work on Boolean networks, who said, ‘I thought that the Old One wouldn’t fool around, that there’d be some deep logic out there, and I thought I’d glimpsed it in the random Boolean nets.’[8]

During this time period is where you’d start to be accused of being esoteric if your thinking diverged from the dominant mechanistic metaphor. So harking to something other than prescriptive top-down management control, such as, for example, creative scientific genius, or the existence of some deity like spirit or force that gave room for reverence of a spiritual appreciation of the more organic flow of physical reality, was more than a little bit left field. But why was it? Wasn’t this just calling to how things were? The spiritual dimension was of course the only place to call to if the mechanistic metaphor held sway. Like Adam Smith’s ‘invisible hand’, there was the feeling that there was something more, something else, behind and conflicting with our own imposed delusions of limited control. Although Einstein was heavily involved with contributing to quantum mechanics, he didn’t fully buy into ‘uncertainty’.

And for now, the mechanistic metaphor was more than just a metaphor. It had become reality. And Henri Fayol embedded more deeply that which Taylorwas advocating.

1919 - Henri Fayol, Engineer, CEO, and Administrative Theorist, France

Hatch[9]labels Fayol as a ‘classical’ inspiration to organization theory. “Fayol presented what he believed to be universal principles for the rational administration of organizational activities… The principles themselves involved issues such as span-of-control (the number of subordinates that can be overseen by one manager); exceptions (subordinates should deal with routine matters, leaving managers free to handle situations that existing rules do not address); departmentation (the grouping of activities such that similar activities form departments within the organization); unity of command (each subordinate should report to only one boss); and hierarchy (the scalar principle linked all organizational members into a control structure that resembled a pyramid)… Fayol specified the responsibilities of the manager: planning, organizing, command, coordination and control.”[10]The mechanistic metaphor was becoming more and more ingrained in working life. At the same time, it was being used to describe and harness the masses on a social scale, too.

1924 - Max Weber, Sociologist, Germany

Hatch[11]labels Weber as a ‘classical’ inspiration to organization theory. “Like Durkheim, German sociologist Max Weber was interested in defining the key characteristics of industrial societies, one of which he saw as an unavoidable increase in bureaucracy. In contrast to feudal and other traditional forms of organizing, Weber emphasized the rational virtues of bureaucracy which included formal authority based on precise and generalized rules and procedures (described as legalistic forms of control)… Weber credited bureaucracy with being objective and impersonal and therefore unbiased and rational (hence his label for this new form was rational-legal authority). [12]Weber himself, however, apparently recognized that the uses of rationalization rest upon value-based criteria. Evidence for this is found in his distinction between formal and substantive rationality. Formal rationality involved techniques of calculation, while substantive rationality refers to the desired ends of action that direct the uses of calculative techniques. Different desired ends will lead to different uses of formal rationality. Weber warned that formal rationality without conscious consideration of substantive rationality leads to an ‘iron cage’ capable of imprisoning humanity and making man a ‘cog in an ever-moving mechanism’. Such sentiments position Weber close to postmodern critics of modernist organization theory, while his interest in values is carried on by symbolic-interpretive researchers.” [13]

Weber therefore identified some of the things that were emerging out of the industrialised, mechanistic metaphor, top-down control era. His forecast wasn’t rosy. The iron cage would be a trap. I’d be inclined to agree. Therefore, how refreshing to have thinking offered by complexity science to liberate us? Maybe. Thinking that would contribute to complexity science was bubbling away beneath the surface.

1932 - Niels Bohr discovered the basic structure of the atom

Physicist Niels Bohr, a promoter of vitalism, said: “The recognition of the essential importance of fundamentally atomistic features in the functions of living organisms is by no means sufficient for a comprehensive explanation of biological phenomena”. Bohr’s vitalism, which derived from his quantum physics, gained some popularity for a while. At the same time, some biologists continued to argue that the laws of chemistry and physics alone were insufficient to explain important features of life, not because of the addition of some kind of élan vital, but because of emergent complexity.”[14]

Emergent complexity… bubbling away.

1938 - ChesterBarnard, Management Theorist, America

Hatch[15]labels Barnard as a ‘classical’ inspiration to organization theory. “Barnard extended Durkheim’s idea of informal organization to Classical management theory by suggesting that managing this aspect of organizing was a key function of the successful executive. Barnard emphasized the ways in which executives might develop their organizations into cooperative social systems by focusing on the integration of work efforts through communication of goals and attention to worker motivation, ideas that made a more direct contribution to the field of organizational behavior than to organization theory. However, the significance Barnard and his followers attached to the cooperative aspects of organizations is sometimes blamed for having blinded early organization theorists to the importance of conflict as a fundamental aspect of all organizations. Nonetheless, the consideration Barnard gave to issues of value and sentiment in the workplace identified themes that are echoed in contemporary research on organizational culture, meaning, and symbolism.”[16]From a complexity science point of view, at least Barnard was acknowledging the importance of the interaction between people as a locus for change, albeit still with a top-down, command-control intent.

1950s à‘Modernist’ inspiration to organization theory

Key thought of this era contributed to what Hatch[17]defined as a ‘modern(ist)’ inspiration to organization theory. The metaphor of the modern perspective of organization theory is an organism. The image of the organization is seen as a living system that performs the functions necessary to survival – especially adaptation to a hostile world. The image of the manager is as an interdependent part of an adaptive system.[18]At least we’re moving now in an interesting direction beyond the mechanistic metaphor.

“General systems theory … inspired much of the modern approach to organization theory, and helps sustain continued allegiance to modernism among many contemporary organization theorists. In the 1950s, German biophysiologist Ludwig von Bertalanffy presented a theory intended to explain all scientific phenomena across both natural and social sciences from the atom and the molecule, through the single cell, organ, and organism, all the way up to the level of individuals, groups and societies. He recognized that all these phenomena were related – societies contain groups, groups contain individuals, individuals are comprised of organs, organs of cells, cells of molecules, and molecules of atoms. To generalize, he referred to all of these phenomena as systems. Bertalanffy then sought the essential laws and principles that would explain all systems. Thus, the theory he envisioned involved generalizations drawn at such a high level of abstraction that the essence of all scientific knowledge would be clarified and integrated. He called this General Systems Theory… GST knocked down some of the barriers between the sciences, proposing cross-disciplinary research as a revolution in the way science is conducted. To understand the importance of systems thinking for organization theory, it is first necessary to grasp the concept of a system. A system is a thing with inter-related parts. Each part is conceived as affecting the others and each depends upon the whole… This idea of interrelated parts (in systems theory these are called subsystems) emphasizes that, while all systems can be analytically broken down for the purposes of scientific Study, their essence can only be identified when the system in confronted as a whole. This is because subsystem interdependence produces features and characteristics that are unique to the system as a whole. The implication is that, to comprehend a system, you must not merely analyze (or synthesize or integrate), you must also be willing to transcend the view of the individual parts to encounter the entire system at its own level of complexity.”[19]

Ok, good. Increasing acceptance of holism and interconnectivity and interrelatedness of everything. But still a little ahistoric, and a bit atomistic/reductionist due to assumption of the need to break things down into component parts to study them. Moving on then…

1961 – Conrad Waddington quote

Conrad Waddington said:  “Vitalism amounted to the assertion that living things do not behave as though they were nothing but mechanisms constructed of mere material components; but this presupposes that one knows what mere material components are and what kind of mechanisms they can be built into.” Waddington was an emergentist, but not a vitalist. He believed that the assembly of a living organism is subject to physical laws, but that their product is not derivable from the laws themselves. In many ways, the new science of Complexity is heir to this line of reasoning. It is a new emergentism, a potentially far more powerful brand than any of its predecessors.”[20] All influential thinking for Stuart Kauffman, a major proponent for complexity science thinking.

1961 Stuart Kauffman goes to Oxford

Stuart Kauffman went to Magdalen College, Oxford Uni – read philosophy, psychology and physiology. Discovered a facility for inventing theories to explain whatever challenge he was presented in psychology, including aspects of neural networks. Then decided on Medical School.[21]Neural networks are a very interesting example of interacting agents in a highly interconnected system, a key metaphor for complexity scientists.

Early 1960’s - Breakthroughs in genetic understanding

This was a special time for molecular biology. Two French researchers, Francois Jacob and Jacques Monod made breakthroughs in understanding the regulation of gene activity and their work was recognized by the Nobel Prize Committee.[22]Results from this work enabled a whole raft of ‘new’ thinking.

1963 Brian Goodwin publishes his book, ‘Temporal Organization in Cells.’

Work in the biology field was now getting interesting. It’s amazing how all these themes and disciplines are interconnected and interwoven and how you can make sense of the practical value of all this retrospectively, and how even biology and physics have to do with how you are managed in the workplace.

“Brian Goodwin had studied biology at McGill University, Canada, then mathematics at Oxford a few years earlier than Stuart Kauffman, and had pursued a doctorate at Edinburgh University under C. H. Waddington, one of the recent major figures of British Biology. Waddington believed passionately that organisms must be studied as wholes, and that the principal challenge of biology was to understand the genesis of form. Entranced with this holistic approach, Brian integrated it with the molecular biology of Jacob and Monod, and produced a theory of how gene activity and oscillating levels of biochemicals could contribute to biological form. ‘Temporal Organization in Cells’ was his thesis in book form. … The book was an attempt to show how molecular control systems, such as feedback, repression, control of enzyme activity – in other words, the intrinsic local logic of a complex system – gave rise naturally and spontaneously to oscillatory behaviour and global patterns. Such behaviour is an important component of living systems, such as circadian rhythms and the periodic activity of hormone and enzyme systems.”[23]

So the main point to take from this is that natural behaviour in systems is for interaction to occur within and between interconnected parts and from those interactions spontaneous, novel emergence of patterns will occur.  This theme was seen to repeat across more and more natural and living systems. As Stuart Kauffman was also finding out.

1964 Stuart Kauffman at Berkeleyfor premedical education

Stuart obsessed with embryology, particularly how embryonic cells differentiate, forming muscle cells, nerve cells, cells of connective tissue and so on. He said: “Everything was coming into place, the Jacob/Monod ideas, even the networks I’d played around with in Oxford.” Stuart reasoned that it was all but impossible for natural selection to orchestrate the activity of the one hundred thousand genes in the human genome so as to generate the range of some 250 different cell types. He said, “I had a different solution. Imagine that the genes are as a network, each either active or inactive depending on the inputs from other genes. But imagine that the links between the genes are randomly assigned. The counterintuitive result is that you do get order, and in a most remarkable way.”[24](Systems of this sort are known as random Boolean networks – see entry on George Boole - 1815.)

A perspective emphasising a network view of things was becoming stronger, where seemingly random interactions between ‘members’ of a network were seen to produce order, or emergence, on another level. Something new.

1965 Stuart Kauffman, a 2ndyear med Student @ uni of California, San Fran’

Kauffman worked with Boolean networks a lot[25] [the network proceeds through a series of so-called states. At a given instant, each element in the network examines the signals arriving from the links with the other elements and then is active or inactive, according to its rules for reacting to the signals. The network then proceeds to the next state, whereupon the process repeats itself. And so on. Under certain circumstances a network may proceed through all its possible states before repeating any one of them. In practice, however, the network at some point hits a series of states around which it cycles repeatedly. Known as a state cycle, this repeated series of states is in effect an attractor in the system, like the whirlpool in the treacherous sea of complex systems dynamics. A network can be thought of as a complex dynamical system and is likely to have many such attractors.] Kauffman worked on networks by hand, “My pharmacology notebooks are full of them, all up and down the margins”. The number of possible states even in small modestly connected networks rises rapidly as you increase the number of elements and hand-calculated networks soon become unmanageable. To go beyond about 8 elements, a computer is necessary. Kauffman said: “I got some guy to teach me to program and prepared for my first run – a network with a hundred elements, each with two inputs, randomly assigned” – so he had to shuffle the programming cards.[26]

“He [Kauffman] went to the school’s computer centre to prove he was right and that the entire biological community from Darwindown was wrong; “There I was, shuffling this pack of cards, then handing them to the programmer. This was when you fed your program and data into a computer on a set of punched cards. If the program was to work then the cards had to be in perfect order. One card out of place and the machine was likely to spew out garbage. And there was I, shuffling my data cards, randomizing them.” He felt that the conventional explanation for the origins of order in the world of nature had to be wrong.”[27]This modest network had some 1030 possible states, a mere hundred trillion times the age of the universe, measured at one state per second. The computer ran a good deal faster than one state a second. Even so, had the network ventured just the minutest way into its territory of total possible states before hitting a state cycle, the program would have run for days. But, he said: “I was lucky. It went into a state cycle after going through just sixteen states, and the cycle itself was only four states… it’s the crystallization of order out of massively disordered systems. It’s order for free.”[28]

Kauffman read Brian Goodwin’s ‘Temporal Organization in Cells’, and thought, “Oh, he’s got there first … then … hey, I don’t understand this. What’s it all about… He’s got it wrong.” The core of the book – the generation of order as an inevitable product of the dynamics of the system – resonated powerfully with Stuart’s view of the world. He immediately sent Brian a copy of the early results from the Boolean networks, but didn’t enter into correspondence.[29]

The emerging point of the day though, was that state cycles were significant: systems seeming to fall into chaordic disorder would happen on a regular basis, and from this disorder would arise new, emergent order.

1968 Ludwig von Bertalanffy

Although all these advancements were being made in the life sciences, application reaching into organisation theory was a bit slower. Hatch[30]labels Bertalanffy as a ‘modern’ inspiration to organization theory.  “The modernist view is based on the belief that there is an objective, physical reality in question and thus any perspective is but a different view of the same thing.”[31]As a general systems theorist, Bertalanffy promoted a systemic view of interconnected systems within a boundary, but didn’t really advance to looking at how the interconnected elements of a system might co-evolve over time, which is what complexity science became all about really.

1980s à  ‘Symbolic-interpretive’ inspiration to organization theory’

It wasn’t really until the 1980s that organisational theory was really beginning to catch up with the essence and key implications arising from the life sciences. Key thoughts of this next era contributed to what Hatch[32]defined as a ‘symbolic-interpretive’ inspiration to organization theory. The metaphor of a symbolic-interpretive approach to organization theory is that of a culture. The image of the organization is seen as a pattern of meaning created and maintained by human association through shared values, traditions, and customs. The image of the manager is an artifact who would like to be a symbol of the organization.[33]“Enactment theory and the social construction of reality … underpin the symbolic-interpretive perspective.”[34]

“American social psychologist Karl Weick introduced enactment theory in 1969 inhis book ‘The Social Psychology or Organizing’. According to Weick’s theory, when you use concepts like organization, you create the phenomenon you are seeking to study. Similarly, in conceptualizing the environment, organizations produce the situations to which they respond. Enactment theory focuses attention on the subjective origin of organizational realities. Weick states that he purposely used the term ‘enactment to emphasize that managers construct, rearrange, single out, and demolish many ‘objective’ features of their surroundings. When people act they unrandomize variables, insert vestiges of orderliness, and literally create their own constraints. According to Weick, by stating an interest in organization and establishing a language for talking about it, we reify the subject of our study, that is, we make the phenomenon real by speaking and acting in ways that give it tangibility. The concept of reification can be compared to the work of a mime. [35]

A mime, by pretending to make contact with a door or a wall, causes us to imagine that a wall or door is present – we can see the absent object through the mime’s descriptive attitudes and movements. Reification has a similar power to make us see. The difference between miming and enactment is that we are aware of the difference between the door the mime creates in our mind and a real door. In the case of enactment, we can make an environment, a culture, a strategy, or an organization appear, but once we have done so there is little difference between our creation and reality. Of course we do not usually enact these realities individually, rather there is often a certain amount of social agreement and cooperation that occurs before such existence is claimed. In fact, when an individual persistently attempts to enact their own reality individually, we may view
           CNG-diesel engine performance and exhaust emission analysis with the aid of artificial neural network    
Yusaf, Talal F. and Buttsworth, D. R. and Saleh, Khalid H. and Yousif, B. F. (2010) CNG-diesel engine performance and exhaust emission analysis with the aid of artificial neural network. Applied Energy, 87 (5). pp. 1661-1669. ISSN 0306-2619
          Comment on Neuromorphic Computing: Modeling The Brain by kderbyshire   
Since neuromorphic architectures are in their infancy, I'm not sure anyone yet knows exactly which applications will be the best fit. And "self-learning" neural networks that can discover patterns on their own are even less mature than "trained" networks. This is all an active area of research that I'll look at in future articles in the series. One aspect of biological brains is that the number of potential synaptic connections is so huge that it doesn't really matter whether they are used "efficiently." Discovering connections in uncorrelated data is one definition of "creativity." But neuromorphic computing has a long way to go to meet that standard.
          Компания Sony открыла свои наработки в области нейронных сетей   
Компания Sony представила проект NNabla (Neural Network Libraries), в рамках которого открыла наработки в области построения нейронных сетей для решения задач глубинного машинного обучения. Система универсальная и изначально рассчитана на использование как на настольных ПК и встраиваемых устройствах, так и в кластерах и крупных серверах для решения исследовательских задач и практического применения. Код ядра NNabla написан на языке C++ и распространяется под лицензией Apache 2.0.
          Machine Leaning Specialist​   
CA-Santa Clara, Machine Leaning Specialist​ ​Location: Santa Clara, CA 3 - 6 month contract to hire embedded (Raspberry Pi) experience is a huge plus. Most importantly is the experience in computer vision, deep neural networks Experience developing applications utilizing Artificial Intelligence, Computer Vision, Machine Learning, Image Processing, and/or Computer Graphics Experience with mobile device management,
           Application of radial basis function network with a Gaussian function of artificial neural networks in osmo-dehydration of plant materials    
Tortoe, C., Orchard, J., Beezer, A. and Tetteh, J. (2011) Application of radial basis function network with a Gaussian function of artificial neural networks in osmo-dehydration of plant materials. Journal of Artificial Intelligence, 4 (4). pp. 233-244. ISSN 1994-5450 (Print), 2077-2173 (Online) (doi:10.3923/jai.2011.233.244 )
           Artificial neural networks in modelling osmotic dehydration of foods    
Tortoe, Charles, Orchard, John, Beezer, Anthony and Tetteh, John (2008) Artificial neural networks in modelling osmotic dehydration of foods. Journal of Food Processing and Preservation, 32 (2). pp. 270-285. ISSN 1745-4549 (online) (doi:10.1111/j.1745-4549.2008.00178.x )
          Make a collaborative drawing with Google’s neural network   
Last April, Google’s machine learning crew revealed AutoDraw, a fun little demo of all that neural network theory. In a nutshell, the web app tries to guess what your scribble looks like and identify it. Now Google’s researchers are taking that idea one step further. Called Sketch-RNN, this “recurrent neural network” model does for doodles and drawing that autocomplete does … Continue reading
             
Industrial production fell by 0.8% over the year to April, with particularly sharp falls in the energy and consumer non-durables sectors. This follows forecasts of such a fall on this site in recent months. While the political landscape is now particularly uncertain, forecasting is more than usually hazardous, but the predictions of my neural network model for this series over the next 24 months are reported below.


             
Data on industrial production indicate that output growth in this sector slowed in March to 1.4% year on year. This follows sharp declines in each of the previous two months, and on a monthly basis industrial output is now some 1.9% lower than its peak in December of last year. Since there was also a mini-peak in the series in April 2016, it would not be surprising if the year-on-year series were to turn negative next month.

The series, along with predictions for the coming two years from my neural network forecaster, appears in the graph below. As ever, forecasts should be treated with caution, not least given the present political uncertainties.


             
Following the substantial uptick in manufacturing output fuelled by sterling's depreciation at the end of last year, the January data indicate a month-on-month fall of some 0.9%. This has contributed to a month-on-month fall of 0.4% in total industrial output. Year-on-year, industrial output still shows a large rises, of some 3.2%.

The slowing of output in January leads to another major revision in my neural network forecast for this variable over the coming 24 months - illustrating again that forecasting in such volatile times is a hazardous activity. The latest forecast is shown below - and is clearly more consistent with forecasts produced over the course of most of last year than with the one produced last month.


             
The latest statistics on industrial production indicate that, compared with a year earlier, output in the production sector in December 2016 had grown by some 1.2%. This spurt of growth is new. Indeed, industrial output grew by over 3.1% over the last 2 months of 2016, following some earlier reverses. The main driver of this growth is in the manufacturing sector, which, over the course of the year, increased output by some 4 per cent. Growth in manufacturing since October has been particularly strong - at 3.5 per cent over the two months alone.

Using these data to update my neural network forecaster for industrial output means that - with the positive annual growth rates recorded in each of November and December of last year - the forecast is now for continued growth over the period to the end of 2018. The depreciation of sterling has clearly given manufacturing exports a boost, and while the series dipped in October of last year this dip has proved to be much milder and shorter-lived than anticipated. The uncertainties brought on by Brexit have clearly made forecasting an even more hazardous activity than usual!


             
Comments by Andy Haldane, chief economist at the Bank of England, comparing economic forecasts to the famous failure of Michael Fish to predict the October 1987 hurricane have been seized upon by the media. The relevant part of Haldane's commentary comes in the 5 minutes from 15m30s in this video.

A number of points are worth making about this. First, the specific forecasting failure that Haldane compares to Fish is that of the financial crash leading to the Great Recession. Some media outlets have suggested otherwise. Haldane does comment on the Bank's forecasts for the post-referendum period and notes that the economy has been more resilient so far than had been expected, but he continues to expect a relatively tough year in 2017.

Focusing then on the major forecasting failure in 2008, he identifies two contributory factors. The first (extending the analogy with meteorology) is a lack of data. With better data, better forecasts can be produced. The second is arguably more fundamental. As Haldane notes, the forecasting models tend to work well when the economy is close to equilibrium, but perform badly during the (more interesting) periods following a shock. They clearly need to be redesigned, and indeed are being redesigned, better to accommodate such extreme events. Much effort since the crisis has gone into developing macroeconomic models to include imperfectly operating housing markets, and it is likely that this effort will contribute to more successful forecasting in future.

That said, economies are made up of people with free wills, and forecasting in this context can never become an exact science. The forecaster's tools - be they VAR models, neural networks, DSGE models or whatever - allow the evidence to be marshalled systematically in order to produce informed estimates of the likely time paths of key economic variables. But they are informed only by what is known at the time of the forecast, not magically informed by data that are unavailable. That said, data on the vulnerability of the sub-prime sector were available in 2007, and it is certainly fair to say that these should have been given greater heed in forecasts.

However, while many laypeople consider forecasting to be a major part of what economics is all about, that perception is misleading. Most economics is based on generating hypotheses that are then tested on historical data. This allows some stylised facts to be determined, and helps us understand a complex world - for instance: production quotas raise the price of oil; or restricting trade is harmful to growth. The body of economic understanding that has developed in this way over many years is in no way challenged by the fact that (in common with everybody else) economists lack perfect crystal balls.

             
Industrial production in October of this year fell some 1.3% over the month and 1.2% over the year. My neural network forecaster suggests that this heralds the start of a downturn in industrial output that has been foreseen for some time - but that has been delayed by the depreciation of sterling. Forecasting a series of this kind in the current climate, given the considerable uncertainties surrounding Brexit terms and the consequent impact on trade, is of course very hazardous. But, even without these considerations, the climate for the production industries has not been particularly propitious.

This being so, the government's proposals for an industrial policy are, in principle, welcome. This should not be a policy about picking winners (on which governments have a poor track record), but about providing a climate wherein winners can thrive. One key component of such a policy should surely be openness to trade.

             
The latest data on industrial production show a year on year rise of some 0.3%, but a month-on-month fall of 0.4%. The quarterly data show a fall of some 0.5% in the third quarter of this year - the first complete quarter since the Brexit referendum. While some parts of the economy have so far proved resilient to the outcome of that vote - stimulated by the cheaper pound - other sectors are clearly already struggling. In particular, manufacturing output has fallen over the quarter by some 0.9%.

Using my neural network forecaster to look ahead continues to suggest that this series is likely to dip over the medium term. Forecasting is always a hazardous activity, but at no time more so than this, given the uncertainties that remain over how Brexit is to be implemented.


             
Following an encouraging showing in July, the latest industrial production figures, up to August of this year, indicate a fall in production over the month. Year-on-year, the data show an increase of some 0.8%. Nevertheless, analysing these data using my neural network forecaster continues to show that a dip in the data is likely over the coming months.

The outcome of Brexit negotiations is, of course, as yet unknown, and the reliability of any forecast of industrial production in this context is likely to be unusually limited.

             
The latest data on industrial production show a drop of 0.5% over the year to February. This is further evidence of an economic slowdown. While overall growth is still positive, this is entirely due to expansion in the services sector - and we know that confidence in that sector too has fallen sharply in recent months.

I have, for several years, used the industrial production data in a neural network forecasting model. The latest forecasts of this model, updated to include the data released today, appear below. They continue to indicate that the next year will be challenging for the production sector, with continued falls in output.


             
The latest industrial production statistics indicate continued growth in production. Compared with a year earlier, production in November 2015 was a little under 1% higher. This is, however, in spite of a large fall of 1.3% in manufacturing - the largest component of industrial production. This fall was compensated for by a substantial increase in other sectors, notably including oil and gas extraction.

I have regularly used these statistics to provide forecasts using a simple neural network programme. The latest forecasts, with the red line looking ahead 24 months, appear below. They continue to evidence some fragility in the production sector, with a dip in overall output over the coming period looking increasingly likely.


             
The latest statistics on industrial production have been released, and confirm that output in the production industries has continued to grow in the year to September. The forecasts of my neural network model for this series continues, however, to suggest that caution is warranted in interpreting recent growth as a harbinger of continued expansion. A dip is due. That may not carry over into the (much larger) part of the economy that is based in services, but, particularly at a time when global demand appears to be weakening, we should be wary of overoptimism.


          Troll Hunter: Understanding Online Hate Speech and Collective Behaviors   
2017 SIAM Conference on Computational Science and Engineering Part of PP107 Minisymposterium: Broader Engagement Program Abstract. We compare and evaluate the effectiveness of Support Vector Machine and Convolutional Neural Network models on hate speech identification tasks given a 15K tweet data set. We determine refinements and next steps required to produce a methodology for analyzing […]
           Properties of an invariant set of weights of perceptrons    
Ho, Charlotte Yuk-Fan and Ling, Bingo Wing-Kuen and Nasir, Muhammad Habib Ullah and Lam, Hak-Keung and Iu, Herbert H C (2008) Properties of an invariant set of weights of perceptrons. In: International Joint Conference on Neural Networks 2008, 1 - 8 June 2008, Hong Kong.
           Global convergence and limit cycle behavior of weights of perceptron    
Ho, Charlotte Yuk-Fan and Ling, Bingo Wing-Kuen and Lam, Hak-Keung and Nasir, Muhammad H. U. (2008) Global convergence and limit cycle behavior of weights of perceptron. IEEE Transactions on Neural networks, 19 (6). pp. 938-947. ISSN 1045-9227
          JustNN 4.0   
JustNN - Create, train, validate, query neural networks, import data from any file.
          NeuroXL Classifier for twodownload.com Deluxe   
NeuroXL Classifier for twodownload.com - NeuroXL Classifier is a fast, powerful and easy-to-use neural network software
          Why Your Brain is not a Quantum Computer   
Recently Ervin Laszlo has written a number of articles declaring that human brains are quantum computers. As a computer scientist who is also interested in psychology I found the topic to be very interesting. However, as I read the articles I became frustrated with the lack of detail and the way they seemed to put forth provocative ideas with no sound evidence or reasoning behind them. They were still useful to me, sometimes we can learn as much from a poorly thought out idea as a good one. Prior to reading the article I had no idea what a quantum computer was. Unfortunately, I didn’t gain much insight on that from the articles but I did do some research to better understand them. I would like to describe what I found here and describe why I strongly believe your brain is not a quantum computer.

The first important point is that everything I or anyone is about to say about quantum computers is all about the idea of a quantum computer. To date there are no quantum computers and there are many complex unsolved problems (indeed they may be unsolvable problems) that need to be addressed before such computers exist.

The most interesting thing I found on researching quantum computers is that in many ways they aren’t all that different from traditional computers. A traditional computer consists of memory and a Central Processing Unit (CPU) that manipulates the memory. The CPU does things like basic math and moving information from one place to another. The memory is represented as electrical impulses (bits) that can be either on or off, 0 or 1. The essential difference between a traditional computer and a quantum computer is that a quantum computer would take advantage of the very mysterious phenomenon of quantum entanglement. The significance of entanglement is that it offers a model where particles can be described as being in multiple states at the same time. An entangled bit (known as a qubit) can be in the state of on and off at the same time. Qubits allow highly parallel search of a problem space. Rather than investigating each solution one at a time, using a qubit you can test many different alternatives all at the same time.

While qubits and quantum computers offer exciting possibilities to solve certain very complex problems from a computer science standpoint they aren’t that revolutionary. In fact as I looked on the Internet I found some incorrect statements about how Qubits differ from traditional bits. JR Minkel at Scientific American stated in a video “even today’s fastest computers ultimately do things one at a time”. This is absolutely and patently false. Supercomputers in fact work precisely because they do many computations at the same time. In fact its even wrong when considering personal computers. If you have a desktop computer it most likely has at least two CPU’s. That’s one of the things that enables you to have multiple applications up and running at the same time. For supercomputers this is taken to the extreme, they have hundreds or more CPU’s that work in parallel. The difference is that those computers still work with traditional bits that can be either 0 OR 1. A quantum computer working with qubits that can represent both values at the same time would be able to be much more massively parallel than even our fastest supercomputers.

The thing about parallel computing is that it sounds wonderful in principle but its a bit more complicated in practice. Adding 100 CPUs does not at all guarantee that you will cut the time required to solve a problem by 100. There is effort to write a special program that can exploit the benefits of parallelism, essentially divide a big problem into a bunch of smaller problems, solve the smaller problems than combine those solutions into one big solution. Not all problems lend themselves to such a divide and conquer approach. In fact no computer scientist that I came across is talking about quantum computers as a significant step toward artificial intelligence or better understanding the human mind. The emphasis is on specific mathematical problems such as factoring integers which could be useful in code breaking.

So with that background on quantum computers we can address the question: “is there any evidence at all that our brain functions as a quantum computer?” The answer to that is an emphatic no. We do have a model for how a computer can mimic our brain. That model is neural networks, mathematical representations that simulate the biochemical neurons in our brains. That model has proven extremely powerful, to the point where we can use computer neural networks to replicate the pattern matching capabilities, the ability to recognize edges, shapes, even faces that our brains do. To date there is absolutely zero evidence that the neurons in our brain have any ability to communicate at the quantum level. In fact there is no evidence that any biological system has the capability to interact at the quantum level. This is not surprising, Entanglement is a phenomenon that is extremely difficult to measure in the laboratory. It requires setting up complex highly sensitive and sophisticated electronic devises such as beam splitters and the entangled states are very susceptible to being disentangled by such measurements. That is the whole point of quantum entanglement, that such states represent multiple possible probability functions before being measured but the probability waves collapse into one real value after they are measured. The idea that a biological capability to detect such entanglements could somehow evolve seems highly improbable.

I would like to close with a more general discussion of why I think its important to rigorously examine such claims as “your brain is a quantum computer”. As I and others with a scientific background commented on Dr. Laszlo’s articles we were often maligned as people with closed minds and no imagination. I think its important to distinguish between having an open mind and an uncritical mind. I believe that I’m very open to all sorts of possibilities. I do think that the potential philosophical implications of quantum physics and string theory for example may be mind blowing and are worth serious investigation. However, there is a difference between serious investigation and arbitrary speculation. Many authors on the Huffington Post these days love to attach the word quantum to whatever their pet theory is. Quantum consciousness, quantum alternative realities, quantum brains,... These authors take advantage of the fact that quantum theory is difficult to understand to give any pet theory the appearance of scientific validity. This is pseudo-science at its worst. It does nothing to educate people on the very interesting topics of quantum theory nor on their potentially very interesting philosophical implications.
          Crinkler secrets, 4k intro executable compressor at its best   
(Edit 5 Jan 2011: New Compression results section and small crinkler x86 decompressor analysis)

If you are not familiar with 4k intros, you may wonder how things are organized at the executable level to achieve this kind of packing-performance. Probably the most important and essential aspect of 4k-64k intros is the compressor, and surprisingly, 4k intros have been well equipped for the past five years, as Crinkler is the best compressor developed so far for this category. It has been created by Blueberry (Loonies) and Mentor (tbc), two of the greatest demomakers around.

Last year, I started to learn a bit more about the compression technique used in Crinkler. It started from some pouet's comments that intrigued me, like "crinkler needs several hundred of mega-bytes to compress/decompress a 4k intros" (wow) or "when you want to compress an executable, It can take hours, depending on the compressor parameters"... I observed also bad comrpession result, while trying to convert some part of C++ code to asm code using crinkler... With this silly question, I realized that in order to achieve better compression ratio, you better need a code that is comrpession friendly but is not necessarily smaller. Or in other term, the smaller asm code is not always the best candidate for better compression under crinkler... so right, I needed to understand how crinkler was working in order to code crinkler-friendly code...

I just had a basic knowledge about compression, probably the last book I bought about compression was more than 15 years ago to make a presentation about jpeg compression for a physics courses (that was a way to talk about computer related things in a non-computer course!)... I remember that I didn't go further in the book, and stopped just before arithmetic encoding. Too bad, that's exactly one part of crinkler's compression technique, and has been widely used for the past few years (and studied for the past 40 years!), especially in compressors like H.264!

So wow, It took me a substantial amount of time to jump again on the compressor's train and to read all those complicated-statistical articles to understand how things are working... but that was worth it! In the same time, I spent a bit of my time to dissect crinkler's decompressor, extract the code decompressor in order to comment it and to compare its implementation with my little-own-test in this field... I had a great time to do this, although, in the end, I found that whatever I could do, under 4k, Crinkler is probably the best compressor ever.

You will find here an attempt to explain a little bit more what's behind Crinkler. I'm far from being a compressor expert, so if you are familiar with context-modeling, this post may sounds a bit light, but I'm sure It could be of some interest for people like me, that are discovering things like this and want to understand how they make 4k intros possible!


Crinkler main principles


If you want a bit more information, you should have a look at the "manual.txt" file in the crinkler's archive. You will find here lots of valuable information ranging from why this project was created to what kind of options you can setup for crinkler. There is also an old but still accurate and worth to look at powerpoint presentation from the author themselves that is available here.

First of all, you will find that crinkler is not strictly speaking an executable compressor but is rather an integrated linker-compressor. In fact, in the intro dev tool chain, It's used as part of the building process and is used inplace of your traditional linker.... while crinkler has the ability to compress its output. Why crinkler is better suited at this place? Most notably because at the linker level, crinkler has access to portions of your code, your data, and is able to move them around in order to achieve better compression. Though, for this choice, I'm not completely sure, but this could be also implemented as a standard exe compressor, relying on relocation tables in the PE sections of the executable and a good disassembler like beaengine in order to move the code around and update references... So, crinkler, cr-linker, compressor-linker, is a linker with an integrated compressor.

Secondly, crinkler is using a compression method that is far more aggressive and efficient than any old dictionary-coder-LZ methods : it's called context modeling coupled with an arithmetic coder. As mentioned in the crinkler's manual, the best place I found to learn about this was Matt Mahoney resource website. This is definitely the place to start when you want to play with context modeling, as there are lots of sourcecode, previous version of PAQ program, from which you can learn gradually how to build such a compressor (more particularly in earlier version of the program, when the design was still simple to handle). Building a context-modelling based compressor/decompressor is almost accessible from any developer, but one of the strength of crinkler is its decompressor size : around 210-220 bytes, which makes it probably the most efficient and smaller context-modelling decompressor in the world. We will see also that crinkler made one of the simplest choice for a context-modelling compressor, using a semi-static model in order to achieve better compression for 4k of datas, resulting in a less complex decompressor code as well.

Lastly, crinkler is optimizing the usage of the exe-PE file (which is the Windows Portable Executable format, the binary format of the a windows executable file, official description is available here). Mostly by removing the standard import table and dll loading in favor of a custom loader that exploit internal windows structure as well as storing function hashing in the header of the PE files to recover dll functions.

Compression method


Arithmetic coding


The whole compression problem in crinkler can be summarized like this: what is the probability of the next bit to compress/decompress to be 1? The better is the probability (meaning by matching the expecting result bit), the better is the compression ratio. Hence, Crinkler needs to be a little bit psychic?!

First of all, you probably wonder why probability is important here. This is mainly due to one compression technique called arithmetic coding. I won't go into the detail here and encourage the reader to read about the wikipedia article and related links. The main principle of arithmetic coding is its ability to encode into a single number a set of symbols for which you know their probability to occur. The higher the probability is for a known symbol, the lower the number of bits will be required to encode its compressed counterpart.

At the bit level, things are getting even simpler, since the symbols are only 1 or 0. So if you can provide a probability for the next bit (even if this probability is completely wrong), you are able to encode it through an arithmetic coder.

A simple binary arithmetic coder interface could look like this:
/// Simple ArithmeticCoder interface
class ArithmeticCoder {

/// Decode a bit for a given probability.
/// Decode returns the decoded bit 1 or 0
int Decode(Bitstream inputStream, double probabilityForNextBit);

/// Encode a bit (nextBit) with a given probability
void Encode(Bitstream outputStream, int nextBit, double probabilityForNextBit);
}

And a simple usage of this ArithmeticCoder could look like this:
// Initialize variables
Bitstream inputCompressedStream = ...;
Bitstream outputStream = ...;
ArithmeticCoder coder;
Context context = ...;

// Simple decoder implem using an arithmetic coder
for(int i = 0; i < numberOfBitsToDecode; i++) {
// Made usage of our psychic alias Context class
double nextProbability = context.ComputeProbability();

// Decode the next bit from the compressed stream, based on this
// probability
int nextBit = coder.Decode( inputCompressedStream, nextProbability);

// Update the psychic and tell him, how much wrong or right he was!
context.UpdateModel( nextBit, nextProbability);

// Output the decoded bit
outputStream.Write(nextBit);
}

So a Binary Arithmetic Coder is able to compress a stream of bits, if you are able to tell him what's the probability for the next bit in the stream. Its usage is fairly simple, although their implementations are often really tricky and sometimes quite obscure (a real arithmetic implementation should face lots of small problems : renormalization, underflow, overflow...etc.).

Working at the bit level here wouldn't have been possible 20 years ago, as It requires a tremendous amount of CPU (and memory for the psychic-context) in order to calculate/encode a single bit, but with nowadays computer power, It's less a problem... Lots of implem are working at the byte level for better performance, some of them can work at the bit level while still batching the decoding/encoding results at the byte level. Crinkler doesn't care about this and is working at the bit level, making the arithmetic decoder in less than 20 x86 ASM instructions.

The C++ pseudo-code for an arithmetic decoder is like this:

int ArithmeticCoder::Decode(Bitstream inputStream, double nextProbability) {
int output = 0; // the decoded symbol

// renormalization
while (range < 0x80000000) {
range <<= 1;
value <<= 1;
value += inputStream.GetNextBit();
}

unsigned int subRange = (range * nextProbability);
range = range - subRange;
if (value >= range) { // we have the symbol 1
value = value - range;
range = subRange;
output++; // output = 1
}

return output;
}

This is almost exactly what is used in crinkler, but this done in only 18 asm instructions! The crinkler arithmetic coder is using a 33 bit precision. The decoder only needs to handle up to 0x80000000 limit renormalization while the encoder needs to work on 64 bit to handle the 33 bit precision. This is much more convenient to work at this precision for the decoder, as it is able to easily detect renormalization (0x80000000 is in fact a negative number. The loop could have been formulated like while (range >= 0), and this is how it is done in asm).

So the arithmetic coder is the basic component used in crinkler. You will find plenty of arithmetic coder examples on Internet. Even if you don't fully understand the theory behind them, you can use them quite easily. I found for example an interesting project called flavor, which provides a tool to produce some arithmetic coders code based on a formal description (For example, a 32bit precision arithmetic coder description in flavor), pretty handy to understand how things are translated from different coder behaviors.

But, ok, the real brain here is not the arithmetic coder... but the psychic-context (the Context class above) which is responsible to provide a probability and to update its model based on the previous expectation. This is where a compressor is making the difference.

Context modeling - Context mixing


This is one great point about using an arithmetic coder: they can be decoupled from the component responsible to provide the probability for the next symbol. This component is called a context-modeling.

What is the context? It is whatever data can help your context-modeler to evaluate the probability for the next symbol to occur. Thus, the most obvious data for a compressor-decompressor is to use previous decoded data to update its internal probability table.

Suppose you have the following sequence of 8 bytes 0x7FFFFFFF,0xFFFFFFFF that is already decoded. What will be the next bit? It is certainly to be a 1, and you could bet on it as high as 98% of probability.

So this is not a surprise that using history of data is the key point for the context modeler to predict next bit (and well, we have to admit that our computer-psychic is not as good as he claims, as he needs to know the past to predict the future!).

Now that we know that to produce a probability for the next bit, we need to use historic data, how crinkler is using them? Crinkler is in fact maintaining a table of probability, up to 8 bytes + the current bits already read before the next bit. In the context-modeling jargon, it's often called the order (before context modeling, there was technique developped like PPM  for Partial Predition Matching and DMC for dynamic markov compression). But crinkler is using not only the last x bytes (up to 8), but sparse mode (as it is mentioned in PAQ compressors), a combination of the last 8 bytes + the current bits already read. Crinkler calls this a model: It is stored into a single byte :
  • The 0x00 model says that It doesn't use any previous bytes other than the current bits being read.
  • The 0x80 model says that it is using the previous byte + the current bits being read.
  • The 0x81 model says that is is using the previous byte and the -8th byte + the current bits being read.
  • The 0xFF model says that all 8 previous bytes are used
You probably don't see yet how this is used. We are going to take a simple case here: Use the previous byte to predict the next bit (called the model 0x80).

Suppose the sequence of datas :

0xFF, 0x80, 0xFF, 0x85, 0xFF, 0x88, 0xFF
, ???nextBit???
(0) (1) (2) (3) | => decoder position

  • At position 0, we know that 0xFF is followed by bit 1 (0x80 <=> 10000000b). So n0 = 0, n1 = 1 (n0 denotes the number of 0 that follows 0xFF, n1 denotes the number of 1 that usually follows 0xFF)
  • At position 1, we know that 0xFF is still followed by bit 1: n0 = 0, n1 = 2
  • At position 2, n0 = 0, n1 = 3
  • At position 3, we have n0 = 0, n1 = 3, making the probability for one p(1) = (n1 + eps) / ( n0+eps + n1+eps). eps for epsilon, lets take 0.01. We have p(1) = (2+0.01)/(0+0.01 + 2+0.01) = 99,50%

So we have the probability of 99,50% at position (3) that the next bit is a 1.

The principle here is simple: For each model and an historic value, we associate n0 and n1, the number of bits found for bit 0 (n0) and bit 1 (n1). Updating those n0/n1 counters needs to be done carefully : a naive approach would be to increment according values when a particular training bit is found... but there is more chance that recent values are more relevant than olders.... Matt Mahoney explained this in The PAQ1 Data Compression Program, 2002. (Describes PAQ1), and describes how to efficiently update those counters for a non-stationary source of data :
  • If the training bit is y (0 or 1) then increment ny (n0 or n1).
  • If n(1-y) > 2, then set n(1-y) = n(1-y) / 2 + 1 (rounding down if odd).

Suppose for example that n0 = 3 and n1 = 4 and we have a new bit 1. Then n0 will be = n0/2 + 1 = 3/2+1=2 and n1 = n1 + 1 = 5

Now, we know how to produce a single probability for a single model... but working with a single model (for exemple, only the previous byte) wouldn't be enough to evaluate correctly the next bit. Instead, we need a way to combine different models (different selection of historic data). This is called context-mixing, and this is the real power of context modeling: whatever is your method to collect and calculate a probability, you can, at some point, mix severals estimator to calculate a single probability.

There are several ways to mix those probabilities. In the pure context-modeling jargon,  the model is the way you mix probabilities and for each model, you have a weight :
  • static: you determine the weights whatever the data are.
  • semi-static: you perform a 1st pass over the data to compress to determine the weights for each model, and them a 2nd pass with the best weights
  • adaptive: weights are updated dynamically as new bits are discovered.

Crinkler is using a semi-static context-mixing but is somewhat also "semi-adaptive", because It is using different weights for the code of your exe, and the data of your exe, as they have a different binary layout.

So how this is mixed-up? Crinkler needs to determine the best context-models (the combination of historic data) that It will use, assign for each of those context a weight. The weight is then used to calculate the final probability.


For each selected historic model (i) with an associated model weight wi, and ni0/ni1 bit counters, the final probability p(1) is calculated like this :

p(1) = Sum(  wi * ni1 / (ni0 + ni1))  / Sum ( wi )

This is exactly what is done in the code above for context.ComputeProbability();, and this is exactly what crinkler is doing.

In the end, crinkler is selecting a list of models for each type of section in your exe: a set of models for the code section, a set of models for the data section.

How many models crinkler is selecting? It depends on your data. For example, for ergon intro,crinklers is selecting the following models:

For the code section:
0 1 2 3 4 5 6 7 8 9 10 11 12 13
Model {0x00,0x20,0x60,0x40,0x80,0x90,0x58,0x4a,0xc0,0xa8,0xa2,0xc5,0x9e,0xed,}
Weight { 0, 0, 0, 1, 2, 2, 2, 2, 3, 3, 3, 4, 6, 6,}

For the data section:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Model {0x40,0x60,0x44,0x22,0x08,0x84,0x07,0x00,0xa0,0x80,0x98,0x54,0xc0,0xe0,0x91,0xba,0xf0,0xad,0xc3,0xcd,}
Weight { 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5,}
(note that in crinkler, the final weight used to multiply n1/n0+n1 is by 2^w, and not wi itself).

Wow, does it means that crinkler needs to store those datas in your exe. (14 bytes + 20 bytes) * 2 = 68 bytes? Well, crinkler authors are smarter than this! In fact the models are stored, but weights are only store in a single int (32 bits for each section). Yep, a single int to stored those weights? Indeed: if you look at those weights, they are increasing, sometimes they are equal... So they found a clever way to store a compact representation of those weights in a 32 bit form. Starting with a weight of 1, the 32bit weight is shifted by one bit to the left : If this is 0, than the currentWeight doesn't change, if bit is 1, than currentWeight is incremented by 1 : (in this pseudo-code, shift is done to the right)

int currentWeight = 1;
int compactWeight = ....;
foreach (model in models) {
  if ( compactWeight & 1 )
    currentWeigh++;
  compactWeight =  compactWeight >> 1;

//  ... used currentWeight for current model
}

This way, crinkler is able to store a compact form of pairs (model/weight) for each type of data in your executable (code or pure data).

Model selection


Model selection is one of the key process of crinkler. For a particular set of datas, what is the best selection of models? You start with 256 models (all the combinations of the 8 previous bytes) and you need to determine the best selection of models. You have to take into account that each time you are using a model, you need to use 1 byte in your final executable to store this model. Model selection is part of crinkler compressor but is not part of crinkler decompressor. The decompressor just need to know the list of the final models used to compress the data, but doesn't care about intermediate results. On the other hand, the compressor needs to test every combination of model, and find an appropriate weight for each model.

I have tested several methods in my test code and try to recover the method used in crinkler, without achieving comparable compression ratio... I tried some brute force algo without any success... The selection algorithm is probably a bit clever than the one I have tested, and would probably require to layout mathematics/statistics formulas/combination to select an accurate method.

Finally, blueberry has given their method (thanks!)

"To answer your question about the model selection process, it is actually not very clever. We step through the models in bit-mirrored numerical order (i.e. 00, 80, 40, C0, 20 etc.) and for each step do the following:

- Check if compression improves by adding the model to the current set of models (taking into account the one extra byte to store the model).

- If so, add the model, and then step through every model in the current set and remove it if compression improves by doing so.

The difference between FAST and SLOW compression is that SLOW optimizes the model weights for every comparison between model sets, whereas FAST uses a heuristic for the model weights (number of bits set in the model mask).
"


On the other hand, I tried a fully adaptive context modelling approach, using dynamic weight calculation explained by Matt Mahoney with neural networks and stretch/squash functions (look at PAQ on wikipedia). It was really promising, as I was able to achieve sometimes better compression ratio than crinkler... but at the cost of a decompressor 100 bytes heavier... and even I was able to save 30 to 60 bytes for the compressed data, I was still off by 40-70 bytes... so under 4k, this approach was definitely not as efficient as a semi-static approach chosen by crinkler.

Storing probabilities


If you have correctly followed the previous model selection, crinkler is now working with a set of models (selection of history data), for each bit that is found, each model probabilities must be updated...

But think about it: for example, if to predict the following bit, we are using the probabilities for the 8 previous bytes, it means that for every combination of 8 bytes already found in the decoded data, we would have a pair of n0/n1 counters?

That would mean that we could have the folowing probabilities to update for the context 0xFF (8 previous bytes):
- "00 00 00 00 c0 00 00 50 00" => some n0/n1
- "00 00 70 00 00 00 00 F2 01" => another n0/n1
- "00 00 00 40 00 00 00 30 02" => another n0/n1
...etc.

and if we have other models like 0x80 (previous byte), or 0xC0 (the last 2 previous bytes), we would have also different counters for them:

// For model 0x80
- "00" => some n0/n1
- "01" => another n0/n1
- "02" => yet another n0/n1
...

// For model 0xC0
- "50 00" => some bis n0/n1
- "F2 01" => another bis n0/n1
- "30 02" => yet another bis n0/n1
...

From the previous model context, I have slightly over simplified the fact that not only the previous bytes is used, but also the current bits being read. In fact, when we are using for example the model 0x80 (using the previous byte), the context of the historic data is composed not only by the previous byte, but also by the bits being read on the current octet. This implies obviously that for every bit read, there is a different context. Suppose we have the sequence 0x75, 0x86 (in binary 10000110b), the position of the encoded bits is just after the 0x75 value and that we are using the previous byte + the bits currently read:

First, we start on a byte boundary
- 0x75 with 0 bit (we start with 0) is followed by bit 1 (the 8 of 0x85). The context is 0x75 + 0 bit read
- We read one more bit, we have a new context :  0x75 + bit 1. This context is followed by a 0
- We read one more bit, we have a new context :  0x75 + bit 10. This context is followed by a 0.
...
- We read one more bit, we have a new context :  0x75 + bit 1000011, that is followed by a 0 (and we are ending on a byte boundary).

Reading 0x75 followed by 0x86, with a model using only the previous byte, we finally have 8 context with their own n0/n1 to store in the probability table.

As you can see, It is obvious that It's difficult to store all context found (.i.e for each single bit decoded, there is a different context of historic bytes) and their respective exact probability counters, without exploding the RAM. Moreover if you think about the number of models that are used by crinkler: 14 types of different historic previous bytes selection for ergon's code!

This kind of problem is often handled using a hashtable while handling collisions. This is what is done in some of the PAQ compressors. Crinkler is also using an hashtable to store counter probabilities, with the association context_history_of_bytes = > (n0/n1), but It is not handling collision in order to keep minimal the size of the decompressor. As usual, the hash function used by crinkler is really tiny while still giving really good results.

So instead of having the association between  context_history_of_bytes => n0/n1, we are using a hashing function, hash(context_history_of_bytes) => n0/n1. Then, the dictionary that is storing all those associations needs to be correctly dimensioned, large enough, to store as much as possible associations found while decoding/encoding the data.

Like in PAQ compressors, crinkler is using one byte for each counter, meaning that n0 and n1 together are taking 16 bit, 2 bytes. So if you instruct crinkler to use a hashtable of 100Mo, It will be possible to store 50 millions of different keys, meaning different historic context of bytes and their respective probability counters. There is a little remark about crinkler and the byte counter: in PAQ compressors, limits are handled, meaning that if a counter is going above 255, It will stuck to 255... but crinkler made the choice to not test the limits in order to keep the code smaller (although, that would take less than 6 bytes to test the limit). What is the impact of this choice? Well, if you know crinkler, you are aware that crinkler doesn't handle large section of "zeros" or whatever empty initialized data. This is just because the probabilities are looping from 255 to 0, meaning that you jump from a 100% probability (probably accurate) to almost a 0% probability (probably wrong)  every 256 bytes. Is this really hurting the compression? Well, It would hurt a lot if crinkler was used for larger executable, but in a 4k, It's not hurting so much (although, It could hurt if you really have large portions of initialized data). Also, not all the context are reseted at the same time (a 8 byte context will not probably reset as often as a 1 byte context), so it means that final probability calculation is still accurate... while there is a probability that is reseted, other models with their own probabilities are still counting there... so this is not a huge issue.

What happens also if the hash for a different context is giving the same value? Well, the model is then updating the wrong probability counters. If the hashtable is too small the probability counters may really be too much disturbed and they would provide a less accurate final probability. But if the hashtable is large enough, collisions are less likely to happen.

Thus, it is quite common to use a hashtable as large as 256 to 512Mo if you want, although 256Mo is often enough, but the larger is your hashtable, the less are collisions, the more accurate is your probability. Recall from the beginning of this post, and you should understand now why "crinkler can take several hundreds of megabytes to decompress"... simply because of this hashtable that store all the probabilities for the next bit for all models combination used.

If you are familiar with crinkler, you already know the option to find a best possible hashsize for an initial hashtable size and a number of tries (hashtries option). This part is responsible to test different size of hashtable (like starting from 100Mo, and reducing the size by 2 bytes 30 times, and test the final compression) and test final compression result. This is a way to empirically reduce collision effects by selecting the hashsize that is giving the better compression ratio (meaning less collisions in the hash). Although this option is only able to help you save a couple of bytes, no more.


Data reordering and type of data


Reordering or organizing differently the data to have a better compression is one of the common technique in compression methods. Sometimes for example, Its better to store deltas of values than to store values themselves...etc.

Crinkler is using this principle to perform data reordering. At the linker level, crinkler has access to portion of datas and code, and is able to move those portions around in order to achieve a better compression ratio. This is really easy to understand : suppose that you have a series initialized zero values in your data section. If those values are interleaved with non zero values, the counter probabilities will switch from "there are plenty of zero there" to "ooops, there are some other datas"... and the final probability will balance between 90% to 20%. Grouping data that are similar is a way to improve the overall probability correctness.

This part is the most time consuming, as It needs to move and arrange all portions of your executable around, and test which arrangement is giving the best compression result. But It's paying to use this option, as you may be able to save 100 bytes in the end just with this option.

One thing that is also related to data reordering is the way crinkler is handling separately the binary code and the data of your executable. Why?, because their binary representation is different, leading to a completely different set of probabilities. If you look at the selected models for ergon, you will find that code and data models are quite different. Crinkler is using this to achieve better performance here. In fact, crinkler is compressing completely separately the code and the datas. Code has its own models and weights, Data another set of models and weights. What does it means internally? Crinkler is using a set of model and weights to decode the code section of your exectuable. Once finished, It will erase the probability counters stored in the hashtable-dictionary, and go to the data section, with new models and weights. Reseting all counters to 0 in the middle of decompressing is improving compression by a factor of 2-4%, which is quite impressive and valuable for a 4k (around 100 to 150 bytes).

I found that even with an adaptive model (with a neural networks dynamically updating the weights), It is still worth to reset the probabilities between code and data decompression. In fact, reseting the probabilities is an empirical way to instruct the context modeling that datas are so different that It's better to start from scratch with new probability counters. If you think about it, an improved demo compressor (for larger exectuable, for example under 64k) could be clever to detect those portions of datas that are enough different that It would be better to reset the dictionary than to keep it as it is.

There is just one last thing about weights handling in crinkler. When decoding/encoding, It seems that crinkler is artificially increasing the weights for the first discovered bit. This little trick is improving compression ratio by about 1 to 2% which is not bad. Having higher weights at the beginning enable to have a better response of the compressor/decompressor, even If it doesn't still have enough data to compute a correct probability. Increasing the weights is helping the compression ratio at cold start.

Crinkler is also able to transform the x86 code for the executable part to improve compression ratio. This technique is widely used and consist of replacing relative jump (conditionnal, function calls...etc.) to absolute jump, leading to a better compression ratio.

Custom DLL LoadLibrary and PE file optimization


In order to strip down the size of an executable, It's necessary to exploit as much as possible the organization of a PE file.

First thing that crinkler is using is that lots of part in a PE files are not used at all. If you want to know how a windows executable PE files can be reduced, I suggest you read Tiny PE article, which is a good way to understand what is actually used by a PE loader. Unlike the Tiny PE sample, where the author is moving the PE header to the dos header, crinkler made the choice to use this unused place to store hash values that are used to reference DLL functions used.

This trick is called import by hashing and is quite common in intro's compressor. Probably what make crinkler a little bit more advanced is that to perform the "GetProcAddress" (which is responsible to get the pointer to a function from a function name), crinkler is navigating inside internal windows process structure in order to directly get the address of the functions from the in-memory import table. Indeed, you won't find any import section table in a crinklerized executable. Everything is re-discovered through internal windows structures. Those structures are not officially documented but you can find some valuable information around, most notably here.

If you look at crinkler's code stored in the crinkler import section, which is the code injected just before the intros start, in order to load all dll functions, you will find those cryptics calls like this:
//
(0) MOV EAX, FS:[BX+0x30]
(1) MOV EAX, [EAX+0xC]
(2) MOV EAX, [EAX+0xC]
(3) MOV EAX, [EAX]
(4) MOV EAX, [EAX]
(5) MOV EBP, [EAX+0x18]


This is done by going through internal structures:
  • (0) first crinklers gets a pointer to the "PROCESS ENVIRONMENT BLOCK (PEB)" with the instruction  MOV EAX, FS:[BX+0x30]. EAX is now pointing to the PEB 
Public Type PEB 
InheritedAddressSpace As Byte
ReadImageFileExecOptions As Byte
BeingDebugged As Byte
Spare As Byte
Mutant As Long
SectionBaseAddress As Long
ProcessModuleInfo As Long // <---- PEB_LDR_DATA
ProcessParameters As Long // RTL_USER_PROCESS_PARAMETERS
SubSystemData As Long
ProcessHeap As Long
... struct continue

  • (1) Then it gets a pointer to the "ProcessModuleInfo/PEB_LDR_DATA" MOV EAX, [EAX+0xC]
Public Type _PEB_LDR_DATA
Length As Integer
Initialized As Long
SsHandle As Long
InLoadOrderModuleList As LIST_ENTRY // <---- LIST_ENTRY InLoadOrderModuleList
InMemoryOrderModuleList As LIST_ENTRY
InInitOrderModuleList As LIST_ENTRY
EntryInProgress As Long
End Type

  • (2) Then it gets a pointer to get a pointer to the next "InLoadOrderModuleList/LIST_ENTRY" MOV EAX, [EAX+0xC].
Public Type LIST_ENTRY    Flink As LIST_ENTRY
Blink As LIST_ENTRY
End Type

  • (3) and (4) Then it navigates through the LIST_ENTRY linked list MOV EAX, [EAX]. This is done 2 times. First time, we get a pointer to the NTDLL.dll, second with get a pointer to the KERNEL.DLL. Each LIST_ENTRY is in fact followed by the structure LDR_MODULE :

Public Type LDR_MODULE
InLoadOrderModuleList As LIST_ENTRY
InMemoryOrderModuleList As LIST_ENTRY
InInitOrderModuleList As LIST_ENTRY
BaseAddress As Long
EntryPoint As Long
SizeOfImage As Long
FullDllName As UNICODE_STRING
BaseDllName As UNICODE_STRING
Flags As Long
LoadCount As Integer
TlsIndex As Integer
HashTableEntry As LIST_ENTRY
TimeDateStamp As Long
LoadedImports As Long
EntryActivationContext As Long ‘ // ACTIVATION_CONTEXT
PatchInformation As Long
End Type

Then from the BaseAddress of the Kernel.dll module, crinkler is going to the section where functions are already loaded in memory. From there, the first hashed function that is stored by crinkler is LoadLibrary function. After this, crinkler is able to load all the depend dll and navigate through the import tables, recomputing the hash for all functions names for dependent dlls, and is trying to match the hash stored in the PE header. If a match is found, then the function entry point is stored.

This way, crinkler is able to call some OS functions stored in the Kernel.DLL, without even linking explicitly to those DLL, as they are automatically loaded whenever a DLL is loaded. Thus achieving a way to import all functions used by an intro with a custom import loader.

Compression results


So finally, you may ask, how much crinkler is good at compressing? How does it compare to other compression method? How does look like the entropy in a crinklerized exe?

I'll take the example of Ergon exe. You can already find a detailed analysis for this particular exe.

Comparison with other compression methods


In order to make a fair comparison between crinkler and other compressors, I have used the data that are actually compressed by crinkler after the reordering of code and data (This is done by unpacking a crinklerized ergon.exe and extracting only the compressed data). This comparison is accurate in that all compressors are using exactly the same data.

In order also to be fair with crinkler, the size of 3652 is not taking into account the PE header + the crinkler decompressor code (which in total is 432 bytes for crinkler).

To perform this comparison, I have only used 7z which has at least 3 interesting methods to test against :
  • Standard Deflate Zip
  • PPMd with 256Mo of dictionary
  • LZMA with 256Mo of dictionary
I have also included a comparison with a more advanced packing method from Matt Mahoney resource, Paq8l which is one of the version of PAQ methods, using neural networks and several context modeling methods.

Program Compression Method Size in bytes Ratio vs Crinkler
none uncompressed 9796
crinkler ctx-model 256Mo 3652 +0,00%
7z deflate 32Ko 4526 +23,93%
7z PPMd 256Mo 4334 +18,67%
7z LZMA 256Mo 4380 +19,93%
Paq8l dyn-ctx-model 256Mo 3521 -3,59%

As you can see, crinkler is far more efficient than any of the "standard" compression method (Zip, PPMd, LZMA). I'm not even talking about the fact that a true comparison would be to include the decompressor size, so the ratio should certainly be worse for all standard methods!

Paq8l is of course slightly better... but if you take into account that Paq8l decompressor is itself an exe of 37Ko... compare to the 220 byte of crinkler... you should understand now how much crinkler is highly efficient in its own domain! (remember? 4k!)

Entropy


In order to measure the entropy of crinkler, I have developed a very small program in C# that is displaying the entropy of an exe. From green color (low entropy, less bits necessary to encode this information) to red color (high entropy, more bits necessary to encode this information).

I have done this on 3 different ergon executable :
  • The uncompressed ergon.exe (28Ko). It is the standard output of a binary exe with MSVC++ 2008.
  • The raw-crinklerized ergon.exe extracted code and data section, but not compressed (9796 bytes)
  • The final crinklerized ergon.exe file (4070 bytes)
Ergon standard exe entropy
Ergon code and data crinklerized, uncompressed reordered data
Ergon executable crinklerized
As expected, the entropy is fairly massive in a crinklerized exe. Compare with the waste of information in a standard windows executable. Also, you can appreciate how much is important the reordering and packing of data (no compression) that is perform by crinkler.

Some notes about the x86 crinkler decompressor asm code


I have often talked about how much crinkler decompressor is truly a piece of x86 art.  It is hard to describe the technique used here, there are lots of x86 standard optimization and some really nice trick. Most notably:
  1. using all the registers
  2. using intensively the stack to save/restore all the registers with pushad/popad x86. This is for example done (1 + number_of_model) per bit. If you have 15 models, there will be a total of 16 pushad/popad instructions for a single bit to be decoded! You may wonder why making so many pushes? Its the only way to efficiently use all the registers (rule #1) without having to store particular registers in a buffer. Of course, push/pop instruction is also used at several places in the code as well.
  3. As a result of 1) and 2), apart from the hash dictionnary, no intermediate structure are used to perform the context modeling calculation.
  4. Deferred conditional jump: Usually, when you perform some conditional testing with x86, this is often immediately followed by a conditional jump (like cmp eax, 0; jne go_for_bla). In crinkler, sometimes, a conditionnal test is done, and is used several instruction laters. (for example. cmp eax,0; push eax; mov eax, 5; jne go_for_bla <---- this is using the result of cmp eax,0 comparison). It makes the code to read a LOT harder. Sometimes, the conditional is even used after a direct jump! This is probably one part of crinkler's decompressor that impressed me the most. This is of course something quite common if you are programming heavily optimized-size x86 asm code... you need to know of course which instructions is not modifying CPU flags in order to achieve this kind of optimization!

Final words


I would like to apologize for the lack of charts, pictures to explain a little bit how things are working.  This article is probably still obscure for a casual reader, and should be considered as a draft version. This was a quick and dirty post. I wanted to write this for a long time, so here it is, not perfect as it should be, but this may be improved in future versions!

As you can see, crinkler is really worth to look at. The effort to make it so efficient is impressive and there is almost no doubt that there won't be any other crinkler competitor for a long time! At least for a 4k executable. Above 4k, I'm quite confident that there are still lots of area that could be improved, and probably kkrunchy is far from being the ultimate packer under 64k... Still, if you want a packer, you need to code it, and that's not so trivial!
          Democoding, tools coding and coding scattering   
Not so much post here for a while... So I'm going to just recap some of the coding work I have done so far... you will notice that It's going in lots of direction, depending on opportunities, ideas, sometimes not related to democoding at all... not really ideal when you want to release something! ;)

So, here are some directions I have been working so far...


C# and XNA

I tried to work more with C#, XNA... looking for an opportunity to code a demo in C#... I even started a post about it few months ago, but leaving it in a draft state. XNA is really great, but I had some bad experience with it... I was able to use it without requiring a full install but while playing with model loading, I had a weird bug called the black model bug. Anyway, I might come back to C# for DirectX stuff... SlimDx is for example really helpful for that.

A 4k/64k softsynth

I have coded a synth dedicated to 4k/64k coding. Although, right now, I only have the VST and GUI fully working under Renoise.. but not yet the asm 4k player! ;)



The main idea was to build a FM8/DX7 like synth, with exactly the same output quality (excluding some fancy stuff like the arpegiator...). The synth was developed in C# using vstnet, but must be more considered as a prototype under this language... because the asm code generated by the JIT is not really good when it comes to floating point calculation... anyway, It was really good to develop under this platform, being able to prototype the whole thing in few days (and of course, much more days to add rich GUI interaction!).

I still have to add a sound library file manager and the importer for DX7 patch..... Yes, you have read it... my main concern is to provide as much as possible a tons of ready-to-use patches for ulrick (our musician at FRequency)... Decoding the DX7 patch is well known around the net... but the more complex part was to make it decode like the FM8 does... and that was tricky... Right now, every transform functions are in an excel spreadsheet, but I have to code it in C# now!

You may wonder why developing the synth in C# if the main target is to code the player in x86 asm? Well, for practical reasons : I needed to quickly experiment the versatility of the sounds of this synth and I'm much more familiar with .NET winform to easily build some complex GUI. Although, I have done the whole synth with 4k limitation in mind... especially about data representation and complexity of the player routine.

For example, for the 4k mode of this synth, waveforms are strictly restricted to only one : sin! No noise, no sawtooth, no square... what? A synth without those waveform?.... but yeah.... When I looked back at DX7 synth implem, I realized that they were using only a pure "sin"... but with the complex FM routing mechanism + the feedback on the operators, the DX7 is able to produce a large variety of sounds ranging from strings, bells, bass... to drumkits, and so on...

I did also a couple of effects, mainly a versatile variable delay line to implement Chorus/Flanger/Reverb.

So basically, I should end up with a synth with two modes :
- 4k mode : only 6 oscillators per instrument, only sin oscillators, simple ADSR envelope, full FM8 like routing for operators, fixed key scaling/velocity scaling/envelope scaling. Effects per instrument/global with a minimum delay line + optional filters. and last but not least, polyphony : that's probably the thing I miss the most in 4k synth nowadays...
- 64k mode : up to 8 oscillators per instrument, all FM8 oscillators+filters+WaveShaping+RingModulation operators, 64 steps FM8's like envelope, dynamic key scaling/velocity scaling/envelope scaling. More effects, with better quality, 2 effect //+serial line per instrument. Additional effects channel to route instrument to the same effects chain. Modulation matrix.

The 4k mode is in fact restricting the use of the 64k mode, more at the GUI level. I'm currently targeting only the 4k mode, while designing the synth to make it ready to support 64k mode features.

What's next? Well, finish the C# part (file manager and dx7 import) and starting the x86 asm player... I just hope to be under 700 compressed byte for the 4k player (while the 64k mode will be written in C++, with an easier limitation around 5Ko of compressed code) .... but hey, until It's not coded... It's pure speculation!.... And as you can see, the journey is far from finished! ;)

Context modeling Compression update

During this summer, I came back to my compression experiment I did last year... The current status is quite pending... The compressor is quite good, sometimes better than crinkler for 4k... but the prototype of the decompressor (not working, not tested....) is taking more than 100 byte than crinkler... So in the end, I know that I would be off more than 30 to 100 byte compared to crinkler... and this is not motivating me to finish the decompressor and to get it really running.

The basic idea was to take the standard context modeling approach from Matt Mahoney (also known as PAQ compression, Matt did a fantastic job with his research, open source compressor....by the way), using dynamic neural network with an order of 8 (8 byte context history), with the same mask selection approach than crinkler + some new context filtering at the bit level... In the end, the decompressor is using the FPU to decode the whole thing... as it needs ln2() and pow2() functions... So during the summer, I though using another logistic activation function to get rid of the FPU : the standard sigmoid used in the neural network with a base 2 is 1/(1+2^-x)), so I found something similar with y = (x / (1 + |x|) + 1) /2 from David Elliot (some references here). I didn't have any computer at this time to test it, so I spent few days to put some math optimization on it, while calculating the logit function (the inverse of this logistic function).

I came back to home very excited to test this method... but I was really disappointed... the function had a very bad impact on compression ratio by a factor of 20%, in the end, completely useless!

If by next year, I'm not able to release anything from this.... I will put all this work open source, at least for educational purposes... someone will certainly be clever than me on this and tweak the code size down!

SlimDx DirectX wrapper's like in C++

Recall that for the ergon intro, I have been working with a very thin layer around DirectX to wrap enums/interfaces/structures/functions. I did that around D3D10, a bit of D3D11, and a bit of D3D9 (which was the one I used for ergon). The goal was to achieve a DirectX C# like interface in C++. While the code has been coded almost entirely manually, I was wondering If I could not generate It directly from DirectX header files...

So for the last few days, I have been a bit working on this... I'm using boost::wave as the preprocessor library... and I have to admit that the C++ guy from boost lost their mind with templates... It's amazing how they did something simple so complex with templates... I wanted to use this under a C++/Cli managed .NET extension to ease my development in C#, but I end up with a template error at link stage... an incredible error with a line full of concatenated template, even freezing visual studio when I wanted to see the errors in the error list!

Template are really nice, when they are used not too intensively... but when everything is templatized in your code, It's becoming very hard to use fluently a library and It's sometimes impossible to understand the template error, when this error is more than 100 lines full of cascading template types!

Anyway, I was able to plug this boost::wave in a native dll, and calling it from a C# library... next step is to see how much I can get from DirectX header files to extract a form of IDL (Interface Definition Language). If I cannot get something relevant in the next week, I might postpone this task when I won't have anything more important to do! The good thing is for example for D3D11 headers, you can see that those files were auto-generated from a mysterious... d3d11.idl file...used internally at Microsoft (although It would have been easier to get directly this file!)... so It means that the whole header is quite easy to parse, as the syntax is quite systematic.

Ok, this is probably not linked to intros... or probably only for 64k.... and I'm not sure I will be able to finish it (much like rmasm)... And this kind of work is keeping me away from directly working with DirectX, experimenting rendering techniques and so on... Well, I have to admit also that I have been more attracted for the past few years to do some tools to enhance coding productivity (not necessary only mine)... I don't like to do too much things manually.... so everytime there is an opportunity to automatize a process, I can't refrain me to make it automatic! :D


AsmHighlighter and NShader next update

Following my bad appetite for tools, I need to make some update to AsmHighlighter and NShader, to add some missing keywords, patch a bug, support for new VS2010 version... whatever... When you release this kind of open source project, well, you have to maintain them, even if you don't use them too much... because other people are using them, and are asking for improvements... that's the other side of the picture...

So because I have to maintain those 2 projects, and they are in fact sharing logically more than 95% of the same code, I have decided to merge them into a single one... that will be available soon under codeplex as well. That will be easier to maintain, ending with only one project to update.


The main features people are asking is to be able to add some keywords easily and to map file extensions to the syntax highlighting system... So I'm going to generalize the design of the two project to make them more configurable... hopefully, this will cover the main features request...

An application for Windows Phone 7... meh?

Yep... I have to admit that I'm really excited by the upcoming Windows Phone 7 metro interface... I'm quite fed up with my iPhone look and feel... and because the development environment is so easy with C#, I have decided to code an application for it. I'm starting with a chromatic tuner for guitar/piano/violins...etc. and it's working quite well, even if I was able to test it only under the emulator. While developing this application, I have learned some cool things about pitch detection algorithm and so on...

I hope to finish the application around september, and to be able to test it with a real hardware when WP7 will be offcialy launched... and before puting this application on the windows marketplace.

If this is working well, I would study to develop other applications, like porting the softsynth I did in C# to this platform... We will see... and definitely, this last part is completely unrelated to democoding!


What's next?

Well, I have to prioritize my work for the next months:
  1. Merge AsmHighlighter and NShader into a single project.
  2. Play a bit for one week with DirectX headers to see if I could extract some IDL's like information
  3. Finish the 4k mode of the softsynth... and develop the x86 asm player
  4. Finish the WP7 application
I still have also an article to write about ergon's making of, not much to say about it, but It could be interesting to write down on a paper those things....

I need also to work on some new directX effects... I have played a bit with hardware instantiating, compute shaders (with a raymarching with global illumination for a 4k procedural compo that didn't make it to BP2010, because the results were not enough impressive, and too slow to calculate...)... I would really want to explore more about SSAO things with plain polygons... but I didn't take time for that... so yep, practicing more graphics coding should be on my top list... instead of all those time consuming and - sometimes useful - tools!
          Machine Leaning Specialist​   
CA-Santa Clara, Machine Leaning Specialist​ ​Location: Santa Clara, CA 3 - 6 month contract to hire embedded (Raspberry Pi) experience is a huge plus. Most importantly is the experience in computer vision, deep neural networks Experience developing applications utilizing Artificial Intelligence, Computer Vision, Machine Learning, Image Processing, and/or Computer Graphics Experience with mobile device management,
          深層学習のコアライブラリー、ソニーが無償公開   
ソニーは、ディープラーニング(深層学習)のプログラムを生成するためのソフトウェアであるコアライブラリー「Neural Network Libraries」を無償で公開した。
          (USA-WA-Seattle) Applied Scientist   
Seeking Applied Researchers to build the future of the Alexa Shopping Experience at Amazon. At Alexa Shopping, we strive to enable shopping in everyday life. We allow customers to instantly order whatever they need, by simply interacting with their smart devices such as Echo, Fire TV, and beyond. Our services allow you to shop, anywhere, easily without interrupting what you’re doing – to go from “I want” to “It’s on the way” in a matter of seconds. We are seeking the industry's best applied scientists to help us create new ways to shop. Join us, and help invent the future of everyday life. The products you would envision and craft require ambitious thinking and a tireless focus on inventing solution to solve customer problems. You must be passionate about creating algorithms and models that can scale to hundreds of millions of customers, and insanely curious about building new technology and unlocking its potential. The Alexa Shopping team is seeking an Applied Scientist who will partner with technology and business leaders to build new state-of-the-art algorithms, models and services that surprise and delight our voice customers. As part of the new Alexa Shopping team you will use ML techniques such as deep learning to create and put into production models that deliver personalized shopping recommendations, allow to answer customer questions and enable human-like dialogs with our devices. The ideal candidate will have a PhD in Mathematics, Statistics, Machine Learning, Economics, or a related quantitative field, and 5+ years of relevant work experience, including: · Proven track record of achievements in natural language processing, search and personalization. · Expertize on a broad set of ML approaches and techniques, ranging from Artificial Neural Networks to Bayesian Non-Parametrics methods. · Experience in Structured Prediction and Dimensionality Reduction. · Strong fundamentals in problem solving, algorithm design and complexity analysis. · Proficiency in at least one scripting languages (e.g. Python) and one large-scale data processing platform (e.g. Hadoop, Hive, Spark). · Experience with using could technologies (e.g. S3, Dynamo DB, Elastic Search) and experience in data warehousing. · Strong personal interest in learning, researching, and creating new technologies with high commercial impact. + · Track record of peer reviewed academic publications. · Strong verbal/written communication skills, including an ability to effectively collaborate with both research and technical teams and earn the trust of senior stakeholders. AMZR Req ID: 551723 External Company URL: www.amazon.com
          Avigilon Expands Video Analytics with Face and Vehicle Search   
PRZOOM - Newswire (press release) - 2017/03/22, Vancouver, British Columbia Canada - Avigilon adds face and vehicle search to its advanced neural network AI technology - Avigilon.com
          What’s Next In Neural Networking?   

Technology begins to twist in different directions and for different markets.

The post What’s Next In Neural Networking? appeared first on Semiconductor Engineering.


          Convolutional Neural Networks Power Ahead   

Adoption of this machine learning approach grows for image recognition; other applications require power and performance improvements.

The post Convolutional Neural Networks Power Ahead appeared first on Semiconductor Engineering.


          Robots Podcast #177: Kurosh Madani   

photo of Kurosh Madani

In episode 177, interviewer Audrow Nash speaks with Kurosh Madani, Chair Professor in Electrical Engineering, Senart-FB Institute of Technology, and co-founder of the Images, Signals, and Intelligent Systems Laboratory (LISSI), Univeristy Paris-EST Créteil (UPEC). They discuss neural networks and their potential applications.

Read On | Tune In


          (USA-FL-Tampa) Senior Modeling Analyst   
Purpose of Job IMPORTANT: Applicants – When filling out your name and other personal information below, DO NOT USE ALL CAPS or any special characters. Use only standard letters in the English alphabet. Including special characters or all uppercase letters will cause errors in your application. We are currently seeking talented Senior Modeling Analyst (AML) for our Phoenix, AZ or San Antonio, TX facility. The ideal candidate for this position has experience creating, tuning and monitoring models designed to monitor transactions and Anti-Money Laundering customer risk within mid to large size financial institutions. This position requires performing duties within a highly regulated anti-money laundering or financial crimes team and within the financial institutions model governance policy. Teamwork and communication with business partners are essential to team success. Develop and analyze data to predict business results or member behavior. Expert knowledge in statistics, mathematics, and tools used in predictive modeling. Partner cross-functionally with business to deliver breakthrough analytical solutions to support a winning strategy in a continually changing business environment. Job Requirements * Lead the development, enhancement and implementation of statistical and other quantitative models to support forecasting, member behavior-based scoring and other business applications. * Understand technical issues in econometric and statistical modeling and apply these skills toward solving business problems. Identify opportunities to apply quantitative methods to improve business performance. * Full ownership of the model development process and relationship with the business customer: from conceptualization through data exploration, model selection and validation, implementation, business user training and support. * Strong understanding of the model lifecycle management process with ability to identify gaps and opportunities for improvement in business applications. * Develop model monitoring plan, monitor statistical model performance, and provide technical guidance to business leadership. * Communicate technical subject matter clearly and concisely to individuals from various backgrounds. * Communicate technical subject matter clearly and concisely to individuals from various backgrounds. *Minimum Requirements* * 6+ years related work experience in statistical analysis and model development Or If a Master's Degree, 4+ years related experience in statistical model development Or If a Ph.D.,3+ years related experience in statistical model development * Advanced knowledge of data analysis tools and industry data sources * Expert knowledge in developing analysis queries and procedures in SQL, SAS, BI tools or other analysis software * Expert knowledge in several statistical techniques (Generalized linear modeling, Time Series, CART, Decision Trees, Neural Networks, Factor analysis experimental design, hypothesis testing, and/or advance techniques). * Bachelor's degree in Statistics, Economics, Engineering, Mathematics, Actuarial Sciences or related field OR A Master's Degree in Statistics, Economics, Engineering, Mathematics, Actuarial Sciences or related field OR A PhD in Statistics, Economics, Engineering, Mathematics, Actuarial Sciences or related field. *Preferred* * Direct modeling experience related to Anti-Money Laundering or Financial Crimes typologies * Experience managing model throughout the model’s lifecycle within a financial institutions model governance policy * Experience with models related to Actimize or comparable vendor risk monitoring tools * Experience in categorical data analysis * Direct experience analyzing and identifying patterns, trends, and insights within data * Experience in analyzing customer, transactional, and financial product data in databases such as Oracle, SQL Server * Experience partnering with IT to deploy results of analysis into production *Knowledge/Skills/Attributes* Business Acumen; Collaboration (Team Building); Communication; Demonstrate Adaptability (Agility); Drive for Results; Innovation. The above description reflects the details considered necessary to describe the principal functions of the job and should not be construed as a detailed description of all the work requirements that may be performed in the job. At USAA our employees enjoy one of the best benefits packages in the business, including a flexible business casual or casual dress environment, comprehensive medical, dental and vision plans, along with wellness and wealth building programs. Additionally, our career path planning and continuing education will assist you with your professional goals. *Relocation* assistance is *not* *available* for this position. *Senior Modeling Analyst* *FL-Tampa* *R0010015*
          (USA-AZ-Phoenix) Lead Modeling Analyst   
Purpose of Job IMPORTANT: External Applicants – When filling out your name and other personal information below, DO NOT USE ALL CAPS or any special characters. Use only standard letters in the English alphabet. Including special characters or all uppercase letters will cause errors in your application. We are currently seeking talented Lead Modeling Analyst (AML) for our Phoenix, AZ or San Antonio, TX facility. The ideal candidate for this position has experience creating, tuning and monitoring models designed to monitor transactions and Anti-Money Laundering customer risk within mid to large size financial institutions. This position requires performing duties within a highly regulated anti-money laundering or financial crimes team and within the financial institutions model governance policy. Teamwork and communication with business partners are essential to team success. Develop and analyze data to predict business results or member behavior. Expert knowledge in statistics, mathematics, and tools used in predictive modeling. Partner cross-functionally with business to deliver breakthrough analytical solutions to support a winning strategy in a continually changing business environment. Job Requirements * Lead the development, enhancement and implementation of statistical and other quantitative models to support forecasting, member behavior-based scoring and other business applications. * Understand technical issues in econometric and statistical modeling and apply these skills toward solving business problems. Identify opportunities to apply quantitative methods to improve business performance. * Full ownership of the model development process and relationship with the business customer: from conceptualization through data exploration, model selection and validation, implementation, business user training and support. * Strong understanding of the model lifecycle management process with ability to identify gaps and opportunities for improvement in business applications. * Develop model monitoring plan, monitor statistical model performance, and provide technical guidance to business leadership. * Communicate technical subject matter clearly and concisely to individuals from various backgrounds. * Communicate technical subject matter clearly and concisely to individuals from various backgrounds. *Minimum Requirements* * 6+ years related work experience in statistical analysis and model development Or If a Master's Degree, 4+ years related experience in statistical model development Or If a Ph.D.,3+ years related experience in statistical model development * Advanced knowledge of data analysis tools and industry data sources * Expert knowledge in developing analysis queries and procedures in SQL, SAS, BI tools or other analysis software * Expert knowledge in several statistical techniques (Generalized linear modeling, Time Series, CART, Decision Trees, Neural Networks, Factor analysis experimental design, hypothesis testing, and/or advance techniques). * Bachelor's degree in Statistics, Economics, Engineering, Mathematics, Actuarial Sciences or related field OR A Master's Degree in Statistics, Economics, Engineering, Mathematics, Actuarial Sciences or related field OR A PhD in Statistics, Economics, Engineering, Mathematics, Actuarial Sciences or related field. *Qualifications may warrant placement in a different job level.* When you apply for this position, you will be required to answer some initial questions. This will take approximately 5 minutes. Once you begin the questions you will not be able to finish them at a later time and you will not be able to change your responses. *Preferred* * 2 or more years of modeling experience related to Anti-Money Laundering or Financial Crimes typologies * Deep experience managing model throughout the model’s lifecycle within a financial institutions model governance policy * Experience with models related to Actimize or comparable vendor risk monitoring tools * Direct Experience reviewing and validating the model development work of others * Experience presenting model methodologies to Executives, Auditors and Examiners * Experience in developing insights from data, and building dashboards for business to consume * Direct experience reviewing and validating statistical analysis performed by others to establish scenario or rules parameters. Communicate the implications of scenario parameter choices to the appropriate stakeholders * Experience in categorical data analysis * Experience in analyzing customer, transactional, and financial product data in databases such as Oracle, * SQL Server * Experience partnering with IT to deploy results of analysis into production *Knowledge/Skills/Attributes* Business Acumen; Collaboration (Team Building); Communication; Demonstrate Adaptability (Agility); Drive for Results; Innovation. The above description reflects the details considered necessary to describe the principal functions of the job and should not be construed as a detailed description of all the work requirements that may be performed in the job. At USAA our employees enjoy one of the best benefits packages in the business, including a flexible business casual or casual dress environment, comprehensive medical, dental and vision plans, along with wellness and wealth building programs. Additionally, our career path planning and continuing education will assist you with your professional goals. *Relocation* assistance is *not* *available* for this position. *For Internal Candidates:* Must complete 12 months in current position (from date of hire or date of placement), or must have manager’s approval prior to posting. *Last day for internal candidates* *to apply to the opening is 5/03/17 by 11:59 pm CST time.* *Lead Modeling Analyst* *AZ-Phoenix* *R0010014*
          What about Neural Networks?   
Reply #7
Computers probably win all at chess, go and other games. I can draw many charts from drawings, many more than I can read an try to get something out of it. Commercial programs are made to be sold, they work fast, cut edges, limit depth, look good and so on. I experienced false results with my home program when I surfed on Internet, therefore I restart the pc before using it. I'm not a pro, and when I tested databases with so called good reputation, the speed sucked. You would just step back to a... [ More ]
[ 761 views ]
          Brain on a Chip   
Full Title: 
The Brain on a Chip: The Future of Neural Experimentation
Presenter: 
Jackson, Max
When: 
2 Oct 2013 - 19:00 - 20:30
Venue: 
Taste
Where: 
Taste
Street:
717 W. Smith Street
City:
Orlando
,
Province:
Florida
Postal Code:
32804
Country:
United States

Advances in cell culture technology have enabled researchers to grow neural material outside of the brain. This neural material can be shaped into neural networks through chemical patterning techniques, networks which can be grown on electrode grids called Micro Electrode Arrays. These networks can then be used as drug testing beds and as research tools to explore plasticity with a high degree of finesse and granularity. The techniques provide important opportunities to move away from the practical and moral challenges associated with human and animal models in neuroscience research.

Max Jackson is a masters student in BioTechnology at the University of Central Florida where he focuses his research on neural-machine interfacing. He is President of the UCF Synthetic Biology Club, and the Graduate President of the Central Florida Society for Neuroscience. Prior to graduate school, Max worked for a mobile-learning application development company. He enjoys reading the classics and philosophy literature in his free time.


          Tell me about your thesis   
Today Leo Browning, a PhD Candidate with the MacDiarmid Institute tells us about his thesis whihc involves manipulating nano-wires to make neural networks that behave like living neurons.
          Delphi Facial Recognition (Pengenalan Wajah)   

  1. image processing - Delphi Components for Face Identification and ...

    stackoverflow.com/.../delphi-compo... - Terjemahkan laman ini
    2 jawaban - 10 Jan 2009
    Delphi Components for Face Identification and Tagging ... use Delphi 2009) that will allow me to easily implement face detection and tagging of ...
  2. Free delphi face recognition component Download - Delphi face ...

    softwaretopic.informer.com/delphi-f... - Terjemahkan laman ini
    Free download delphi face recognition component Files at Software Informer - Rohos Face Logon is designed to add authentication convenience and additional ...
  3. Delphi Facial Recognition System

    delphi.com › ... › Safety and Security - Terjemahkan laman ini
    Delphi Facial Recognition System information about safety and security technology for license.
  4. Face recognition dengan menggunakan webcam - Digital Collection ...

    dewey.petra.ac.id/jiunkpe_dg_1371.html
    adalah finger recognition, voice recognition, iris recognition, face recognition, dan lain- lain. ... menggunakan bahasa pemrograman Borland Delphi 5.0.
  5. A Non-linear Supervised ANN Algorithm for Face Recognition Model ...

    www.researchgate.net/.../228098166... - Terjemahkan laman ini
    3 Jul 2012 – A Non-linear Supervised ANN Algorithm for Face Recognition Model UsingDelphi Languages. Mahmood K Jasim, Ahmad Fouad Alwan, A M A ...
  6. Delphi Face Recognition Component - Free Software Download

    www.sharewareconnection.com/soft... - Terjemahkan laman ini
    Face recognition using BPNN. Contains 1.Face recognition using Back propagation neural network (customize code) code using matlab. 2. Face recognition ...
  7. Delphi develops automotive facial recognition system ...

    www.biometricupdate.com/.../delphi... - Terjemahkan laman ini
    7 Jan 2013 – Delphi has created a facial recognition system for cars which reduces strain on the computer's processing power and that the company says ...
  8. Face recognition - Advanced Delphi - Forums at ProgrammersHeaven.com

    www.programmersheaven.com/.../A... - Terjemahkan laman ini
    4 pesan - 4 penulis - 6 Des 2004
    Face recognition: Anyone ever create a face recognition program using a Delphi? I just need a sample program that can give a result 'i', if we ...
  9. The Delphi Geek: Open source Computer Vision library

    www.thedelphigeek.com/.../open-so... - Terjemahkan laman ini
    17 Okt 2009 – random ramblings on Delphi, programming, Delphi programming, and all... Here is an example in Delphi about face recognition with opencv ...
  10. Face Recognition at Delphi Software Informer

    delphi2.software.informer.com/dow... - Terjemahkan laman iniBagikan
    Download Delphi Face Recognition at Delphi Informer: Luxand FaceSDK, NJStar Chinese Pen, FaceCode.

          How Artificial Intelligence Will Change Medical Imaging   
AI, deep learning, artificial intelligence, medical imaging, cardiology, echo AI, clinical decision support, echocardiography

An example of artificial intelligence from the start-up company Viz. The image shows how the AI software automatically reviews an echocardiogram, completes an automated left ventricular ejection fraction quantification and then presents the data side by side with the original cardiology report. The goal of the software is to augment clinicians and cardiologists by helping them speed workflow, act as a second set of eyes and aid clinical decision support.

An example of how Agfa is integrating IBM Watson into its radiology workflow. Watson reviewed the X-ray images and the image order and determined the patient had lung cancer and a cardiac history and pulled in the relevant prior exams, sections of the patient history, cardiology and oncology department information. It also pulled in recent lab values, current drugs being taken. This allows for a more complete view of the patient's condition and may aid in diagnosis or determining the next step in care.  

Artificial intelligence (AI) has captured the imagination and attention of doctors over the past couple years as several companies and large research hospitals work to perfect these systems for clinical use. The first concrete examples of how AI (also called deep learning, machine learning or artificial neural networks) will help clinicians are now being commercialized. These systems may offer a paradigm shift in how clinicians work in an effort to significantly boost workflow efficiency, while at the same time improving care and patient throughput. 

Today, one of the biggest problems facing physicians and clinicians in general is the overload of too much patient information to sift through. This rapid accumulation of electronic data is thanks to the advent of electronic medical records (EMRs) and the capture of all sorts of data about a patient that was not previously recorded, or at least not easily data mined. This includes imaging data, exam and procedure reports, lab values, pathology reports, waveforms, data automatically downloaded from implantable electrophysiology devices, data transferred from the imaging and diagnostics systems themselves, as well as the information entered in the EMR, admission, discharge and transfer (ADT), hospital information system (HIS) and billing software. In the next couple years there will be a further data explosion with the use of bidirectional patient portals, where patients can upload their own data and images to their EMRs. This will include images shot with their phones of things like wound site healing to reduce the need for in-person follow-up office visits. It also will include medication compliance tracking, blood pressure and weight logs, blood sugar, anticoagulant INR and other home monitoring test results, and activity tracking from apps, wearables and the evolving Internet of things (IoT) to aid in keeping patients healthy.

Physicians liken all this data to drinking from a firehose because it is overwhelming. Many say it is very difficult or impossible to go through the large volumes of data to pick out what is clinically relevant or actionable. It is easy for things to fall through the cracks or for things to be lost to patient follow-up. This issue is further compounded when you add factors like increasing patient volumes, lower reimbursements, bundled payments and the conversion from fee-for-service to a fee-for-value reimbursement system. 

This is where artificial intelligence will play a key role in the next couple years. AI will not be diagnosing patients and replacing doctors — it will be augmenting their ability to find the key, relevant data they need to care for a patient and present it in a concise, easily digestible format. When a radiologist calls up a chest computed tomography (CT) scan to read, the AI will review the image and identify potential findings immediately — from the image and also by combing through the patient history  related to the particular anatomy scanned. If the exam order is for chest pain, the AI system will call up:

  • All the relevant data and prior exams specific to prior cardiac history;
  • Pharmacy information regarding drugs specific to COPD, heart failure, coronary disease and anticoagulants;
  • Prior imaging exams from any modality of the chest that may aid in diagnosis;
  • Prior reports for that imaging;
  • Prior thoracic or cardiac procedures;
  • Recent lab results; and
  • Any pathology reports that relate to specimens collected from the thorax.

Patient history from prior reports or the EMR that may be relevant to potential causes of chest pain will also be collected by the AI and displayed in brief with links to the full information (such as history of aortic aneurism, high blood pressure, coronary blockages, history of smoking, prior pulmonary embolism, cancer, implantable devices or deep vein thrombosis). This information would otherwise would take too long to collect, or its existence might not be known, by the physician so they would not have spent time looking for it.   

Watch the VIDEO “Examples of Artificial Intelligence in Medical Imaging Diagnostics.” This shows an example of how AI can assess aortic dissection CT images.
 

Watch the VIDEO “Development of Artificial Intelligence to Aid Radiology,” an interview with Mark Michalski, M.D., director of the Center for Clinical Data Science at Massachusetts General Hospital, explaining the basis of artificial intelligence in radiology.

At the 2017 Health Information and Management Systems Society (HIMSS) annual conference in February, several vendors showed some of the first concrete examples of how this type of AI works. IBM/Merge, Philips, Agfa and Siemens have already started integrating AI into their medical imaging software systems. GE showed predictive analytics software using elements of AI for the impact on imaging departments when someone calls in sick, or if patient volumes increase. Vital showed a similar work-in-progress predictive analytics software for imaging equipment utilization. Others, including several analytics companies and startups, showed software that uses AI to quickly sift through massive amounts of big data or offer immediate clinical decision support for appropriate use criteria, the best test or imaging to make a diagnosis or even offer differential diagnoses.  

Philips uses AI as a component of its new Illumeo software with adaptive intelligence, which automatically pulls in related prior exams for radiology. The user can click on an area of the anatomy in a specific MPI view, and AI will find and open prior imaging studies to show the same anatomy, slice and orientation. For oncology imaging, with a couple clicks on the tumor in the image, the AI will perform an automated quantification and then perform the same measures on the priors, presenting a side-by-side comparison of the tumor assessment. This can significantly reduce the time involved with tumor tracking assessment and speed workflow.  

Read the blog about AI at HIMSS 2017 "Two Technologies That Offer a Paradigm Shift in Medicine at HIMSS 2017."

 

AI is Elementary to Watson

IBM Watson has been cited for the past few years as being in the forefront of medical AI, but has yet to commercialize the technology. Some of the first versions of work-in-progress software were shown at HIMSS by partner vendors Agfa and Siemens. Agfa showed an impressive example of how the technology works. A digital radiography (DR) chest X-ray exam was called up and Watson reviewed the image and determined the patient had small-cell lung cancer and evidence of both lung and heart surgery. Watson then searched the picture archiving and communication system (PACS), EMR and departmental reporting systems to bring in:

  • Prior chest imaging studies;
  • Cardiology report information;
  • Medications the patient is currently taking;
  • Patient history relevant to them having COPD and a history of smoking that might relate to their current exam;
  • Recent lab reports;
  • Oncology patient encounters including chemotherapy; and
  • Radiation therapy treatments.

When the radiologist opens the study, all this information is presented in a concise format and greatly enhances the picture of this patient’s health. Agfa said the goal is to improve the radiologist’s understanding of the patient to improve the diagnosis, therapies and resulting patient outcomes without adding more burden on the clinician. 

IBM purchased Merge Healthcare in 2015 for $1 billion, partly to get an established foothold in the medical IT market. However, the purchase also gave Watson millions of radiology studies and a vast amount of existing medical record data to help train the AI in evaluating patient data and get better at reading imaging exams. IBM Watson is now licensing its software through third-party agreements with other health IT vendors. The contracts stipulate that each vendor needs to add additional value to Watson with their own programming, not just become a reseller. Probably the most important stipulation of these new contracts is that vendors also are required to share access to all the patient data and imaging studies they have access to. This allows Watson to continue to hone its clinical intelligence with millions of new patient records.  
 

The Basics of Machine Learning

Access to vast quantities of patient data and images is needed to feed the AI software algorithms educational materials to learn from. Sorting through massive amounts of big data is a major component of how AI learns what is important for clinicians, what data elements are related to various disease states and gains clinical understanding. It is a similar process to medical students learning the ropes, but uses much more educational input than what is comprehensible by humans. The first step in machine learning software is for it to ingest medical textbooks and care guidelines and then review examples of clinical cases. Unlike human students, the number of cases AI uses to learn numbers in the millions. 

For cases where the AI did not accurately determine the disease state or found incorrect or irrelevant data, software programers go back and refine the AI algorithm iteration after iteration until the AI software gets it right in the majority of cases. In medicine, there are so many variables it is difficult to always arrive at the correct diagnosis for people or machines. However, percentage wise, experts now say AI software reading medical imaging studies can often match, or in some cases, outperform human radiologists. This is especially true for rare diseases or presentations, where a radiologist might only see a handful of such cases during their entire career. AI has the advantage of reviewing hundreds or even thousands of these rare studies from archives to become proficient at reading them and identify a proper diagnosis. Also, unlike the human mind, it always remains fresh in the computer’s mind. 

AI algorithms read medical images similar to radiologists, by identifying patterns. AI systems are trained using vast numbers of exams to determine what normal anatomy looks like on scans from CT, magnetic resonance imaging (MRI), ultrasound or nuclear imaging. Then abnormal cases are used to train the eye of the AI system to identify anomalies, similar to computer-aided detection software (CAD). However, unlike CAD, which just highlights areas a radiologist may want to take a closer look at, AI software has a more analytical cognitive ability based on much more clinical data and reading experience that previous generations of CAD software. For this reason, experts who are helping develop AI for medicine often refer to the cognitive ability as “CAD that works.”

   

AI All Around Us and the Next Step in Radiology

Deep learning computers are already driving cars, monitoring financial data for theft, able to translate languages and recognize people’s moods based on facial recognition, said Keith Dreyer, DO, Ph.D., vice chairman of radiology computing and information sciences at Massachusetts General Hospital, Boston. He was among the key speakers at the opening session of the 2016 Radiological Society of North America (RSNA) meeting in November, where he discussed AI’s entry into medical imaging. He is also in charge of his institution’s development of its own AI system to assist physicians at Mass General. 

“The data science revolution started about five years ago with the advent of IBM Watson and Google Brain,” Dreyer explained. He said the 2012 introduction of deep learning algorithms really pushed AI forward and by 2014 the scales began to tip in terms of machines reading radiology studies correctly, reaching around 95 percent accuracy.

Dreyer said AI software for imaging is not new, as most people already use it on Facebook to automatically tag friends the platform identities using facial recognition algorithms. He said training AI is a similar concept, where you can start with showing a computer photos of cats and dogs and it can be trained to determine the difference after enough images are used. 

AI requires big data, massive computing power, powerful algorithms, broad investments and then a lot of translation and integration from a programming standpoint before it can be commercialized, Dreyer said. 

From a radiology standpoint, he said there are two types of AI. The first type that is already starting to see U.S. Food and Drug Administration approval is for quantification AI, which only requires a 510(k) approval. AI developed for clinical interpretation will require FDA pre-market approval (PMA), which involves clinical trials.

Before machines start conducting primary or peer review reads, Dreyer said it is much more likely AI will be used to read old exams retrospectively to help hospitals find new patients for conditions the patient may not realize they have. He said about 9 million Americans qualify for low-dose CT scans to screen them for lung cancer. He said AI can be trained to search through all the prior chest CT exams on record in the health system to help identify patients that may have lung cancer. This type of retrospective screening may apply to other disease states as well, especially if the AI can pull in genomic testing results to narrow the review to patients who are predisposed to some diseases. 

He said overall, AI offers a major opportunity to enhance and augment radiology reading, not to replace radiologists. 

“We are focused on talking into a microphone and we are ignoring all this other data that is out there in the patient record,” Dreyer said. “We need to look at the imaging as just another source of data for the patient.” He said AI can help automate qualification and quickly pull out related patient data from the EMR that will aid diagnosis or the understanding of a patient’s condition.  

Watch a VIDEO interview with Eliot L. Siegel, M.D., Dwyer Lecturer; Closing Keynote Speaker, Vice Chair of Radiology at the University of Maryland and the Chief of Radiology for VA Maryland Healthcare System, talks about the current state of the industry in computer-aided detection and diagnosis at SIIM 2016. 

Read the blog “How Intelligent Machines Could Make a Difference in Radiology.”


          Researchers Develop "Value-Aware" SSD OPtimized For Image Recognition Systems   
.textsize { font-size: small;}Japanese researchers at Chuo University developed an SSD (solid state drive) that combines new data-aware techniques with deep neural network's error tolerance, making it well-suited for deep learning-based image recognition applications.
          分分钟带你杀入Kaggle Top 1%   

分分钟带你杀入Kaggle Top 1%

作者:吴晓晖

不知道你有没有这样的感受,在刚刚入门机器学习的时候,我们一般都是从MNIST、CIFAR-10这一类知名公开数据集开始快速上手,复现别人的结果,但总觉得过于简单,给人的感觉太不真实。因为这些数据太“完美”了(干净的输入,均衡的类别,分布基本一致的测试集,还有大量现成的参考模型),要成为真正的数据科学家,光在这些数据集上跑模型却是远远不够的。而现实中你几乎不可能遇到这样的数据(现实数据往往有着残缺的输入,类别严重不均衡,分布不一致甚至随时变动的测试集,几乎没有可以参考的论文),这往往让刚进入工作的同学手忙脚乱,无所适从。

Kaggle则提供了一个介于“完美”与真实之间的过渡,问题的定义基本良好,却夹着或多或少的难点,一般没有完全成熟的解决方案。在参赛过程中与论坛上的其他参赛者互动,能不断地获得启发,受益良多。即使对于一些学有所成的高手乃至大牛,参加Kaggle也常常会获得很多启发,与来着世界各地的队伍进行厮杀的刺激更让人欲罢不能。更重要的是,Kaggle是业界普遍承认的竞赛平台,能从Kaggle上的一些高质量竞赛获取好名次,是对自己实力极好的证明,还能给自己的履历添上光辉的一笔。如果能获得金牌,杀入奖金池,那更是名利兼收,再好不过。

Kaggle适用于以下人群:

我是小白,但是对数据科学充满求知欲。 我想要历练自己的数据挖掘和机器学习技能,成为一名真正的数据科(lao)学(si)家(ji)。 我想赢取奖金,成为人生赢家。 0 简介

Kaggle创办于2010年,目前已经被Google收购,是全球顶级的数据科学竞赛平台,在数据科学领域中享有盛名。笔者参加了由Quora举办的Quora Question Pairs比赛,并且获得了前1%的成绩(3307支队伍)。这是笔者Kaggle首战,所以写下此文来系统化地梳理比赛的思路,并且和大家分享我们参赛的一些心得。

Quora Question Pairs是一个自然语言(NLP)比赛,比赛的题目可以简单地概括为“预测两个问句的语义相似的概率”。其中的样本如下:


分分钟带你杀入Kaggle Top 1%

也许是作为Kaggle上为数不多的NLP比赛,这看似简单的比赛却吸引了众多的参赛队伍。由于这是NLP问题,所以接下来的介绍都会偏向于NLP,本文会分为以下三个部分:

打Kaggle比赛的大致套路。(比赛篇) 我们队伍和其他出色队伍的参赛经验。(经验篇) 完成Kaggle比赛需要学会哪些实用的工具。(工具篇) 1 比赛篇

为了方便,我们先定义几个名词:

Feature
特征变量,也叫自变量,是样本可以观测到的特征,通常是模型的输入Label
标签,也叫目标变量,需要预测的变量,通常是模型的标签或者输出Train Data
训练数据,有标签的数据,由举办方提供。 Test Data
测试数据,标签未知,是比赛用来评估得分的数据,由举办方提供。 Train Set
训练集,从Train Data中分割得到的,用于训练模型(常用于交叉验证)。 Valid Set
验证集,从Train Data中分割得到的,用于验证模型(常用于交叉验证)。 1.1 分析题目

拿到赛题以后,第一步就是要破题,我们需要将问题转化为相应的机器学习问题。其中,Kaggle最常见的机器学习问题类型有:

回归问题 分类问题(二分类、多分类、多标签)
多分类只需从多个类别中预测一个类别,而多标签则需要预测出多个类别。

比如Quora的比赛就是二分类问题,因为只需要判断两个问句的语义是否相似。

1.2 数据分析(Data Exploration)

所谓数据挖掘,当然是要从数据中去挖掘我们想要的东西,我们需要通过人为地去分析数据,才可以发现数据中存在的问题和特征。我们需要在观察数据的过程中思考以下几个问题:

数据应该怎么清洗和处理才是合理的? 根据数据的类型可以挖掘怎样的特征? 数据中的哪些特征会对标签的预测有帮助? 1.2.1 统计分析

对于数值类变量(Numerical Variable),我们可以得到min,max,mean,meduim,std等统计量,用pandas可以方便地完成,结果如下:


分分钟带你杀入Kaggle Top 1%

从上图中可以观察Label是否均衡,如果不均衡则需要进行over sample少数类,或者down sample多数类。我们还可以统计Numerical Variable之间的相关系数,用pandas就可以轻松获得相关系数矩阵


分分钟带你杀入Kaggle Top 1%

观察相关系数矩阵可以让你找到高相关的特征,以及特征之间的冗余度。而对于文本变量,可以统计词频(TF),TF-IDF,文本长度等等,更详细的内容可以参考这里

1.2.2 可视化

人是视觉动物,更容易接受图形化的表示,因此可以将一些统计信息通过图表的形式展示出来,方便我们观察和发现。比如用直方图展示问句的频数:


分分钟带你杀入Kaggle Top 1%

或者绘制相关系数矩阵:


分分钟带你杀入Kaggle Top 1%

常用的可视化工具有matplotlib和seaborn。当然,你也可以跳过这一步,因为可视化不是解决问题的重点。

1.3 数据预处理(Data Preprocessing)

刚拿到手的数据会出现噪声,缺失,脏乱等现象,我们需要对数据进行清洗与加工,从而方便进行后续的工作。针对不同类型的变量,会有不同的清洗和处理方法:

对于数值型变量(Numerical Variable),需要处理离群点,缺失值,异常值等情况。 对于类别型变量(Categorical Variable),可以转化为one-hot编码。 文本数据是较难处理的数据类型,文本中会有垃圾字符,错别字(词),数学公式,不统一单位和日期格式等。我们还需要处理标点符号,分词,去停用词,对于英文文本可能还要词性还原(lemmatize),抽取词干(stem)等等。 1.4 特征工程(Feature Engineering)

都说特征为王,特征是决定效果最关键的一环。我们需要通过探索数据,利用人为先验知识,从数据中总结出特征。

1.4.1 特征抽取(Feature Extraction)

我们应该尽可能多地抽取特征,只要你认为某个特征对解决问题有帮助,它就可以成为一个特征。特征抽取需要不断迭代,是最为烧脑的环节,它会在整个比赛周期折磨你,但这是比赛取胜的关键,它值得你耗费大量的时间。

那问题来了,怎么去发现特征呢?光盯着数据集肯定是不行的。如果你是新手,可以先耗费一些时间在Forum上,看看别人是怎么做Feature Extraction的,并且多思考。虽然Feature Extraction特别讲究经验,但其实还是有章可循的:

对于Numerical Variable,可以通过线性组合、多项式组合来发现新的Feature。 对于文本数据,有一些常规的Feature。比如,文本长度,Embeddings,TF-IDF,LDA,LSI等,你甚至可以用深度学习提取文本特征(隐藏层)。 如果你想对数据有更深入的了解,可以通过思考数据集的构造过程来发现一些magic feature,这些特征有可能会大大提升效果。在Quora这次比赛中,就有人公布了一些magic feature。 通过错误分析也可以发现新的特征(见1.5.2小节)。 1.4.2 特征选择(Feature Selection)

在做特征抽取的时候,我们是尽可能地抽取更多的Feature,但过多的Feature会造成冗余,噪声,容易过拟合等问题,因此我们需要进行特征筛选。特征选择可以加快模型的训练速度,甚至还可以提升效果。

特征选择的方法多种多样,最简单的是相关度系数(Correlation coefficient),它主要是衡量两个变量之间的线性关系,数值在[-1.0, 1.0]区间中。数值越是接近0,两个变量越是线性不相关。但是数值为0,并不能说明两个变量不相关,只是线性不相关而已。

我们通过一个例子来学习一下怎么分析相关系数矩阵:


分分钟带你杀入Kaggle Top 1%

相关系数矩阵是一个对称矩阵,所以只需要关注矩阵的左下角或者右上角。我们可以拆成两点来看:

Feature和Label的相关度可以看作是该Feature的重要度,越接近1或-1就越好。 Feature和Feature之间的相关度要低,如果两个Feature的相关度很高,就有可能存在冗余。

除此之外,还可以训练模型来筛选特征,比如带L1或L2惩罚项的Linear Model、Random Forest、GDBT等,它们都可以输出特征的重要度。在这次比赛中,我们对上述方法都进行了尝试,将不同方法的平均重要度作为最终参考指标,筛选掉得分低的特征。

1.5 建模(Modeling)

终于来到机器学习了,在这一章,我们需要开始炼丹了。

1.5.1 模型

机器学习模型有很多,建议均作尝试,不仅可以测试效果,还可以学习各种模型的使用技巧。其实,几乎每一种模型都有回归和分类两种版本,常用模型有:

KNN SVM Linear Model(带惩罚项) ExtraTree RandomForest Gradient Boost Tree Neural Network

幸运的是,这些模型都已经有现成的工具(如scikit-learn、XGBoost、LightGBM等)可以使用,不用自己重复造轮子。但是我们应该要知道各个模型的原理,这样在调参的时候才会游刃有余。当然,你也使用PyTorch/Tensorflow/Keras等深度学习工具来定制自己的Deep Learning模型,玩出自己的花样。

1.5.2 错误分析

人无完人,每个模型不可能都是完美的,它总会犯一些错误。为了解某个模型在犯什么错误,我们可以观察被模型误判的样本,总结它们的共同特征,我们就可以再训练一个效果更好的模型。这种做法有点像后面Ensemble时提到的Boosting,但是我们是人为地观察错误样本,而Boosting是交给了机器。通过错误分析->发现新特征->训练新模型->错误分析,可以不断地迭代出更好的效果,并且这种方式还可以培养我们对数据的嗅觉。

举个例子,这次比赛中,我们在错误分析时发现,某些样本的两个问句表面上很相似,但是句子最后提到的地点不一样,所以其实它们是语义不相似的,但我们的模型却把它误判为相似的。比如这个样本:

Question1: Which is the best digital marketing institution in banglore? Question2: Which is the best digital marketing institute in Pune?

为了让模型可以处理这种样本,我们将两个问句的最长公共子串(Longest Common Sequence)去掉,用剩余部分训练一个新的深度学习模型,相当于告诉模型看到这种情况的时候就不要判断为相似的了。因此,在加入这个特征后,我们的效果得到了一些提升。

1.5.3 调参

在训练模型前,我们需要预设一些参数来确定模型结构(比如树的深度)和优化过程(比如学习率),这种参数被称为超参(Hyper-parameter),不同的参数会得到的模型效果也会不同。总是说调参就像是在“炼丹”,像一门“玄学”,但是根据经验,还是可以找到一些章法的:

根据经验,选出对模型效果影响较大的超参。 按照经验设置超参的搜索空间,比如学习率的搜索空间为[0.001,0.1]。 选择搜索算法,比如Random Search、Grid Search和一些启发式搜索的方法。 验证模型的泛化能力(详见下一小节)。 1.5.4 模型验证(Validation)

在Test Data的标签未知的情况下,我们需要自己构造测试数据来验证模型的泛化能力,因此把Train Data分割成Train Set和Valid Set两部分,Train Set用于训练,Valid Set用于验证。

简单分割

将Train Data按一定方法分成两份,比如随机取其中70%的数据作为Train Set,剩下30%作为Valid Set,每次都固定地用这两份数据分别训练模型和验证模型。这种做法的缺点很明显,它没有用到整个训练数据,所以验证效果会有偏差。通常只会在训练数据很多,模型训练速度较慢的时候使用。

交叉验证

交叉验证是将整个训练数据随机分成K份,训练K个模型,每次取其中的K-1份作为Train Set,留出1份作为Valid Set,因此也叫做K-fold。至于这个K,你想取多少都可以,但一般选在3~10之间。我们可以用K个模型得分的mean和std,来评判模型得好坏(mean体现模型的能力,std体现模型是否容易过拟合),并且用K-fold的验证结果通常会比较可靠。

如果数据出现Label不均衡情况,可以使用Stratified K-fold,这样得到的Train Set和Test Set的Label比例是大致相同。

1.6 模型集成(Ensemble)

曾经听过一句话,”Feature为主,Ensemble为后”。Feature决定了模型效果的上限,而Ensemble就是让你更接近这个上限。Ensemble讲究“好而不同”,不同是指模型的学习到的侧重面不一样。举个直观的例子,比如数学考试,A的函数题做的比B好,B的几何题做的比A好,那么他们合作完成的分数通常比他们各自单独完成的要高。

常见的Ensemble方法有Bagging、Boosting、Stacking、Blending。

1.6.1 Bagging

Bagging是将多个模型(基学习器)的预测结果简单地加权平均或者投票。Bagging的好处在于可以并行地训练基学习器,其中Random Forest就用到了Bagging的思想。举个通俗的例子,如下图:


分分钟带你杀入Kaggle Top 1%

老师出了两道加法题,A同学和B同学答案的加权要比A和B各自回答的要精确。

Bagging通常是没有一个明确的优化目标的,但是有一种叫Bagging Ensemble Selection的方法,它通过贪婪算法来Bagging多个模型来优化目标值。在这次比赛中,我们也使用了这种方法。

1.6.2 Boosting

Boosting的思想有点像知错能改,每训练一个基学习器,是为了弥补上一个基学习器所犯的错误。其中著名的算法有AdaBoost,Gradient Boost。Gradient Boost Tree就用到了这种思想。

我在1.2.3节(错误分析)中提到Boosting,错误分析->抽取特征->训练模型->错误分析,这个过程就跟Boosting很相似。

1.6.3 Stacking

Stacking是用新的模型(次学习器)去学习怎么组合那些基学习器,它的思想源自于Stacked Generalization这篇论文。如果把Bagging看作是多个基分类器的线性组合,那么Stacking就是多个基分类器的非线性组合。Stacking可以很灵活,它可以将学习器一层一层地堆砌起来,形成一个网状的结构,如下图:

举个更直观的例子,还是那两道加法题:


分分钟带你杀入Kaggle Top 1%

这里A和B可以看作是基学习器,C、D、E都是次学习器。

Stage1: A和B各自写出了答案。 Stage2: C和D偷看了A和B的答案,C认为A和B一样聪明,D认为A比B聪明一点。他们各自结合了A和B的答案后,给出了自己的答案。 Stage3: E偷看了C和D的答案,E认为D比C聪明,随后E也给出自己的答案作为最终答案。

在实现Stacking时,要注意的一点是,避免标签泄漏(Label Leak)。在训练次学习器时,需要上一层学习器对Train Data的测试结果作为特征。如果我们在Train Data上训练,然后在Train Data上预测,就会造成Label Leak。为了避免Label Leak,需要对每个学习器使用K-fold,将K个模型对Valid Set的预测结果拼起来,作为下一层学习器的输入。如下图:


分分钟带你杀入Kaggle Top 1%

由图可知,我们还需要对Test Data做预测。这里有两种选择,可以将K个模型对Test Data的预测结果求平均,也可以用所有的Train Data重新训练一个新模型来预测Test Data。所以在实现过程中,我们最好把每个学习器对Train Data和对Test Data的测试结果都保存下来,方便训练和预测。

对于Stacking还要注意一点,固定K-fold可以尽量避免Valid Set过拟合,也就是全局共用一份K-fold,如果是团队合作,组员之间也是共用一份K-fold。如果想具体了解为什么需要固定K-fold,请看这里。

1.6.4 Blending

Blending与Stacking很类似,它们的区别可以参考这里

1.7 后处理

有些时候在确认没有过拟合的情况下,验证集上做校验时效果挺好,但是将测试结果提交后的分数却不如人意,这时候就有可能是训练集的分布与测试集的分布不一样而导致的。这时候为了提高LeaderBoard的分数,还需要对测试结果进行分布调整。

比如这次比赛,训练数据中正类的占比为0.37,那么预测结果中正类的比例也在0.37左右,然后Kernel上有人通过测试知道了测试数据中正类的占比为0.165,所以我们也对预测结果进行了调整,得到了更好的分数。具体可以看这里。

2 经验篇 2.1 我们的方案(33th)

深度学习具有很好的模型拟合能力,使用深度学习可以较快得获取一个不错的Baseline,对这个问题整体的难度有一个初始的认识。虽然使用深度学习可以免去繁琐的手工特征,但是它也有能力上限,所以提取传统手工特征还是很有必要的。我们尝试Forum上别人提供的方法,也尝试自己思考去抽取特征。总结一下,我们抽取的手工特征可以分为以下4种:

Text Mining Feature,比如句子长度;两个句子的文本相似度,如N-gram的编辑距离,Jaccard距离等;两个句子共同的名词,动词,疑问词等。 Embedding Feature,预训练好的词向量相加求出句子向量,然后求两个句子向量的距离,比如余弦相似度、欧式距离等等。 Vector Space Feature,用TF-IDF矩阵来表示句子,求相似度。 Magic Feature,是Forum上一些选手通过思考数据集构造过程而发现的Feature,这种Feature往往与Label有强相关性,可以大大提高预测效果。

我们的系统整体上使用了Stacking的框架,如下图:


分分钟带你杀入Kaggle Top 1%
Stage1: 将两个问句与Magic Feature输入Deep Learning中,将其输出作为下一层的特征(这里的Deep Learning相当于特征抽取器)。我们一共训练了几十个Deep Learning Model。 Stage2: 将Deep Learning特征与手工抽取的几百个传统特征拼在一起,作为输入。在这一层,我们训练各种模型,有成百上千个。 Stage3: 上一层的输c进行Ensemble Selection。

比赛中发现的一些深度学习的局限:

通过对深度学习产生的结果进行错误分析,并且参考论坛上别人的想法,我们发现深度学习没办法学到的特征大概可以分为两类:

对于一些数据的Pattern,在Train Data中出现的频数不足以让深度学习学到对应的特征,所以我们需要通过手工提取这些特征。 由于Deep Learning对样本做了独立同分布假设(iid),一般只能学习到每个样本的特征,而学习到数据的全局特征,比如TF-IDF这一类需要统计全局词频才能获取的特征,因此也需要手工提取这些特征。

传统的机器学习模型和深度学习模型之间也存在表达形式上的不同。虽然传统模型的表现未必比深度学习好,但它们学到的Pattern可能不同,通过Ensemble来取长补短,也能带来性能上的提升。因此,同时使用传统模型也是很有必要的。

2.2 第一名的解决方案

比赛结束不久,第一名也放出了他们的解决方案,我们来看看他们的做法。他们的特征总结为三个类别:

Embedding Feature Text Mining Feature Structural Feature(他们自己挖掘的Magic Feature)

并且他们也使用了Stacking的框架,并且使用固定的k-fold:

Stage1: 使用了Deep Learning,XGBoost,LightGBM,ExtraTree,Random Forest,KNN等300个模型。 Stage2: 用了手工特征和第一层的预测和深度学习模型的隐藏层,并且训练了150个模型。 Stage3: 使用了分别是带有L1和L2的两种线性模型。 Stage4: 将第三层的结果加权平均。

对比以后发现我们没有做LDA、LSI等特征,并且N-gram的粒度没有那么细(他们用了8-gram),还有他们对Magic Feature的挖掘更加深入。还有一点是他们的Deep Learning模型设计更加合理,他们将筛选出来的手工特征也输入到深度学习模型当中,我觉得这也是他们取得好效果的关键。因为显式地将手工特征输入给深度学习模型,相当于告诉“它你不用再学这些特征了,你去学其他的特征吧”,这样模型就能学到更多的语义信息。所以,我们跟他们的差距还是存在的。

3. 工具篇

工欲善其事,必先利其器。

Kaggle 的上常工具除了大家耳熟能详的XGBoost之外, 这里要着重推荐的是一款由微软推出的LightGBM,这次比赛中我们就用到了。LightGBM的用法与XGBoost相似,两者使用的区别是XGBoost调整的一个重要参数是树的高度,而LightGBM调整的则是叶子的数目。与XGBoost 相比, 在模型训练时速度快, 单模型的效果也略胜一筹。

调参也是一项重要工作,调参的工具主要是Hyperopt,它是一个使用搜索算法来优化目标的通用框架,目前实现了Random Search和Tree of Parzen Estimators (TPE)两个算法。

对于 Stacking,Kaggle 的一位名为Μαριο Μιχαηλιδη的GrandMaster使用Java开发了一款集成了各种机器学习算法的工具包StackNet,据说在使用了它以后你的效果一定会比原来有所提升,值得一试。

以下总结了一些常用的工具:

Numpy | 必用的科学计算基础包,底层由C实现,计算速度快。 Pandas | 提供了高性能、易用的数据结构及数据分析工具。 NLTK | 自然语言工具包,集成了很多自然语言相关的算法和资源。 Stanford CoreNLP | Stanford的自然语言工具包,可以通过NLTK调用。 Gensim | 主题模型工具包,可用于训练词向量,读取预训练好的词向量。 scikit-learn | 机器学习python包 ,包含了大部分的机器学习算法。 XGBoost/LightGBM | Gradient Boosting 算法的两种实现框架。 PyTorch/TensorFlow/Keras | 常用的深度学习框架。 StackNet | 准备好特征之后,可以直接使用的Stacking工具包。 Hyperopt | 通用的优化框架,可用于调参。 4. 总结与建议 在参加某个比赛前,要先衡量自己的机器资源能否足够支撑你完成比赛。比如一个有几万张图像的比赛,而你的显存只有2G,那很明显你是不适合参加这个比赛的。当你选择了一个比赛后,可以先“热热身”,稍微熟悉一下数据,粗略地跑出一些简单的模型,看看自己在榜上的排名,然后再去慢慢迭代。 Kaggle有许多大牛分享Kernel, 有许多Kernel有对于数据精辟的分析,以及一些baseline 模型, 对于初学者来说是很好的入门资料。在打比赛的过程中可以学习别人的分析方法,有利于培养自己数据嗅觉。甚至一些Kernel会给出一些data leak,会对于比赛提高排名有极大的帮助。 其次是Kaggle已经举办了很多比赛, 有些比赛有类似之处, 比如这次的Quora比赛就与之前的Home Depot Product Search Relevance 有相似之处,而之前的比赛前几名已经放出了比赛的idea甚至代码,这些都可以借鉴。 另外,要足够地重视Ensemble,这次我们组的最终方案实现了paper ” Ensemble Selection from Libraries of Models” 的想法,所以有些比赛可能还需要读一些paper,尤其对于深度学习相关的比赛,最新paper,最新模型的作用就举足轻重了。 而且,将比赛代码的流程自动化,是提高比赛效率的一个关键,但是往往初学者并不能很好地实现自己的自动化系统。我的建议是初学者不要急于构建自动化系统,当你基本完成整个比赛流程后,自然而然地就会在脑海中形成一个框架,这时候再去构建你的自动化系统会更加容易。 最后,也是最重要的因素之一就是时间的投入,对于这次比赛, 我们投入了差不多三个多月,涉及到了对于各种能够想到的方案的尝试。尤其最后一个月,基本上每天除了睡觉之外的时间都在做比赛。所以要想在比赛中拿到好名次,时间的投入必不可少。另外对于国外一些介绍kaggle比赛的博客(比如官方博客)也需要了解学习,至少可以少走弯路,本文的结尾列出了一些参考文献,都值得细细研读。 最后的最后,请做好心理准备,这是一场持久战。因为比赛会给你带来压力,也许过了一晚,你的排名就会一落千丈。还有可能造成出现失落感,焦虑感,甚至失眠等症状。但请你相信,它会给你带来意想不到的惊喜,认真去做,你会觉得这些都是值得的。

End.

转载请注明来自36大数据(36dsj.com):36大数据 分分钟带你杀入Kaggle Top 1%


          Comment on Object Recognition with Convolutional Neural Networks in the Keras Deep Learning Library by Bruce Wind   
Hi, Jason, thanks for sharing. I test the code you provided, but my machine does not support CUDA, so it runs very slowly( half an hour per epoch). Since you have such a powerful computer, could you please show the results after hundreds or thousands epoches later? Thanks.
          Comment on 5 Step Life-Cycle for Neural Network Models in Keras by Jason Brownlee   
Great question. A good starting point is to copy another neural net from the literature applied to a similar problem. You could try having the number of neurons in the hidden layer equal to the number of inputs. These are just heuristics, and the best results will come when you test a suite of different configurations and see what works best on your problem.
          深層学習のコアライブラリー、ソニーが無償公開   
ソニーは、ディープラーニング(深層学習)のプログラムを生成するためのソフトウェアであるコアライブラリー「Neural Network Libraries」を無償で公開した。
          Frighteningly accurate ‘mind reading’ AI reads brain scans to guess what you’re thinking   

Carnegie Mellon University researchers have developed a deep learning neural network that's able to read complex thoughts based on brain scans -- even interpreting complete sentences.

The post Frighteningly accurate ‘mind reading’ AI reads brain scans to guess what you’re thinking appeared first on Digital Trends.


          Learn Machine Learning at Stanford for free   
Andrew Ng’s machine learning course at Stanford is being offered free to anyone online in the (northern) fall of 2011. I’ve seen some of the notes from this course and it looks to be an excellent broad introduction to machine learning and data mining. For example, support vector machines, neural networks, kernels, clustering, dimension reduction, etc.Statisticians should know something about this area (just as computer scientists working in machine learning should know some statistical modelling), and this would be a great way to learn it.
          The falling standard of English in research   
It seems that most journals no longer do any serious copy-editing, and the standard of English is falling. Today I was reading an article from the European Journal of Operational Research, which is supposedly a good OR journal (current impact factor over 2). Take this for an example from the first page of this paper: If the learned patterns are unstable, the learning tools would produce inconsistent concepts. To overcome this difficult situation, we employed artificial neural networks (ANNs, NNs) for helping the learning task.
          Finding an R function   
Suppose you want a function to fit a neural network. What’s the best way to find it? Here are three steps that help to find the elusive function relatively quickly. First, use help.search("neural") or the shorthand ??neural. This will search the help files of installed packages for the word “neural”. Actually, fuzzy matching is used so it returns pages that have words similar to “neural” such as “natural”. For a stricter search, use help.
          The accuracy of television network rating forecasts: the effects of data aggregation and alternative models   
This paper investigates the effect of aggregation in relation to the accuracy of television network rating forecasts. We compare the forecast accuracy of network ratings using population rating models, rating models for demographic/behavioural segments and individual viewing behaviour models. Models are fitted using neural networks, decision trees and regression. The most accurate forecasts are obtained by aggregating forecasts from segment rating models, with neural networks being used to fit these models.
          The pricing and trading of options using a hybrid neural network model with historical volatility   
(Later known as Journal of Computational Intelligence in Finance) The residuals between conventional option pricing models and market prices have persistent patterns or biases. The “hybrid” method models the residuals using an artificial neural network. The pricing accuracy of the hybrid method is demonstrated on real data using the Australian All Ordinaries Share Price Index options on futures and is compared with all major competing conventional models. The hybrid method is found to be both statistically and economically superior to the conventional models alone.
          DesignWare® EV6x Vision Processors come with programmable CNN engine.   
Supporting AlexNet, VGG16, GoogLeNet, Yolo, Faster R-CNN, SqueezeNet and ResNet neural networks, DesignWare&reg; EV6x Vision Processors are available in EV61, EV62 and EV64 models. Embedded with MetaWare EV Development Toolkit, unit&rsquo;s CNN engine delivers power efficiency of up to 2,000 GMACs/sec/W on 16-nm FinFET process technologies. Integrating up to four 512-bit vector DSPs, Product features map compression/decompression to reduce data bandwidth requirements.
          The Maid of the Woods. Between ufology and folklore   
Dorel Bizeu and journalist Elena Lasconi
by Dan D. Farcas PhD - author of UFOs over Romania

In Romania, as everywhere, strange events that took place down the centuries, entered into folklore and from them were born legends and myths. But, what is more interesting, it seems that such occurrences are also happening today at certain locations where unseen forces haunt people and, even more surprisingly, there is some evidence that now labels these incidents as being connected to UFO sightings.

In northern Romania, in the historical land of Maramureş, many people still believe in the existence of a fairie kind of being, which here is sometimes called “Fata Pădurii” (“Maid” or “Maiden of the Woods” or “Girl of the Forest”). She haunts the woods causing a great deal of harm to people, both physically and mentally, but especially to men. Sometimes she appears as a woman, with long hair down to the ground, incredibly beautiful and sometimes as a grotesque and ugly woman.

I uncovered a case that combines, strangely and unexpectedly, this popular belief with a “nuts and bolts” UFO abduction. The case is based on the information I been receiving from 2005 until today, by mail and telephone conversations with Ioan-Dorel Bizeu (D.B.), as well as an on site investigation done in 2014 by Elena Lasconi, who made a documentary about it for a commercial TV company from Bucharest (Pro TV).

D.B. was born in 1968 and raised in Crăciuneşti village, located about nine kilometres east of the city of Sighetul Marmaţiei, near the river Tisa, which here forms the Ukrainian border. As D.B. recounted, when he was little, he often went for water to a spring located on the hill above the family property. The path he used passed near the house of a lonely old man who knew many strange things like stories about a “magic tree” that grew near his fence and was producing small pears that did not ripen until a very special day and not every year. Each such special day, “Fata Pădurii”, with her children came to eat them. But people from around here were saying that she also steals or kills the children that she meets.

In the summer of 1974 the old man died. D.B. was almost six years of age at the time. One day, he wanted to try to see if the miraculous fruits were ripe. While climbing the path, he heard voices singing, but did not see anyone. When he reached the “magic tree”, he saw standing around it a girl and six boys, all looking nearly his age. They had bright blue eyes and long blond hair, looking as if all were twins; yet each had well defined features. 

 When he was at about five meters from them, the girl began to move and take up a hostile stance. But one of the boys came up to D.B. and gave him a pear from the ‘magic tree’. He also hummed a mixed up tune but D.B. understood that he should eat the pear quickly. The fruit melted in his hand and “became water”, so he sipped it from his palm. The taste was more like that of an orange, with lots of mint. As he recounted, immediately after drinking this fluid a tingling sensation went through his body. Then he felt a cold hand on his shoulder. He turned and saw a woman, more than 2.5 meters tall, with white blonde hair, a particularly beautiful face and a body like that of the fairies. She looked at him and D.B. had the impression that her face acquired a blue shade and her eyes became red with anger. She was the “Fata Pădurii”.

While the tall woman watched him eating the fruit, her face changed back to normal. Now she had the look of an angel and her eyes became clear and bright green and then she sat down. D.B. even had the impression that she smiled. The benevolent boy conveyed to D.B. something like this: you did well that you eat that fruit, if you had not eaten it, the woman, who is my mother, “would have assimilated you”. D.B. speculated that perhaps he might have been kidnapped and taken to their world. 

The children sang a strange song about light and the forest, but somehow D.B could make sense of it. They spoke in a ‘different but perfect language’, which D.B. understood so asked them where they had come from. Their reply was: “our village is above and soon you will forget everything but when you reach your middle ages you will remember us”. 

The encounter at the miraculous tree profoundly effected D.B. Even today he is sorry because they did not take him with them. While he was among them, he felt a harmony, a communion and “a fullness of paradisiacal life, where everything is completely different”. And they were full of a power that he had never before encountered, anywhere. For a long time he felt that he could not speak to anyone about this encounter. For ten years, D.B. wandered the hills, forests and neighbouring villages, hoping to meet them again, to discover where they lived and to find “their village”. His mother said “he is infatuated by the fata pădurii”. The hardest thing for him was when he realised that actually “they are not of humans”. 

D.B. said he heard, several times, singing, the fata pădurii; He ran through the woods, but never got close to her, though he did see her in the distance. Once she was dressed differently, in a metallic green outfit, “perhaps to hide easier in the landscape”. He saw her on another occasion by the river. This time he got very close and ran after her. But the apparition departed at such a speed that no man would have been able to catch her.

The next important encounter took place one day at end of June 1977 and was witnessed also by the mother of D.B. In 2014, when she was interviewed, she was 83 years old. She had eight children, of whom four were still alive.

Then, in 1977, D.B. was nine. D.B., his mother, sister M and brother V (three years older), arrived from Camara, a suburb of Sighetu Marmaţiei, located about 3 km from the city centre and walked up a gentle coastal footpath passing near an orchard.

D.B. recounts that suddenly he saw, hovering over the city, a pearly blue coloured disc-shaped object that blended almost perfectly with the colour of the sky. He shouted to attract the attention of others, while thinking how good it would be if the object would come closer. In seconds, the UFO came toward them, stopping about ten meters in front of them and about five meters above the ground. The object was round, about 10 meters wide and 5 meters tall, had the form of an inverted cone and above it was a dome, but when looking more closely, you could see that it was a sphere, that went up and down, from the cone, at a distance of about two meters, at about every 5 seconds. The sphere had a greenish-yellow colour, distinct from the pearly blue one of the disc. D.B. said that the sphere was transparent and he has made out an individual on the upper level and two or more at the base. The object emitted heat, as if blowing hot air. In the air was that smell “like when you have a short circuit of electrical power”.

UFO seen by Bizeus (image by Daniel del Torro)
D.B. went under the “disc” to see how it looked underneath. He said it was round, but divided into triangles, each with the top in the centre and the base on the circumference, “like slices of pizza”. The triangles were illuminated in sequence. When the boy was under the plate, the light went from one triangle to the next, with a click, about every five seconds. But when the object departed, it was just made a fine crackle sound, about ten snaps in a second. D.B. remembered that when the object was near him, “my family members were frozen; they could no longer move; only my mother shouted: don't go, they'll take you with them.”

 The same scene was described, somewhat differently, by D.B.'s mother. She said: “I saw something in the sky that came from Sighet and I ran for the children and I got two of them. The boy [D.B.] had stayed there and some women screamed: take care of the children; don't let the saucer take them! And I ran and got two of the children but he stayed behind and looked up. I shouted: come to me, don't go there, they will take you! But he was still looking up at the object”. Then she saw a kind of ladder or something, on which walked down a woman all dressed in black. She did not walk but descended smoothly with two lanterns in her hands. She was tall, over two meters, with a white face and she was very beautiful. She called the children to come to her but I didn’t let them; I asked her: why do you need my children? Then the woman got back into that flying saucer and was not able to take the children. That object went towards Sighet and soon it was gone disappearing over the forest”.

D.B. said he saw something descending from the disc, but he was not looking in that direction. Instead he had the impression that, near that object, time was going slower than in the surrounding area. He added: “I seem to remember I was taken inside. I have a clear picture of one fact: in front of me appeared a number of people dressed in white. There were men and women and children; all of whom stood around me. Several elderly people came out in front of them and each told me something. I do not remember what they told me but I know that everyone told me something. Whenever I try to remember what they told me, I get just an image in my mind and that is what I remember, a semicircle with a light like lightning and around the edge of the circle was some smoke and through the smoke I could see buildings looking like the skyscrapers in New York and other cities and there were smaller settlements all around. This image, that's all I remember. It looks like they sent me a sign about the final destruction of civilisation”. Maybe – he said – people need to know only that.

Instead, he believes, he retained in detail almost everything what the children told him. They have told him many things and he also knows something about their songs, but can not reproduce anything in words. Then he said, “they left me; they no longer needed me”. He went on to add that for a year after this encounter, he had in his mouth a taste “like mercury”. The mother of D.B. described the same episode saying that she had the impression that, at some point, the boy disappeared and reappeared “as in a blink of an eye”.

The strange encounter was the talk of the village. The mother of D.B. said that she also saw, quite by chance, about once every year, always in late June, when is the rainy weather, before haymaking, a very tall woman who appeared from nowhere on the same footpath. She never saw her face. She was wearing shiny black clothes and a hood and had two lanterns in her hands and had long golden hair. 

Another important encounter took place in 1998. D.B. was then 30 years old, was married and had a child of his own who was now 3 years of age. One morning, he felt as if he was compelled to go to the forest to collect wild mushrooms. Up on the ridge, he saw, coming from the Ukraine, a strange cloud. In a miraculously short time, the cloud settled above the forest trough which he would walk and it began to pour with rain.

As D.B. recounted, he was sheltering under an oak tree, when he saw, suddenly, in a clearing located at about 200 meters away, a group of teenagers. All were boys, from 1.80 to 2 meters tall and all looked identical. Accompanying the boys was a woman about 30-35 years old and about 2.5 meters tall. They were all dressed in white robes. Two of them had on their shoulder some golden “musical” instruments, which D.B. described in the smallest of detail. Their laughter was not like that of humans but it was more of a giggle and they sang exactly as the children he had met back in his childhood. D.B. then realised that they could be indeed the same beautiful children. The woman turned around, saw him, laughed and left.

D.B. said that he wanted to go with them, but he was “numb” and did not recover for several minutes. He then ran after them, continuing until he came to a clearing where it felt as warm as a furnace. He ran on, until he was out of the forest but did not see the woman or anyone else.

At home, he found that his hair, eyelashes and moustache were singed, probably in that meadow with the extreme heat. Subsequently D.B. assumed that in that forest an unearthly ship had landed. He believes that, by 2008 or 2009, the same clearing was visited again. D.B. claims that the vegetation and trees in that location had been affected by the UFO. At the beginning of 2014, when the TV documentary was made, certain signs in the forest suggested that the “ship” may have visited there once again in the not too distant past. When investigating this case, several people in the region told of other strange happenings involving the “fata pădurii”. D.B. also had other strange encounters.

Is the story of D.B. one of modern day ufology or one of folklore, or perhaps they are both the same? 

About the author:

Dan D. Farcaş, born in 1940, graduate in mathematics and physics at Timisoara, 1960. PhD in mathematics, computer sciences, at the State University of Bucharest in 1979. Computer specialist at Polytechnic University of Timisoara (1962-67), where he made the first computer simulations of neural networks in Romania. He has led and performed at „CEPECA” Management Training Centre Bucharest (1967-1982) large computerization projects and has taught computer courses. From 1991 to 2010 (when retired) he was director, deputy director or senior expert of the Computing and Health Statistics Centre of Ministry of Health Romania, temporary advisor to the World Health Organisation (1997-2001) and expert in Health for Romania to the European Commission (2007-2010). He was elected in 1993 full member of the Romanian Academy of Medical Sciences and was vice-president of the Romanian Society of Medical Informatics (1991-2010). Since 2013 he is member of the Committee for History and Philosophy of Science and Technology of the Romanian Academy. Since 1998, he was Vice-president and from 2011 is President of the Romanian Association for Study of Unidentified Aerospace Phenomena (ASFAN). Founding member in 2006 of the Centre for Studies of Border Sciences, at the Committee of UNESCO Romania. He has published over 25 books, all in Romanian, in the fields of computer science, mathematics, essays, ufology, and memoirs. He has published over 1000 articles, mostly popular and has participated in many radio and TV shows, most of them related to UFOs. His new book UFOs OVER ROMANIA is out now on Amazon.

* All the photos come from the author's archive

          Shark 3.x – Continuous Integration   
Taken from the SHARK website: SHARK is a modular C++ library for the design and optimization of adaptive systems. It provides methods for linear and nonlinear optimization, in particular evolutionary and gradient-based algorithms, kernel-based learning algorithms and neural networks, and various other machine learning techniques. SHARK serves as a toolbox to support real world applications […]
          Moarph   
Mario Klingemann does some weird shit again with CycleGAN Feedback Loops (Neural Networks feeding their results back to each other). Make sure to watch with sound. This might be one the creepiest clips that I have made so far. Yes Sir, that's my baby. #FaceFeedback pic.twitter.com/Zj1kAMtf83 — Mario Klingemann (@quasimondo) June 28, 2017
          The Ultimate Data Infrastructure Architect Bundle for $36   
From MongoDB to Apache Flume, This Comprehensive Bundle Will Have You Managing Data Like a Pro In No Time
Expires June 01, 2022 23:59 PST
Buy now and get 94% off

Learning ElasticSearch 5.0


KEY FEATURES

Learn how to use ElasticSearch in combination with the rest of the Elastic Stack to ship, parse, store, and analyze logs! You'll start by getting an understanding of what ElasticSearch is, what it's used for, and why it's important before being introduced to the new features of Elastic Search 5.0.

  • Access 35 lectures & 3 hours of content 24/7
  • Go through each of the fundamental concepts of ElasticSearch such as queries, indices, & aggregation
  • Add more power to your searches using filters, ranges, & more
  • See how ElasticSearch can be used w/ other components like LogStash, Kibana, & Beats
  • Build, test, & run your first LogStash pipeline to analyze Apache web logs

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Ethan Anthony is a San Francisco based Data Scientist who specializes in distributed data centric technologies. He is also the Founder of XResults, where the vision is to harness the power of data to innovate and deliver intuitive customer facing solutions, largely to non-technical professionals. Ethan has over 10 combined years of experience in cloud based technologies such as Amazon webservices and OpenStack, as well as the data centric technologies of Hadoop, Mahout, Spark and ElasticSearch. He began using ElasticSearch in 2011 and has since delivered solutions based on the Elastic Stack to a broad range of clientele. Ethan has also consulted worldwide, speaks fluent Mandarin Chinese and is insanely curious about human cognition, as related to cognitive dissonance.

Apache Spark 2 for Beginners


KEY FEATURES

Apache Spark is one of the most widely-used large-scale data processing engines and runs at extremely high speeds. It's a framework that has tools that are equally useful for app developers and data scientists. This book starts with the fundamentals of Spark 2 and covers the core data processing framework and API, installation, and application development setup.

  • Access 45 lectures & 5.5 hours of content 24/7
  • Learn the Spark programming model through real-world examples
  • Explore Spark SQL programming w/ DataFrames
  • Cover the charting & plotting features of Python in conjunction w/ Spark data processing
  • Discuss Spark's stream processing, machine learning, & graph processing libraries
  • Develop a real-world Spark application

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Rajanarayanan Thottuvaikkatumana, Raj, is a seasoned technologist with more than 23 years of software development experience at various multinational companies. He has lived and worked in India, Singapore, and the USA, and is presently based out of the UK. His experience includes architecting, designing, and developing software applications. He has worked on various technologies including major databases, application development platforms, web technologies, and big data technologies. Since 2000, he has been working mainly in Java related technologies, and does heavy-duty server-side programming in Java and Scala. He has worked on very highly concurrent, highly distributed, and high transaction volume systems. Currently he is building a next generation Hadoop YARN-based data processing platform and an application suite built with Spark using Scala.

Raj holds one master's degree in Mathematics, one master's degree in Computer Information Systems and has many certifications in ITIL and cloud computing to his credit. Raj is the author of Cassandra Design Patterns - Second Edition, published by Packt.

When not working on the assignments his day job demands, Raj is an avid listener to classical music and watches a lot of tennis.

Designing AWS Environments


KEY FEATURES

Amazon Web Services (AWS) provides trusted, cloud-based solutions to help businesses meet all of their needs. Running solutions in the AWS Cloud can help you (or your company) get applications up and running faster while providing the security needed to meet your compliance requirements. This course leaves no stone unturned in getting you up to speed with administering AWS.

  • Access 19 lectures & 2 hours of content 24/7
  • Familiarize yourself w/ the key capabilities to architect & host apps, websites, & services on AWS
  • Explore the available options for virtual instances & demonstrate launching & connecting to them
  • Design & deploy networking & hosting solutions for large deployments
  • Focus on security & important elements of scalability & high availability

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Wayde Gilchrist started moving customers of his IT consulting business into the cloud and away from traditional hosting environments in 2010. In addition to consulting, he delivers AWS training for Fortune 500 companies, government agencies, and international consulting firms. When he is not out visiting customers, he is delivering training virtually from his home in Florida.

Learning MongoDB


KEY FEATURES

Businesses today have access to more data than ever before, and a key challenge is ensuring that data can be easily accessed and used efficiently. MongoDB makes it possible to store and process large sets of data in a ways that drive up business value. Learning MongoDB will give you the flexibility of unstructured storage, combined with robust querying and post processing functionality, making you an asset to enterprise Big Data needs.

  • Access 64 lectures & 40 hours of content 24/7
  • Master data management, queries, post processing, & essential enterprise redundancy requirements
  • Explore advanced data analysis using both MapReduce & the MongoDB aggregation framework
  • Delve into SSL security & programmatic access using various languages
  • Learn about MongoDB's built-in redundancy & scale features, replica sets, & sharding

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Daniel Watrous is a 15-year veteran of designing web-enabled software. His focus on data store technologies spans relational databases, caching systems, and contemporary NoSQL stores. For the last six years, he has designed and deployed enterprise-scale MongoDB solutions in semiconductor manufacturing and information technology companies. He holds a degree in electrical engineering from the University of Utah, focusing on semiconductor physics and optoelectronics. He also completed an MBA from the Northwest Nazarene University. In his current position as senior cloud architect with Hewlett Packard, he focuses on highly scalable cloud-native software systems.

Learning Hadoop 2


KEY FEATURES

Hadoop emerged in response to the proliferation of masses and masses of data collected by organizations, offering a strong solution to store, process, and analyze what has commonly become known as Big Data. It comprises a comprehensive stack of components designed to enable these tasks on a distributed scale, across multiple servers and thousand of machines. In this course, you'll learn Hadoop 2, introducing yourself to the powerful system synonymous with Big Data.

  • Access 19 lectures & 1.5 hours of content 24/7
  • Get an overview of the Hadoop component ecosystem, including HDFS, Sqoop, Flume, YARN, MapReduce, Pig, & Hive
  • Install & configure a Hadoop environment
  • Explore Hue, the graphical user interface of Hadoop
  • Discover HDFS to import & export data, both manually & automatically
  • Run computations using MapReduce & get to grips working w/ Hadoop's scripting language, Pig
  • Siphon data from HDFS into Hive & demonstrate how it can be used to structure & query data sets

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Randal Scott King is the Managing Partner of Brilliant Data, a consulting firm specialized in data analytics. In his 16 years of consulting, Scott has amassed an impressive list of clientele from mid-market leaders to Fortune 500 household names. Scott lives just outside Atlanta, GA, with his children.

ElasticSearch 5.x Cookbook eBook


KEY FEATURES

ElasticSearch is a Lucene-based distributed search server that allows users to index and search unstructured content with petabytes of data. Through this ebook, you'll be guided through comprehensive recipes covering what's new in ElasticSearch 5.x as you create complex queries and analytics. By the end, you'll have an in-depth knowledge of how to implement the ElasticSearch architecture and be able to manage data efficiently and effectively.

  • Access 696 pages of content 24/7
  • Perform index mapping, aggregation, & scripting
  • Explore the modules of Cluster & Node monitoring
  • Understand how to install Kibana to monitor a cluster & extend Kibana for plugins
  • Integrate your Java, Scala, Python, & Big Data apps w/ ElasticSearch

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Alberto Paro is an engineer, project manager, and software developer. He currently works as freelance trainer/consultant on big data technologies and NoSQL solutions. He loves to study emerging solutions and applications mainly related to big data processing, NoSQL, natural language processing, and neural networks. He began programming in BASIC on a Sinclair Spectrum when he was eight years old, and to date, has collected a lot of experience using different operating systems, applications, and programming languages.

In 2000, he graduated in computer science engineering from Politecnico di Milano with a thesis on designing multiuser and multidevice web applications. He assisted professors at the university for about a year. He then came in contact with The Net Planet Company and loved their innovative ideas; he started working on knowledge management solutions and advanced data mining products. In summer 2014, his company was acquired by a big data technologies company, where he worked until the end of 2015 mainly using Scala and Python on state-of-the-art big data software (Spark, Akka, Cassandra, and YARN). In 2013, he started freelancing as a consultant for big data, machine learning, Elasticsearch and other NoSQL products. He has created or helped to develop big data solutions for business intelligence, financial, and banking companies all over the world. A lot of his time is spent teaching how to efficiently use big data solutions (mainly Apache Spark), NoSql datastores (Elasticsearch, HBase, and Accumulo) and related technologies (Scala, Akka, and Playframework). He is often called to present at big data or Scala events. He is an evangelist on Scala and Scala.js (the transcompiler from Scala to JavaScript).

In his spare time, when he is not playing with his children, he likes to work on open source projects. When he was in high school, he started contributing to projects related to the GNOME environment (gtkmm). One of his preferred programming languages is Python, and he wrote one of the first NoSQL backends on Django for MongoDB (Django-MongoDBengine). In 2010, he began using Elasticsearch to provide search capabilities to some Django e-commerce sites and developed PyES (a Pythonic client for Elasticsearch), as well as the initial part of the Elasticsearch MongoDB river. He is the author of Elasticsearch Cookbook as well as a technical reviewer of Elasticsearch Server-Second Edition, Learning Scala Web Development, and the video course, Building a Search Server with Elasticsearch, all of which are published by Packt Publishing.

Fast Data Processing with Spark 2 eBook


KEY FEATURES

Compared to Hadoop, Spark is a significantly more simple way to process Big Data at speed. It is increasing in popularity with data analysts and engineers everywhere, and in this course you'll learn how to use Spark with minimum fuss. Starting with the fundamentals, this ebook will help you take your Big Data analytical skills to the next level.

  • Access 274 pages of content 24/7
  • Get to grips w/ some simple APIs before investigating machine learning & graph processing
  • Learn how to use the Spark shell
  • Load data & build & run your own Spark applications
  • Discover how to manipulate RDD
  • Understand useful machine learning algorithms w/ the help of Spark MLlib & R

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Krishna Sankar is a Senior Specialist—AI Data Scientist with Volvo Cars focusing on Autonomous Vehicles. His earlier stints include Chief Data Scientist at http://cadenttech.tv/, Principal Architect/Data Scientist at Tata America Intl. Corp., Director of Data Science at a bioinformatics startup, and as a Distinguished Engineer at Cisco. He has been speaking at various conferences including ML tutorials at Strata SJC and London 2016, Spark Summit, Strata-Spark Camp, OSCON, PyCon, and PyData, writes about Robots Rules of Order, Big Data Analytics—Best of the Worst, predicting NFL, Spark, Data Science, Machine Learning, Social Media Analysis as well as has been a guest lecturer at the Naval Postgraduate School. His occasional blogs can be found at https://doubleclix.wordpress.com/. His other passion is flying drones (working towards Drone Pilot License (FAA UAS Pilot) and Lego Robotics—you will find him at the St.Louis FLL World Competition as Robots Design Judge.

MongoDB Cookbook: Second Edition eBook


KEY FEATURES

MongoDB is a high-performance, feature-rich, NoSQL database that forms the backbone of the systems that power many organizations. Packed with easy-to-use features that have become essential for a variety of software professionals, MongoDB is a vital technology to learn for any aspiring data scientist or systems engineer. This cookbook contains many solutions to the everyday challenges of MongoDB, as well as guidance on effective techniques to extend your skills and capabilities.

  • Access 274 pages of content 24/7
  • Initialize the server in three different modes w/ various configurations
  • Get introduced to programming language drivers in Java & Python
  • Learn advanced query operations, monitoring, & backup using MMS
  • Find recipes on cloud deployment, including how to work w/ Docker containers along MongoDB

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Amol Nayak is a MongoDB certified developer and has been working as a developer for over 8 years. He is currently employed with a leading financial data provider, working on cutting-edge technologies. He has used MongoDB as a database for various systems at his current and previous workplaces to support enormous data volumes. He is an open source enthusiast and supports it by contributing to open source frameworks and promoting them. He has made contributions to the Spring Integration project, and his contributions are the adapters for JPA, XQuery, MongoDB, Push notifications to mobile devices, and Amazon Web Services (AWS). He has also made some contributions to the Spring Data MongoDB project. Apart from technology, he is passionate about motor sports and is a race official at Buddh International Circuit, India, for various motor sports events. Earlier, he was the author of Instant MongoDB, Packt Publishing.

Cyrus Dasadia always liked tinkering with open source projects since 1996. He has been working as a Linux system administrator and part-time programmer for over a decade. He works at InMobi, where he loves designing tools and platforms. His love for MongoDB started in 2013, when he was amazed by its ease of use and stability. Since then, almost all of his projects are written with MongoDB as the primary backend. Cyrus is also the creator of an open source alert management system called CitoEngine. He likes spending his spare time trying to reverse engineer software, playing computer games, or increasing his silliness quotient by watching reruns of Monty Python.

Learning Apache Kafka: Second Edition eBook


KEY FEATURES

Apache Kafka is simple describe at a high level bust has an immense amount of technical detail when you dig deeper. This step-by-step, practical guide will help you take advantage of the power of Kafka to handle hundreds of megabytes of messages per second from multiple clients.

  • Access 120 pages of content 24/7
  • Set up Kafka clusters
  • Understand basic blocks like producer, broker, & consumer blocks
  • Explore additional settings & configuration changes to achieve more complex goals
  • Learn how Kafka is designed internally & what configurations make it most effective
  • Discover how Kafka works w/ other tools like Hadoop, Storm, & more

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Nishant Garg has over 14 years of software architecture and development experience in various technologies, such as Java Enterprise Edition, SOA, Spring, Hadoop, Hive, Flume, Sqoop, Oozie, Spark, Shark, YARN, Impala, Kafka, Storm, Solr/Lucene, NoSQL databases (such as HBase, Cassandra, and MongoDB), and MPP databases (such as GreenPlum).

He received his MS in software systems from the Birla Institute of Technology and Science, Pilani, India, and is currently working as a technical architect for the Big Data R&D Group with Impetus Infotech Pvt. Ltd. Previously, Nishant has enjoyed working with some of the most recognizable names in IT services and financial industries, employing full software life cycle methodologies such as Agile and SCRUM.

Nishant has also undertaken many speaking engagements on big data technologies and is also the author of HBase Essestials, Packt Publishing.

Apache Flume: Distributed Log Collection for Hadoop: Second Edition eBook


KEY FEATURES

Apache Flume is a distributed, reliable, and available service used to efficiently collect, aggregate, and move large amounts of log data. It's used to stream logs from application servers to HDFS for ad hoc analysis. This ebook start with an architectural overview of Flume and its logical components, and pulls everything together into a real-world, end-to-end use case encompassing simple and advanced features.

  • Access 178 pages of content 24/7
  • Explore channels, sinks, & sink processors
  • Learn about sources & channels
  • Construct a series of Flume agents to dynamically transport your stream data & logs from your systems into Hadoop

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Steve Hoffman has 32 years of experience in software development, ranging from embedded software development to the design and implementation of large-scale, service-oriented, object-oriented systems. For the last 5 years, he has focused on infrastructure as code, including automated Hadoop and HBase implementations and data ingestion using Apache Flume. Steve holds a BS in computer engineering from the University of Illinois at Urbana-Champaign and an MS in computer science from DePaul University. He is currently a senior principal engineer at Orbitz Worldwide (http://orbitz.com/).

          The Coding Powerhouse eBook Bundle for $29   
Here's a 9-Book Digital Library to Be Your Reference For Everything From Web Development to Software Engineering
Expires July 13, 2018 23:59 PST
Buy now and get 91% off

Learning Angular 2


KEY FEATURES

Angular 2 was conceived as a complete rewrite in order to fulfill the expectations of modern developers who demand blazing fast performance and responsiveness from their web applications. This book will help you learn the basics of how to design and build Angular 2 components, providing full coverage of the TypeScript syntax required to follow the examples included.

  • Access 352 pages of content 24/7
  • Set up your working environment to have all the tools you need to start building Angular 2 components w/ minimum effort
  • Get up to speed w/ TypeScript, a powerful typed superset of JavaScript that compiles to plain JavaScript
  • Take full control of how your data is rendered & updated upon data changes
  • Build powerful web applications based on structured component hierarchies that emit & listen to events & data changes throughout the elements tree
  • Explore how to consume external APIs & data services & allow data editing by harnessing the power of web forms made with Angular 2
  • Deliver seamless web navigation experiences w/ application routing & state handling common features w/ ease
  • Discover how to bulletproof your applications by introducing smart unit testing techniques & debugging tools

    PRODUCT SPECS

    Details & Requirements

    • Length of time users can access this course: lifetime
    • Access options: web streaming, mobile streaming
    • Certification of completion not included
    • Redemption deadline: redeem your code within 30 days of purchase
    • Experience level required: all levels

    Compatibility

    • Internet required

    THE EXPERT

    Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Java Deep Learning Essentials


KEY FEATURES

AI and Deep Learning are transforming the way we understand software, making computers more intelligent than we could even imagine just a decade ago. Starting with an introduction to basic machine learning algorithms, this course takes you further into this vital world of stunning predictive insights and remarkable machine intelligence.

  • Access 254 pages of content 24/7
  • Get a practical deep dive into machine learning & deep learning algorithms
  • Implement machine learning algorithms related to deep learning
  • Explore neural networks using some of the most popular Deep Learning frameworks
  • Dive into Deep Belief Nets & Stacked Denoising Autoencoders algorithms
  • Discover more deep learning algorithms w/ Dropout & Convolutional Neural Networks
  • Gain an insight into the deep learning library DL4J & its practical uses
  • Get to know device strategies to use deep learning algorithms & libraries in the real world
  • Explore deep learning further w/ Theano & Caffe

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Mastering Python


KEY FEATURES

Python is a dynamic programming language known for its high readability, hence it is often the first language learned by new programmers. Being multi-paradigm, it can be used to achieve the same thing in different ways and it is compatible across different platforms. This book is an authoritative guide that will help you learn new advanced methods in a clear and contextualized way.

  • Access 486 pages of content 24/7
  • Create a virtualenv & start a new project
  • Understand how & when to use the functional programming paradigm
  • Get familiar w/ the different ways the decorators can be written in
  • Understand the power of generators & coroutines without digressing into lambda calculus
  • Generate HTML documentation out of documents & code using Sphinx
  • Learn how to track & optimize application performance, both memory & cpu
  • Use the multiprocessing library, not just locally but also across multiple machines

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Mastering React


KEY FEATURES

React stands out in the web framework crowd through its approach to composition which yields blazingly fast rendering capabilities. This book will help you understand what makes React special. It starts with the fundamentals and uses a pragmatic approach, focusing on clear development goals. You'll learn how to combine many web technologies surrounding React into a complete set for constructing a modern web application.

  • Access 254 pages of content 24/7
  • Understand the React component lifecycle & core concepts such as props & states
  • Craft forms & implement form validation patterns using React
  • Explore the anatomy of a modern single-page web application
  • Develop an approach for choosing & combining web technologies without being paralyzed by the options available
  • Create a complete single-page application
  • Start coding w/ a plan using an application design process
  • Add to your arsenal of prototyping techniques & tools
  • Make your React application feel great using animations

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Mastering JavaScript


KEY FEATURES

JavaScript is the browser language that supports object-oriented, imperative, and functional programming styles, focusing on website behavior. JavaScript provides web developers with the knowledge to program more intelligently and idiomatically—and this course will help you explore the best practices for building an original, functional, and useful cross-platform library. At course's end, you'll be equipped with all the knowledge, tips, and hacks you need to stand out in the advanced world of web development.

  • Access 250 pages of content 24/7
  • Get a run through of the basic JavaScript language constructs
  • Familiarize yourself w/ the Functions & Closures of JavaScript
  • Explore Regular Expressions in JavaScript
  • Code using the powerful object-oriented feature in JavaScript
  • Test & debug your code using JavaScript strategies
  • Master DOM manipulation, cross-browser strategies, & ES6
  • Understand the basic concurrency constructs in JavaScript & best performance strategies
  • Learn to build scalable server applications in JavaScript using Node.js

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Mastering Git


KEY FEATURES

A powerful source control management program, Git will allow you to track changes and revert to any previous versions of your code, helping you implement an efficient, effective workflow. With this course, you'll master everything from setting up your Git environment, to writing clean code using the Reset and Revert features, to ultimately understanding the entire Git workflow from start to finish.

  • Access 418 pages of content 24/7
  • Explore project history, find revisions using different criteria, & filter & format how history looks
  • Manage your working directory & staging area for commits & interactively create new revisions & amend them
  • Set up repositories & branches for collaboration
  • Submit your own contributions & integrate contributions from other developers via merging or rebasing
  • Customize Git behavior system-wide, on a per-user, per-repository, & per-file basis
  • Take up the administration & set up of Git repositories, configure access, find & recover from repository errors, & perform repository maintenance
  • Choose a workflow & configure & set up support for the chosen workflow

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt Publishing’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Xamarin Cross-Platform Development Cookbook


KEY FEATURES

The Xamarin Forms platform lets you create native mobile applications for iOS, Android, and Windows Phone all at the same time. With Xamarin you can share large amounts of code, such as the UI, business logic, data models, SQLite data access, HTTP data access, and file storage across all three platforms. That is a huge consolidation of time. This book provides recipes on how to create an architecture that will be maintainable and extendable.

  • Access 416 pages of content 24/7
  • Create & customize your cross-platform UI
  • Understand & explore cross-platform patterns & practices
  • Use the out-of-the-box services to support third-party libraries
  • Find out how to get feedback while your application is used by your users
  • Bind collections to ListView & customize its appearance w/ custom cells
  • Create shared data access using a local SQLite database & a REST service
  • Test & monitor your applications

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt Publishing’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Swift 3 Functional Programming


KEY FEATURES

Whether you're new to functional programming and Swift or experienced, this book will strengthen the skills you need to design and develop high-quality, scalable, and efficient applications. Based on the Swift 3 Developer preview version, it focuses on simplifying functional programming (FP) paradigms to solve many day-to-day development problems.

  • Access 296 pages of content 24/7
  • Learn first-class, higher-order, & pure functions
  • Explore closures & capturing values
  • Understand value & reference types
  • Discuss enumerations, algebraic data types, patterns, & pattern matching
  • Combine FP paradigms w/ OOP, FRP, & POP in your day-to-day development activities
  • Develop a back end application w/ Swift

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt Publishing’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Scala High Performance Programming


KEY FEATURES

Scala is a statically and strongly typed language that blends functional and object-oriented paradigms. It has grown in popularity as an appealing and pragmatic choice to write production-ready software in the functional paradigm, enabling you to solve problems with less code and lower maintenance costs than alternative. This book arms you with the knowledge you need to create performant Scala applications, starting with the basics.

  • Access 274 pages of content 24/7
  • Analyze the performance of JVM applications by developing JMH benchmarks & profiling with Flight Recorder
  • Discover use cases & performance tradeoffs of Scala language features, & eager & lazy collections
  • Explore event sourcing to improve performance while working w/ stream processing pipelines
  • Dive into asynchronous programming to extract performance on multicore systems using Scala Future & Scalaz Task
  • Design distributed systems w/ conflict-free replicated data types (CRDTs) to take advantage of eventual consistency without synchronization
  • Understand the impact of queues on system performance & apply the free monad to build systems robust to high levels of throughput

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt Publishing’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

          Machine Learning and Data Science eBook and Course Bundle for $34   
A Complete Library On Modern Data Tools & Techniques That Can Give You A Major Career Boost
Expires April 30, 2022 23:59 PST
Buy now and get 92% off

Learning Ansible 2: Second Edition eBook


KEY FEATURES

Ansible is an open source automation platform that assists organizations with tasks such as configuration management, application deployment, orchestration, and task automation. In this book, you'll learn about the fundamentals and practical aspects of Ansible 2, getting accustomed to new features and learning how to integrate with cloud platforms like Amazon Web Services. By the end, you'll be able to leverage Ansible parameters to expedite tasks for your organization. Or yourself.

  • Access 240 pages of content 24/7
  • Set up Ansible 2 & an Ansible 2 project in a future-proof way
  • Perform basic operations w/ Ansible 2 such as creating, copying, moving, changing, & deleting files
  • Deploy complete cloud environments using Ansible 2 on AWS & DigitalOcean
  • Explore complex operations w/ Ansible 2
  • Develop & test Ansible playbooks
  • Write a custom module & test it

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Practical DevOps eBook


KEY FEATURES

DevOps is a practical field that focuses on delivering business value as efficiently as possible. DevOps encompasses all the flows from code through testing environments to production environments, stressing cooperation between different roles and how they can work together more closely. Through this book, you'll learn how DevOps affects architecture, starting by creating a sample enterprise Java application that you will continue to work with throughout the following chapters.

  • Access 240 pages of content 24/7
  • Understand how all DevOps systems fit together to form a larger whole
  • Set up & familiarize yourself w/ all the tools you need to be efficient w/ DevOps
  • Design an application that is suitable for continuous deployment systems
  • Store & manage your code effectively using different options such as Git, Gerrit, & Gitlab
  • Configure a job to build a sample CRUD application
  • Test the code using automated regression testing w/ Jenkins Selenium
  • Deploy your code using tools such as Puppet, Ansible, Palletops, Chef, & Vagrant
  • Monitor the health of your code w/ Nagios, Munin, & Graphite

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

DevOps Automation Cookbook eBook


KEY FEATURES

There has been a recent explosion in tools that allow you to redefine the delivery of infrastructure and applications, using a combination of automation and testing to deliver continuous deployment. This book shows you how to use some of the newest and most exciting tools to revolutionize the way you deliver applications and software. By tackling real-world issues, you'll be guided through a huge variety of tools.

  • Access 334 pages of content 24/7
  • Manage, use, & work w/ code in the Git version management system
  • Create hosts automatically using a simple combination of TFTP, DHCP, & pre-seeds
  • Implement virtual hosts using the ubiquitous VMware ESXi hypervisor
  • Control configuration using Ansible
  • Develop powerful, consistent, & portable containers using Docker
  • Track trends, discover data, & monitor key systems using InfluxDB, syslog, & Sensu
  • Deal efficiently w/ powerful cloud infrastructures using AWS Infrastructure & the Heroku Platform as services

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Python Machine Learning eBook


KEY FEATURES

Machine learning is transforming the way businesses operate, and being able to understand trends and patterns in complex data is becoming critical for success. Python can help you deliver key insights into your data by running unique algorithms and statistical models. Covering a wide range of powerful Python libraries, this book will get you up to speed with machine learning.

  • Access 454 pages of content 24/7
  • Find out how different machine learning techniques can be used to answer different data analysis questions
  • Learn how to build neural networks using Python libraries & tools such as Keras & Theano
  • Write clean & elegant Python code to optimize the strength of machine learning algorithms
  • Discover how to embed your machine learning model in a web application
  • Predict continuous target outcomes using regression analysis
  • Uncover hidden patterns & structures in data w/ clustering

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Mastering Python for Data Science eBook


KEY FEATURES

The Python programming language, beyond having conquered the scientific community in the last decade, is now an indispensable tool for data scientists. Using Python will offer you a fast, reliable, cross-platform, and mature environment for data analysis, machine learning, and algorithmic problem solving. This comprehensive guide will help you move beyond the hype and transcend the theory by providing you with a hands-on, advanced study of data science.

  • Access 294 pages of content 24/7
  • Manage data & perform linear algebra in Python
  • Derive inferences from the analysis by performing inferential statistics
  • Solve data science problems in Python
  • Create high-end visualizations using Python
  • Evaluate & apply the linear regression technique to estimate the relationships among variables
  • Build recommendation engines w/ the various collaborative filtering algorithms
  • Apply ensemble methods to improve your predictions

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Practical Data Analysis eBook


KEY FEATURES

Data analysis is more important in business than ever and data scientists are getting paid the big bucks to help companies make better informed decisions. This book explains basic data algorithms using hands-on machine learning techniques. You'll perform data-driven innovation processing for several types of data such as text, images, social network graphs, documents, and more.

  • Access 338 pages of content 24/7
  • Acquire, format, & visualize your data
  • Build an image-similarity search engine
  • Generate meaningful visualizations that anyone can understand
  • Get started w/ analyzing social network graphs
  • Find out how to implement sentiment text analysis
  • Install data analysis tools such as Pandas, MongoDB, & Apache Spark
  • Implement machine learning algorithms such as classification or forecasting

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Data Mining with Python


KEY FEATURES

Every business wants to gain insights from data to make more informed decisions. Data mining provides a way of finding these insights, and Python is one of the most popular languages with which to perform it. In this course, you will discover the key concepts of data mining and learn how to apply different techniques to gain insight to real-world data. By course's end, you'll have a valuable skill that companies are clamoring to hire for.

  • Access 21 lectures & 2 hours of content 24/7
  • Discover data mining techniques & the Python libraries used for data mining
  • Tackle notorious data mining problems to get a concrete understanding of these techniques
  • Understand the process of cleaning data & the steps involved in filtering out noise
  • Build an intelligent application that makes predictions from data
  • Learn about classification & regression techniques like logistic regression, k-NN classifier, & mroe
  • Predict house prices & the number of TV show viewers

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Saimadhu Polamuri is a data science educator and the founder of Data Aspirant, a Data Science portal for beginners. He has 3 years of experience in data mining and 5 years of experience in Python. He is also interested in big data technologies such as Hadoop, Pig, and Spark. He has a good command of the R programming language and Matlab. He has a rudimentary understanding of Cpp Computer vision library (opencv) and big data technologies.

Python Machine Learning Projects


KEY FEATURES

Machine learning gives you extremely powerful insights into data, and has become so ubiquitous you see it nearly constantly while you browse the internet without even knowing it. Implementations of machine learning are as diverse as recommendation systems to self-driving cars. In this course, you'll be introduced to a unique blend of projects that will teach you what machine learning is all about and how you can use Python to create machine learning projects.

  • Access 26 lectures & 3 hours of content 24/7
  • Work on six independent projects to help you master machine learning in Python
  • Cover concepts such as classification, regression, clustering, & more
  • Apply various machine learning algorithms
  • Master Python's packages & libraries to facilitate computation
  • Implement your own machine learning models

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Alexander T. Combs is an experienced data scientist, strategist, and developer with a background in financial data extraction, natural language processing and generation, and quantitative and statistical modeling. He is currently a full-time lead instructor for a data science immersive program in New York City.

          Machine Learning with Python Course and E-Book Bundle for $49   
4 E-Books & 5 Courses to Help You Perform Machine Learning Analytics & Command High-Paying Jobs
Expires January 22, 2022 23:59 PST
Buy now and get 92% off

Deep Learning with TensorFlow


KEY FEATURES

Deep learning is the intersection of statistics, artificial intelligence, and data to build accurate models, and is one of the most important new frontiers in technology. TensorFlow is one of the newest and most comprehensive libraries for implementing deep learning. Over this course you'll explore some of the possibilities of deep learning, and how to use TensorFlow to process data more effectively than ever.

  • Access 22 lectures & 2 hours of content 24/7
  • Discover the efficiency & simplicity of TensorFlow
  • Process & change how you look at data
  • Sift for hidden layers of abstraction using raw data
  • Train your machine to craft new features to make sense of deeper layers of data
  • Explore logistic regression, convolutional neural networks, recurrent neural networks, high level interfaces, & more

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Dan Van Boxel is a Data Scientist and Machine Learning Engineer with over 10 years of experience. He is most well-known for "Dan Does Data," a YouTube livestream demonstrating the power and pitfalls of neural networks. He has developed and applied novel statistical models of machine learning to topics such as accounting for truck traffic on highways, travel time outlier detection, and other areas. Dan has also published research and presented findings at the Transportation Research Board and other academic journals.

Beginning Python


KEY FEATURES

Python is the general purpose, multi-paradigm programming language that many professionals consider one of the best beginner language due its relative simplicity and applicability to many coding arenas. This course assumes no prior experience and helps you dive into Python fundamentals to come to grips with this popular language and start your coding odyssey off right.

  • Access 43 lectures & 4.5 hours of content 24/7
  • Learn variables, numbers, strings, & more essential components of Python
  • Make decisions on your programs w/ conditional statements
  • See how functions play a major role in providing a high degree of code recycling
  • Create modules in Python
  • Perform image manipulations w/ Python

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

William Fiset is a Mathematics and Computer Science Honors student at Mount Allison University with in interest in competitive programming. William has been a Python developer for +4 years, starting his early Python experience with game development. He owns a popular YouTube channel that teaches Python to beginners and the basics of game development.

Deep Learning with Python


KEY FEATURES

You've seen deep learning everywhere, but you may not have realized it. This discipline is one of the leading solutions for image recognition, speech recognition, object recognition, and language translation - basically the tools you see Google roll out every day. Over this course, you'll use Python to expand your deep learning knowledge to cover backpropagation and its ability to train neural networks.

  • Access 19 lectures & 2 hours of content 24/7
  • Train neural networks in deep learning & to understand automatic differentiation
  • Cover convolutional & recurrent neural networks
  • Build up the theory that covers supervised learning
  • Integrate search & image recognition, & object processing
  • Examine the performance of the sentimental analysis model

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Eder Santana is a PhD candidate in Electrical and Computer Engineering. His thesis topic is on Deep and Recurrent neural networks. After working for 3 years with Kernel Machines (SVMs, Information Theoretic Learning, and so on), Eder moved to the field of deep learning 2.5 years ago, when he started learning Theano, Caffe, and other machine learning frameworks. Now, Eder contributes to Keras: Deep Learning Library for Python. Besides deep learning, he also likes data visualization and teaching machine learning, either on online forums or as a teacher assistant.

Data Mining with Python


KEY FEATURES

Every business wants to gain insights from data to make more informed decisions. Data mining provides a way of finding these insights, and Python is one of the most popular languages with which to perform it. In this course, you will discover the key concepts of data mining and learn how to apply different techniques to gain insight to real-world data. By course's end, you'll have a valuable skill that companies are clamoring to hire for.

  • Access 21 lectures & 2 hours of content 24/7
  • Discover data mining techniques & the Python libraries used for data mining
  • Tackle notorious data mining problems to get a concrete understanding of these techniques
  • Understand the process of cleaning data & the steps involved in filtering out noise
  • Build an intelligent application that makes predictions from data
  • Learn about classification & regression techniques like logistic regression, k-NN classifier, & mroe
  • Predict house prices & the number of TV show viewers

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Saimadhu Polamuri is a data science educator and the founder of Data Aspirant, a Data Science portal for beginners. He has 3 years of experience in data mining and 5 years of experience in Python. He is also interested in big data technologies such as Hadoop, Pig, and Spark. He has a good command of the R programming language and Matlab. He has a rudimentary understanding of Cpp Computer vision library (opencv) and big data technologies.

Data Visualization: Representing Information on the Modern Web E-Book


KEY FEATURES

You see graphs all over the internet, the workplace, and your life - but do you ever stop to consider how all that data has been visualized? There are many tools and programs that data scientists use to visualize massive, disorganized sets of data. This e-book contains content from "Data Visualization: A Successful Design Process" by Andy Kirk, "Social Data Visualization with HTML5 and JavaScript" by Simon Timms," and "Learning d3.js Data Visualization, Second Edition" by Andrew Rininsland and Swizec Teller, all professionally curated to give you an easy-to-follow track to master data visualization in your own work.

  • Harness the power of D3 by building interactive & real-time data-driven web visualizations
  • Find out how to use JavaScript to create compelling visualizations of social data
  • Identify the purpose of your visualization & your project’s parameters to determine overriding design considerations across your project’s execution
  • Apply critical thinking to visualization design & get intimate with your dataset to identify its potential visual characteristics
  • Explore the various features of HTML5 to design creative visualizations
  • Discover what data is available on Stack Overflow, Facebook, Twitter, & Google+
  • Gain a solid understanding of the common D3 development idioms

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Python: Master the Art of Design Patterns E-Book


KEY FEATURES

Get a complete introduction to the many uses of Python in this curated e-book drawing content from "Python 3 Object-Oriented Programming, Second Edition" by Dusty Phillips, "Learning Python Design Patterns, Second Edition" by Chetan Giridhar, and "Mastering Python Design Patterns" by Sakis Kasampalis. Once you've got your feet wet, you'll focus in on the most common and useful design patterns from a Python perspective. By course's end, you'll have a complex understanding of designing patterns with Python, allowing you to develop better coding practices and create systems architectures.

  • Discover what design patterns are & how to apply them to writing Python
  • Implement objects in Python by creating classes & defining methods
  • Separate related objects into a taxonomy of classes & describe the properties & behaviors of those objects via the class interface
  • Understand when to use object-oriented features & when not to use them
  • Explore the design principles that form the basis of software design, such as loose coupling, the Hollywood principle, & the Open Close principle, & more
  • Use Structural Design Patterns to find out how objects & classes interact to build larger applications
  • Improve the productivity & code base of your application using Python design patterns
  • Secure an interface using the Proxy pattern

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Python: Deeper Insights into Machine Learning E-Book


KEY FEATURES

Machine learning and predictive analytics are becoming one of the key strategies for unlocking growth in a challenging contemporary marketplace. Consequently, professionals who can run machine learning systems are in high demand and are commanding high salaries. This e-book will help you get a grip on advanced Python techniques to design machine learning systems.

  • Learn to write clean & elegant Python code that will optimize the strength of your algorithms
  • Uncover hidden patterns & structures in data w/ clustering
  • Improve accuracy & consistency of results using powerful feature engineering techniques
  • Gain practical & theoretical understanding of cutting-edge deep learning algorithms
  • Solve unique tasks by building models
  • Come to grips w/ the machine learning design process

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Python: Real-World Data Science E-Book


KEY FEATURES

Data science is one of the most in-demand fields today, and this e-book will guide you to becoming an efficient data science practitioner in Python. Once you've nailed down Python fundamentals, you'll learn how to perform data analysis with Python in an example-driven way. From there, you'll learn how to scale your knowledge to processing machine learning algorithms.

  • Implement objects in Python by creating classes & defining methods
  • Get acquainted w/ NumPy to use it w/ arrays & array-oriented computing in data analysis
  • Create effective visualizations for presenting your data using Matplotlib
  • Process & analyze data using the time series capabilities of pandas
  • Interact w/ different kind of database systems, such as file, disk format, Mongo, & Redis
  • Apply data mining concepts to real-world problems
  • Compute on big data, including real-time data from the Internet
  • Explore how to use different machine learning models to ask different questions of your data

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done–whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

Mastering Python


KEY FEATURES

Python is one of the most popular programming languages today, enabling developers to write efficient, reusable code. Here, you'll add Python to your repertoire, learning to set up your development environment, master use of its syntax, and much more. You'll soon understand why engineers at startups like Dropbox rely on Python: it makes the process of creating and iterating upon apps a piece of cake.

  • Master Python w/ 3 hours of content
  • Build Python packages to efficiently create reusable code
  • Creating tools & utility programs, and write code to automate software
  • Distribute computation tasks across multiple processors
  • Handle high I/O loads w/ asynchronous I/O for smoother performance
  • Utilize Python's metaprogramming & programmable syntax features
  • Implement unit testing to write better code, faster

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals. Working towards that vision, it has published over 3,000 books and videos so far, providing IT professionals with the actionable knowledge they need to get the job done –whether that’s specific learning on an emerging technology or optimizing key skills in more established tools.

          Machine Learning & AI for Business Bundle for $39   
Discover Artificial Intelligence, Machine Learning & the R Programming Language in This 4-Course Bundle
Expires January 08, 2022 23:59 PST
Buy now and get 96% off

Artificial Intelligence & Machine Learning Training


KEY FEATURES

Artificial intelligence is the simulation of human intelligence through machines using computer systems. No, it's not just a thing of the movies, artificial intelligence systems are used today in medicine, robotics, remote sensors, and even in ATMs. This booming field of technology is one of the most exciting frontiers in science and this course will give you a solid introduction.

  • Access 91 lectures & 17 hours of content 24/7
  • Identify potential areas of applications of AI
  • Learn basic ideas & techniques in the design of intelligent computer systems
  • Discover statistical & decision-theoretic modeling paradigms
  • Understand how to build agents that exhibit reasoning & learning
  • Apply regression, classification, clustering, retrieval, recommender systems, & deep learning

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime access
  • Access options: web streaming, mobile streaming
  • Certification of completion included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

An initiative by IIT IIM Graduates, eduCBA is a leading global provider of skill based education addressing the needs 500,000+ members across 40+ Countries. Our unique step-by-step, online learning model along with amazing 1700+ courses prepared by top notch professionals from the Industry help participants achieve their goals successfully. All our training programs are Job oriented skill based programs demanded by the Industry. At eduCBA, it is a matter of pride to us to make job oriented hands on courses available to anyone, any time and anywhere. Therefore we ensure that you can enroll 24 hours a day, seven days a week, 365 days a year. Learn at a time and place, and pace that is of your choice. Plan your study to suit your convenience and schedule. For more details on this course and instructor, click here.

Introduction to Machine Learning


KEY FEATURES

Machine learning is the science of getting computers to act without being explicitly programmed by harvesting data and using algorithms to determine outputs. You see this science in action all the time in spam filtering, search engines, and online ad space, and its uses are only expanding into more powerful applications like self-driving cars and speech recognition. In this crash course, you'll get an introduction to the mechanisms of algorithms and how they are used to drive machine learning.

  • Access 10 lectures & 2 hours of content 24/7
  • Learn machine learning concepts like K-nearest neighbor learning, non-symbolic machine learning, & more
  • Explore the science behind neural networks
  • Discover data mining & statistical pattern recognition
  • Gain practice implementing the most effective machine learning techniques

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime access
  • Access options: web streaming, mobile streaming
  • Certification of completion included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

An initiative by IIT IIM Graduates, eduCBA is a leading global provider of skill based education addressing the needs 500,000+ members across 40+ Countries. Our unique step-by-step, online learning model along with amazing 1700+ courses prepared by top notch professionals from the Industry help participants achieve their goals successfully. All our training programs are Job oriented skill based programs demanded by the Industry. At eduCBA, it is a matter of pride to us to make job oriented hands on courses available to anyone, any time and anywhere. Therefore we ensure that you can enroll 24 hours a day, seven days a week, 365 days a year. Learn at a time and place, and pace that is of your choice. Plan your study to suit your convenience and schedule. For more details on this course and instructor, click here.

Data Science and Machine Learning with R (Part #1): Understanding R


KEY FEATURES

The R programming language has become the most widely use language for computational statistics, visualization, and data science - all essential tools in artificial intelligence and machine learning. Companies like Google, Facebook, and LinkedIn use R to perform business data analytics and develop algorithms that help operations move fluidly. In this introductory course, you'll learn the basics of R and get a better idea of how it can be applied.

  • Access 33 lectures & 6 hours of content 24/7
  • Install R studio & learn the basics of R functions
  • Understand data types in R, the recycling rule, special numerical values, & more
  • Explore parallel summary functions, logical conjunctions, & pasting strings together
  • Discover the evolution of business analytics

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime access
  • Access options: web streaming, mobile streaming
  • Certification of completion included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

An initiative by IIT IIM Graduates, eduCBA is a leading global provider of skill based education addressing the needs 500,000+ members across 40+ Countries. Our unique step-by-step, online learning model along with amazing 1700+ courses prepared by top notch professionals from the Industry help participants achieve their goals successfully. All our training programs are Job oriented skill based programs demanded by the Industry. At eduCBA, it is a matter of pride to us to make job oriented hands on courses available to anyone, any time and anywhere. Therefore we ensure that you can enroll 24 hours a day, seven days a week, 365 days a year. Learn at a time and place, and pace that is of your choice. Plan your study to suit your convenience and schedule.

Data Science and Machine Learning with R (Part #2): Statistics with R


KEY FEATURES

Further your understanding of R with this immersive course on one of the most important tools for business analytics. You'll discuss data manipulation and statistics basics before diving into practical, functional use of R. By course's end, you'll have a strong understanding of R that you can leverage on your resume for high-paying analytics jobs.

  • Access 30 lectures & 6 hours of content 24/7
  • Understand variables, quantiles, data creation, & more
  • Calculate variance, covariance, & build scatter plots
  • Explore probability & distribution
  • Use practice problems to reinforce your learning

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime access
  • Access options: web streaming, mobile streaming
  • Certification of completion included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: intermediate

Compatibility

  • Internet required

THE EXPERT

An initiative by IIT IIM Graduates, eduCBA is a leading global provider of skill based education addressing the needs 500,000+ members across 40+ Countries. Our unique step-by-step, online learning model along with amazing 1700+ courses prepared by top notch professionals from the Industry help participants achieve their goals successfully. All our training programs are Job oriented skill based programs demanded by the Industry. At eduCBA, it is a matter of pride to us to make job oriented hands on courses available to anyone, any time and anywhere. Therefore we ensure that you can enroll 24 hours a day, seven days a week, 365 days a year. Learn at a time and place, and pace that is of your choice. Plan your study to suit your convenience and schedule. For more details on this course and instructor, click here.

          The Advanced Guide to Deep Learning and Artificial Intelligence Bundle for $42   
This High-Intensity 14.5 Hour Bundle Will Help You Help Computers Address Some of Humanity's Biggest Problems
Expires November 28, 2021 23:59 PST
Buy now and get 91% off

Deep Learning: Convolutional Neural Networks in Python


KEY FEATURES

In this course, intended to expand upon your knowledge of neural networks and deep learning, you'll harness these concepts for computer vision using convolutional neural networks. Going in-depth on the concept of convolution, you'll discover its wide range of applications, from generating image effects to modeling artificial organs.

  • Access 25 lectures & 3 hours of content 24/7
  • Explore the StreetView House Number (SVHN) dataset using convolutional neural networks (CNNs)
  • Build convolutional filters that can be applied to audio or imaging
  • Extend deep neural networks w/ just a few functions
  • Test CNNs written in both Theano & TensorFlow
Note: we strongly recommend taking The Deep Learning & Artificial Intelligence Introductory Bundle before this course.

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but you must have some knowledge of calculus, linear algebra, probability, Python, Numpy, and be able to write a feedforward neural network in Theano and TensorFlow.
  • All code for this course is available for download here, in the directory cnn_class

Compatibility

  • Internet required

THE EXPERT

The Lazy Programmer is a data scientist, big data engineer, and full stack software engineer. For his master's thesis he worked on brain-computer interfaces using machine learning. These assist non-verbal and non-mobile persons to communicate with their family and caregivers.

He has worked in online advertising and digital media as both a data scientist and big data engineer, and built various high-throughput web services around said data. He has created new big data pipelines using Hadoop/Pig/MapReduce, and created machine learning models to predict click-through rate, news feed recommender systems using linear regression, Bayesian Bandits, and collaborative filtering and validated the results using A/B testing.

He has taught undergraduate and graduate students in data science, statistics, machine learning, algorithms, calculus, computer graphics, and physics for students attending universities such as Columbia University, NYU, Humber College, and The New School.

Multiple businesses have benefitted from his web programming expertise. He does all the backend (server), frontend (HTML/JS/CSS), and operations/deployment work. Some of the technologies he has used are: Python, Ruby/Rails, PHP, Bootstrap, jQuery (Javascript), Backbone, and Angular. For storage/databases he has used MySQL, Postgres, Redis, MongoDB, and more.

Unsupervised Deep Learning in Python


KEY FEATURES

In this course, you'll dig deep into deep learning, discussing principal components analysis and a popular nonlinear dimensionality reduction technique known as t-distributed stochastic neighbor embedding (t-SNE). From there you'll learn about a special type of unsupervised neural network called the autoencoder, understanding how to link many together to get a better performance out of deep neural networks.

  • Access 30 lectures & 3 hours of content 24/7
  • Discuss restricted Boltzmann machines (RBMs) & how to pretrain supervised deep neural networks
  • Learn about Gibbs sampling
  • Use PCA & t-SNE on features learned by autoencoders & RBMs
  • Understand the most modern deep learning developments

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: intermediate, but you must have some knowledge of calculus, linear algebra, probability, Python, Numpy, and be able to write a feedforward neural network in Theano and TensorFlow.
  • All code for this course is available for download here, in the directory unsupervised_class2

Compatibility

  • Internet required

THE EXPERT

The Lazy Programmer is a data scientist, big data engineer, and full stack software engineer. For his master's thesis he worked on brain-computer interfaces using machine learning. These assist non-verbal and non-mobile persons to communicate with their family and caregivers.

He has worked in online advertising and digital media as both a data scientist and big data engineer, and built various high-throughput web services around said data. He has created new big data pipelines using Hadoop/Pig/MapReduce, and created machine learning models to predict click-through rate, news feed recommender systems using linear regression, Bayesian Bandits, and collaborative filtering and validated the results using A/B testing.

He has taught undergraduate and graduate students in data science, statistics, machine learning, algorithms, calculus, computer graphics, and physics for students attending universities such as Columbia University, NYU, Humber College, and The New School.

Multiple businesses have benefitted from his web programming expertise. He does all the backend (server), frontend (HTML/JS/CSS), and operations/deployment work. Some of the technologies he has used are: Python, Ruby/Rails, PHP, Bootstrap, jQuery (Javascript), Backbone, and Angular. For storage/databases he has used MySQL, Postgres, Redis, MongoDB, and more.

Deep Learning: Recurrent Neural Networks in Python


KEY FEATURES

A recurrent neural network is a class of artificial neural network where connections form a directed cycle, using their internal memory to process arbitrary sequences of inputs. This makes them capable of tasks like handwriting and speech recognition. In this course, you'll explore this extremely expressive facet of deep learning and get up to speed on this revolutionary new advance.

  • Access 32 lectures & 4 hours of content 24/7
  • Get introduced to the Simple Recurrent Unit, also known as the Elman unit
  • Extend the XOR problem as a parity problem
  • Explore language modeling
  • Learn Word2Vec to create word vectors or word embeddings
  • Look at the long short-term memory unit (LSTM), & gated recurrent unit (GRU)
  • Apply what you learn to practical problems like learning a language model from Wikipedia data

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but you must have some knowledge of calculus, linear algebra, probability, Python, Numpy, and be able to write a feedforward neural network in Theano and TensorFlow.
  • All code for this course is available for download here, in the directory rnn_class

Compatibility

  • Internet required

THE EXPERT

The Lazy Programmer is a data scientist, big data engineer, and full stack software engineer. For his master's thesis he worked on brain-computer interfaces using machine learning. These assist non-verbal and non-mobile persons to communicate with their family and caregivers.

He has worked in online advertising and digital media as both a data scientist and big data engineer, and built various high-throughput web services around said data. He has created new big data pipelines using Hadoop/Pig/MapReduce, and created machine learning models to predict click-through rate, news feed recommender systems using linear regression, Bayesian Bandits, and collaborative filtering and validated the results using A/B testing.

He has taught undergraduate and graduate students in data science, statistics, machine learning, algorithms, calculus, computer graphics, and physics for students attending universities such as Columbia University, NYU, Humber College, and The New School.

Multiple businesses have benefitted from his web programming expertise. He does all the backend (server), frontend (HTML/JS/CSS), and operations/deployment work. Some of the technologies he has used are: Python, Ruby/Rails, PHP, Bootstrap, jQuery (Javascript), Backbone, and Angular. For storage/databases he has used MySQL, Postgres, Redis, MongoDB, and more.

Natural Language Processing with Deep Learning in Python


KEY FEATURES

In this course you'll explore advanced natural language processing - the field of computer science and AI that concerns interactions between computer and human languages. Over the course you'll learn four new NLP architectures and explore classic NLP problems like parts-of-speech tagging and named entity recognition, and use recurrent neural networks to solve them. By course's end, you'll have a firm grasp on natural language processing and its many applications.

  • Access 40 lectures & 4.5 hours of content 24/7
  • Discover Word2Vec & how it maps words to a vector space
  • Explore GLoVe's use of matrix factorization & how it contributes to recommendation systems
  • Learn about recursive neural networks which will help solve the problem of negation in sentiment analysis

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: advanced, but you must have some knowledge of calculus, linear algebra, probability, Python, Numpy, and be able to write a feedforward neural network in Theano and TensorFlow.
  • All code for this course is available for download here, in the directory nlp_class2

Compatibility

  • Internet required

THE EXPERT

The Lazy Programmer is a data scientist, big data engineer, and full stack software engineer. For his master's thesis he worked on brain-computer interfaces using machine learning. These assist non-verbal and non-mobile persons to communicate with their family and caregivers.

He has worked in online advertising and digital media as both a data scientist and big data engineer, and built various high-throughput web services around said data. He has created new big data pipelines using Hadoop/Pig/MapReduce, and created machine learning models to predict click-through rate, news feed recommender systems using linear regression, Bayesian Bandits, and collaborative filtering and validated the results using A/B testing.

He has taught undergraduate and graduate students in data science, statistics, machine learning, algorithms, calculus, computer graphics, and physics for students attending universities such as Columbia University, NYU, Humber College, and The New School.

Multiple businesses have benefitted from his web programming expertise. He does all the backend (server), frontend (HTML/JS/CSS), and operations/deployment work. Some of the technologies he has used are: Python, Ruby/Rails, PHP, Bootstrap, jQuery (Javascript), Backbone, and Angular. For storage/databases he has used MySQL, Postgres, Redis, MongoDB, and more.

          Practical Deep Learning in Theano and TensorFlow for $29   
Build & Understand Neural Networks Using Two of the Most Popular Deep Learning Techniques
Expires November 02, 2021 23:59 PST
Buy now and get 75% off

KEY FEATURES

The applications of Deep Learning are many, and constantly growing, just like the neural networks that it supports. In this course, you'll delve into advanced concepts of Deep Learning, starting with the basics of TensorFlow and Theano, understanding how to build neural networks with these popular tools. Using these tools, you'll learn how to build and understand a neural network, knowing exactly how to visualize what is happening within a model as it learns.

  • Access 23 lectures & 3 hours of programming 24/7
  • Discover batch & stochastic gradient descent, two techniques that allow you to train on a small sample of data at each iteration, greatly speeding up training time
  • Discuss how momentum can carry you through local minima
  • Learn adaptive learning rate techniques like AdaGrad & RMSprop
  • Explore dropout regularization & other modern neural network techniques
  • Understand the variables & expressions of TensorFlow & Theano
  • Set up a GPU-instance on AWS & compare the speed of CPU vs GPU for training a deep neural network
  • Look at the MNIST dataset & compare against known benchmarks
Like what you're learning? Try out the The Advanced Guide to Deep Learning and Artificial Intelligence next.

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but you must have some knowledge of calculus, linear algebra, probability, Python, and Numpy
  • All code for this course is available for download here, in the directory ann_class2

Compatibility

  • Internet required

THE EXPERT

The Lazy Programmer is a data scientist, big data engineer, and full stack software engineer. For his master's thesis he worked on brain-computer interfaces using machine learning. These assist non-verbal and non-mobile persons to communicate with their family and caregivers.

He has worked in online advertising and digital media as both a data scientist and big data engineer, and built various high-throughput web services around said data. He has created new big data pipelines using Hadoop/Pig/MapReduce, and created machine learning models to predict click-through rate, news feed recommender systems using linear regression, Bayesian Bandits, and collaborative filtering and validated the results using A/B testing.

He has taught undergraduate and graduate students in data science, statistics, machine learning, algorithms, calculus, computer graphics, and physics for students attending universities such as Columbia University, NYU, Humber College, and The New School.

Multiple businesses have benefitted from his web programming expertise. He does all the backend (server), frontend (HTML/JS/CSS), and operations/deployment work. Some of the technologies he has used are: Python, Ruby/Rails, PHP, Bootstrap, jQuery (Javascript), Backbone, and Angular. For storage/databases he has used MySQL, Postgres, Redis, MongoDB, and more.

          The Deep Learning and Artificial Intelligence Introductory Bundle for $39   
Companies Are Relying on Machines & Networks to Learn Faster Than Ever. Time to Catch Up.
Expires October 31, 2021 23:59 PST
Buy now and get 91% off

Deep Learning Prerequisites: Linear Regression in Python


KEY FEATURES

Deep Learning is a set of powerful algorithms that are the force behind self-driving cars, image searching, voice recognition, and many, many more applications we consider decidedly "futuristic." One of the central foundations of deep learning is linear regression; using probability theory to gain deeper insight into the "line of best fit." This is the first step to building machines that, in effect, act like neurons in a neural network as they learn while they're fed more information. In this course, you'll start with the basics of building a linear regression module in Python, and progress into practical machine learning issues that will provide the foundations for an exploration of Deep Learning.

  • Access 20 lectures & 2 hours of content 24/7
  • Use a 1-D linear regression to prove Moore's Law
  • Learn how to create a machine learning model that can learn from multiple inputs
  • Apply multi-dimensional linear regression to predict a patient's systolic blood pressure given their age & weight
  • Discuss generalization, overfitting, train-test splits, & other issues that may arise while performing data analysis
Like what you're learning? Try out the The Advanced Guide to Deep Learning and Artificial Intelligence next.

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but you must have some knowledge of calculus, linear algebra, probability, Python, and Numpy
  • All code for this course is available for download here, in the directory linear_regression_class

Compatibility

  • Internet required

THE EXPERT

The Lazy Programmer is a data scientist, big data engineer, and full stack software engineer. For his master's thesis he worked on brain-computer interfaces using machine learning. These assist non-verbal and non-mobile persons to communicate with their family and caregivers.

He has worked in online advertising and digital media as both a data scientist and big data engineer, and built various high-throughput web services around said data. He has created new big data pipelines using Hadoop/Pig/MapReduce, and created machine learning models to predict click-through rate, news feed recommender systems using linear regression, Bayesian Bandits, and collaborative filtering and validated the results using A/B testing.

He has taught undergraduate and graduate students in data science, statistics, machine learning, algorithms, calculus, computer graphics, and physics for students attending universities such as Columbia University, NYU, Humber College, and The New School.

Multiple businesses have benefitted from his web programming expertise. He does all the backend (server), frontend (HTML/JS/CSS), and operations/deployment work. Some of the technologies he has used are: Python, Ruby/Rails, PHP, Bootstrap, jQuery (Javascript), Backbone, and Angular. For storage/databases he has used MySQL, Postgres, Redis, MongoDB, and more.

Deep Learning Prerequisites: Logistic Regression in Python


KEY FEATURES

Logistic regression is one of the most fundamental techniques used in machine learning, data science, and statistics, as it may be used to create a classification or labeling algorithm that quite resembles a biological neuron. Logistic regression units, by extension, are the basic bricks in the neural network, the central architecture in deep learning. In this course, you'll come to terms with logistic regression using practical, real-world examples to fully appreciate the vast applications of Deep Learning.

  • Access 31 lectures & 3 hours of content 24/7
  • Code your own logistic regression module in Python
  • Complete a course project that predicts user actions on a website given user data
  • Use Deep Learning for facial expression recognition
  • Understand how to make data-driven decisions
Like what you're learning? Try out the The Advanced Guide to Deep Learning and Artificial Intelligence next.

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but you must have some knowledge of calculus, linear algebra, probability, Python, and Numpy
  • All code for this course is available for download here, in the directory logistic_regression_class

Compatibility

  • Internet required

THE EXPERT

The Lazy Programmer is a data scientist, big data engineer, and full stack software engineer. For his master's thesis he worked on brain-computer interfaces using machine learning. These assist non-verbal and non-mobile persons to communicate with their family and caregivers.

He has worked in online advertising and digital media as both a data scientist and big data engineer, and built various high-throughput web services around said data. He has created new big data pipelines using Hadoop/Pig/MapReduce, and created machine learning models to predict click-through rate, news feed recommender systems using linear regression, Bayesian Bandits, and collaborative filtering and validated the results using A/B testing.

He has taught undergraduate and graduate students in data science, statistics, machine learning, algorithms, calculus, computer graphics, and physics for students attending universities such as Columbia University, NYU, Humber College, and The New School.

Multiple businesses have benefitted from his web programming expertise. He does all the backend (server), frontend (HTML/JS/CSS), and operations/deployment work. Some of the technologies he has used are: Python, Ruby/Rails, PHP, Bootstrap, jQuery (Javascript), Backbone, and Angular. For storage/databases he has used MySQL, Postgres, Redis, MongoDB, and more.

Data Science: Deep Learning in Python


KEY FEATURES

Artificial neural networks are the architecture that make Apple's Siri recognize your voice, Tesla's self-driving cars know where to turn, Google Translate learn new languages, and so many more technological features you have quite possibly taken for granted. The data science that unites all of them is Deep Learning. In this course, you'll build your very first neural network, going beyond basic models to build networks that automatically learn features.

  • Access 37 lectures & 4 hours of content 24/7
  • Extend the binary classification model to multiple classes uing the softmax function
  • Code the important training method, backpropagation, in Numpy
  • Implement a neural network using Google's TensorFlow library
  • Predict user actions on a website given user data using a neural network
  • Use Deep Learning for facial expression recognition
  • Learn some of the newest development in neural networks
Like what you're learning? Try out the The Advanced Guide to Deep Learning and Artificial Intelligence next.

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: intermediate, but you must have some knowledge of calculus, linear algebra, probability, Python, and Numpy
  • All code for this course is available for download here, in the directory ann_class

Compatibility

  • Internet required

THE EXPERT

The Lazy Programmer is a data scientist, big data engineer, and full stack software engineer. For his master's thesis he worked on brain-computer interfaces using machine learning. These assist non-verbal and non-mobile persons to communicate with their family and caregivers.

He has worked in online advertising and digital media as both a data scientist and big data engineer, and built various high-throughput web services around said data. He has created new big data pipelines using Hadoop/Pig/MapReduce, and created machine learning models to predict click-through rate, news feed recommender systems using linear regression, Bayesian Bandits, and collaborative filtering and validated the results using A/B testing.

He has taught undergraduate and graduate students in data science, statistics, machine learning, algorithms, calculus, computer graphics, and physics for students attending universities such as Columbia University, NYU, Humber College, and The New School.

Multiple businesses have benefitted from his web programming expertise. He does all the backend (server), frontend (HTML/JS/CSS), and operations/deployment work. Some of the technologies he has used are: Python, Ruby/Rails, PHP, Bootstrap, jQuery (Javascript), Backbone, and Angular. For storage/databases he has used MySQL, Postgres, Redis, MongoDB, and more.

Data Science: Practical Deep Learning in Theano & TensorFlow


KEY FEATURES

The applications of Deep Learning are many, and constantly growing, just like the neural networks that it supports. In this course, you'll delve into advanced concepts of Deep Learning, starting with the basics of TensorFlow and Theano, understanding how to build neural networks with these popular tools. Using these tools, you'll learn how to build and understand a neural network, knowing exactly how to visualize what is happening within a model as it learns.

  • Access 23 lectures & 3 hours of programming 24/7
  • Discover batch & stochastic gradient descent, two techniques that allow you to train on a small sample of data at each iteration, greatly speeding up training time
  • Discuss how momentum can carry you through local minima
  • Learn adaptive learning rate techniques like AdaGrad & RMSprop
  • Explore dropout regularization & other modern neural network techniques
  • Understand the variables & expressions of TensorFlow & Theano
  • Set up a GPU-instance on AWS & compare the speed of CPU vs GPU for training a deep neural network
  • Look at the MNIST dataset & compare against known benchmarks
Like what you're learning? Try out the The Advanced Guide to Deep Learning and Artificial Intelligence next.

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but you must have some knowledge of calculus, linear algebra, probability, Python, and Numpy
  • All code for this course is available for download here, in the directory ann_class2

Compatibility

  • Internet required

THE EXPERT

The Lazy Programmer is a data scientist, big data engineer, and full stack software engineer. For his master's thesis he worked on brain-computer interfaces using machine learning. These assist non-verbal and non-mobile persons to communicate with their family and caregivers.

He has worked in online advertising and digital media as both a data scientist and big data engineer, and built various high-throughput web services around said data. He has created new big data pipelines using Hadoop/Pig/MapReduce, and created machine learning models to predict click-through rate, news feed recommender systems using linear regression, Bayesian Bandits, and collaborative filtering and validated the results using A/B testing.

He has taught undergraduate and graduate students in data science, statistics, machine learning, algorithms, calculus, computer graphics, and physics for students attending universities such as Columbia University, NYU, Humber College, and The New School.

Multiple businesses have benefitted from his web programming expertise. He does all the backend (server), frontend (HTML/JS/CSS), and operations/deployment work. Some of the technologies he has used are: Python, Ruby/Rails, PHP, Bootstrap, jQuery (Javascript), Backbone, and Angular. For storage/databases he has used MySQL, Postgres, Redis, MongoDB, and more.

          The Complete Machine Learning Bundle for $39   
Master AI & Achieve the Impossible with 10 Courses & 63.5 Hours of Training in Machine Learning
Expires January 24, 2018 23:59 PST
Buy now and get 95% off

Quant Trading Using Machine Learning


KEY FEATURES

Financial markets are fickle beasts that can be extremely difficult to navigate for the average investor. This course will introduce you to machine learning, a field of study that gives computers the ability to learn without being explicitly programmed, while teaching you how to apply these techniques to quantitative trading. Using Python libraries, you'll discover how to build sophisticated financial models that will better inform your investing decisions. Ideally, this one will buy itself back and then some!

  • Access 64 lectures & 11 hours of content 24/7
  • Get a crash course in quantitative trading from stocks & indices to momentum investing & backtesting
  • Discover machine learning principles like decision trees, ensemble learning, random forests & more
  • Set up a historical price database in MySQL using Python
  • Learn Python libraries like Pandas, Scikit-Learn, XGBoost & Hyperopt
  • Access source code any time as a continuing resource

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime access
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but working knowledge of Python would be helpful

Compatibility

  • Internet required

THE EXPERT

Loonycorn is comprised of four individuals--Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh--who have honed their tech expertises at Google and Flipkart. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students. For more details on the course and instructor, click here.

Learn By Example: Statistics and Data Science in R


KEY FEATURES

R is a programming language and software environment for statistical computing and graphics that is widely used among statisticians and data miners for data analysis. In this course, you'll get a thorough run-through of how R works and how it's applied to data science. Before you know it, you'll be crunching numbers like a pro, and be better qualified for many lucrative careers.

  • Access 82 lectures & 9 hours of content 24/7
  • Cover basic statistical principles like mean, median, range, etc.
  • Learn theoretical aspects of statistical concepts
  • Discover datatypes & data structures in R, vectors, arrays, matrices & more
  • Understand Linear Regression
  • Visualize data in R using a variety of charts & graphs
  • Delve into descriptive & inferential statistics

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime access
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Loonycorn is comprised of four individuals--Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh--who have honed their tech expertises at Google and Flipkart. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students.

Learn By Example: Hadoop & MapReduce for Big Data Problems


KEY FEATURES

Big Data sounds pretty daunting doesn't it? Well, this course aims to make it a lot simpler for you. Using Hadoop and MapReduce, you'll learn how to process and manage enormous amounts of data efficiently. Any company that collects mass amounts of data, from startups to Fortune 500, need people fluent in Hadoop and MapReduce, making this course a must for anybody interested in data science.

  • Access 71 lectures & 13 hours of content 24/7
  • Set up your own Hadoop cluster using virtual machines (VMs) & the Cloud
  • Understand HDFS, MapReduce & YARN & their interaction
  • Use MapReduce to recommend friends in a social network, build search engines & generate bigrams
  • Chain multiple MapReduce jobs together
  • Write your own customized partitioner
  • Learn to globally sort a large amount of data by sampling input files

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime access
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Loonycorn is comprised of four individuals--Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh--who have honed their tech expertises at Google and Flipkart. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students.

Byte Size Chunks: Java Object-Oriented Programming & Design


KEY FEATURES

Java seems an appropriate name for a language that seems so dense, you may need a cuppa joe after 10 minutes of self-study. Luckily, you can learn all you need to know in this short course. You'll scale the behemoth that is object-oriented programming, mastering classes, objects, and more to conquer a language that powers everything from online games to chat platforms.

  • Learn Java inside & out w/ 35 lectures & 7 hours of content
  • Master object-oriented (OO) programming w/ classes, objects & more
  • Understand the mechanics of OO: access modifiers, dynamic dispatch, etc.
  • Dive into the underlying principles of OO: encapsulation, abstraction & polymorphism
  • Comprehend how information is organized w/ packages & jars

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime access
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but basic knowledge of Java is suggested

Compatibility

  • Internet required

THE EXPERT

Loonycorn is comprised of four individuals--Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh--who have honed their tech expertises at Google and Flipkart. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students. For more details on the course and instructor, click here.

An Introduction to Machine Learning & NLP in Python


KEY FEATURES

Are you familiar with self-driving cars? Speech recognition technology? These things would not be possible without the help of Machine Learning--the study of pattern recognition and prediction within the field of computer science. This course is taught by Stanford-educated, Silicon Valley experts that have decades of direct experience under their belts. They will teach you, in the simplest way possible (and with major visual techniques), to put Machine Learning and Python into action. With these skills under your belt, your programming skills will take a whole new level of power.

  • Get introduced to Machine Learning w/ 14.5 hours of instruction
  • Learn from a team w/ decades of practical experience in quant trading, analytics & e-commerce
  • Understand complex subjects w/ the help of animations
  • Use hundreds of lines of source code w/ comments to implement natural language processing & machine learning for text summarization, text classification in Python
  • Study natural language processing & sentiment analysis w/ Python

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but some knowledge of Python is suggested

Compatibility

  • Internet required

THE EXPERT

Loonycorn is comprised of four individuals--Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh--who have honed their tech expertises at Google and Flipkart. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students. For more details on the course and instructor, click here.

Byte-Sized-Chunks: Twitter Sentiment Analysis (in Python)


KEY FEATURES

Sentiment Analysis or Opinion Mining is a field of Neuro-linguistic Programming (NLP) that aims to extract subjective information like positive/negative, like/dislike, emotional reactions, and the like. It's an essential component to Machine Learning as it provides valuable training data to a machine. Over this course, you'll learn real examples why Sentiment Analysis is important and how to approach specific problems using Sentiment Analysis.

  • Access 19 lectures & 4 hours of content 24/7
  • Learn Rule-Based & Machine Learning-Based approaches to solving Sentiment Analysis problems
  • Understand Sentiment Lexicons & Regular Expressions
  • Design & implement a Sentiment Analysis measurement system in Python
  • Grasp the underlying Sentiment Analysis theory & its relation to binary classification
  • Identify use-cases for Sentiment Analysis
  • Perform a real Twitter Sentiment Analysis

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but some experience with Python is suggested

Compatibility

  • Internet required

THE EXPERT

Loonycorn is comprised of four individuals--Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh--who have honed their tech expertises at Google and Flipkart. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students. For more details on the course and instructor, click here.

Byte-Sized-Chunks: Decision Trees and Random Forests


KEY FEATURES

Decision trees and random forests are two intuitive and extremely effective Machine Learning techniques that allow you to better predict outcomes from a selected input. Both methods are commonly used in business, and knowing how to implement them can put you ahead of your peers. In this course, you'll learn these techniques by exploring a famous (but morbid) Machine Learning problem: predicting the survival of a passenger on the Titanic.

  • Access 19 lectures & 4.5 hours of content 24/7
  • Design & implement a decision tree to predict survival probabilities aboard the Titanic
  • Understand the risks of overfitting & how random forests help overcome them
  • Identify the use-cases for decision trees & random forests
  • Use provided source code to build decision trees & random forests

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Loonycorn is comprised of four individuals--Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh--who have honed their tech expertises at Google and Flipkart. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students. For more details on the course and instructor, click here.

An Introduction To Deep Learning & Computer Vision


KEY FEATURES

Deep Learning is an exciting branch of Machine Learning that provide solutions for processing the high-dimensional data produced by Computer Vision. This introductory course brings you into the complex, abstract world of Computer Vision and artificial neural networks. By the end, you'll have a solid foundation in a core principle of Machine Learning.

  • Access 9 lectures & 2 hours of content 24/7
  • Design & implement a simple computer vision use-case: digit recognition
  • Train a neural network to classify handwritten digits in Python
  • Build a neural network & specify the training process
  • Grasp the central theory underlying Deep Learning & Computer Vision
  • Understand use-cases for Computer Vision & Deep Learning

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but some knowledge of Python is suggested

Compatibility

  • Internet required

THE EXPERT

Loonycorn is comprised of four individuals--Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh--who have honed their tech expertises at Google and Flipkart. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students.

Byte-Sized-Chunks: Recommendation Systems


KEY FEATURES

Assuming you're an internet user (which seems likely), you use or encounter recommendation systems all the time. Whenever you see an ad or product that seems eerily in tune with whatever you were just thinking about, it's because of a recommendation system. In this course, you'll learn how to build a variety of these systems using Python, and be well on your way to a high-paying career.

  • Access 20 lectures & 4.5 hours of content 24/7
  • Build Recommendation Engines that use content based filtering to find products that are most relevant to users
  • Discover Collaborative Filtering, the most popular approach to recommendations
  • Identify similar users using neighborhood models like Euclidean Distance, Pearson Correlation & Cosine
  • Use Matrix Factorization to identify latent factor methods
  • Learn recommendation systems by building a movie-recommending app in Python

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime
  • Access options: web streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but some knowledge of Python is suggested

Compatibility

  • Internet required

THE EXPERT

Loonycorn is comprised of four individuals--Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh--who have honed their tech expertises at Google and Flipkart. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students. For more details on the course and instructor, click here.

From 0 to 1: Learn Python Programming


KEY FEATURES

Python's one of the easiest yet most powerful programming languages you can learn, and it's proven its utility at top companies like Dropbox and Pinterest. In this quick and dirty course, you'll learn to write clean, efficient Python code, learning to expedite your workflow by automating manual work, implementing machine learning techniques, and much more.

  • Dive into Python w/ 10.5 hours of content
  • Acquire the database knowledge you need to effectively manipulate data
  • Eliminate manual work by creating auto-generating spreadsheets w/ xlsxwriter
  • Master machine learning techniques like sk-learn
  • Utilize tools for text processing, including nltk
  • Learn how to scrape websites like the NYTimes & Washington Post using Beautiful Soup
  • Complete drills to consolidate your newly acquired knowledge

PRODUCT SPECS

Details & Requirements

  • Length of time users can access this course: lifetime access
  • Access options: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Compatibility

  • Internet required

THE EXPERT

Loonycorn is comprised of four individuals--Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh--who have honed their tech expertises at Google and Flipkart. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students.

          Java Posse #409 - Roundup '12 - Two Things About Software Development   

Roundup ‘12 - Two Things About Software Development

Fully formatted shownotes can always be found at http://javaposse.com

Recorded at the Java Posse Roundup 2012 in Crested Butte, CO. Join us for the next Roundup, Feb 25th to March 1st. Big Data and the Cloud.
http://www.mindviewinc.com/Conferences/JavaPosseRoundup/

Thanks

  • Opening - "Java" the parody song Copyright 1997 Broken Records and Marjorie Music Publ. (BMI),
  • Closing - Juan Carlos Jimenez - In the House (Intro No. 1)
  • To contact us:


The Java Posse consists of Tor Norbye, Carl Quinn, Chet Haase and Dick Wall


          How one Lego reseller built an artificial intelligence to sort bricks   

Jacques Mattheij hoped to make some cash buying cheap boxes of used, unsorted Lego that he'd organize into more valuable assortments for resale. After acquiring two metric tons of bricks, he was motivated to build a technological solution for sorting. He outfitted a conveyor belt with a cheap magnifying USB camera and employed air nozzles to blow the bricks into various bins. The bigger challenge though was how to get the PC to identify the bricks. From IEEE Spectrum:

After a few other failed approaches, and six months in, I decided to try out a neural network. I settled on using TensorFlow, an immense library produced by the Google Brain Team. TensorFlow can run on a CPU, but for a huge speed increase I tapped the parallel computing power of the graphics processing unit in my US $700 GTX1080 Ti Nvidia video card....

...I managed to label a starter set of about 500 assorted scanned pieces. Using those parts to train the net, the next day the machine sorted 2,000 more parts. About half of those were wrongly labeled, which I corrected. The resulting 2,500 parts were the basis for the next round of training. Another 4,000 parts went through the machine, 90 percent of which were labeled correctly! So, I had to correct only some 400 parts. By the end of two weeks I had a training data set of 20,000 correctly labeled images...

Once the software is able to reliably classify across the entire range of parts in my garage, I’ll be pushing through the remainder of those two tons of bricks. And then I can finally start selling off the results!

"How I Built an AI to Sort 2 Tons of Lego Pieces" (IEEE Spectrum)

          Super-Resolution via Deep Learning. (arXiv:1706.09077v1 [cs.CV])   

Authors: Khizar Hayat

The recent phenomenal interest in convolutional neural networks (CNNs) must have made it inevitable for the super-resolution (SR) community to explore its potential. The response has been immense and in the last three years, since the advent of the pioneering work, there appeared too many works not to warrant a comprehensive survey. This paper surveys the SR literature in the context of deep learning. We focus on the three important aspects of multimedia - namely image, video and multi-dimensions, especially depth maps. In each case, first relevant benchmarks are introduced in the form of datasets and state of the art SR methods, excluding deep learning. Next is a detailed analysis of the individual works, each including a short description of the method and a critique of the results with special reference to the benchmarking done. This is followed by minimum overall benchmarking in the form of comparison on some common dataset, while relying on the results reported in various works.


          Classification of Medical Images and Illustrations in the Biomedical Literature Using Synergic Deep Learning. (arXiv:1706.09092v1 [cs.CV])   

Authors: Jianpeng Zhang, Yong Xia, Qi Wu, Yutong Xie

The Classification of medical images and illustrations in the literature aims to label a medical image according to the modality it was produced or label an illustration according to its production attributes. It is an essential and challenging research hotspot in the area of automated literature review, retrieval and mining. The significant intra-class variation and inter-class similarity caused by the diverse imaging modalities and various illustration types brings a great deal of difficulties to the problem. In this paper, we propose a synergic deep learning (SDL) model to address this issue. Specifically, a dual deep convolutional neural network with a synergic signal system is designed to mutually learn image representation. The synergic signal is used to verify whether the input image pair belongs to the same category and to give the corrective feedback if a synergic error exists. Our SDL model can be trained 'end to end'. In the test phase, the class label of an input can be predicted by averaging the likelihood probabilities obtained by two convolutional neural network components. Experimental results on the ImageCLEF2016 Subfigure Classification Challenge suggest that our proposed SDL model achieves the state-of-the art performance in this medical image classification problem and its accuracy is higher than that of the first place solution on the Challenge leader board so far.


          Perceptual Adversarial Networks for Image-to-Image Transformation. (arXiv:1706.09138v1 [cs.CV])   

Authors: Chaoyue Wang, Chang Xu, Chaohui Wang, Dacheng Tao

In this paper, we propose a principled Perceptual Adversarial Networks (PAN) for image-to-image transformation tasks. Unlike existing application-specific algorithms, PAN provides a generic framework of learning mapping relationship between paired images (Fig. 1), such as mapping a rainy image to its de-rained counterpart, object edges to its photo, semantic labels to a scenes image, etc. The proposed PAN consists of two feed-forward convolutional neural networks (CNNs), the image transformation network T and the discriminative network D. Through combining the generative adversarial loss and the proposed perceptual adversarial loss, these two networks can be trained alternately to solve image-to-image transformation tasks. Among them, the hidden layers and output of the discriminative network D are upgraded to continually and automatically discover the discrepancy between the transformed image and the corresponding ground-truth. Simultaneously, the image transformation network T is trained to minimize the discrepancy explored by the discriminative network D. Through the adversarial training process, the image transformation network T will continually narrow the gap between transformed images and ground-truth images. Experiments evaluated on several image-to-image transformation tasks (e.g., image de-raining, image inpainting, etc.) show that the proposed PAN outperforms many related state-of-the-art methods.


          Nonconvex Finite-Sum Optimization Via SCSG Methods. (arXiv:1706.09156v1 [math.OC])   

Authors: Lihua Lei, Cheng Ju, Jianbo Chen, Michael I. Jordan

We develop a class of algorithms, as variants of the stochastically controlled stochastic gradient (SCSG) methods (Lei and Jordan, 2016), for the smooth non-convex finite-sum optimization problem. Assuming the smoothness of each component, the complexity of SCSG to reach a stationary point with $\mathbb{E} \|\nabla f(x)\|^{2}\le \epsilon$ is $O\left (\min\{\epsilon^{-5/3}, \epsilon^{-1}n^{2/3}\}\right)$, which strictly outperforms the stochastic gradient descent. Moreover, SCSG is never worse than the state of the art methods based on variance reduction and it significantly outperforms them when the target accuracy is low. A similar acceleration is also achieved when the functions satisfy the Polyak-Lojasiewicz condition. Empirical experiments demonstrate that SCSG outperforms stochastic gradient methods on training multi-layers neural networks in terms of both training and validation loss.


          Yes-Net: An effective Detector Based on Global Information. (arXiv:1706.09180v1 [cs.CV])   

Authors: Liangzhuang Ma, Xin Kan, Qianjiang Xiao, Wenlong Liu, Peiqin Sun

This paper introduces a new real-time object detection approach named Yes-Net. It realizes the prediction of bounding boxes and class via single neural network like YOLOv2 and SSD, but owns more efficient and outstanding features. It combines local information with global information by adding the RNN architecture as a packed unit in CNN model to form the basic feature extractor. Independent anchor boxes coming from full-dimension k-means is also applied in Yes-Net, it brings better average IOU than grid anchor box. In addition, instead of NMS, Yes-Net uses RNN as a filter to get the final boxes, which is more efficient. For 416 x 416 input, Yes-Net achieves 74.3% mAP on VOC2007 test at 39 FPS on an Nvidia Titan X Pascal.


          Online Adaptation of Convolutional Neural Networks for Video Object Segmentation. (arXiv:1706.09364v1 [cs.CV])   

Authors: Paul Voigtlaender, Bastian Leibe

We tackle the task of semi-supervised video object segmentation, i.e. segmenting the pixels belonging to an object in the video using the ground truth pixel mask for the first frame. We build on the recently introduced one-shot video object segmentation (OSVOS) approach which uses a pretrained network and fine-tunes it on the first frame. While achieving impressive performance, at test time OSVOS uses the fine-tuned network in unchanged form and is not able to adapt to large changes in object appearance. To overcome this limitation, we propose Online Adaptive Video Object Segmentation (OnAVOS) which updates the network online using training examples selected based on the confidence of the network and the spatial configuration. Additionally, we add a pretraining step based on objectness, which is learned on PASCAL. Our experiments show that both extensions are highly effective and improve the state of the art on DAVIS to an intersection-over-union score of 85.7%.


          Coupling Adaptive Batch Sizes with Learning Rates. (arXiv:1612.05086v2 [cs.LG] UPDATED)   

Authors: Lukas Balles, Javier Romero, Philipp Hennig

Mini-batch stochastic gradient descent and variants thereof have become standard for large-scale empirical risk minimization like the training of neural networks. These methods are usually used with a constant batch size chosen by simple empirical inspection. The batch size significantly influences the behavior of the stochastic optimization algorithm, though, since it determines the variance of the gradient estimates. This variance also changes over the optimization process; when using a constant batch size, stability and convergence is thus often enforced by means of a (manually tuned) decreasing learning rate schedule.

We propose a practical method for dynamic batch size adaptation. It estimates the variance of the stochastic gradients and adapts the batch size to decrease the variance proportionally to the value of the objective function, removing the need for the aforementioned learning rate decrease. In contrast to recent related work, our algorithm couples the batch size to the learning rate, directly reflecting the known relationship between the two. On popular image classification benchmarks, our batch size adaptation yields faster optimization convergence, while simultaneously simplifying learning rate tuning. A TensorFlow implementation is available.


          A Deep Learning Scheme for Motor Imagery Classification based on Restricted Boltzmann Machines   
Motor imagery classification is an important topic in brain–computer interface (BCI) research that enables the recognition of a subject’s intension to, e.g., implement prosthesis control. The brain dynamics of motor imagery are usually measured by electroencephalography (EEG) as nonstationary time series of low signal-to-noise ratio. Although a variety of methods have been previously developed to learn EEG signal features, the deep learning idea has rarely been explored to generate new representation of EEG features and achieve further performance improvement for motor imagery classification. In this study, a novel deep learning scheme based on restricted Boltzmann machine (RBM) is proposed. Specifically, frequency domain representations of EEG signals obtained via fast Fourier transform (FFT) and wavelet package decomposition (WPD) are obtained to train three RBMs. These RBMs are then stacked up with an extra output layer to form a four-layer neural network, which is named the frequential deep belief network (FDBN). The output layer employs the softmax regression to accomplish the classification task. Also, the conjugate gradient method and backpropagation are used to fine tune the FDBN. Extensive and systematic experiments have been performed on public benchmark datasets, and the results show that the performance improvement of FDBN over other selected state-of-the-art methods is statistically significant. Also, several findings that may be of significant interest to the BCI community are presented in this article.
          Improving the Transparency of an Exoskeleton Knee Joint Based on the Understanding of Motor Intent Using Energy Kernel Method of EMG   
Transparent control is still highly challenging for robotic exoskeletons, especially when a simple strategy is expected for a large-impedance device. To improve the transparency for late-phase rehabilitation when “patient-in-charge” mode is necessary, this paper aims at adaptive identification of human motor intent, and proposed an iterative prediction-compensation motion control scheme for an exoskeleton knee joint. Based on the analysis of human-machine interactive mechanism (HMIM) and the semiphenomenological biomechanical model of muscle, an online adaptive predicting controller is designed using a focused time-delay neural network (FTDNN) with the inputs of electromyography (EMG), position and interactive force, where the activation level of muscle is estimated from EMG using a novel energy kernel method. The compensating controller is designed using the normative force-position control paradigm. Initial experiments on the human–machine integrated knee system validated the effectiveness and ease of use of the proposed control scheme.
          A Method for Locomotion Mode Identification Using Muscle Synergies   
Active lower limb transfemoral prostheses have enabled amputees to perform different locomotion modes such as walking, stair ascent, stair descent, ramp ascent and ramp descent. To achieve seamless mode transitions, these devices either rely on neural information from the amputee’s residual limbs or sensors attached to the prosthesis to identify the intended locomotion modes or both. We present an approach for classification of locomotion modes based on the framework of muscle synergies underlying electromyography signals. Neural information at the critical instances (e.g., heel contact and toe-off) was decoded for this purpose. Non-negative matrix factorization was used to extract the muscles synergies from the muscle feature matrix. The estimation of the neural command was done using non-negative least squares. The muscle synergy approach was compared with linear discriminant analysis (LDA), support vector machine (SVM), and neural network (NN) and was tested on seven able-bodied subjects. There was no significant difference ( $p > 0.05$ ) in transitional and steady state classification errors during stance phase. The muscle synergy approach performed significantly better ( $p < 0.01$ ) than NN and LDA during swing phase while results were similar to SVM. These results suggest that the muscle synergy approach can be used to discriminate between locomotion modes involving transitions.
          Artistic AI paints portraits of people who aren’t really there   
Mike Tyka paints the portraits of people who don't exist. The subjects of his ephemeral artwork are not born from any brush. Rather, they are sculpted -- roughly -- from the digital imagination of his computer's neural network.
          A Neural Network for Quality of Experience Estimation in Mobile Communications   
High data rates are usually envisaged by operators to satisfy the subscribers using multimedia services. However, due to the increasing number of tablets, smartphones, and push applications, user needs can require low throughput. A new analysis of user satisfaction is necessary--the so-called quality of experience (QoE). The authors consider specific key performance indicators (KPIs) and propose using neural networks to provide an automatic classification among these KPIs (related to quality of service) and QoE. The adoption of the neural network ensures replicability of QoE estimation regardless of user involvement and simplifies QoE analysis for future communications systems.
          Computer Vision/ML Research Engineer   
xpresso.ai - Pune, Maharashtra - for this job. Redirect to company website Computer Vision/ML Research Engineer xpresso.ai 2 to 5 yrs As per Industry Standards Pune Key Skills..., and deep neural networks) - applied to Computer vision problems. Experience in applying machine learning to problems in Computer vision/Image...
          Neural networks. A general framework for non-linear function approximation   
Fischer, Manfred M. (2006) Neural networks. A general framework for non-linear function approximation. Transactions in GIS, 10 (4). pp. 521-533. ISSN 1467-9671
          Comment on The Biggest Shift in Supercomputing Since GPU Acceleration by Rob   
Agreed, it's not "Deep Learning", it's "Monkeys with Typewriters". The "unsupervised learning" is checked by Backpropagation and other methods, it's not 'truncated Brute Force' (peg fits in hole, thus correct). Wikipedia's writeup on Neural Networks compares the current state to the intelligence of a Worm's brain; yet it can demonstrate a better ability to play chess than a Worm. We don't understand the Human brain yet purport to model it with a GPU, originally created to perform simple functions on non-connected pixels. A good (and quick) Analogy is difficult to provide without a lot of thought, more than I care to devote to this Snake Oil, but here's a shot at it: If I show you a Photograph of a Cat and ask you "What is this?", what answer would you give: 1. It's a Cat. 2. It's a piece of paper. 3. It's a Photoshopped image of a Dog, made to look like a Cat. 4. A piece of paper coated with a light-sensitive chemical formula, used for making photographic prints. Printed upon the paper is a Photoshopped image of a Dog, made to look like a Cat. When you see the first answer there's no need to read the rest. When you see the second answer you 'know' it's somehow better, until you get to the third answer. Then comes the fourth answer, when will it end; do we need to calculate the exact locations of the Atoms to give the correct answer ... Neural Networking is as correct as E = mc^2 (we assume under all conditions a mass of anything has equal Energy, that would not have been my guess). Neural Networking was 'abandoned' (by most people) decades ago. To be fair one of the reasons was due to the slowness of Computers, another was a lack of interest. Now there's a resurgence due to the speed of Computers and the keen interest in 'something for nothing', a magic panacea. Instead of "doing the math" (solving something truly provable") we throw that out for a small chance of being 100% correct and a much better chance of being wrong. A recent example was with a self-driving Car. Joshua Brown drove a Tesla in Florida at high speed while watching a Movie. A white 18 Wheeler crossed his path and the Computer 'thought' it was clear sailing - a mistake the driver could not afford.
          Sr Software Engineer - Siemens - Alpharetta, GA   
Experiences in machine learning &amp; data mining. Excellent skills in machine learning techniques (neural networks, SVM)....
From Siemens - Wed, 19 Apr 2017 10:15:35 GMT - View all Alpharetta, GA jobs
          Nonconvex Finite-Sum Optimization Via SCSG Methods. (arXiv:1706.09156v1 [math.OC])   

Authors: Lihua Lei, Cheng Ju, Jianbo Chen, Michael I. Jordan

We develop a class of algorithms, as variants of the stochastically controlled stochastic gradient (SCSG) methods (Lei and Jordan, 2016), for the smooth non-convex finite-sum optimization problem. Assuming the smoothness of each component, the complexity of SCSG to reach a stationary point with $\mathbb{E} \|\nabla f(x)\|^{2}\le \epsilon$ is $O\left (\min\{\epsilon^{-5/3}, \epsilon^{-1}n^{2/3}\}\right)$, which strictly outperforms the stochastic gradient descent. Moreover, SCSG is never worse than the state of the art methods based on variance reduction and it significantly outperforms them when the target accuracy is low. A similar acceleration is also achieved when the functions satisfy the Polyak-Lojasiewicz condition. Empirical experiments demonstrate that SCSG outperforms stochastic gradient methods on training multi-layers neural networks in terms of both training and validation loss.


          Entropy bifurcation of neural networks on Cayley trees. (arXiv:1706.09283v1 [math.DS])   

Authors: Jung-Chao Ban, Chih-Hung Chang, Nai-Zhu Huang

It has been demonstrated that excitable media with a tree structure performed better than other network topologies, it is natural to consider neural networks defined on Cayley trees. The investigation of a symbolic space called tree-shift of finite type is important when it comes to the discussion of the equilibrium solutions of neural networks on Cayley trees. Entropy is a frequently used invariant for measuring the complexity of a system, and constant entropy for an open set of coupling weights between neurons means that the specific network is stable. This paper gives a complete characterization for entropy spectrum of neural networks on Cayley trees and reveals whether the entropy bifurcates when the coupling weights change.


          Transformative Technologies   
Nanoelectronics expert shapes future of computing
The future of computing is anything but conventional, says UMass Amherst electrical and computer engineer Joshua Yang. An expert in nanoelectronics and nanoionics (small-scale systems which run on ions to improve functionalities and efficiencies of electronic devices), Yang and his colleagues are creating unconventional technologies for post-silicon devices that have the potential to transform computing by offering faster, more energy efficient, and more sustainable technical capabilities.

“In this era of big data and the internet of things, we are faced with tons of data. Our devices must be able to process things faster and yet with a lower energy,” says Yang. He notes, however, that current computing technology is not up to the task of processing the growing mounds of data efficiently and with sustainability in mind.

“We cannot just build on the platforms we already have. We must think differently. We must build new and different technologies that are considered disruptive or ‘unconventional’,” says Yang.

Yang believes neuromorphic computing, configuring microprocessors to mimic aspects of the human brain, holds much promise for taking computing beyond its current energy efficiency and processing limitations.

“We are looking at how human brains do information processing and storage. We want to build something with real intelligence, computers that can really think and learn, not just use software and human-programmed algorithms,” says Yang. To meet that challenge, he and his colleagues are working on hardware designs that can learn under the same principles used by synapses and neurons in the brain.

One of Yang’s recent breakthroughs, published in the journal Nature Materials is a first step toward meeting that challenge. He and his colleagues have developed a very tiny electrical resistance switch called a diffusive memristor that can emulate synapses faithfully, the place where signals pass through from one nerve cell to another in the human brain. Memristors  are devices that can store and process information while offering several key performance characteristics that exceed conventional integrated circuitry. They don’t require exotic materials or high temperatures in their manufacture and they can be used for different purposes such as memory storage, information processing, security, and as a sensor.

“Memristive technology is simple yet versatile. Memristors can be made at a very small scale—10,000 times smaller than the width of a human hair. They can also be stacked, something you can’t do with most silicon devices,” says Yang.

Universal memory is one application Yang would like to see memristive technology used for as well. “Right now we have memory hierarchies, different types of memory with different attributes and performance. Instead, we need a universal memory designed to be good at everything – to be fast, dense, have low energy requirements, and be non-volatile. Universal memory means a much simpler computer in terms of components, it will use less energy and store more information and will be faster. We will be able to process the same information with orders of magnitude less energy and faster speed,” says Yang.

Though Yang and his colleagues have had some exciting breakthroughs, he says their neuromorphic research is at a very early stage. Their recent paper on synaptic emulators for diffusive memristors is just a small part of the story.

“It’s just one building block. We now want to emulate a neuron, then integrate synapses and neurons together to build a neural network, that’s what’s next. We will pick the neuroscientists’ brains to get their latest knowledge to implement in our electronic platform. This will help the neuroscientists, too. We may have a better platform to verify their theories of the brain than animal tissues, which is still pretty much a black box. Our electronic system is well defined and can be checked. It can help us to get answers. In addition, it is also a great natural platform for novel computing paradigms,” says Yang.

Before coming to campus in 2015, Yang spent eight years at Hewlett-Packard Labs exploring new computing devices and approaches. He holds 77 granted and over 70 pending patents, most of which have been licensed by and technology-transferred to industry for product development. He has authored and co-authored over 100 well-cited papers in peer-reviewed academic journals for computer engineering technologies developed throughout his career so far. With his applied science mindset and his materials science background (MS and PhD from University of Wisconsin-Madison Materials Science Program), Yang knew he needed interdisciplinary expertise to pursue transformational breakthroughs in neuromorphic computing.

“What brought me to UMass was the strengths here in materials, devices, electrical engineering and very top artificial intelligence and polymer science programs. For instance, my colleague Professor Qiangfei Xia is a world-leading expert in nanodevice fabrication and integration. UMass also has strong activity in bio research, which has recently been further strengthened by the new Institute for Applied Life Sciences (IALS),” Yang notes.

Yang and his interdisciplinary team of colleagues are definitely on to something. In only two years, Yang has secured $3.2 million dollars of external funding as principal investigator to move this research forward. “In engineering schools we need to ask ourselves if what we are investigating is useful or not. Application-based research helps to get funding. Plus, we have a very strong team and great support from the department and the school as well,” smiles Yang.

Karen J. Hayes '85

Pull Quote: 

“We cannot just build on the platforms we already have. We must build new and different technologies that are considered disruptive or ‘unconventional’.”

- Joshua Yang

Scholar Name: 

Jianhua (Joshua) Yang

Browse by Topic Tags: 

Additional Tags: 

Gateway Tags: 


          موضوع مقترح للتمكن من الكشف عن خطأ نظام الطاقة باستخدام تحويل الموجة المنفصلة والشبكات العصبية الا   
Power System Fault Detection Using the Discrete Wavelet Transform and Artificial Neural Networks (http://digitalcommons.calpoly.edu/cgi/view*******.cgi?article=1263&con****=eesp) AbstractThis...
          Knols with Resharing Option - A Knol Collection   
Knols with Resharing Option - A Knol Collection

Knols with Resharing Option - A Knol Collection

Authors



Knol Search Link for Knols with Resharing option

Health

Management



Started resharing knols with creative common license through a blog   http://knolshare.blogspot.com/

Collected Knols

Comments

You can reshare Knols on other platforms

You can reshare articles on other platforms on Knol also.

The two way republishing to provide reach to online articles through your effort or activity.

Narayana Rao - 27 Jul 2011

Short urls

Knols with Resharing Option - A Knol Collection


http://knol.google.com/k/-/-/2utb2lsm2k7a/5019


Narayana Rao - 09 Jul 2011

          Technology Associate, Team Lead for ATS Principal Based Strategies - Morgan Stanley - New York, NY   
Machine Learning including Regression and Clustering techniques, Support Vector Machines, Neural Networks, Probabilistic Graphical Models, and Econometric;...
From Morgan Stanley - Mon, 22 May 2017 20:45:35 GMT - View all New York, NY jobs
          NextGen Frontier for Artificial Intelligence Market Poised to Achieve Significant Growth in the Years to Come   

global market for artificial intelligence is estimated to post an impressive 36.1% CAGR between 2016 and 2024, rising to a valuation of US$3,061.35 bn by the end of 2024 from US$126.14 bn in 2015.

Albany, NY -- (SBWIRE) -- 06/28/2017 -- Globally, there is a wave of artificial intelligence across various industries, especially consumer electronics and healthcare. The wave is likely to continue in the years to come with the expanding base of applications of the technology. The global market for artificial intelligence is expected to witness phenomenal growth over the coming years as organizations worldwide have started capitalizing on the benefits of such disruptive technologies for effective positioning of their offerings and customer reach. In addition, the increasing It spending by enterprises across the globe for better advancements in their services and products.

According to a study by Transparency Market Research (TMR), the global market for artificial intelligence is estimated to post an impressive 36.1% CAGR between 2016 and 2024, rising to a valuation of US$3,061.35 bn by the end of 2024 from US$126.14 bn in 2015. The upward growth of the market is, however, hampered by the low upfront investments. The majority of companies operating in the market are facing difficulties in accumulating funds for early stage research and development of prototypes and their underlying technologies. The dearth of personnel with adequate technical knowledge is also restricting the market from realizing its full potential.

Expert Systems to Lead Revenue Generation through 2024

On the basis of type, the report segments the global artificial intelligence market into digital assistance system, expert system, embedded system, automated robotic system, and artificial neural network. The expert system segment was at the forefront of growth in 2015, representing 44% of the overall market revenue and is poised to maintain its dominance until 2024. The growth of the segment can be attributed to the rising implementation of artificial intelligence across various sectors such as process control, monitoring, diagnosis, design, planning, and scheduling.

Digital assistance is estimated to be the most promising segment in terms of revenue during the review period. The proliferation of portable computing devices such as tablets and smartphones is the primary factor propelling the growth of the segment. Based on application, deep learning held the lion's share of 21.6% in the global market in terms of value in 2015, closely trailed by smart robots. The demand for artificial intelligence in image recognition is likely to rise at a noteworthy rate over the forecast horizon.

Domicile of a Raft of Leading Players to Fuel North America's Dominance

North America was the major revenue contributor in 2015, accounting for approximately 38.0% of the overall market. The domicile of a large number of the leading technology firms enables early introduction and high acceptance of artificial intelligence in the region. Moreover, high government funding is playing a pivotal role in the technological development of artificial intelligence in the region. The widening scope of applications the technology in various verticals, including media and advertising, retail, BFSI, consumer electronics, and automotive are also contributing the market in North America. Owing to these factors, the region is expected to retain its leadership through 2024.

Get More Information : http://www.transparencymarketresearch.com/sample/sample.php?flag=S&rep_id=4674

On the other hand, the Middle East and Africa is anticipated to exhibit a remarkable CAGR of 38.2% during the forecast period, which is higher than any other region. Rapid technological innovations, including robotic automation and increasing implementation of concepts such as smart cities are boosting the adoption of artificial intelligence in the region. Ongoing infrastructure projects such development of new airports are rendering the market in MEA highly opportunistic.

Some of the prominent participants in the global artificial intelligence market are Nuance Communications, MicroStrategy Inc., QlikTech International AB, Google Inc., IBM Corporation, Microsoft Corporation, Brighterion Inc., Next IT Corporation, IntelliResponse Systems Inc., and eGain Corporation.

For more information on this press release visit: http://www.sbwire.com/press-releases/nextgen-frontier-for-artificial-intelligence-market-poised-to-achieve-significant-growth-in-the-years-to-come-826257.htm

Media Relations Contact

Rohit Bhisey
Head
Transparency Market Research
Telephone: 518-618-1030
Email: Click to Email Rohit Bhisey
Web: http://www.transparencymarketresearch.com/artificial-intelligence-market.html


          Andrei Macsin added a discussion to the group Analytic, Data Science and Big Data Jobs   
Andrei Macsin added a discussion to the group Analytic, Data Science and Big Data Jobs
Thumbnail

Career Alert, June 23

Job SpotlightSoftware Developer - One Acre FundGenomic Systems Engineer - Kaiser PermanenteData Scientist - Consumer Insights - Fossil GroupSenior Director for Institutional Analytics - Rollins CollegeFeatured JobsKenya Product Innovations Analyst - One Acre FundSenior Data Scientist - Spreemo HealthEngineer, Data Science, Audience Studio - NBCUniversal MediaDeep Learning Content Creator - NVIDIAAnalytics and Insights Specialist - Ramsey Solutions, A Dave Ramsey CompanyDirector, Marketing Analytics & Strategy - The Ad CouncilData Science Manager, Analytics - FacebookResearch Scientist - SpotifyData Scientist – Analytics - Booking .comData Scientist, Risk Analytics - John DeereData Scientist - Reynolds Consumer ProductsProgram Manager, Data Analysis & Reporting - MasterCardDecision Science Analyst II - USAAData Scientist - TapjoyResearch Scientist, Sr - YahooHealthcare Data Scientist - PhilipsSenior Data Scientist - Warner Bros. EntertainmentData Scientist - ShareThisProduction Cytometry Lead, Verily Life Sciences - GoogleData Science Manager, Analytics - TumblrData scientist, Business Strategy - StarbucksCheck out the most recent jobs on AnalyticTalent.comFeatured BlogSix Great Articles About Quantum Computing and HPC This resource is part of a series on specific topics related to data science: regression, clustering, neural networks, deep learning, Hadoop, decision trees, ensembles, correlation, outliers, regression, Python, R, Tensorflow, SVM, data reduction, feature selection, experimental design, time series, cross-validation, model fitting, dataviz, AI and many more. Read full article.Upcoming DSC Webinars and ResourcesA Language for Visual Analytics - DSC Webinar, July 25Self-Service Machine Learning - DSC Webinar, July 18Maximize value of your IoT Data - DSC Webinar, June 29SPSS Statistics to Predict Customer Behavior - DSC Webinar, June 27The Data Incubator Presents: Data Science FoundationsDatabricks & The Data Incubator: Apache Spark Programming for DSArtificial Intelligence Blockchain Bootcamp with Job placement NYCGuarantee yourself a data science career - SpringboardData Science Boot Camp: Pharma and Healthcare - RxDataSciencePython Data Science Training - AccelebrateOnline Executive PGP in Data Science, Business Analytics & Big DataSee More

          Technology Associate, Team Lead for ATS Principal Based Strategies - Morgan Stanley - New York, NY   
Machine Learning including Regression and Clustering techniques, Support Vector Machines, Neural Networks, Probabilistic Graphical Models, and Econometric;...
From Morgan Stanley - Mon, 22 May 2017 20:45:35 GMT - View all New York, NY jobs
           END-TO-END DEEP COLLABORATIVE FILTERING   
A recommendation system generates recommendations for an online system using one or more neural network models that predict preferences of users for items in the online system. The neural network models generate a latent representation of a user and of a user that can be combined to determine the expected preference of the user to the item. By using neural network models, the recommendation system can generate predictions in real-time for new users and items without the need to re-calibrate the models. Moreover, the recommendation system can easily incorporate other forms of information other than preference information to generate improved preference predictions by including the additional information to generate the latent description of the user or item.
           Rapid, automated detection of stem canker symptoms in woody perennials using artificial neural network analysis    
Li, B., Hulin, M. T., Brain, P., Mansfield, J. W., Jackson, R. W. and Harrison, R. J. (2015) Rapid, automated detection of stem canker symptoms in woody perennials using artificial neural network analysis. Plant Methods, 11 (1). 57. ISSN 1746-4811 doi: 10.1186/s13007-015-0100-8
          Sr Software Engineer - Siemens - Alpharetta, GA   
Experiences in machine learning &amp; data mining. Excellent skills in machine learning techniques (neural networks, SVM)....
From Siemens - Wed, 19 Apr 2017 10:15:35 GMT - View all Alpharetta, GA jobs
          Create an artificial intelligence at home   
In distributed computing platform BOINC is an ambitious project, which - to simulate the structure of the human brain as a neural network. At this point in the project involved more than 6700 people, about 14,000 computers, and a simulation of 740 billion neurons (in the human brain there are only 100 billion). Now preparing a simulation of human hippocampus and memory. Supervises Project Company Intelligence Realm.

Unlike, for example, Swiss Blue Brain Project, the purpose of Intelligence Realm - not to investigate what aspects of a human mind, and ready to create artificial intelligence, or even several. The head of the company, Ovidiu Anghelidi, expects to see the first results have already been made within 7-8 years (the project lasted for 3 years). AI, if it is established, will be used in research.
 
          Technology Associate, Team Lead for ATS Principal Based Strategies - Morgan Stanley - New York, NY   
Machine Learning including Regression and Clustering techniques, Support Vector Machines, Neural Networks, Probabilistic Graphical Models, and Econometric;...
From Morgan Stanley - Mon, 22 May 2017 20:45:35 GMT - View all New York, NY jobs
           Using Neural Network Ensembles for the Operational Retrieval of Ozone Total Columns    
Loyola, Diego (2004) Using Neural Network Ensembles for the Operational Retrieval of Ozone Total Columns. In: Proceedings of IGARSS'04, Vol. II, Seiten 1041-1044. IGARSS Anchorage/ Alaska, 20 - 24 August, 2004.
           Automatic Cloud Analysos from Polar-Orbiting Satellites Using Neural Network and Data Fusion Techniques    
Loyola, Diego (2004) Automatic Cloud Analysos from Polar-Orbiting Satellites Using Neural Network and Data Fusion Techniques. In: Proceedings of IGARSS'04, Vol. IV, Seiten 2530-2533. IGARSS, Anchorage/Alaska, 20 - 24 August 2004.
          Deep Learning in Automotive Software   
Deep-learning-based systems are becoming pervasive in automotive software. So, in the automotive software engineering community, the awareness of the need to integrate deep-learning-based development with traditional development approaches is growing, at the technical, methodological, and cultural levels. In particular, data-intensive deep neural network (DNN) training, using ad hoc training data, is pivotal in the development of software for vehicle functions that rely on deep learning. Researchers have devised a development lifecycle for deep-learning-based development and are participating in an initiative, based on Automotive SPICE (Software Process Improvement and Capability Determination), that's promoting the effective adoption of DNN in automotive software.
          Scientists made an AI that can read minds   
Whether it's using AI to help organize a Lego collection or relying on an algorithm to protect our cities, deep learning neural networks seemingly become more impressive and complex each day. Now, however, some scientists are pushing the capabilities...
          THE BABY SWALLOWS ARE OUT OF THE NEST (AND ZOOMING AROUND THE HARDWARE STORE PHOTO BLOG)   

Hi Everybody!!
I went back to the Hardware Store in town to see the baby swallows. The three had left the nest, but were zooming around having a good time. The mom was sitting on another nest. The store door under the nests rings a bell when it opens. Many people go in and out all day. I am just amazed these birds choose to live and nest so close to humans in the city! I asked 5 people who came out of the store, what they thought about the birds nesting so close. All of them said: What birds? What nest? People just do not seem to notice life around them. (Of course I have to chuckle as I am the one designated to have my head in the clouds!) I encourage you all to: Open Your Eyes!!!! These are beautiful birds to observe. Enjoy!














https://en.wikipedia.org/wiki/Visual_perception

Visual perception

From Wikipedia, the free encyclopedia
Visual perception is the ability to interpret the surrounding environment by processing information that is contained in visible light. The resultingperception is also known as eyesightsight, or vision (adjectival form:visualoptical, or ocular). The various physiological components involved in vision are referred to collectively as the visual system, and are the focus of much research in psychologycognitive scienceneuroscience, and molecular biology.

Visual system[edit]

Main article: Visual system
The visual system in humans and animals allows individuals to assimilate information from their surroundings. The act ofseeing starts when the lens of the eye focuses an image of its surroundings onto a light-sensitive membrane in the back of the eye, called the retina. The retina is actually part of the brain that is isolated to serve as a transducer for the conversion of patterns of light into neuronal signals. The lens of the eye focuses light on the photoreceptive cells of the retina, which detect the photons of light and respond by producing neural impulses. These signals are processed in ahierarchical fashion by different parts of the brain, from the retina upstream to central ganglia in the brain.
Note that up until now much of the above paragraph could apply to octopimolluscswormsinsects and things more primitive; anything with a more concentrated nervous system and better eyes than say a jellyfish. However, the following applies to mammals generally and birds (in modified form): The retina in these more complex animals sends fibers (theoptic nerve) to the lateral geniculate nucleus, to the primary and secondary visual cortex of the brain. Signals from the retina can also travel directly from the retina to the superior colliculus.
The perception of objects and the totality of the visual scene is accomplished by the visual association cortex. The visual associaton cortex combines all sensory information perceived by the striate cortex which contains thousands of modules that are part of modular neural networks. The neurons in the striate cortex send axons to the extrastriate cortex, a region in the visual association cortex that surrounds the striate cortex.[1]

Study[edit]

The major problem in visual perception is that what people see is not simply a translation of retinal stimuli (i.e., the image on the retina). Thus people interested in perception have long struggled to explain what visual processing does to create what is actually seen.

Early studies[edit]


The visual dorsal stream (green) and ventral stream (purple) are shown. Much of the humancerebral cortex is involved in vision.
There were two major ancient Greek schools, providing a primitive explanation of how vision is carried out in the body.
The first was the "emission theory" which maintained that vision occurs when rays emanate from the eyes and are intercepted by visual objects. If an object was seen directly it was by 'means of rays' coming out of the eyes and again falling on the object. A refracted image was, however, seen by 'means of rays' as well, which came out of the eyes, traversed through the air, and after refraction, fell on the visible object which was sighted as the result of the movement of the rays from the eye. This theory was championed by scholars like Euclid and Ptolemy and their followers.
The second school advocated the so-called 'intro-mission' approach which sees vision as coming from something entering the eyes representative of the object. With its main propagators AristotleGalen and their followers, this theory seems to have some contact with modern theories of what vision really is, but it remained only a speculation lacking any experimental foundation.
Both schools of thought relied upon the principle that "like is only known by like", and thus upon the notion that the eye was composed of some "internal fire" which interacted with the "external fire" of visible light and made vision possible.Plato makes this assertion in his dialogue Timaeus, as does Aristotle, in his De Sensu.[2]

Leonardo da Vinci: The eye has a central line and everything that reaches the eye through this central line can be seen distinctly.
Alhazen (965–c. 1040) carried out many investigations and experiments on visual perception, extended the work of Ptolemy on binocular vision, and commented on the anatomical works of Galen.[3][4]
Leonardo da Vinci (1452–1519) is believed to be the first to recognize the special optical qualities of the eye. He wrote "The function of the human eye ... was described by a large number of authors in a certain way. But I found it to be completely different." His main experimental finding was that there is only a distinct and clear vision at the line of sight, the optical line that ends at the fovea. Although he did not use these words literally he actually is the father of the modern distinction between foveal and peripheral vision.[citation needed]

Unconscious inference[edit]

Main article: Unconscious inference
Hermann von Helmholtz is often credited with the first study of visual perception in modern times. Helmholtz examined the human eye and concluded that it was, optically, rather poor. The poor-quality information gathered via the eye seemed to him to make vision impossible. He therefore concluded that vision could only be the result of some form of unconscious inferences: a matter of making assumptions and conclusions from incomplete data, based on previous experiences.
Inference requires prior experience of the world.
Examples of well-known assumptions, based on visual experience, are:
  • light comes from above
  • objects are normally not viewed from below
  • faces are seen (and recognized) upright.[5]
  • closer objects can block the view of more distant objects, but not vice versa
  • figures (i.e., foreground objects) tend to have convex borders
The study of visual illusions (cases when the inference process goes wrong) has yielded much insight into what sort of assumptions the visual system makes.
Another type of the unconscious inference hypothesis (based on probabilities) has recently been revived in so-calledBayesian studies of visual perception.[6] Proponents of this approach consider that the visual system performs some form of Bayesian inference to derive a perception from sensory data. Models based on this idea have been used to describe various visual perceptual functions, such as the perception of motion, the perception of depth, and figure-ground perception.[7][8] The "wholly empirical theory of perception" is a related and newer approach that rationalizes visual perception without explicitly invoking Bayesian formalisms.

Gestalt theory[edit]

Main article: Gestalt psychology
Gestalt psychologists working primarily in the 1930s and 1940s raised many of the research questions that are studied by vision scientists today.
The Gestalt Laws of Organization have guided the study of how people perceive visual components as organized patterns or wholes, instead of many different parts. Gestalt is the German word "Gestalt" that partially translates to "configuration or pattern" along with "whole or emergent structure". According to this theory, there are six main factors that determine how the visual system automatically groups elements into patterns: Proximity, Similarity, Closure, Symmetry, Common Fate (i.e. common motion), and Continuity.

Analysis of eye movement[edit]

See also: Eye movement

Eye movement first 2 seconds (Yarbus, 1967)
During the 1960s, technical development permitted the continuous registration of eye movement during reading[9] in picture viewing[10] and later in visual problem solving[11] and when headset-cameras became available, also during driving.[12]
The picture to the left shows what may happen during the first two seconds of visual inspection. While the background is out of focus, representing theperipheral vision, the first eye movement goes to the boots of the man (just because they are very near the starting fixation and have a reasonable contrast).
The following fixations jump from face to face. They might even permit comparisons between faces.
It may be concluded that the icon face is a very attractive search icon within the peripheral field of vision. The foveal vision adds detailed information to the peripheral first impression.
It can also be noted that there are three different types of eye movements: vergence movements, saccadic movements and pursuit movements. Vergence movements involve the cooperation of both eyes to allow for an image to fall on the same area of both retinas. This results in a single focused image. Saccadic movements is the type of eye movement that is used to rapidly scan a particular scene/image. Lastly, pursuit movement is used to follow objects in motion.[1] , which was the state-of-the-art, from $31$ to $50.3$ percent on the ILSVRC2014 detection test set. It also outperforms the winner of ILSVRC2014, GoogLeNet, by 6.1 percent. Detailed component-wise analysis is also provided through extensive experimental evaluation, which provides a global view for people to understand the deep learning object detection pipeline.
          Learning to Segment Human by Watching YouTube   
An intuition on human segmentation is that when a human is moving in a video, the video-context (e.g., appearance and motion clues) may potentially infer reasonable mask information for the whole human body. Inspired by this, based on popular deep convolutional neural networks (CNN), we explore a very-weakly supervised learning framework for human segmentation task, where only an imperfect human detector is available along with massive weakly-labeled YouTube videos. In our solution, the video-context guided human mask inference and CNN based segmentation network learning iterate to mutually enhance each other until no further improvement gains. In the first step, each video is decomposed into supervoxels by the unsupervised video segmentation. The superpixels within the supervoxels are then classified as human or non-human by graph optimization with unary energies from the imperfect human detection results and the predicted confidence maps by the CNN trained in the previous iteration. In the second step, the video-context derived human masks are used as direct labels to train CNN. Extensive experiments on the challenging PASCAL VOC 2012 semantic segmentation benchmark demonstrate that the proposed framework has already achieved superior results than all previous weakly-supervised methods with object class or bounding box annotations. In addition, by augmenting with the annotated masks from PASCAL VOC 2012, our method reaches a new state-of-the-art performance on the human segmentation task.
          Cross-Domain Visual Matching via Generalized Similarity Measure and Feature Learning   
Cross-domain visual data matching is one of the fundamental problems in many real-world vision tasks, e.g., matching persons across ID photos and surveillance videos. Conventional approaches to this problem usually involves two steps: i) projecting samples from different domains into a common space, and ii) computing (dis-)similarity in this space based on a certain distance. In this paper, we present a novel pairwise similarity measure that advances existing models by i) expanding traditional linear projections into affine transformations and ii) fusing affine Mahalanobis distance and Cosine similarity by a data-driven combination. Moreover, we unify our similarity measure with feature representation learning via deep convolutional neural networks. Specifically, we incorporate the similarity measure matrix into the deep architecture, enabling an end-to-end way of model optimization. We extensively evaluate our generalized similarity model in several challenging cross-domain matching tasks: person re-identification under different views and face verification over different modalities (i.e., faces from still images and videos, older and younger faces, and sketch and photo portraits). The experimental results demonstrate superior performance of our model over other state-of-the-art methods.
          Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks   
State-of-the-art object detection networks depend on region proposal algorithms to hypothesize object locations. Advances like SPPnet [1] and Fast R-CNN [2] have reduced the running time of these detection networks, exposing region proposal computation as a bottleneck. In this work, we introduce a Region Proposal Network (RPN) that shares full-image convolutional features with the detection network, thus enabling nearly cost-free region proposals. An RPN is a fully convolutional network that simultaneously predicts object bounds and objectness scores at each position. The RPN is trained end-to-end to generate high-quality region proposals, which are used by Fast R-CNN for detection. We further merge RPN and Fast R-CNN into a single network by sharing their convolutional features—using the recently popular terminology of neural networks with ’attention’ mechanisms, the RPN component tells the unified network where to look. For the very deep VGG-16 model [3] , our detection system has a frame rate of 5 fps (including all steps) on a GPU, while achieving state-of-the-art object detection accuracy on PASCAL VOC 2007, 2012, and MS COCO datasets with only 300 proposals per image. In ILSVRC and COCO 2015 competitions, Faster R-CNN and RPN are the foundations of the 1st-place winning entries in several tracks. Code has been made publicly available.
          Face Search at Scale   
Given the prevalence of social media websites, one challenge facing computer vision researchers is to devise methods to search for persons of interest among the billions of shared photos on these websites. Despite significant progress in face recognition, searching a large collection of unconstrained face images remains a difficult problem. To address this challenge, we propose a face search system which combines a fast search procedure, coupled with a state-of-the-art commercial off the shelf (COTS) matcher, in a cascaded framework. Given a probe face, we first filter the large gallery of photos to find the top-$k$ most similar faces using features learned by a convolutional neural network. The $k$ retrieved candidates are re-ranked by combining similarities based on deep features and those output by the COTS matcher. We evaluate the proposed face search system on a gallery containing $80$ million web-downloaded face images. Experimental results demonstrate that while the deep features perform worse than the COTS matcher on a mugshot dataset (93.7 percent versus 98.6 percent TAR@FAR of 0.01 percent), fusing the deep features with the COTS matcher improves the overall performance ($99.5$ percent TAR@FAR of 0.01 percent). This shows that the learned deep features provide complementary information over representations used in state-of-the-art face matchers. On the unconstrained face image benchmarks, the performance of the learned deep features is competitive with reported accuracies. LFW database: $98.20$ percent accuracy under the standard protocol and $88.03$ percent TAR@FAR of $0.1$ percent under the BLUFR protocol; IJB-A benchmark: $51.0$ percent TAR@FAR of $0.1$ percent (verification), rank 1 retrieval of $82.2$ percent (closed-set search), $61.5$ percent FNIR@FAR of $1$ percent (open-set search). The proposed face search system offers an excellent trade-off between accuracy and scalability on galleries with millions of images. Additionally, in a face search experiment involving photos of the Tsarnaev brothers, convicted of the Boston Marathon bombing, the proposed cascade face search system could find the younger brother's (Dzhokhar Tsarnaev) photo at rank $1$ in $1$ second on a $5$ M gallery and at rank $8$ in $7$ seconds on an $80$ M gallery.
          Learning to Generate Chairs, Tables and Cars with Convolutional Networks   
We train generative ‘up-convolutional’ neural networks which are able to generate images of objects given object style, viewpoint, and color. We train the networks on rendered 3D models of chairs, tables, and cars. Our experiments show that the networks do not merely learn all images by heart, but rather find a meaningful representation of 3D models allowing them to assess the similarity of different models, interpolate between given views to generate the missing ones, extrapolate views, and invent new objects not present in the training set by recombining training instances, or even two different object classes. Moreover, we show that such generative networks can be used to find correspondences between different objects from the dataset, outperforming existing approaches on this task.
          Deep Visual-Semantic Alignments for Generating Image Descriptions   
We present a model that generates natural language descriptions of images and their regions. Our approach leverages datasets of images and their sentence descriptions to learn about the inter-modal correspondences between language and visual data. Our alignment model is based on a novel combination of Convolutional Neural Networks over image regions, bidirectional Recurrent Neural Networks (RNN) over sentences, and a structured objective that aligns the two modalities through a multimodal embedding. We then describe a Multimodal Recurrent Neural Network architecture that uses the inferred alignments to learn to generate novel descriptions of image regions. We demonstrate that our alignment model produces state of the art results in retrieval experiments on Flickr8K, Flickr30K and MSCOCO datasets. We then show that the generated descriptions outperform retrieval baselines on both full images and on a new dataset of region-level annotations. Finally, we conduct large-scale analysis of our RNN language model on the Visual Genome dataset of 4.1 million captions and highlight the differences between image and region-level caption statistics.
          Sr Software Engineer - Siemens - Alpharetta, GA   
Experiences in machine learning &amp; data mining. Excellent skills in machine learning techniques (neural networks, SVM)....
From Siemens - Wed, 19 Apr 2017 10:15:35 GMT - View all Alpharetta, GA jobs
          Brainy Voices: Innovative Voice Creation Based on Deep Learning by Acapela Group Research Lab   
MONS, Belgium, June 29, 2017 /PRNewswire/ -- Neural Networks have revolutionized artificial vision and automatic speech recognition. This machine learning revolution is holding its promises as it enters the Text to Speech arena. Acapela Group is actively working on Deep Neural...
          Four Degrees   
That is the current temperature outside as I write this post. Nearly 1:00AM and I am still awake. What a surprise.... I suppose that has become the new normal over the past few weeks. Probably due to the changes in my work schedule; I have no doubt that the modifications I've made recently have contributed to the weird hours I keep these days.

One of the changes is relatively recent; I started working in the Emergency Department at Catholic Medical Center in Manchester a couple of weeks ago. I was hired for 24 hours per week to work up front, and I am orienting in the department now. It will take me approximately 5-6 weeks to get through the department orientation, but I think once it is done it should be a pretty interesting job. It will certainly add to my experience, and that is something I look forward to. More learning, but it is good to learn new things. Learning is like exercise; the more you learn, and the more different things you learn, the more well-conditioned the brain becomes. And I believe the folks at Lumosity have gotten it right, in terms of the word "neuroplasticity"; the neural networks we possess expand exponentially when they are stressed. And that is as it should be.

We got a load of snow out here yesterday. My back step had a total fall of approximately 10 inches, which was more that what was predicted. And the temperatures reflect the snow counts as normally when there is no snow the air is a bit warmer. Not now, I'm afraid; it is simply cold. But it is winter in New England; shouldn't it be cold? And this one is as I remember it when I was growing up.

As I write this I am working. Not a surprise there; it is technically Friday morning, and I have been here for a bit shy of 7 hours. We got in from a call a little while ago: an elderly male with mental status changes. Hallucinations and visual disturbances, to be more accurate. Pretty interesting and diffucult at the same time. History of end stage kidney disease - he is supposed to have a dialysis shunt implanted soon. Maybe that will take care of some of the issues, but it is hard to know. Also a diabetic; this always compounds things because of the nature of diabetes. It is an insidious, vicious disease that destroys organ systems over time because of the damage done to peripheral nerves if glucose levels are not controlled. And there is no such thing as age discrimination as it can affect anyone no matter how healthy the person is. But it has to be tough to deal with when you're already compromised metabolically, not to mention physically. And the damage to his kidneys is already pretty much complete. Between the two pathologies that are present, he will likely continue to have a rough row to hoe as time goes on.

I am hoping not to have to deal with the cold again tonight. Hopefully I'll be able to get a nap in. But anything can, and usually does, happen, so if I expect crazy things to happen I won't be disappointed when they do.
          Google's multitasking neural net can juggle eight things at once   
Deep-learning systems can struggle to handle more than one task, but a fresh approach by Google Brain could turn neural networks into jacks of all trades
             
Satzo Software Frequently Asked Questions (SPHS) FAQ'S


1) Question:
What does Satzo-Software exactly offer? Do you offer a password retrieval service or the software enabling me to do it on my own?

Answer:
This is one of the most frequent questions we are being asked.
What Satzo-Software offers is software solutions (see "Hacking Software" on the left menu) that enable our clients to retrieve and recover login credentials from a multitude of services and service providers, ranging from e-mail services and online multiplayer games.
You can hack Orkut password, hack Hotmail password, hack Yahoo password, hack MySpace password, hack AOL password, hack MSN Messenger, hack any email password...

2)Question:
Delivery - How will I receive my software?

Answer:
All our hacking software packages are available for immediate download from our servers, you will be provided with a download link. You may request a backup CD copy free of charge. CD copies are mailed out every Friday morning via EMS mail from Germany. International Delivery takes about 4 to 12 business days on average.

3) Question:
Payment - How to send money to you?

Answer:
No need to pay even a single penny, We are giving this software for Free. You can download right now. If you're facing any problem just send a mail to contact@Satzo.com , you will get response within 24 hours.

  
4) Question:
I am from the United States; can I still get your software?

Answer:
Absolutely! This question pops up quite frequently; your geographic location does not affect your ability to get our products.

5)Question:
Operational Warranty - Do you provide some sort of assurances of functionality?

Answer:
Satzo-Software, having been an active participant in the field of Information Technology for more than a decade, knows of only one constant: constant change. Keeping that in mind, we offer our clients free of charge life-time guaranteed updates!


6) Question:
What does this Software Compatibility?

Answer:
This Software is compatible with Windows all versions, Mac and Linux too.


7) Question:
About Us - Who is behind Satzo-Software?

Answer:
We are an internatioal security company composed of a group of dedicated software engineers with more than a decade of experience in the fields of password retrieval technology, cryptography and neural networks. Satzo-Software is our attempt to capitalize on our multiyear experience in the field of password retrieval, a market niche in which supply is tight. We are the first service making password retrieval technology available to the wide non-computer expert public in an easy to use format and in an extremely affordable price.

If you have any remaining question you would like answered, please feel free to 

CONTACT US. Contact@Satzo.com



          Frighteningly accurate ‘mind reading’ AI reads brain scans to guess what you’re thinking   
Researchers have developed a deep learning neural network that's able to read complex thoughts based on brain scans.
          Comment on Sequence Classification with LSTM Recurrent Neural Networks in Python with Keras by sk   
Can you do a tutorial for preprocessing text dataset and then passing them as input using word embeddings? Thanks!
          Comment on Object Recognition with Convolutional Neural Networks in the Keras Deep Learning Library by Bruce Wind   
Hi, Jason, thanks for sharing. I test the code you provided, but my machine does not support CUDA, so it runs very slowly( half an hour per epoch). Since you have such a powerful computer, could you please show the results after hundreds or thousands epoches later? Thanks.
          Comment on 5 Step Life-Cycle for Neural Network Models in Keras by Jason Brownlee   
Great question. A good starting point is to copy another neural net from the literature applied to a similar problem. You could try having the number of neurons in the hidden layer equal to the number of inputs. These are just heuristics, and the best results will come when you test a suite of different configurations and see what works best on your problem.
          Go   
...
Since Go lacks a simple evaluation function mainly based on counting material, attempts to apply similar techniques and algorithms as in chess were less successful. The breakthrough in computer Go was accomplished by Monte-Carlo tree search and deep learning.
19*19 Go board
Progress
Monte-Carlo Go
After early trials to apply Monte Carlo methods to a Go playing program by Bernd Brügmann in 1993 , recent developments since the mid 2000s by Bruno Bouzy , and by Rémi Coulom, who coined the term Monte-Carlo Tree Search , in conjunction with UCT (Upper Confidence bounds applied to Trees) introduced by Levente Kocsis and Csaba Szepesvári , led to a breakthrough in computer Go .
CNN
CNNs
As mentioned by Ilya Sutskever and Vinod Nair in 2008 , convolutional neural networks are well suited for problems with a natural translation invariance, such as object recognition. Go has some translation invariance, because if all the pieces on a hypothetical Go board are shifted to the left, then the best move will also shift (with the exception of pieces that are on the boundary of the board). Many applications of neural networks to Go have already used convolutional neural networks, such as Nicol N. Schraudolph et al. , Erik van der Werf et al. , and Markus Enzenberger , among others.
In 2014, two teams independently investigated whether deep convolutional neural networks could be used to directly represent and learn a move evaluation function for the game of Go. Christopher Clark and Amos Storkey trained an 8-layer convolutional neural network by supervised learning from a database of human professional games, which without any search, defeated the traditional search program Gnu Go in 86% of the games . In their paper Move Evaluation in Go Using Deep Convolutional Neural Networks , Chris J. Maddison, Aja Huang, Ilya Sutskever, and David Silver report they trained a large 12-layer convolutional neural network in a similar way, to beat Gnu Go in 97% of the games, and matched the performance of a state-of-the-art Monte-Carlo Tree Search that simulates a million positions per move .
AlphaGo
AlphaGo
In 2015, a team affiliated with Google DeepMind around David Silver, Aja Huang, Chris J. Maddison, and Demis Hassabis, supported by Google researchers John Nham and Ilya Sutskever, build a Go playing program dubbed AlphaGo , combining Monte-Carlo tree search with their 12-layer networks , the “policy network,” to select the next move, the “value network,” to predict the winner of the game. The neural networks were trained on 30 million moves from games played by human experts, until it could predict the human move 57 percent of the time. AlphaGo achieved a huge winning rate against other Go programs, and defeated European Go champion Fan Hui in October 2015 with a 5 - 0 score . On March 9 to 15, 2016, AlphaGo won a $1M 5-game challenge match in Seoul versus Lee Sedol with 4 - 1 .
During The Future of Go Summit from May 23 to 27, 2017 in Wuzhen, China, AlphaGo won a three-game match versus current world No. 1 ranking player Ke Ji. After the Summit, AlphaGo is now retired from competitive play while DeepMind continues AI research in other areas .
Quotes
Quote by Gian-Carlo Pascutto in 2010 :
There is no significant difference between an alpha-beta search with heavy LMR and a static evaluator (current state of the art in chess) and an UCT searcher with a small exploration constant that does playouts (state of the art in go).
The shape of the tree they search is very similar. The main breakthrough in Go the last few years was how to backup an uncertain Monte Carlo score. This was solved. For chess this same problem was solved around the time quiescent search was developed.
Both are producing strong programs and we've proven for both the methods that they scale in strength as hardware speed goes up.
So I would say that we've successfully adopted the simple, brute force methods for chess to Go and they already work without increases in computer speed. The increases will make them progressively stronger though, and with further software tweaks they will eventually surpass humans.

Computer Olympiads
1st Computer Olympiad, London 1989
...
18th Computer Olympiad, Leiden 2015
19th Computer Olympiad, Leiden 2016
Progress
Monte-Carlo Go
After early trials to apply Monte Carlo methods to a Go playing program by Bernd Brügmann in 1993 , recent developments since the mid 2000s by Bruno Bouzy , and by Rémi Coulom, who coined the term Monte-Carlo Tree Search , in conjunction with UCT (Upper Confidence bounds applied to Trees) introduced by Levente Kocsis and Csaba Szepesvári , led to a breakthrough in computer Go .
CNN
CNNs
As mentioned by Ilya Sutskever and Vinod Nair in 2008 , convolutional neural networks are well suited for problems with a natural translation invariance, such as object recognition. Go has some translation invariance, because if all the pieces on a hypothetical Go board are shifted to the left, then the best move will also shift (with the exception of pieces that are on the boundary of the board). Many applications of neural networks to Go have already used convolutional neural networks, such as Nicol N. Schraudolph et al. , Erik van der Werf et al. , and Markus Enzenberger , among others.
In 2014, two teams independently investigated whether deep convolutional neural networks could be used to directly represent and learn a move evaluation function for the game of Go. Christopher Clark and Amos Storkey trained an 8-layer convolutional neural network by supervised learning from a database of human professional games, which without any search, defeated the traditional search program Gnu Go in 86% of the games . In their paper Move Evaluation in Go Using Deep Convolutional Neural Networks , Chris J. Maddison, Aja Huang, Ilya Sutskever, and David Silver report they trained a large 12-layer convolutional neural network in a similar way, to beat Gnu Go in 97% of the games, and matched the performance of a state-of-the-art Monte-Carlo Tree Search that simulates a million positions per move .
AlphaGo
AlphaGo
In 2015, a team affiliated with Google DeepMind around David Silver, Aja Huang, Chris J. Maddison, and Demis Hassabis, supported by Google researchers John Nham and Ilya Sutskever, build a Go playing program dubbed AlphaGo , combining Monte-Carlo tree search with their 12-layer networks , the “policy network,” to select the next move, the “value network,” to predict the winner of the game. The neural networks were trained on 30 million moves from games played by human experts, until it could predict the human move 57 percent of the time. AlphaGo achieved a huge winning rate against other Go programs, and defeated European Go champion Fan Hui in October 2015 with a 5 - 0 score . On March 9 to 15, 2016, AlphaGo won a $1M 5-game challenge match in Seoul versus Lee Sedol with 4 - 1 .
During The Future of Go Summit from May 23 to 27,
20th Computer Olympiad, Leiden 2017 in Wuzhen, China, AlphaGo won a three-game match versus current world No. 1 ranking player Ke Ji. After the Summit, AlphaGo is now retired from competitive play while DeepMind continues AI research in other areas .
Quotes
Quote by Gian-Carlo Pascutto in 2010 :
There is no significant difference between an alpha-beta search with heavy LMR and a static evaluator (current state of the art in chess) and an UCT searcher with a small exploration constant that does playouts (state of the art in go).
The shape of the tree they search is very similar. The main breakthrough in Go the last few years was how to backup an uncertain Monte Carlo score. This was solved. For chess this same problem was solved around the time quiescent search was developed.
Both are producing strong programs and we've proven for both the methods that they scale in strength as hardware speed goes up.
So I would say that we've successfully adopted the simple, brute force methods for chess to Go and they already work without increases in computer speed. The increases will make them progressively stronger though, and with further software tweaks they will eventually surpass humans.

See also
Search

          Change a Neighborhood’s Poverty or Wealth With a Mouse Click   

(Credit: Stamen Design)

It’s no secret that freeway proximity hurts property values, and well-maintained green space has the opposite effect. But a new tool that allows users to move around elements of a given cityscape – basketball courts, solar panels, parking lots – to see how they affect a neighborhood’s median income goes beyond those intuitive polarizations for a more layered view that, correct or no, gives some interesting insights into both city planning basics and artificial intelligence (AI).

The tool is called Penny, and it’s billed as “an AI to predict wealth from space.” Created by Stamen Design and Carnegie Mellon University, Penny uses high-resolution satellite imagery courtesy of GBDX (an analytics platform from DigitalGlobe) and neural networks trained on both census data and the imagery “to learn which features in the satellite images are correlated with household income,” according to a release.

Go to the Penny website and you’ll be able to look down from above on either New York City or St. Louis. You can move around to different neighborhoods to see how the AI predicts medium income, and how that compares to census data. It’s not always the same. In New York, for example, one area northwest of Central Park and the American Museum of Natural History, classified as “high income” by census data, is labeled “medium-high” by the tool.

From there, you can drag and drop city features onto the area to see how they impact income. In the New York neighborhood, a freeway, of course, makes the tool predict that the area will fall to “medium-low.” A parking lot isn’t favorable either, decreasing the tool’s confidence in its “medium-high” ranking by 19 percentage points.

Some features are less intuitive. Add a tennis court, supposedly a symbol of wealth and leisure, and Penny’s confidence in the “medium-high” score drops by 11 points. Add some trees and it also decreases. Add solar panels and the tool’s confidence level stays the same.

And those features aren’t consistent. Percentage points change depending on the area. Add a tennis court to a neighborhood classified as “medium-high” in St. Louis and the tool registers no change in confidence.

As a recent Wired article points out, that’s not necessarily because Penny has some hidden knowledge that us mere mortals fail to grasp. Sometimes, Penny’s inconsistencies highlight the failures of what AI can do, but it’s hard to pinpoint exactly when that’s the case.

From Wired:

Dropping the Plaza Hotel into Harlem makes Penny even more sure that it’s a low-income area. Adding trees doesn’t help, either. Scenarios in which the AI defies intuition highlight both the power and the limitations of any system based on machine learning. “We don’t know whether it knows something that we haven’t noticed, or if it’s just plain wrong,” [Aman Tiwari, a computer scientist at Carnegie Mellon University who trained the AI] says.

So which is it? Hard to say. “Sometimes an AI does amazing things, or locks onto some very intelligent solution to a problem, but that solution is inscrutable to us, so we don’t understand why it’s behaving in counterintuitive ways,” says Jeff Clune, a University of Wyoming computer scientist who studies the opaque inner workings of neural networks. “But it’s simultaneously true that these networks don’t know as much as we think they know, and they often fail in bizarre or baffling ways — which is to say they make predictions that are wildly inaccurate when it’s obvious they shouldn’t be doing so.”

In the end, Penny is as much about exploring AI as playing Urban Planner God.

“We’re hoping Penny provokes a lively conversation about how artificial intelligence is being used to make sense of our world,” Jordan Winkler, ecosystem product manager at DigitalGlobe, said in an announcement about the tool. “Sometimes Penny sees the world just like we do, and sometimes quite differently, in sometimes useful, and sometimes curious ways. It is as powerful as it is playful.”


          Mein Structured-News-Experiment erhält eine Förderung durch den Google-DNI-Innovationsfonds   

Freudestrahlend darf ich verkünden, dass mein Projektvorschlag tatsächlich für die zweite Runde der Digital News Initiative (DNI) ausgewählt wurde. Für alle Interessierten teile ich vorab den ersten Teil meiner Bewerbung.

Project title: Structured News: Atomizing the news into a browsable knowledge base for structured journalism

Brief overview:

Structured news are exploring a new space in news presentation and consumption.

It promotes that all news events be broken down into their component pieces and organized into a coherent repository. As tiny, contextualized bits of information these news "atoms" and "particles" will be findable, investigable and recombinable as individual units.

This in turn makes personal media feasible where a story can be customized for each reader, depending on her device, time budget and information needs, effectively being an answer to the unbundling of news.

For the news ecosystem as a whole, structured data could become a new building block enabling a Lego-like flexibility in the newsroom.

Project description:

This proposal takes much inspiration from the Living Stories project, led by Google, the New York Times and the Washington Post, and builds upon their approach to structured journalism.

A living story can be thought of as a continuously updated news resource that is capable to react to multifaceted story development given varying information preferences. This is made possible by treating journalistic content as structured data and structured data as journalistic content.

By "atomizing the news" we will be transforming a news archive into a fine-grained web of journalistic assets to be repurposed in different and new contexts. Technically a number of algorithms will split our text corpus into small, semantic chunks, be they a name, location, date, numeric fact, citation or some such concept. These "atomic news particles" will then get identified, refined and put into optimal storage format, involving tasks such as information extraction, named entity recognition and resolution.

For the seminal living stories experiment all stories had to be labeled by hand. This prototype project in contrast will try the automation route. Ideally these approaches would be blended to a hybrid form with more editorial input.

Key deliverable will be the structured journalism repository accumulated over time with all information organized around the people, places, organizations, products etc. named within news stories, facts about these entities, relationships between them and their role with respect to news events and story developments.

To make this knowledge base easily browsable I'd like to propose a faceted search user interface. Faceted search allows users to explore a multi-dimensional information space by combining search queries with multiple filters to drill down along various dimensions and is therefore an optimal navigation vehicle for all our purposes.

Specific outcome:

On the publishers' side, the proposed infrastructure would help build up newsroom memory, maximize the shelf life of content and provide the ultimate building blocks for novel news offerings and experiments. It must be emphasized that any news business created out of structured data is virtually safe from content theft because its user experience cannot be replicated without also copying the entire underlying database.

On the consumers' side, through structured journalism today's push model of news effectively turns into more of a pull, on-demand model. Up-to-date information is increasingly sought out exactly when it is needed and in just the right detail, not necessarily when it's freshly published nor in a one-size-fits-all news package. Essentially this implies transferring control over content from publishers to consumers. Product innovation on the users' behalf would be completely decoupled from innovation and experimentation in the newsroom.

Broader impact:

For news consumers I could see two major implications in user experience, honoring the readers' time and tending to their curiosity:

Today readers who have been following the news are confronted with lots of redundant context duplicated across articles whereas new readers are given too little background. In the programming community we have a famous acronym: DRY! It stands for "don't repeat yourself" and is stated as "every piece of knowledge must have a single, unambiguous, authoritative representation within a system." DRY represents one of the core principles that makes our code readable, reusable and maintainable. Applied to journalism I have high hope it might reap the same benefits.

The second implication I would call "just-in-time information". It means that information is pulled, not pushed, so that the reader can decide for herself how to consume the content. Choosing just the highlights or just the updates? Or following a specific event or topic? Or slicing and dicing through the whole news archive? It all requires more structure. Atomized news organize the information around structure.

As for a broader impact on the news ecosystem I could see more ideas of integrated software development environments be applied to the news editing process:

For instance, for several decades source code was merely looked at as a blob of characters. Only in the last 15 years our source code editors started parsing our program code while we type, understanding the meaning in a string of tokens, giving direct feedback. We share the same major raw materials, namely text, so the same potential lies in journalism tools. Just imagine what will happen if we stop squeezing articles into just a few database columns but save as much information about a story as we like? Would increased modularity in reporting bring the same qualities to journalism that developers value so much in code, like reuse, refactoring, versioning and possibly even open source? I would hope that the approach of structured news will inspire more explorations in these directions.

What makes your project innovative?

This project will supply a prototype infrastructure for structured journalism.

Because I am not a content provider myself this project would be transformative to me if I could become a technology provider in the respected field. My goal is to classify approximately three million web pages, archived since 2007 by my own web crawler, into an ever richer network of structured stories. This repository then could establish a playground to evaluate the ideas described and implicated.

Advanced natural language understanding will be most crucial to the problem. This project would help me familiarize myself more with state-of-the-art deep learning models like word vector and paragraph vector representations as well as long-short-term-memory neural networks.

The technology built for this project will mainly include a streaming data processing pipeline for several natural language processing and machine learning tasks, including information extraction, recognition and resolution.

Key deliverables will be the structured journalism repository and faceted news browser mentioned before and in the project description.

It's essential that this structured news browser be intuitive and useful to readers without mastering advanced search options. Different levels of detail cater to readers with different levels of interest. So ideally the final product should remind users somehow of a very flexible Wikipedia article. Imagine a single page with a story summary and stream of highlighted updates. All content is organized and filterable by named people, places, events and so on. Every piece of content is weighted by importance and remembers what you have already read and which topics you are really interested in.

Although international teams are experimenting on the very same frontier, the German language poses some unique problems in text mining and therefore bears overlapping efforts.

How will your Project support and stimulate innovation in digital news journalism? Why does it have an impact?

Because of its Lego-like flexibility structured data is the ultimate building block, enabling quick experimentation and novel news products.

It establishes a new kind of market place ripe for intensive collaboration and teamwork. Jeff Jarvis' rule "Do your best, link to the rest" could put a supply chain in motion in which more reuse, syndication and communication takes place both within a single news organization and across the industry. Just imagine a shared news repository taking inspiration from the open source culture in development communities like GitHub.

A shared knowledge base of fact-checked microcontent initially would result in topic pages and info boxes being more efficient, therefore maximizing the investments in today's news archives. Similarly, structure acts as an enabling technology on countless other fronts, be it personalization, diversification, summarization on readers' behalf or process journalism, data journalism, robot journalism for the profession.


          Living Stories (continued)   

Having applied to the Digital News Initiative Innovation Fund with no success, I'm posting my project proposal here in hope for a wider audience. If you are interested in atomized news and structured journalism and like to exchange ideas and implementation patterns, please send me an email.

Project title: Living Stories (continued)

Brief overview:

With this proposal, I'd like to follow up on the Living Stories project, led by Google, the New York Times and the Washington Post, and build upon its approach to structured journalism.

A living story can be thought of as a continuously updated news resource that is capable to react to multifaceted story development given varying information preferences. It's like a Wikipedia where each and every word knows exactly whether it is a name, place, date, numeric fact, citation or some such concept. This "atomization of news" breaks a corpus of articles down into a fine-grained web of journalistic assets to be repurposed in different and new contexts. This in turn makes personal media feasible where a story can be customized for each reader, depending on her device, time budget and information needs, effectively being an answer to the unbundling of news.

Combining the latest natural language processing and machine learning algorithms, I'd love to build the technical infrastructure to automate these tasks. My proof of concept would turn nine years worth of crawled web data into a rich network of living stories. If successful, microservice APIs will be offered for paid and public use.

Detailed description:

Living stories are exploring a new space in news presentation and consumption.

To refresh our memories what a living story actually was, I'll quickly summarize: It's a single-page web app, with a story summary and stream of updates, where all content is organized and filterable by named people, places, events, and so on. Different levels of detail cater to readers with different levels of interest, so every piece of content is weighted by importance and remembers what you have already read.

I'd like to highlight just two outcomes: (i) the DRY principle ("don't repeat yourself") says to honor the readers' time, and (ii) just-in-time information says to tend to the readers' curiosity.

Today, readers who have been following the news are confronted with lots of redundant context duplicated across articles, whereas new readers are given too little background. In the programming community, we have a famous acronym: DRY! It stands for "don't repeat yourself" and is stated as "every piece of knowledge must have a single, unambiguous, authoritative representation within a system." DRY represents one of the core principles that makes code readable, reusable and maintainable. Applied to journalism, it might reap the same benefits.

The second idea is called just-in-time information. It means that information is pulled, not pushed, so that the reader can decide for herself how to consume the content. Choosing just the highlights or just the updates, or following a specific event or topic, or slicing and dicing through the whole news archive, requires structure. Living stories organize the information around structure.

What makes your project innovative?

In many ways, this project is merely applying principles of modern software development, plus ideas out of lean production by Toyota, to the value stream of news organizations.

While both disciplines work with text as their major raw materials, we don't share the same powerful tools and processes yet. For example, why do news articles get squeezed into just a few database fields (i.a. headline, text, author, timestamp) when we could imagine so many more attributes for each story? What will happen if we stop handling articles as mere blobs of characters, but parse them like source code? Would increased modularity in reporting bring the same qualities to journalism that developers value so much in code, like reuse, refactoring, versioning, and possibly even open source?

For the seminal living stories experiment held in 2010, all data seems to have been crafted by hand, a librarian's job. This project however will apply computer science to the task. Ideally, these approaches would be blended to a hybrid form with more editorial input.

The technology built for this project will include a streaming data processing pipeline for information extraction, recognition and resolution. Advanced natural language understanding will be most crucial to the problem, that's why I'd love to gain more experience with state-of-the-art deep learning models like recurrent, recursive, convolutional, and especially long-short-term-memory neural networks, as well as word vector and paragraph vector representations.

My goal is to classify approximately three million web pages, archived since 2007 by Rivva's web crawler, into living stories. Deliverables will include a RESTful hypermedia API where there is a URL for everything and its relations, both browsable for humans as well as machine-readable. Also, the APIs of internally used microservices will be released, so that developers can then build their own applications.

On the publishers' side, the proposed technology stack would help build up newsroom memory, maximize the shelf life of content, and provide the ultimate building blocks for novel news offerings and experiments. It must be emphasized that any news business created out of structured data is virtually safe from content theft, because its user experience cannot be replicated without also copying the entire underlying database.

On the consumers' side, through structured journalism, today's push model of news effectively turns into more of a pull, on-demand model. Up-to-date information is increasingly sought out exactly when it is needed and in just the right detail, not necessarily when it's freshly published nor in a one-size-fits-all news package. Essentially, this implies transferring control over content from publishers to consumers. Product innovation on the users' behalf would be completely decoupled from innovation and experimentation in the newsroom.

Competition:

Adrian Holovaty's work on chicagocrime.org is the first example I remember combining data, code and journalism in an innovative way.

Truely pathbreaking was the Living Stories effort by Google Labs, the New York Times and the Washington Post. It's unclear to me why its cutting edge approach has been discontinued so soon, or in the meantime not even been taken up by someone else.

Circa News was regarded as a front-runner in "atomized news", but shutdown this year due to lack of funding. Circa was breaking out of the traditional article format and branching out into an update stream with facts, statistics, quotes and images representing the atomic level to each story.

PolitiFact is another good demonstration of structured news, which won them the Pulitzer price in 2009 for fact-checking day-to-day claims made in US politics.

On the extreme end of the spectrum is Structured Stories. This approach is so highly structured and thus affords so much manual labour that I personally can't see how it would scale to the work pace inside newsrooms.

Recently, the BBC, the New York Times, the Boston Globe, the Washington Post, and possibly even more news labs, all have announced both experimental prototypes as well as new projects on the way, with the BBC being the most prolific (Ontology, Linked Data) and the New York Times being the most innovative (Editor, Particles).

References:


          Integration of Swarm Intelligence and Artificial Neutral Network   
Integration of Swarm Intelligence and Artificial Neutral NetworkBy Satchidananda Dehuri, Susmita Ghosh, Sung-Bae Cho

£74.00   31 Jan 2010   Hardback   World Scientific Publishing Co Pte Ltd

Provides a forum for the dissemination of knowledge in both theoretical and applied research on swarm intelligence (SI) and artificial neural network (ANN). This title accelerates interaction between the two bodies of knowledge and fosters a unified development in the next generation of computational model for machine learning.



          Компания Sony открыла свои наработки в области нейронных сетей   
Компания Sony представила проект NNabla (Neural Network Libraries), в рамках которого открыла наработки в области построения нейронных сетей для решения задач глубинного машинного обучения. Система универсальная и изначально рассчитана на использование как на настольных ПК и встраиваемых устройствах, так и в кластерах и крупных серверах для решения исследовательских задач и практического применения. Код ядра NNabla написан на языке C++ и распространяется под лицензией Apache 2.0.
          Neuro-imaging maps brain wiring of extinct Tasmanian tiger   
Scientists have used an imaging technique to reconstruct the brain architecture and neural networks of the thylacine - better known as the Tasmanian tiger - an extinct carnivorous marsupial native to Tasmania.