Wednesday, 5 October 2016

Eliminating gender bias from algorithms

By,
Karishma
Machine learning is found everywherein our daily lives. Every time we talk to our smartphones, search for images or ask for hotels recommendations, we are interacting with machine learning algorithms. They take input as large amounts of data, like the whole text of an encyclopedia, or the complete archives of a newspaper, and interpret the information to extract patterns that might  be invisible to human analysts. But when these huge data sets include social bias, the machines learn that too.

A machine learning algorithm is like a newborn baby that has been given billion of books to read without being taught the alphabet or knowing any grammer or words. The effect of this type of information processing is impressive, but there is a problem. When it takes in the text data, a computer notices relationships between words based on various factors, including how many times they are used together.

We can test how exact the word relationships are identified by using analogy puzzles. Suppose I ask the machine to complete the analogy "He is to Man as She is to Y." If the machine comes back with "Woman," then we would say it is successful, because it returns the same answer a human would.
Our research group trained the system on Google News articles, and then asked it to complete another analogy: "Man is to Computer Programmer as Woman is to X." The answer came back: "Housewife."

Scrutinizing bias
We use same type of machine learning algorithm to generate what are called "word embeddings." Each English word is embedded, or allocate, to a point in space. Words that are semantically related are allocate to points that are close together in space. This type of embedding makes it easy for computer programs to quickly and efficiently recognize word relationships.
Afterfinding our computer programmer/housewife result, we asked the system to automatically generate huge numbers of "He is to A as She is to B" analogies, completing both portions itself. It returned many sensable analogies, like "He is to Brother as She is to Sister."
 In analogy notation, which you may remember from your school days, we can write this as "he:brother::she:sister." But it also came back with answers that reflect clear gender formula, such as "he:Father::she:Mother" and "he:doctor::she:nurse."
The fact that the machine learning system started is similar to  a newborn baby is not just the strength that makes it to learn interesting patterns, but also the weakness that falls prey to these obvious gender stereotypes. The algorithm makes its decisions based on which words appear near each other frequently. If the source documents reflect gender bias – if they more often have the word "Father" near the word "he" than near "she," and the word "Mother" more commonly near "she" than "he" – then the algorithm learns those biases too.

Tuesday, 4 October 2016

How Software Testing can measure the quality of product

By,
Nived

In software testing, it is most vital to quantify the quality, expense and viability of the task and the procedures. Without measuring these, task can't be finished effectively. 
Essential Software Test Metrics and Measurements – Explained with Examples and Graphs 
In programming ventures, it is most essential to gauge the quality, expense and viability of the task and the procedures. Without measuring these, task can't be finished effectively. 
In this article we will see cases and charts – Software test measurements and estimations and how to utilize these in programming testing process. 

There is a well-known articulation: "We can't control things which we can't gauge". 
Here controlling the ventures implies, how an undertaking chief/lead can distinguish the deviations from the test arrange ASAP to respond in the ideal time. Era of test measurements in view of the task needs is especially critical to accomplish the nature of the product being tried. 

What are Software Testing Metrics? 
A Metric is a quantitative measure of how much a framework, framework part, or process has a given property. 
Measurements can be characterized as "Guidelines OF MEASUREMENT". 
Programming Metrics are utilized to gauge the nature of the task. Basically, Metric is a unit utilized for depicting a quality. Metric is a scale for estimation. 
Assume, as a rule, "Kilogram" is a metric for measuring the trait "Weight". So also, in programming, "What number of issues are found in thousand lines of code?", here No. of issues is one estimation and No. of lines of code is another estimation. Metric is characterized from these two estimations. 

Test measurements illustration: 
•How numerous deformities are existed inside the module? 
•How numerous experiments are executed per individual? 
•What is the Test scope %? 

What is Software Test Measurement? 
Estimation is the quantitative sign of degree, sum, measurement, limit, or size of some trait of an item or procedure. 
Test estimation case: Total number of deformities. 
It would be ideal if you allude beneath graph for clear comprehension of the contrast between Measurement and Metrics.

Why Test Metrics? 
Era of Software Test Metrics is the most critical obligation of the Software Test Lead/Manager. 
Test Metrics are utilized to, Take the choice for next period of exercises, for example, assess the expense and timetable of future undertakings. 
Comprehend the sort of change required to achievement the task 
Take choice on procedure or innovation to be changed and so forth. 

Significance of Software Testing Metrics: 
As clarified above, Test Metrics are the most essential to quantify the nature of the product. 
Presently, by what method would we be able to quantify the nature of the product by utilizing Metrics? 
Assume, if a task does not have any measurements, then how the nature of the work done by a Test investigator will be measured?