So which one is better? Indeed, both have their positive angles. A piano accordion's format is straightforward and in the event that you have played on the consoles previously, you will think that its simple to utilize. The negatives of a piano accordion being that it has a littler range, and requires more finger development to play takes note of that are far separated.
Accordions these days are computerized in nature. A portion of the models from Roland will let you in a split second switch between exemplary accordions and symphonic instruments. In addition, you will likewise discover worked in theme, reverb, rotating, and impacts.
Contingent upon the kind of the accordion, the correct hand will play either a piano console or a chromatic (catch) console. You utilize these to play the treble notes.
The left hand is utilized to play the bass notes and preset harmonies. The left hand is likewise used to change changes, and to work the air catch.


Fitzgerald Construction Services LLC. Ft Myers, FL. 33967 . Office 239-244-8335 Fax 239-244-8333 Toll Free 866-335-0977 Our website address is: https://fcsbuilder.com.
Personal data is also created by a user's interactions with your site. Personal data is generated from technical processes such as contact forms, comments, cookies, analytics, and third party embeds. The only data we keep is the information from you request on the contact us page, so we can contact you in regards to your questions and projects.
A cookie is a small amount of data that is sent to your browser from a web server and stored on your hard drive to provide easier site navigation and access to forms. You can still use our site if your browser is set to reject cookies. Our cookies do not generate personal data, do not read personal data and are never tied to anything that could be used to identify you.
We do not post any third party images, videos or articles from other web sites so there will not be any third party's collecting your data directly from our site, except for analytical purposes.
We never use or share the personal identifiable information provided to us online in ways unrelated to the ones described above without also providing you an opportunity to opt-out or otherwise prohibit such unrelated uses.
Unless you otherwise consent, we will only use your personal information for the purpose for which it is submitted. The purpose is to reply to your message or request for information.
We do not share your information with outside parties except to the extent necessary to complete your request.
We use your return Email Address and or Phone Number to answer the Email we receive from you. Your manually submitted Personal Information is not used for any other purpose.
If you have requested information from our site, you can request to receive an exported file of the personal data we hold about you, including any data you have provided to us. You can also request that we erase any personal data we hold about you. This does not include any data we are obliged to keep for administrative, legal, or security purposes.
We do not send your data, except for the technical data generated for analytical information that is collected by the hosting company and search engines. This information is sent to an administration site and used internally for marketing purposes.
Protecting the Privacy of the very young is especially important to us. For that reason Fitzgerald Construction Services LLC does not knowingly collect or maintain any personal information from children under the age of 18.
No part of our site is designed for the purpose of attracting any person under the age of 18.
To prevent unauthorized access, maintain data accuracy and ensure the correct use of information, we have put in place appropriate managerial procedures to safeguard and secure the date we collect.
When you visit our site, your technical information is obtained for analytical purposes from third party companies like search engines and web hosts.. We receive this information back from then in a series of graphs and charts used for marketing purposes.


text:
Q: setinterval working very randomly Hi,
I have this code:
//<![CDATA[
$(window).load(function(){
setInterval(function(){
   // toggle the class every 10 seconds
   $('body').addClass('new');
   setTimeout(function(){
     // toggle back after 10 seconds
     $('body').removeClass('new');
   },10000)
},10000);
});//]]>

This code is supposed to add the class "new" to body 10 seconds later after the page first loads and then remove it after 10 seconds again to start all over going into an endless loop. But it wont work as expected. Sometimes it takes way longer than 10 seconds to add the class and it removes it too soon. Some other times it does it only once and then the loop ends just like that.
Whats wrong here? A more effective and reliable alternative will be also welcome.
Thank you.

A: You've told the code adding the class to run every 10 seconds. Every 10 seconds, you also schedule a timer to remove the class 10 seconds later. So as of the 20th second, you have a race — will the first timer get there first, or will the second? In any case, it won't have the result you want.
Use a single timer that toggles:
setInterval(function() {
    $("body").toggleClass("new");
}, 10000);

As for it taking a long time to start, remember that the window load event doesn't occur until all resources have finished downloading, including all of your images and such. So the whole process may be starting quite a bit later than you expect.
Also note that browsers are increasingly "dialing back" timers in inactive tabs, so your timer may not be running, or may run infrequently, when the window it's in doesn't have focus.

From your comment:

But just as a bonus. What if I want to have the class to last 20 seconds but keep the interval in 10 seconds?

That complicates things. You could have a flag that you toggle, and only toggle the class when the flag is in one state or the other. E.g., something like:
(function() { // Scoping function so the flag isn't a global
    var flag = true;
    setInterval(function() {
        if (flag) {
            $("body").toggleClass("new");
        }
        flag = !flag;
    }, 10000);
})();

That will add the class at 10 seconds, toggle the flag at 20, remove the class at 30, toggle the class at 40, then start the cycle again. Adjust as needed.

redpajama_set_name: RedPajamaStackExchange


We can't decide what we love more: the sweet, alluring fragrance ($72; sephora.com), or the incredibly display-worthy bottle it comes in.
If the delicious scent of this body butter ($19; ulta.com) doesn't convince you of honey's many skin-nourishing benefits, we bet the silky smooth touch will have you beekeeping in no time.
The sweet-smelling bath bomb ($7; lushusa.com) will quickly switch up your bath time routine, while the nutrient-rich shampoo ($10-$30; lushusa.com) promises to revive dry, stressed hair with the moisture it craves.
This head-turning cocktail ring ($290; saksfifthavenue.com) is the most stylish way to honor your favorite honey-making creature.
This gold honeycomb cuff ($1,459; matchesfashion.com) will take any outfit from basic to buzz-worthy in a matter of seconds.
Celebrate National Honey Month by kicking back with a glass of Jim Beam's golden honey-infused bourbon ($16; crownwineandspirits.com).
A relaxing honey-scented bubble bath ($40; lauramercier.com) is sure to take the sting out of a long, busy day.
Besides keeping your pucker smooth and hydrated, this honey-flavored lip balm ($4; oyinhandmade.com) will provide a tasty treat with every application.
The reality star's sixth fragrance ($68; kardashianfragrance.com) blends notes of raw wild honey with rose petals for a warm, delicious scent that oozes pure femininity.


text:
<?php
/*
 * Created on 2012-6-30
 *
 * To change the template for this generated file go to
 * Window - Preferences - PHPeclipse - PHP - Code Templates
 */
  require '../include/common.inc.php';
  include ROOT.'/include/init.inc.php';

  $smarty->display(ROOT.'/templates/Hospital/clinic.html');

?>

redpajama_set_name: RedPajamaGithub


The most visited spa in Slovakia is some 12km away from Trenčín. Trenčianske Teplice SPA is the oldest and most visited spa in Slovakia. This is thanks to the outstanding healing benefits of the natural sulphur thermal water and their truly romantic location in nature.
The company Kúpele Trenčianske Teplice, a.s. is one of the oldest and most visited spas in Slovakia. It is mainly thanks to the excellent natural sulfurous thermal water and its romantic location.
Medical care in the Trenčianske Teplice a.s. has long tradition (the first written reference of the spa is from 1247) and it is based primarily on the use of natural sulfurous thermal water.
Currently, in addition to thermal water, a wide range of medical methods in the field of curative rehabilitation and physiotherapy is used.
The spa is specialized in the treatment and prevention of musculoskeletal diseases, conditions after operations and injuries, chronic rheumatic diseases in some lifestyle diseases, occupational diseases and psoriasis.


text:
Sheridan Libraries acquire John Barth Collection
Image caption: John Barth, at the head of the table, teaches at Johns Hopkins in the 1970s.
Credit: Sheridan Libraries
By Brian Shields
/ Published March-April 2014
The Johns Hopkins University Sheridan Libraries have acquired the John Barth Collection, which documents the creative output and career of the American fiction writer, essayist, and teacher.
Barth, a National Book Award winner, was a leading figure in the university's Writing Seminars, and his work is central to 20th-century literary history, especially the development of the contemporary novel, the articulation of international postmodernism, and the identity of Maryland's Eastern Shore in American literature. He is the author of 17 novels and collections of short fiction and three collections of essays.
"We are very pleased to be the stewards of a collection so closely tied to the history of the university and the life of a beloved professor," says Winston Tabb, Sheridan Dean of University Libraries and Museums. "The John Barth Collection will offer researchers unrivaled insight into the development and work of a writer who bridged the gap between regional American fiction and international experimentation. The collection will also provide opportunities for scholars to study more broadly the literature of the late 20th and early 21st century—a time of great change in terms of literary culture, reading practices, and publishing opportunities."
The collection contains the complete extant notes and manuscripts for Barth's published writings and many of his lectures, correspondence between Barth and other major literary figures, all the English-language editions and many translations of Barth's work, as well as anthologies, journals, and works of criticism that include his work or scholarship about it.
In addition, the collection includes most of the 1,200-volume library of Barth and his wife, Shelly: books belonging to Barth from his student days, with his annotations; books inscribed by students, colleagues, and important writers of the past several decades; and books that were instrumental to Barth in his own writing. The collection also includes photographs, recordings, juvenilia, and posters and slides that Barth used to illustrate talks and readings.
"I'm pleased to have these materials at Johns Hopkins because it was at Hopkins—and largely thanks to Hopkins and my fine undergraduate- and graduate-school professors—that I managed to become a writer," Barth says.
Barth was born on Maryland's Eastern Shore and earned his bachelor's degree in 1951 and his master's degree in 1952 from Johns Hopkins. Before returning in 1973 to teach at his alma mater, he held professorships in the English departments of Penn State University and the State University of New York at Buffalo. Barth became a professor emeritus at Johns Hopkins in 1995 and was afterward a senior fellow at Washington College, in Chestertown, Md. He received an honorary Doctor of Humane Letters degree from Johns Hopkins in 2011.
His works include The Floating Opera, The End of the Road, The Sot-Weed Factor, Giles Goat-Boy, Lost in the Funhouse, Chimera, and The Tidewater Tales.
In 1973, he won the National Book Award in fiction for Chimera; in 1997, he received the F. Scott Fitzgerald Award for Outstanding Achievement in American Fiction; and in 1998, he received both the Lannan Foundation Lifetime Achievement Award and the PEN/Malamud Award for Excellence in the Short Story.
"He's a groundbreaking stylist. His writing has influenced many younger writers, such as Julian Barnes, David Foster Wallace, and Salman Rushdie, to name just a few," says Jean McGarry, a professor and co-chair of the Writing Seminars. "He also educated a generation of fiction writers as a professor in the Writing Seminars for nearly 20 years. I can attest from experience in his classroom that Jack was a memorable teacher and writing mentor: pithy, exacting, generous, funny, and one to whom students feel a lifetime of loyalty and affection."
The John Barth Collection will be the subject of a major exhibition in fall 2015, when most of it will also be opened up to researchers.
More from the March-April 2014 issue

redpajama_set_name: RedPajamaCommonCrawl


text:
FDBusiness.com
AIPIA
Interpack Preview
Packaging & Environment
Top 100 Food Companies
Total Processing Preview
Amplo Filtration Adds Environmental Water Systems to Further Strengthen Offering
KK Foods Plans £5.5 Million Expansion KK Fine Foods, a leading frozen food manufacturer based at Deeside in Wales, is set to expand and diversify with support from the Welsh Government, creating an additional 40 new...
Nestlé Launches Fund to Boost Packaging Innovation Nestlé has announced that it will invest up to SFr2 billion (€1.86 billion) to lead the shift from virgin plastics to food-grade recycled plastics and to accelerate the development of...
Bosch Packaging Technology is Now Syntegon Syntegon Technology is the new name for Bosch Packaging Technology, following the sale of the former Bosch division. Headquartered in Waiblingen, Germany, Syntegon Technology's business focus is on intelligent and...
Nestlé Launches New KitKat Gold in the UK Nestlé has unveiled a unique addition to its biggest confectionery brand – the new KitKat Gold. KitKat Gold is a combination of trademark crispy wafer on a smooth milk chocolate...
789 Food and Drink Acquisitions in 2019 2019 broke records again for the number of food and drink transactions around the world, with 789 registered on the Zenith Global mergers and acquisitions database, an average of 15...
Print This Article Share it With Friends
Amplio Filtration Holdings, which already includes Puresep Technologies as part of its offering, has purchased Environmental Water Systems (UK), the water treatment specialists. EWS specialises in the design, manufacture, service and supply of water treatment, water purification and waste water recovery systems in the healthcare and industrial sectors, with state-of-the-art products including the EndoTherm and EndoPure. EWS is a major service provider with exceptional service and technical support capabilities. Based in Cheddar, UK, EWS has 34 employees and a turnover of more than £4.2m.
Formed in 2002, Puresep Technologies, the other member of the Amplio Filtration Holdings Group, has over 300 clients, an experienced team of 15 employees and revenues of £3.7m. Puresep provides a comprehensive range of conventional and leading edge water treatment and process filtration systems. Customers include blue chip organisations; such as Heineken, Diageo, and Britvic.
The combination of the two organisations into one group means the technology and services business model can be broadened and strengthened to target a wider market and to continue to bring to the market place; flexible, efficient and cost effective solutions in a time of tightening budgets and increasingly stringent environmental regulations.
The Amplio Filtration Holdings Group focuses on water, waste water and industrial filtration. The expertise that Amplio Filtration has in this market is based on market knowledge and its network of global management with a given track record.
"We are delighted with the new relationship and look forward to building on already successful product ranges. This partnership allows both Puresep and EWS to continue to innovate and grow as technology leaders and major players in the healthcare and industrial markets. Further investment means both EWS and Puresep can continue to build on current growth with programmed development of innovative products," says Vince Payne, managing director of Amplio Filtration Holdings. "We will continue to bring to market products and solutions that customers require to achieve the competitive advantage they desire in these particularly challenging times."
Warning: count(): Parameter must be an array or an object that implements Countable in /home/fdbusiness/public_html/wp-content/themes/legatus-theme/includes/single/post-tags.php on line 5
Scroll Back To Top More Articles From Author
Food & Drink Business Conference & Exhibition 2016
[eventlist]
find food jobs
F&D Business Preferred Suppliers
Which is the capital city of Ireland?
© 2019 Copyright Premier Publishing. All Rights reserved.
Designed by PREMIER PUBLISHING


To better prepare you for applying for a residential loan, we have assembled a list of items you will need to get through the process quickly.
Recent paystubs for the past 30 days.
Operating Agreement and LLC-1, Articles of Incorporation.
Trust documentation, if assets are held in the name of a trust.


text:
\section{Introduction}
\label{sec:introduction}
\subsection{Histopathological imaging for Breast cancer}
 Breast cancer is the most common cause of cancer in women \cite{wild2014world,fitzmaurice2018global,bray2004changing}. It has the highest incidence (43.3 per 100 000 population) of any other cancer and the highest mortality rate (15\%) of all cancer deaths in women in 2012 \cite{wild2014world}. Thus detection and diagnosis of breast cancer are vital in reducing the impact of the disease. Histopathological imaging is considered the gold standard for breast cancer detection and diagnosis \cite{han2017breast}. Histopathology is a diagnostic technique that involves microscopic examinations of tissues to study the sign of a disease. This method preserves the underlying architecture of the tissues thereby providing a significant contribution to the diagnosis of diseases. It is the only way to detect some of the diseases like lymphocytic infiltration of cancer. Histopathological images have a lot of information and structure which makes them highly reliable in the diagnosis of diseases especially in almost all types of cancer \cite{gurcan2009histopathological}.
\subsection{State--of--the--art machine learning algorithms for Histopathological imaging}
With the advancement in digital imaging, computer-aided diagnosis (CAD) is focused in the recent past \cite{gurcan2009histopathological,ghaznavi2013digital,al2012digital,fuchs2011computational,giger2008anniversary,doi2007computer,aswathy2017detection}.  Machine learning algorithms such as conventional neural networks and deep neural networks have shown tremendous potential in CAD applications. Feature extraction in a conventional neural network played a significant role in the predictions of the neural network. Various methods of feature extraction followed by classifiers such as support vector machine, K-nearest neighbor, decision tree, Naive Bayes amongst others were explored in the literature for classification and segmentation of breast cancer images \cite{filipczuk2013computer,george2013remote,kowal2013computer,asri2016using,zhang2013breast,spanhol2015dataset,mercan2017multi}. Though these methods performed reasonably well in terms of accuracy, manual feature extraction was a bottleneck in improving the results.\\

Convolutional neural networks (CNNs) were the most successful in learning advanced features automatically from the input images.  CNNs perform very well in classification, both binary \cite{bayramoglu2016deep,cruz2014automatic,spanhol2016breast} and multiclass classifications \cite{araujo2017classification,han2017breast}, and metastasis detection \cite{lin2019fast} on breast cancer images. Apart from being able to perform classification, CNNs were also successfully implemented in problems involving segmentation \cite{sirinukunwattana2016locality,badrinarayanan2017segnet,jia2017constrained} and detecting regions of interest that contain in-depth discriminatory information for classification in large whole-slide images \cite{li2019classification,yang2019guided,xu2019attention}.  CNNs also provided the scope to implement transfer learning.
In transfer learning, the parameters learned for one data set are utilized to accelerate learning for another data set to solve a similar problem.
Transfer learning CNN (TL-CNN) performs the best and is considered as the state-of-the-art classifier for breast cancer images  \cite{nawaz2018multi,motlagh2018breast,xie2019deep}. A grand challenge on breast cancer histology images was conducted to advance the state--of--the--art in classifying these images. It was concluded that CNN was the most successful method to classify these breast cancer images \cite{aresta2019bach}. The top performers \cite{chennamsetty2018classification,kwok2018multiclass,brancati2018multi} in this challenge used the architecture of an existing network such as Resnet \cite{he2016deep}, Densenet \cite{huang2017densely}, Inception \cite{szegedy2015going}, VGG16 \cite{simonyan2014very}, etc and pre-trained these networks using ImageNet \cite{krizhevsky2012imagenet}.\\

 Uncertainty quantification provides a measure of trust in machine decisions and this metric is crucially important in medical applications  \cite{begoli2019need}. Given the success of automatic classifiers for medical images, their uncertainty quantification is essential. However, there are only a few studies that report uncertainty quantification \cite{gal2017deep}. Although CNN performs the best for image classification than other machine learning techniques in terms of accuracy, their parameters are deterministic and thus can not provide any measure of uncertainty in its predictions.  In addition, predictions based on deterministic CNNs might provide incorrect results and without any estimate of confidence, these might lead to undesirable consequences. To evaluate the confidence of predictions, uncertainty quantification is important \cite{begoli2019need}. The Bayesian CNN is an efficient state--of--the--art machine learning technique to quantify uncertainties \cite{blundell2015weight,shridhar2019comprehensive,shridhar2018uncertainty}. It endows the uncertainty quantification capability in the CNN framework with nominal additional computational effort. \\

  In a Bayesian--CNN, the weights and biases are random variables as opposed to deterministic variables used in CNN.
Through the stochastic nature of the parameters,  Bayesian--CNN captures the variability in the data set and computes the uncertainties in its predictions.
Towards this, Blundell et al. \cite{blundell2015weight} introduced an efficient algorithm called ``Bayes by backprop". This algorithm can be used to learn the probability distribution on weights and it was compatible with the conventional backpropagation scheme. They have also shown that it is possible to regularise the weights by minimizing a loss function known as the variational free energy and demonstrated that this method of regularisation showed performance comparable with dropout on MNIST classification. Shridhar et al. \cite{shridhar2019comprehensive,shridhar2018uncertainty} extended the ``Bayes by backprop" algorithm to convolutional neural networks. The proposed Bayesian-CNN architecture was implemented for image classification, image super-resolution, and generative adversarial networks.  This method has shown performance as good as conventional CNN and in addition, provided uncertainty measures and regularisation. Kendall et al. \cite{kendall2017uncertainties} provided a Bayesian deep learning framework combining aleatoric and epistemic uncertainties. The authors improved the model's performance by 1 to 3\% over its deterministic counterpart by reducing the effect of noisy data. The trade--offs between modeling aleatoric and epistemic uncertainties were also studied. Kwon et al. \cite{kwon2018uncertainty} proposed a method of quantifying uncertainties in classification problems using Bayesian neural networks. Bayesian networks are used in the literature to perform active learning. Uncertainties were utilized to add new samples in the training data to improve performance by Gal et al \cite{gal2017deep}. An accurate, reliable, and active learning framework was introduced by Raczkowski et al \cite{rkaczkowski2019ara} utilizing the variational dropout-based uncertainty measures.
\subsection{Present work:  Quantification, explanation, and use of uncertainty, and the Modified Bayesian--CNN}
\indent Bayesian--CNNs are gaining popularity due to their ability to provide uncertainties associated with the predictions. Yet, there has been no known work to the authors' knowledge that demonstrates the advantages of Bayesian--CNN over CNN to classify histopathological images. In this work, at first, we perform uncertainty quantification for the classification of breast histopathological images and show the advantages of Bayesian--CNN over CNN. We found that the Bayesian--CNN improves accuracy and reduces overfitting in comparison to CNN in addition to quantifying uncertainties. To exploit the advantages of uncertainty quantification, we have developed a novel technique to divide the data into low and high uncertainty subsets. We show significant improvement in accuracy in the majority of data that has low uncertainty. A small fraction of the data that has higher uncertainty can be referred to the experts. Thus, uncertainty provides an avenue to determine which images require human intervention. We explain the reason for this high uncertainty in a subset of data by projecting the data into a low dimensional space (latent space) using t--distributed stochastic neighbor embedding (t-SNE). We choose a three-dimensional latent space to facilitate the visualization of data. To the best of the authors' knowledge, such an explanation of uncertainty is not reported in the literature.

We propose a new model to extend the Bayesian--CNN to further improve its performance and name it as the modified  Bayesian--CNN. Adaptive activation functions have shown improvement in performance for both deep neural networks and convolutional neural networks \cite{qian2018adaptive,jagtap2020adaptive,dushkoff2016adaptive}. However such adaptive activation functions are not applied to Bayesian Neural networks.  The novelty of the proposed adaptivity lies in the fact that the learnable parameter is random as opposed to deterministic parameters reported in the literature. Thus the activation function is now sampled from an ensemble of such functions based on the probability distribution of parameters learned from the data.

The rest of the paper is organized as follows: in section \ref{CHAPTER2} the data set and the methods used in this work are described; results obtained in the work and their analysis are presented in section \ref{CHAPTER3} followed by conclusions in section \ref{CHAPTER4}.

\section{Data set and methods}\label{CHAPTER2}

\subsection{Data acquisition}
The breast histopathological images used in this work are from a publicly available data set \cite{mooney_b_2017}. These are images containing regions of Invasive Ductal Carcinoma  which is the most common subtype of all breast cancers \cite{mooney_b_2017}. These regions are separated from the whole slide images by pathologists. The original data set consisted of 162 whole mount slide images of Breast Cancer specimens scanned at 40x.
From the original whole slide images, 277,524 patches of size $50\times50$ pixels were extracted (198,738  negative and 78,786 positive) and provided as a data set for classification.

\subsection{Data Preparation} \label{data_prep}
The dataset consists of two classes: positive (1) and negative (0). The classification of the data was carefully done by experienced pathologists providing the ground truth for training. 20\% of the entire data set was used as the testing set for our study. The remaining 80\% of the entire data was further split into a training set and a validation set (80\%-20\% split) to perform hyperparameter optimization.
The image size is $3\times50\times50$ (D$\times$H$\times$W), where D is the depth (color channels), H is the height, and W is the width. The images were shuffled and converted from uint8 to float format for normalizing.
For most of the images, the majority of the pixel values are greater than 200.
This makes the computation extremely expensive especially with the large size of data. Further, it leads to problems such as singularity/gradient explosion during the evaluation of loss function. In addition, the original images are such that the information that needs to be highlighted has low pixel values. To solve these problems, we computed the complement of all the images (training and testing) and then used them as inputs to the neural network.

\subsection{Methods}\label{sec:method}
 The mathematical background for Bayesian--CNN and its uncertainty quantification \cite{shridhar2019comprehensive}, and for t-SNE \cite{van2008visualizing} is revisited in this section. The implementation of stochastic adaptive activation on Bayesian--CNN is also described.

\subsubsection{Bayesian Neural Networks}
The neural network can be defined as a probabilistic model ${P}({y}|{x}, {w})$, where ${x} \in \mathbb{R}^{{p}}$ is an input to the network, ${y} \in {\Upsilon}$ is the output. Where $\Upsilon$ is a set of all possible outputs. The network consists of a set of trainable random parameters $w$. This set of parameters $w$ is learned using a complete Bayesian approach. In this approach given training data $D$, the posterior distribution of weights ${P}({w} | {D})$ is calculated using Bayesian inference for neural networks which involves marginalization over all possible values of $w$. Once the posterior distribution ${P}({w} | {D})$ is obtained, predictions on the unseen data are obtained by taking expectations on the predictive distributions. The predictive distribution of an {unknown label} ${\widehat{y}}$ of a {test data item} ${\widehat{x}}$ is given by
$
{P}(\widehat{{y}} | \widehat{{x}})=\mathbb{E}_{{P}({w} | {D})}[{P}(\widehat{{y}} | \widehat{{x}}, {w})]
=\int_{\Omega_{w}} {P}(\widehat{{y}} | \widehat{{x}}, {w}) {P}({w} | {D}) {dw}.\\
$

To estimate the posterior distribution we use Bayes' Rule which gives:
\begin{align}
{P}({w} | {D})=\frac{{P}({D} | {w}) {P}({w})}{{P}({D})}
\label{eq:bayes}
\end{align}
The term ${P}({D} | {w})$ the likelihood of the training data (${D}$) given a parameter setting (${w}$). Assuming each training data to be independent and identically distributed, the above term becomes the product of likelihood,
$
{P}({D} | {w})=\prod_{{n=1}}^{{N}} {P}\left({y}^{n} | {w}, {x}^{n}\right)
$ where, $({x^n, y^n})$ are the training data item and known label respectively.\\
 The prior ${P}({w})$ is our belief about the distribution of weights without seeing the data. The term ${P}({D})$ in the equation (\ref{eq:bayes}) is intractable which makes the posterior distribution ${P}({w} | {D})$ intractable. The term ${P}({D})$ involves marginalization over the weight distribution: $
{P}({D})=\int_{{\Omega_{w}}} {P}({D} | {w}) {P}({w}) {dw}
$.\\

For variational inference, the posterior distribution ${P}({w} | {D})$ which is intractable is approximated with a tractable simpler distribution over the model weights ${q}({w})$. If we assume our weight distributions to be Gaussian, this simpler tractable distribution has variational parameters ${\theta}$, where ${\theta}=({\mu}, {\sigma})$. We fit the variational parameters ${\theta}$ such that ${q}({w} | {\theta}) \approx {P}({w} | {D})$. The variational posterior ${q}({w} | {\theta})$ is used instead of the intractable posterior ${P}({w} | {D})$ for the inference,
$
{P}(\widehat{{y}} | \widehat{{x}})=\mathbb{E}_{{q}({w} | {\theta})}[{P}(\widehat{{y}} | \widehat{{x}}, {w})]
$. Estimating ${q}({w} | {\theta}) \approx {P}({w} | {D})$ we can say that we have learned the distribution of weights given training data.

To make the variational posterior ${q}({w} | {\theta})$ and the true posterior ${P}({w} | {D})$ similar, we minimize the KL divergence between them:
\begin{align*}
&{K} {L}[{q}({w} | {\theta}) \| {P}({w} | {D})]=\mathbb{E}_{{q}({w} | {\theta})}\left[{\log} \frac{{q}({w} | {\theta})}{{P}({w} | {D})}\right]\\
&=\int {q}({w} | {\theta}) {\log} \frac{{q}({w} | {\theta})}{{P}({w})} {d} {w} +\int {q}({w} | {\theta}) {\log} ({P}({D})) {d} {w} \\&-\int {q}({w} | {\theta}) {\log} ({P}({D} | {w}))  {dw}
\end{align*}
The term ${\log} ({P}({D}))$ makes the above equation intractable. Although intractable, it is constant. Therefore, minimizing the KL divergence can be defined as:
\begin{align*}
{\min}\left ({K} {L}[{q}({w} | {\theta}) \| {P}({w} | {D})]\right) &={\min} ({K} {L}[{q}({w} | {\theta}) \| {P}({w})]\\&-\mathbb{E}_{{q}({w} | {\theta})}[\log ({P}({D} | {w}))]\\
\end{align*}
The term $\left({K} {L}[{q}({w} | {\theta}) \| {P}({w})]
-\mathbb{E}_{{q}({w} | {\theta})}[\log ({P}({D} | {w}))]\right)$ is called the {Variational Free Energy (VFE)} which is to be minimized.
Exact minimisation of the cost function is computationally expensive, therefore it is approximated through a Monte Carlo sampling procedure as follows:
\begin{align*}
{\mathcal{F}}({D}, {\theta}) &\approx \sum_{i=1}^{n} [{\log} {q}\left({w}^{(i)} | {\theta}\right)-{\log} {P}\left({w}^{(i)}\right)-{\log} {P}\left({D} | {w}^{(i)}\right)]
\end{align*}
Where, ${w}^{(i)}$ denotes the $i^{th}$ Monte Carlo sample drawn from the variational posterior ${q}({w}^{(i)} | {\theta})$. Each term in the cost function has weights that are drawn from the variational posterior.
To implement and compute the above cost we need three terms: 1) log of variational posterior, 2) log of prior (Gaussian or scale mixture), 3) log-likelihood of the data.\\

The variational posterior ($q$) is composed of independent Gaussian distribution for each parameter. The sample of weights are obtained by sampling the unit Gaussian, shifting and scaling by the mean ${\mu}$ and a standard deviation ${\sigma}$ respectively. To ensure that the standard deviation is always non-negative, it is expressed as $\sigma=\operatorname{softplus}{(\rho)=\log (1+\exp (\rho))}$, point-wise. Parameters, $w$, of the variational posterior, $q$, can be re-written in terms of a parameter--free noise as ${[w=\mu+\log (1+\exp (\rho)) \circ \varepsilon]}$ or ${[w=\mu+ \sigma \circ \varepsilon]}$.  Where, $\circ$ is point-wise multiplication, $\varepsilon$ is a sample drawn from unit normal \cite{blundell2015weight}. The steps for optimization are presented in supplementary document.\\

\subsubsection{Bayesian Convolution Neural Networks}
The parameters of CNNs are filters or kernels which are to be learned during training. In the case of a Bayesian--CNN these kernels are represented by probability distributions as shown in Fig.~\ref{fig:conv}.

\begin{figure}[H]
    \centering
        \includegraphics[scale=0.25]{New_figures/NN4.png}

    \caption{Schematics of the convolution of Bayesian--CNN showing probability distributions of random parameters.}
    \label{fig:conv}
    \vspace{-10pt}
\end{figure}

During the training of Bayesian--CNN the reparameterization trick is applied on these filters or kernels, which are of shape {h$\times$w$\times$d}. They are sampled from the variational posterior ${q}({w} | {\theta})$ using the following equation:
$$w_{h, w, d}=\mu_{h, w, d}+\log \left(1+\exp \left(\rho_{h, w, d}\right)\right) \circ \varepsilon_{h, w, d}$$
where h is the height, w is the width and d is the depth of the filter and $\circ$ represents point-wise multiplication. After the sampling from the variational posterior, similar optimization steps as explained in the previous section are followed.

\subsubsection{Uncertainty Quantification}
\label{sec:UQ}
The uncertainty quantification becomes extremely important when dealing with the applications related to autonomous vehicles, medical imaging, etc. Bayesian deep learning makes it possible to quantify the uncertainties in the prediction as we have probability distribution over weights. Taking an expectation of the predictive posterior probability distribution: $\mathbb{E}_{{q}({w} | {\theta})}[{P}(\widehat{{y}} | \widehat{{x}}, {w})]$ gives us the most probable prediction of the unknown data $\widehat{{x}}$. The variance of the predictive posterior probability distribution: $\operatorname{Var}_{{q}({w} | {\theta})}[{P}(\hat{{y}} | \hat{{x}}, {w})]$ quantifies the uncertainties. There are two types of uncertainties: the {Aleatoric} and the {Epistemic} uncertainty. The variance of the predictive posterior probability distribution is the sum of both these uncertainties:
\begin{align*}
\operatorname{Var}_{q(w | \theta)}[P(\widehat{y} | \widehat{x}, w)]
&= \textrm{aleatoric} + \textrm{epistemic}
\end{align*}
The aleatoric uncertainty corresponds to the noise in the data set whereas the epistemic uncertainty corresponds to the variability of the model developed\cite{shridhar2019comprehensive}. One of the promising approaches to quantify the uncertainties is explained in \cite{kwon2018uncertainty}. The uncertainties are obtained from the variance of the predictive posterior probability distribution,
\begin{align*}
&\operatorname{Var}_{{q}({w} | {\theta})}[{P}(\widehat{{y}} | \widehat{{x}}, {w})]=\mathbb{E}_{{q}({w} | {\theta})}\left[({y}-\mathbb{E}[{y}])^{2}\right]\\
 &=\int_{\Omega_{w}} \left[\left[\operatorname{diag}\left(\mathbb{E}_{P(\widehat{{y}} | \widehat{{x}}, {w})}[\widehat{{y}}]\right) \right. \right.  \left.-\mathbb{E}_{P(\widehat{y} | \widehat{x}, w)}[\widehat{y}] \mathbb{E}_{P(\widehat{y} | \widehat{x}, w)}[\widehat{y}]^{T}\right] \\ & \left.q(w | \theta) dw \right] +\int_{\Omega_{w}} \left[\left[\mathbb{E}_{P(\widehat{y} | \widehat{x}, w)}[\widehat{y}]-\mathbb{E}_{q_{\theta}(\widehat{y} | \widehat{x})}[\widehat{y}]\right]\right.
 \\ & \left.\left[\mathbb{E}_{P(\widehat{y} | \widehat{x}, {w})}[\widehat{y}] - \mathbb{E}_{{q}_{{\theta}}(\mathcal{Y} | {x})}[\widehat{{y}}]\right]^{T} {q}({w} | {\theta}) d {w} \right]
\end{align*}
The above expression is the sum of aleatoric and the epistemic uncertainties which is derived from the variant of the law of the total variance \cite{kwon2018uncertainty}

The first term of the above equation (variance if the predictive posterior probability) is defined as the aleatoric uncertainty and the second term is the epistemic uncertainty. Due to the integral term in the above equations, it is intractable and requires approximations as follows. The equation of the aleatoric uncertainty is defined as:
$
{\frac{1}{N} \sum_{n=1}^{N}} \operatorname{diag}\left(\widehat{{p}}_{n}\right)-\widehat{{p}}_{n} \widehat{{p}}_{n}^{T}
\text{ where, }\widehat{{p}}_{{n}}={p}\left(\widehat{{w}}_{{n}}\right)=\operatorname{softmax}\left\{{f}^{\widehat{w}_{t}}(\widehat{{x}})\right\}
$. And the equation of the epistemic uncertainty is defined as:
$
{\frac{1}{N} \sum_{n=1}^{N}}\left(\widehat{{p}}_{{n}}-{\overline { p }}\right)\left(\widehat{{p}}_{{n}}-\overline{{p}}\right)^{T}
\text{where, } \widehat{{p}}_{n}={p}\left(\widehat{{w}}_{{n}}\right)=\operatorname{softmax}\left\{{f}^{\hat{W}_{t}}(\widehat{{x}})\right\} \text{and } \overline{{p}}=\sum_{n=1}^{N} \frac{\widehat{{p}}_{{n}}}{{N}}
$.
The overall equation for the variance is:
\begin{align*}
\operatorname{Var}_{q(w | \theta)}[P(\widehat{y} | \widehat{x}, w)]&=\left(\frac{1}{N} \sum_{n=1}^{N} \operatorname{diag}\left(\widehat{p}_{n}\right)-\widehat{p}_{n} \widehat{p}_{n}^{T}\right)
\\&+\left(\frac{1}{N} \sum_{n=1}^{N}\left(\widehat{p}_{n}-\bar{p}\right)\left(\widehat{p}_{n}-\bar{p}\right)^{T}\right)
\end{align*}

The variance of the predictive distribution can be calculated by the above equations which provide us with the confidence of the network in making predictions for a given image.

\subsubsection{Adaptive activation }
The weights and bias of a perceptron in a neural network perform a linear transformation of the inputs. The output of this linear transformation is passed to an activation function that determines if a particular perceptron is activated for a given input. A non-linear activation function is a key component of a neural network, which enables it to learn complex functions with a small number of perceptrons. However, this nonlinearity of the activation function is known to introduce problems such as exploding or vanishing gradients. Thus, there is a trade-off between the learning capabilities vs training complexities of a perceptron, which can be optimized. To achieve this, we modify the Bayesian-CNN by introducing a learnable stochastic activation function that adapts to the training data.
Such adaptivity in the context of other machine learning models has been reported in the literature \cite{qian2018adaptive,dushkoff2016adaptive}, in which the learnable parameter is deterministic. In this work, we introduce a probabilistic learning parameter for the adaptivity of Bayesian-CNN.\\
This adaptive activation function contains a probabilistic parameter that is learned during the training of the neural network. To this end, a trainable probabilistic hyperparameter ($\alpha$) is introduced in the activation functions of a Bayesian--CNN and the resulting network is the modified Bayesian--CNN. The details of the proposed adaptive activation function are given below.
$$
    \sigma(\alpha f_k(x^{k-1}))
$$ where,\\
$
f_k(x^{k-1}) = w^k x^{k-1} + b^k
$\\ $\sigma$ is the activation function\\ $\alpha$ is the probabilistic hyperparamter that can be trained \\  $w$ and $b$ are the weights and bias of the $k^{th}$ layer and $x^{k-1}$ is the output from the previous layer of the neural network.\\

The modified loss function $J(\Theta)$ has an additional parameter $\alpha$ which is to be optimised along with the parameters $w$ and $b$, i.e $\Theta=(w,b,\alpha)$.\\ We seek to find: $\alpha^* = \argmin (J(\alpha))$.\\ The parameter $\alpha$ is updated by gradient descent as,
$\alpha^{m+1} = \alpha^m - \eta \nabla_{\alpha} J^m(\alpha)$ Where, $\eta$ is the learning rate.\\

In this work, an adaptive ReLu given by $\sigma (x) = \max (0,\alpha x) $ is used for the fully connected layers.\\

The networks were trained, validated and tested on GPUs using Apache MXNet on Python 3. Details of computational platform are given in supplementary document.
\subsubsection{t-distributed stochastic neighbor embedding (t-SNE)}
t-SNE \cite{van2008visualizing} is an unsupervised non-linear dimensionality reduction technique that helps in visualising high dimensional data by mapping it into a low dimensional space. In this method, as a first step, a conditional probability ($p_{j/i}$) is assigned between data points $x_i$ and $x_j$ in a high dimensional space.
\begin{equation*}
    p_{j/i} = \frac{\exp(-\Vert{x_i - x_j}\Vert ^2 / 2\sigma ^2)}{\sum_{k \neq l} \exp(-\Vert{x_k - x_l}\Vert ^2 / 2\sigma ^2)}
\end{equation*}
This conditional probability $p_{j/i}$ represents the similarity of data points such that similar points in the high dimensional space have a higher probability than dissimilar points. One such measure of similarity is the Euclidean distance between a pair of data points.  In the second step, a similar conditional probability ($q_{j/i}$) is defined for the low dimensional counterpart $y_i$ and $y_j$. If the low dimensional representation of the data correctly models similarity between the points in the high dimensional space, the two conditional probabilities $p_{j/i}$ and $q_{j/i}$ will be equal. Thus, in the third step, by minimizing the KL divergence between the two conditional probabilities a low dimensional map of the data points is obtained via t-SNE. As an alternative to minimizing the KL divergence of conditional probabilities, we can minimize the KL divergence of joint probabilities as follows. \\
\begin{equation*}
    KL(P\Vert Q) = \sum_i \sum_j p_{ij} \log \frac{p_{ij}}{q_{ij}}
\end{equation*}
Where, the joint probability ($p_{ij}$) is defined as $p_{ij} = \frac{p_{i/j} + p_{j/i}}{2n}$ for $n$ data points. The joint probability ($q_{ij}$) is defined as:
\begin{equation*}
    q_{ij} = \frac{(1 + \Vert{y_i - y_j}\Vert ^2 )^{-1}}{\sum_{k \neq l} (1+\Vert{y_k - y_l}\Vert ^2)^{-1}}
\end{equation*}
In this work, we explain the high uncertainty of images by projecting them into a latent space via t-SNE.

\section{Results and analysis}\label{CHAPTER3}
This section presents classification results for histopathological data, its uncertainty quantification obtained through the proposed modified Bayesian--CNN (Section \ref{sec:method}). It also provides an explanation of the predicted uncertainty via t-SNE.
Further, the proposed model is analyzed and juxtaposed with Bayesian--CNN and transfer learning CNN (TL-CNN).
\subsection{Hyperparameter optimization}
Hyperparameters and architecture for all the networks considered here are chosen through hyperparameter optimization.
A Tree-structured Parzen Estimator (TPE) algorithm is used which is a sequential model-based optimization approach \cite{bergstra2011algorithms}. In this approach, models are constructed to approximate the performance of hyperparameters based on historical measurements. New hyperparameters are chosen based on this model to evaluate performance. A python library Hyperopt \cite{bergstra2013making} is used to implement this optimization algorithm over a given search space. Data is split into a training set and a validation set as explained in the Data preparation section \ref{data_prep}. An optimization is performed to maximize the validation accuracy for different configuration and hyperparameter settings of the network. \\

The architecture of TL-CNN follows VGG-16 \cite{simonyan2014very}. Architectures for Bayesian--CNN and modified Bayesian--CNN are shown in Fig.~\ref{fig:arch}. The number of filters for convolution layers and the number of neurons in the fully connected layers are obtained through hyper-parameter optimization. The results of the optimisation are presented in Tables.~\ref{Tab:arch} and \ref{Tab:arch1}.
\begin{figure}[H]
    \centering

   \includegraphics[width=0.5\textwidth]{New_figures/network_architechture.png}
    \caption{Architecture for Bayesian--CNN and modified Bayesian--CNN. In case of modified Bayesian--CNN, the ReLU function after the FC 1 layer is changed into a stochastic--adaptive ReLU. Conv represents convolution layers and FC represent fully connected layers. Number of neurons in FC 2 is fixed as 2 for binary classification. Kernel size of all convolution layers is fixed as $3\times 3$ with stride 1. Kernel size of max pool layers is $2 \times2$ with stride 2. }
    \label{fig:arch}
\end{figure}

\begin{table}[H]
    \centering
    \caption{Selected hyperparameters}
    \begin{tabular}{ |p{3cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|}
        \hline
        \textbf{Network} & \textbf{Learning rate} & \textbf{Batch Size} & \textbf{Layers learnt}\\
        \hline
        TL-CNN & 0.001 &64 & 2\\  \hline
        Bayesian--CNN &0.001 & 128  & All\\ \hline
        Modified Bayesian-CNN &0.0001 &64 & All \\
        \hline
    \end{tabular}

    \label{Tab:arch}
    \vspace{-10pt}
\end{table}

\begin{table}[H]
    \centering
    \caption{Selected hyper parameters for network architecture (6 convolution layers and 1 fully connected layers} \vspace{-3pt}
    \begin{tabular}{ |p{1.4cm}|p{0.5cm}|p{0.5cm}|p{0.5cm}|p{0.55cm}|p{0.5cm}|p{0.5cm}|p{0.4cm}|p{0.4cm}|}
        \hline
        \textbf{Network} & \textbf{1} & \textbf{2} & \textbf{3} & \textbf{4}& \textbf{5}& \textbf{6}& \textbf{FC1}\\
        \hline
        Bayesian--CNN &16 & 32  & 32 & 64 & 128 & 256 & 512 \\ \hline
        modified Bayesian-CNN &32 &64 &64 &128 &128 &128 &256\\
        \hline
    \end{tabular}

    \label{Tab:arch1}
    \vspace{-10pt}
\end{table}

\subsection{Training, validation, and testing of networks}
The networks are trained using the images as inputs and the corresponding known classes as outputs. The cross-entropy loss and the variational free energy loss are minimized for TL-CNN and Bayesian networks respectively.
The training is done until the loss converges or the validation accuracy starts to decrease. In the following the details of training, validation, and testing for TL-CNN, Bayesian--CNN, and the modified Bayesian--CNN are described.
\subsubsection{Convolutional neural networks}
Transfer learning is the state-of-the-art for CNNs and has consistently performed the best for medical image classification \cite{aresta2019bach,shin2016deep}.
In transfer learning, the learned parameters for one data set are utilized for other data sets to perform a similar task.
Here we use the weights of VGG16 \cite{simonyan2014very} architecture trained on Imagenet dataset \cite{krizhevsky2012imagenet} for classification and perform transfer learning to classify the histopathological data.
The accuracy for training and validation for each epoch is shown in Fig.~\ref{fig:acc_cnn} for TL-CNN. The accuracy increases with the epoch for the training data whereas the accuracy remains constant for the validation data after the first few epochs.
This problem is known as overfitting. Thus, TL-CNN fails to generalize its predictions to unknown validation data and overfits the training data.
Beyond 40 epochs, the validation accuracy remains almost a constant while the training accuracy is still increasing, which is long before the training loss has converged.
\begin{figure}[H]
    \centering

   \includegraphics[width=0.5\textwidth]{New_figures/Accuracy_cnn.pdf}
    \caption{Training and validation accuracy of TL-CNN. We can clearly see the problem of overfitting as the training accuracy increases while the validation accuracy does not improve. The results presented for the TL-CNN henceforth are for the maximum validation accuracy.}
    \label{fig:acc_cnn}
\end{figure}
To alleviate the overfitting of the networks, regularization strategies are used, such as $L1$ or $L2$ regularization, cross-validation, early stoppage, and dropout \cite{bishop2006pattern, orr2003neural, friedman2001elements}. However, these may require human intervention during training (such as parameter tuning, determination of early stoppage) or may lead to loss of information due to drop out \cite{orr2003neural}.
Herein we show that through a Bayesian framework the limitations of overfitting is overcome automatically.\\

\subsubsection{Bayesian--CNN and the modified Bayesian--CNN}
The accuracy of predictions for both training and validation data of the Bayesian and modified Bayesian-CNN is shown in Fig.~\ref{fig:acc_bcnn} and Fig.~\ref{fig:acc_mbcnn} respectively. It is evident that the problem of overfitting is eliminated by using a Bayesian network as the accuracy of predictions for both training and validation data increases with an increase in the number of epochs. \\

The values of the accuracy of training, validation, and test data upon the convergence of the loss function are provided in Table \ref{Tab:comp1}. It is seen that the problem of overfitting drastically reduces the accuracy for validation and test data in a TL-CNN whereas this problem is not present for Bayesian--CNN and the modified Bayesian--CNN. The training, validation, and test accuracies of the modified Bayesian--CNN is slightly higher than the Bayesian--CNN when the loss function is converged.
We found that the modified Bayesian--CNN requires about the same time as that of Bayesian--CNN for the same batch size but twice the computational cost per epoch during the training as compared to TL-CNN. More details on the training times are presented in the supplementary document.
\begin{figure}[H]
    \centering
    \includegraphics[width=0.5\textwidth]{New_figures/Accuracy_bcnn.pdf}
    \caption{Training and validation accuracy of Bayesian--CNN.  We can see that both training and validation accuracy increases with epoch which implies automatic regularisation.}
    \label{fig:acc_bcnn}
\end{figure}

\begin{figure}[H]
    \centering
    \includegraphics[width=0.5\textwidth]{New_figures/acc_adap_bcnn.pdf}
    \caption{Training and validation accuracy of modified Bayesian--CNN.}
    \label{fig:acc_mbcnn}
\end{figure}

\begin{table}[H]
    \centering
    \caption{A Comparison of TL-CNN, Bayesian--CNN and modified Bayesian-CNN}
    \begin{tabular}{ |p{3cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|}
        \hline
        \textbf{Network} & \textbf{Training Accuracy} & \textbf{Validation Accuracy} & \textbf{Testing Accuracy}\\
        \hline
        TL-CNN & 0.9078 &0.8691 & 0.8676\\  \hline
        Bayesian--CNN &0.8848 & 0.8817  & 0.8801\\ \hline
        modified Bayesian-CNN & 0.8898 &0.8856 &0.8837\\
        \hline
    \end{tabular}

    \label{Tab:comp1}

\end{table}

\subsection{Quality assessment metrics}
The performance of the classifier is presented using the confusion matrix in Fig.~\ref{fig:conf_comp}. Details of the confusion matrix is provided in the supplementary document.
\begin{figure}[H]
    \centering
    \hspace{-5pt}
    \subfigure[]{\label{fig:a}\includegraphics[width=0.16\textwidth]{New_figures/conf_cnn.png}}
    \vspace{-5pt}
    \hspace{-5pt}
    \subfigure[]{\label{fig:b}\includegraphics[width=0.16\textwidth]{New_figures/conf_bcnn.png}}
    \hspace{-5pt}
    \subfigure[]{\label{fig:b}\includegraphics[width=0.16\textwidth]{New_figures/conf_adap_bcnn.png}}
    \caption{Comparison of confusion matrices for a) TL-CNN, b) Bayesian--CNN and modified Bayesian--CNN}
    \label{fig:conf_comp}
    \vspace{-12pt}
\end{figure}
In addition to the improvement of accuracy, the modified Bayesian--CNN remarkably reduces the number of false-negative predictions as seen in Fig.~\ref{fig:conf_comp}, which is a significant achievement. CNN is known to perform poorly for biased data set \cite{buda2018systematic}. Given the data set used in this work is highly biased to the negative class, the  TL-CNN model fails to overcome this bias yielding more negative predictions. We demonstrate that the modified Bayesian--CNN, overcomes this limitation of the CNN and provides an unbiased result. The modified Bayesian--CNN reduces the false negative and false positive predictions by about 13.7\% and 10.4\% respectively as compared to TL-CNN. The modified Bayesian--CNN reduces both the false negative and false positive by 3\% as compared to Bayesian--CNN as seen in Fig.~\ref{fig:conf_comp},  demonstrating unbiased prediction. This is a remarkable advancement given that medical imaging data sets are usually biased towards negative labels.

To quantitatively assess the performance of the proposed binary classification the following metrics are used in addition to the confusion matrix: Accuracy, Precision, Recall, F1-score, Cohen's-kappa (CK) coefficient \cite{cohen1960coefficient}. Cohen's Kappa coefficient varies between 0-1 where: 0 – agreement is equivalent to chance and 1.0 – perfect agreement. Improvement in Cohen's Kappa coefficient is achieved by using the modified Bayesian--CNN as seen from table~\ref{Tab:comp2}  which implies that it works better than both Bayesian--CNN and TL-CNN for an unbalanced data set.

The performance of the neural network classifiers is evaluated based on all of the above metrics and the results are provided in table~\ref{Tab:comp2}. The modified Bayesian--CNN performs slightly better than Bayesian--CNN and much better than TL-CNN on all the performance metrics for this data set.

\begin{table}[H]
    \centering
    \caption{Performance metrics of TL-CNN and BCNN}
    \begin{tabular}{ |p{2.9cm}|p{1cm}|p{1cm}|p{1.0cm}|p{0.78cm}|}
        \hline
        \textbf{Network}  & \textbf{Recall} &\textbf{Precision} &\textbf{F1-score} &\textbf{CK}\\
        \hline
        TL-CNN & 0.7552 & 0.7722 &0.7636& 0.6717 \\  \hline
        Bayesian--CNN &0.7823 & 0.7917& 0.7870& 0.7036 \\ \hline
        modified Bayesian--CNN &0.7888 &0.7981& 0.7934 &0.7125 \\ \hlin
    \end{tabular}

    \label{Tab:comp2}
\end{table}

\subsection{Uncertainty quantification}
Uncertainty quantification informs how confident the network is in its predictions, which is crucial for medical applications.

Thus in addition to the accuracy metrics, uncertainty is an important measure that can be estimated naturally through the Bayesian approaches. On the contrary, the parameters of CNN are deterministic and large in number (134 million) that makes its uncertainty quantification infeasible.
The parameters of the (modified) Bayesian--CNN are probability distributions whose variance provides an estimate of the uncertainties associated with the predictions. The larger the variances the more uncertain the model is on its predictions. The change of the probability distribution of a parameter for the modified Bayesian--CNN is shown for different epochs in Fig.~\ref{fig:var_shift}.
As the training continues, the standard deviation decreases increasing the confidence in predictions (see the supplementary document).\\

The uncertainty values associated with an individual image denote the confidence with which the network predicts the class label for that image. The aleatoric uncertainty corresponds to the noise in the data which cannot be reduced by improving the model. The epistemic uncertainty represents the variability due to the model, which can be improved. A set of sample images from the test data set, their predicted class and their aleatoric and epistemic uncertainty in prediction are shown in Fig.~\ref{fig:exuq1} and \ref{fig:exuq2}. The images with negative and positive ground truth labels are shown in Fig.~\ref{fig:exuq1} and Fig.~\ref{fig:exuq2} respectively. The important features apparent from these images are the texture density and color. It appears that the positive class has darker and denser images. It seems that the images with high epistemic uncertainty, Fig.~\ref{fig:exuq1}(d,e,f) and \ref{fig:exuq2}(d,e,f) has  features from both the classes. Therefore, the model gives high epistemic uncertainty to those images indicating mixed features or mislabeling. Thus, the Bayesian approach provides an avenue to identify which should be referred back to a human expert.

\begin{figure}[H]
    \centering
    \includegraphics[width=0.4\textwidth]{New_figures/variance.pdf}

     \caption{Probability density of a parameter for different epochs of the modified Bayesian-CNN.}
     \label{fig:var_shift}
\end{figure}

\begin{figure}[H]
    \centering
    \subfigure[]{\label{fig:neg_a}\includegraphics[scale=1.3]{New_figures/tn_ind_11.png}}
    \subfigure[]{\label{fig:neg_b}\includegraphics[scale=1.3]{New_figures/tn_ind_2.png}}
    \subfigure[]{\label{fig:neg_c}\includegraphics[scale=1.3]{New_figures/tn_ind_4.png}}\\
    \subfigure[]{\label{fig:neg_d}\includegraphics[scale=1.3]{New_figures/tn_ind_1.png}}
    \subfigure[]{\label{fig:neg_e}\includegraphics[scale=1.3]{New_figures/fp_ind_8.png}}
    \subfigure[]{\label{fig:neg_f}\includegraphics[scale=1.3]{New_figures/fp_ind_17.png}}
    \vspace{-5pt}
    \caption{Sample images having negative labels and their uncertainties:  a) TN [$A=9.25 \times10^{-3}$, $E= 6.50 \times10^{-6}$], b) TN [$A=1.8 \times10^{-2}$, $E=5.65 \times10^{-5}$], c) TN [$A=4.44 \times10^{-3}$, $E=2.53 \times10^{-6}$], d) TN [$A=2.77 \times10^{-1}$, $E=5.42 \times10^{-3}$], e) FP [$A=3.19 \times10^{-1} $, $E=4.59 \times10^{-3}$], f) FP [$A=3.74\times 10^{-1} $, $E=5.57 \times10^{-3} $]. Aleatoric and epistemic uncertainties are given by A and E respectively.}
    \label{fig:exuq1}
    \vspace{-10 pt}
\end{figure}

\begin{figure}[H]
    \centering
    \subfigure[]{\label{fig:pos_a}\includegraphics[scale=1.3]{New_figures/tp_ind_55480.png}}
    \subfigure[]{\label{fig:pos_b}\includegraphics[scale=1.3]{New_figures/tp_ind_55495.png}}
    \subfigure[]{\label{fig:pos_c}\includegraphics[scale=1.3]{New_figures/tp_ind_55497.png}}\\
    \subfigure[]{\label{fig:pos_d}\includegraphics[scale=1.3]{New_figures/tp_ind_55504.png}}
    \subfigure[]{\label{fig:pos_e}\includegraphics[scale=1.3]{New_figures/fn_ind_55484.png}}
    \subfigure[]{\label{fig:pos_f}\includegraphics[scale=1.3]{New_figures/fn_ind_55490.png}}
    \vspace{-5pt}
    \caption{Sample images having positive labels and their uncertainties:
    a) TP [$A=7.0 \times10^{-2}$, $E=2.60 \times10^{-4}$], b) TP [$A=6.60\times 10^{-2}$ , $E=1.74 \times10^{-4}$], c) TP [$A=1.14 \times10^{-1}$,  $E=4.91 \times10^{-4}$], d) TP [$ A=4.72 \times10^{-1}$,  $E=2.03 \times10^{-2}$], e) FN [ $A=4.64 \times10^{-1}$, $E=9.37 \times10^{-3}$] f) FN [$A=4.74 \times10^{-1}$, $E=6.26 \times10^{-3}$].}
    \label{fig:exuq2}
    \vspace{-20 pt}
\end{figure}

\subsection{Use of uncertainty to improve performance}
We propose to utilize the uncertainty to further improve the performance on a subset of data.
For every threshold of aleatoric uncertainty, we divide the test data into two subsets having uncertainty lower and higher than the threshold. The ratio of the number of images in the low uncertainty subset is plotted against the uncertainty--threshold used to create the subset in Fig.~\ref{fig:unlim_a}.  The accuracy corresponding to each of this subset are also plotted against the threshold. The number of false-negative and false-positive predictions are plotted for different thresholds of aleatoric uncertainty in Fig.~\ref{fig:unlim_b}.

\begin{figure}[H]
    \centering
    \subfigure[Fraction of test data having uncertainty below the threshold and their accuracy plotted against the uncertainty--threshold.]{\label{fig:unlim_a}\includegraphics[width=0.5\textwidth]{New_figures/acc_data_aleatoric.pdf}}
    \subfigure[Number of false predictions in the low uncertainty subset plotted against the uncertainty--threshold.]{\label{fig:unlim_b}\includegraphics[width=0.5\textwidth]{New_figures/fp_fn_aleatoric.pdf}}
    \caption{Performance improvements for a subset of test data that has uncertainty less than the uncertainty--threshold. Dotted Lines represents two thresholds of aleatoric uncertainty.}
    \vspace{-10pt}
    \label{fig:un_limits}
\end{figure}
For instance, if the threshold value is  0.6, the low uncertainty subset contains $77\%$ of the test data and its accuracy is $94.6\%$ which is about $6\%$ improvement in accuracy over the entire test data set. The remaining $23\%$ of the test data, which has uncertainty higher than this threshold (0.6) may be referred to a human expert for a more accurate prediction. Further, for this subset, the percentage of false negatives reduces from $6.2\%$ for the entire data set to $3.5\%$ and the percentage of false positives reduces from $5.8\%$ for the entire data set to $1.9\%$, which are significant improvements.
A similar study is done using the epistemic uncertainty and the results are presented in the supplementary document.
Therefore, we show that uncertainty quantification can be used to improve the performance significantly for a subset of test data.

\subsection{Explanation of uncertainty by visualization in low dimension}
In the following, we provide an explanation of uncertainty by visualizing the test data in a low dimensional space (latent space). A dimensionality reduction is performed on the data using t-SNE to project the 7500-dimensional feature into  3 dimensions (3D).
The epistemic uncertainty ($E$) evaluated through the Bayesian approach is normalised to range between $[0-1]$. The test data set is divided into three subsets: low ($E \le 0.01$), medium ($0.01<E \le 0.1$) and high uncertainty ($E>0.1$).
t-SNE is performed for these three subsets. Low dimensional representations obtained via t-SNE are presented in Fig.~\ref{fig:tsne} where each data point represents a test image. Fig.~\ref{fig:tsne} explains the uncertainty associated with the individual images.
The low uncertainty images have a clear separation between the positive and negative classes in the latent space. Thus the model classifies these images with high confidence. The images with medium uncertainty are clustered at different locations in the latent space however have significant overlap. Therefore the model classifies these images with lesser confidence.
For the high uncertain images, the negative and the positive classes are not at all separable in the latent space. Thus the model cannot distinguish between the two classes for this subset, yielding poor accuracy and low confidence.

\section{Conclusions}\label{CHAPTER4}
In this study, we have quantified the uncertainty in the classification of histopathological images through Bayesian--CNN and compared its performance against the state-of-the-art.  We have explained the uncertainty and utilized the uncertainty to improve the performance. To conclude this study, we summarize its main findings.

Firstly, we have shown that Bayesian--CNN performs better than the state-of-the-art transfer learning CNN on all performance metrics and provides uncertainties in classifying breast histopathological images. Bayesian--CNN improves the test accuracy by 1.2\% and reduces the false negative and false positive by 11\% and 7.7\% respectively as compare to TL-CNN.

Secondly, we explained the uncertainties in the test data by projecting them into a low-dimensional space. This low-dimensional projection enables visual interpretation of the data.  The data structure in the low dimensional feature space reveals that images with high uncertainty are not separable whereas the images with low uncertainty are separable.
\begin{figure}[H]
    \centering
    \vspace{-5pt}
    \subfigure[Low uncertainty]{\label{fig:tsne_low}\includegraphics[width=0.45\textwidth]{New_figures/low_unc_tsne.pdf}}
    \vspace{-10pt}
    \subfigure[Medium uncertainty]{\label{fig:tsne_med}\includegraphics[width=0.45\textwidth]{New_figures/med_unc_tsne.pdf}}
    \vspace{-5pt}
    \subfigure[High uncertainty]{\label{fig:tsne_high}\includegraphics[width=0.45\textwidth]{New_figures/high_unc_tsne.pdf}}

\caption{Low dimensional representation of the test data for three subsets using t-SNE. blue: negative class, red: positive class}
    \label{fig:tsne}

\end{figure}

Thirdly, using different uncertainty thresholds, we demonstrate that the accuracy of Bayesian networks can be significantly improved on a larger fraction of test data (6\% improvement on 77\% test data).

Fourthly, we have proposed a novel stochastic--adaptive activation enabled Bayesian--CNN and call it modified Bayesian--CNN. In the proposed model we introduce a probabilistic learnable activation function that adapts to the training data to improve predictive capabilities. We have shown that the modified Bayesian-CNN performs slightly better than the Bayesian--CNN in all performance metrics. Especially it can reduce the false negative and false positive predictions by 3\% as compared to Bayesian--CNN.

Fifthly, we have demonstrated that using the proposed modified Bayesian--CNN and the Bayesian--CNN, the problem of overfitting can be nearly eliminated without any recourse to regularization. That is the Bayesian approach work with almost equal accuracy for unknown and known data sets.

This work improves the understanding of the uncertainties in Bayesian--CNN-based classification and helps to leverage these uncertainties to further improve its performance.  These findings require further investigation on larger data sets, however, they show potential routes to improve upon the state--of--the--art classifier for a broad range of biomedical applications.

\section*{Acknowledgements}
We  acknowledge the high performance computing facilities from the SUPERIOR at MTU and XSEDE (supported by the NSF grant\# ACI-1548562). (Request\#: MSS200004).

\bibliographystyle{ieeetr}

redpajama_set_name: RedPajamaArXiv


text:
Q: What is the idMso for the new Help tab in MS Access? As of last week, I am seeing a new Help tab in Microsoft Access 2016. I have designed a database with a custom ribbon that hides all of the core tabs, using only some custom tabs I have designed. I have searched through this website and Google but cannot find the idMso of the new tab so that I can hide it, too. It looks like the Office Fluent User Interface download has not been updated since January 2016, so does not contain information on this new tab.
Does anyone know the idMso of the new Help tab or have any suggestions for how I can figure it out? Thank you.
Here is a screenshot:

A: The idMso is "HelpTab"
To find a new idMso that is not in the "Office Fluent user interface", you can customize the ribbon (File -> Options) by hiding the control and export the customization, it's an XML file.


text:
photo courtesy Shore Fire Media
A Celebration of the Music of Jimmy Webb: The Cake and the Rain at Carnegie Hall
By Katie Cercone	by Sean P. Murphy
Jimmy Webb rose to the heights of super stardom in Los Angeles in the late 60s, penning such classics as "MacArthur Park" made famous by Irish actor Richard Harris, "Up Up And Away" by The Fifth Dimension and of course "Wichita Lineman" and "Galveston" sung by Glen Campbell – the artist most often associated with Webb.
On May 3rd 2017 an array of musical legends including Judy Collins, Art Garfunkel, Graham Nash and more recent stars Dwight Yoakam and Toby Keith, among many more, gathered at Carnegie Hall in a giant celebration of Jimmy Webb's music hosted by Michael Douglas.
I find Webb's songs always create a great sense of space – and emptiness. Given that Webb hails from the plains of Oklahoma, it's not surprising.
With songs such as "Wichita Lineman" the story of a telephone repairman who can "hear you through the whine" (of the wires) but cannot truly connect to his love…Isolation emerges as a thread throughout his body of work.
The characters in Webb's songs are often heartbroken and searching, trapped in landscapes that the songwriter paints so vividly.
Whether it be the telephone line repairman in "Wichita Lineman" or "Galveston" about a soldier in Vietnam watching the cannons fire as he cleans his gun – yearning only to return to Galveston – and his love – heartache is palpable.
Jimmy Webb is perhaps best known for his strange and melancholy line in "MacArthur Park," "someone left my cake out in the rain" (referenced in the title of Webb's new biography); which evokes in an almost psychedelic way a most dear love lost. A hugely popular hit I recall from AM/ FM radio stations growing up, there always seemed something ancient and "classic" about the song, which wasn't even a decade old when I first heard it in the early 70's.
For my self the highlight of this evening was this fantastic song performed by country artist Toby Keith with Jimmy Webb on the grand piano amid a deeply engaged audience.
The concert's finale was indeed impressive with the entire cavalcade of stars joining Webb onstage to perform "Up Up and Away," a smash hit for The Fifth Dimension in the seventies.
A uniquely American talent who bridged the gap between the singer/songwriters of the 60s and more traditional pop performers, the wide range of Webb's musicianship was highlighted and honored during the evening's program as so many musical legends came out to pay tribute through his songs.
Posted in Music, PerformanceTagged jimmy webb


The EyeBeam softphone is designed for the Windows operating system. But at the moment, its development is suspended, which is not the reason not to use it, if you have it.
Now it's time to add a SIP connection. To do this, we click on the triangle (which is located on the left of the three buttons in the header of the phone) and in the menu that appears, select "SIP Account Settings".
The phrase "Ready" indicates that the connection attempt was successful, you can start calling.


text:
SHAWN WINDSOR
What did Pistons really get in the Andre Drummond trade? Freedom
The Detroit Pistons made the one move they had to Thursday afternoon: They traded Andre Drummond to the Cleveland Cavaliers. Freeing up salary cap space for the summer and, almost as important, signaling a rebuild to its weary fan base.
Hope is about all this franchise has to sell at the moment, and it sure hasn't had much of that the past few years.
Weighed down by bad contracts and bad injury luck, the Pistons have been stuck in the worst possible place in the NBA, fighting for the last playoff spot with a veteran roster and no chance to advance to the second round.
Without Drummond, the Pistons should lose more than they already are. That's a good thing for draft position this summer.
Andre Drummond:Pistons gave 'no heads up' on trade to Cavaliers
Beyond that, this is about freedom.
To make sensible signings as the youngsters develop, to take on bad short-term contracts attached to promising young players or draft picks, to make trades as the team sees fit.
The wiggle room should feel good, even if you're worried about the modest return the Pistons got for Drummond in the trade — point guard Brandon Knight, forward John Henson, a 2023 second-round pick. (Both Knight and Henson will be free agents at season's end.)
But then the return wasn't the point. Shedding Drummond's salary was.
The 6-foot-11 center will be a free agent this offseason, but he had a player-option for $28.7 million.
Drummond leaves Detroit after almost eight seasons. He was a two-time all-star who improved every season, loved this city, and forged a largely affable presence in the locker room, no matter how poorly the roster was constructed around him.
He was a polarizing figure to fans because of his inconsistent play and lack of offensive skill outside the paint. Yet it wasn't so much his effort as it was his inability to consistently get out of his head, which made it look like he wasn't competing at times.
Drummond was hard on himself. And while the NBA changed around him — shifting toward big men who could shoot — he never stopped trying to get better.
Ultimately, the front office no longer saw a fit in an evolving league with an increasingly young team. And Drummond's $28.7 million player-option this summer had to scare Ed Stefanski, the team's senior adviser.
There was a reasonable chance Drummond wouldn't have gotten an offer he liked in free agency. Forcing him to exercise his player-option and tie up almost $30 million of the Pistons' cap space next season.
So, in effect, Drummond had to be traded. Teams understood that. Meaning getting back a promising young player or a first-round pick was a pipe dream.
Had Stefanski not moved him before Thursday's 3 p.m. trade deadline, he and the franchise would've been taking an enormous gamble.
They couldn't.
Now, why didn't they move Derrick Rose and Luke Kennard, too?
There wasn't the same pressure. And they didn't like the offers.
If Rose stays (relatively) healthy and performs next season as he has this one, he'll remain a viable asset around next year's trade deadline. Even if the Pistons keep him for the second — and final — year of his contract, his salary next season ($7.6 million) isn't going to hinder a longer-term rebuilding effort.
Besides, Rose is one of the few reasons to watch the Pistons play. For those of you worried about winning too many games and subverting the "tanking" process: don't.
Rose's presence isn't going to keep the Pistons from the lottery by himself. He's been productive, but he's not Steph Curry.
As for Kennard, the Pistons listened to offers, especially from the Phoenix Suns, according to ESPN. Talks stopped when the Suns wanted some lottery protection over the first-round pick it was offering in return for the third-year shooting guard.
Kennard will still have trade value next year, too, especially if he can show other front offices his knees aren't a long-term issue, stay on the court and entice a contender with his shooting and secondary playmaking.
His salary next year is $5.2 million. He will be a restricted free agent at the end of the season. Even if the Pistons can't move him before next year's trade deadline, he'll be off the books after one more year.
Langston Galloway will be off the books this spring. And while it might have been nice to find a second-round pick for him, the cap space is what matters — his absence will open up $7.3 million this summer.
Reggie Jackson, meanwhile, is coming off the books, too, which means that after trading Drummond, the Pistons will be free of three of their four toughest contracts.
The fourth?
Blake Griffin, of course.
With his age and injury history, not to mention his salary — he's owed $36.5 million next season and $38.9 million the season after that — Griffin will be difficult to move. Yet this isn't the end of the world.
If Griffin returns next year and looks close to what he did a year ago, maybe a contending team will take a chance that he's the final piece for a title run. If he doesn't, he won't help the team win and the team can remain focused on its young pieces and stay in the thick of the lottery.
Besides, sometimes too much space is scary. Remember Charlie Villanueva?
Ben Gordon?
Josh Smith?
The Pistons are still paying Smith, who was cut in December 2014, and have been shelling out $5.3 million a year since. He, too, comes off the books this summer.
This is a good thing, and another reminder the Pistons are headed toward freedom for the first time in years.
Of course, Stefanski will have to show patience with the cap room, and in a recent interview with the Free Press, that's exactly what he said he going to do.
Yet patience isn't all that's needed to build a contender. Teams must be savvy, and get a little lucky.
The Pistons will require both as they reboot — both in their positioning in the lottery and in who they select.
But they also won't start winning without smart trades and thoughtful spending and developing a long-term plan.
By moving Drummond and not worrying about the return, the Pistons showed they are building one.
Contact Shawn Windsor: 313-222-6487 or swindsor@freepress.com. Follow him on Twitter @shawnwindsor.


Elegance to wear and to eat. Doriani Montenapoleone Cafè Restaurant opens in Milan, via Montenapoleone 10, the most famous street of the world, in the heart of Milan fashion district. The perfect marriage between fashion and haute cuisine is close to the two Doriani Cashmere boutiques, via Sant'Andrea 2 and via Gesù 7. Gisberto Carlo Sassi, CEO of Doriani Cashmere, once again bets on luxury, which this time becomes an occasion to taste dishes dressed with the flavors and colors of the seasons, in perfect harmony with the fashion collections. The venue is a tribute to the sober Milanese elegance: the new Doriani Montenapoleone Cafè Restaurant's philosophy combines haute cuisine and impeccable service, in a refined and relaxing atmosphere, every day of the week.
Food options change every day, with two different menus for lunch and dinner, focusing on colors. The absolute protagonist is Mediterranean cuisine, meat or fish combined in a wide range of proposals with vegetables and the typical flavors of our land. Every season has its menu with special vegetarian and celiac dishes. The colors of saffron, cherry tomatoes, zucchini, eggplants, pumpkins, pistachios and raspberries decorate the table, and those are only a few of the traditional ingredients used to prepare delicious dishes and risottos. The light lunch, from 11 to 7 pm, can be ordered from any room of the restaurant, dehor included. And for those who wants to enjoy an en plein air dinner even when it's colder, Doriani Restaurant offers a cashmere plaid. Saturday is usually a day dedicated to shopping, so lunch shouldn't take much time. To satisfy this need the restaurant offers a "shopping lunch" formula, with bistrot menus served promptly.
Doriani's brand is synonymous of luxury thanks to its cashmere sweater collections renown all over the world. Since 1972, Doriani has signed menswear collections, accessories and knitwear, above all cashmere lines, sold in its stores and in over 150 multi-brands in the world. Besides the two Milanese boutiques, the brand has 7 mono-brand stores located in the most exclusive venues of the world: Portofino, Capri, Venice, Forte dei Marmi, Santa Margherita Ligure, St. Morritz, Moscow and soon Dubai.


From soft play areas and mini-karts to dodgems, karting and formula 1 simulators, there's something for everyone. Then sit back with a snack in the chip shop or a nice pot of tea in Tiffany's tearoom. Don't forget to pick up an ice-cream as you leave.
Weston's newly refurbished museum is free to enter, with interactive displays and touring exhibitions. The light and airy café, serving freshly-brewed coffee and delicious cake is definitely worth a visit.
Brean Play at Brean Leisure Park, near Burnham-On-Sea is open all year round and is the perfect place for your children to let off steam whilst you enjoy a nice cup of coffee or a bite to eat.
Located in the heart of Weston-super-Mare, Hutton Moor is large facility offering a 25m swimming pool, teaching pool, squash and tennis courts, treatment room and onsite café, your family can spend a happy few hours out of the rain.
The world's largest dedicated helicopter museum, with over eighty displayed aircraft, interactive zone and film theatre. You will see the Queen's Royal Flight, Bell UH-1H 'Huey', The Helicopter World Speed Record Holder, Autogyros, Russian Hind Gunship and Search and Rescue Helicopters.
From aerial climbing to the fast and furious slides, there is something for everyone including an indoor adventure play zone with loads of fun features and a dedicated toddler area with ball pool and mini fun, ideal for getting them out of the rain for a while!
There are two large indoor play centres in the town's Oldmixon area; Jump'n'Jackz and Kidsville. Bouncy castles, slides and inflatable assault courses await your children. There's also a soft play attraction at Brean Play, for children up to the age of 11.
One of the most important historic ships in the world, Brunel's SS Great Britain is bursting with family-fun activities.
With hundreds of hands-on exhibits to explore, live shows and a Planetarium, We The Curious is one of the UK's biggest and most exciting interactive science centres. Bristol BS1 5LL. Open 10 – 5 weekdays, 10 – 6 weekends and Bank Holidays.


text:
Torrents>
Applications>
PC Applications
in Torrents name in Torrents description in Torrents name & description by Uploader
bitdefender_tsecurity.exe
Uploaded 28-04-2015 05:08 by System
Seeders: 0 / Leechers: 0 / Size: 6.7 MB / Completed: 14 / Comments: 3
Bitdefender Total Security is an all-encompassing security scanner. It now comes with new and improved features that learn from your computer use to optimize performance and reduce the need to monitor unsecured network activity. Pros
Perfect protection score: Bitdefender is the only current security software to score 100 percent in the Real-World Protection Test by AV-Comparatives, compared to the 99.9 percent score from last year. According to AV-Test, Bitdefender scored a perfect 6.0/6.0 in both the Protection and Usability categories, and an impressive 5.5 in Performance.
Adaptive modes: Bitdefender intelligently detects and triggers different security profiles based on your machine's active setup, using a new feature called Bitdefender Profiles. When Bitdefender detects system-hogging activities, it attempts to prevent certain apps from popping up to reduce slowdown while keeping security profiles active. Autopilot mode lets Bitdefender make decisions for you about unknown files, alerts, and pop-up notifications.
Modern design: Bitdefender's overall design remains top-notch, with touch-friendly controls, clean interfaces, and a modern feel. The interface is flatter and more streamlined, with a drastically reduced number of options and panels. Bitdefender Total Security 2015's menu focuses on Protection, Privacy, and Tools. OneClick Optimizer, a new feature, removes unnecessary files and frees up resources by allocating memory for more active programs.
Slow installation: Bitdefender scans your computer during installation. Though it's an added security benefit, you may find that it slows your installation time and loading speed.
Bitdefender Total Security ranks as one of the most effective consumer security scanners available. In keeping with the recent trend in PC security software, this release focuses more on intelligent background processes. Bitdefender Total Security maintains its top scores for security and design, and so remains one of our top picks for antivirus software.


text:
Q: TicTacToe Doesn't Display All Letters I created a TicTacToe game and I can't figure out why it won't display the last letter when someone wins. Like if you get 3 in a row it will display only the 2 letters but won't display the winning letter if that makes any sense.
TicTacToe Class Code:
import java.util.Scanner;
import javax.swing.JFrame;

public class TicTacToe {
    public static void main(String [] args) {
         Board board = new Board();
         Rules winner = new Rules();

         Scanner input = new Scanner(System.in);

         int slot;
         int swap = 1;

         System.out.print("Player 1 Name: ");
         String player1 = input.next();
         System.out.print('\f');
         System.out.print("Player 2 Name: ");
         String player2 = input.next();
         System.out.print('\f');

         System.out.print(player1 + ", Choose X or O: ");
         String letter = input.next();
         System.out.print('\f');

         String player1Letter;
         String player2Letter;

        if (letter.equalsIgnoreCase("x")) {
           player1Letter = "X";
           player2Letter = "O";
        } else {
           player1Letter = "O";
           player2Letter = "X";
        }

         System.out.println("This is how each number is set on the board");
         System.out.println();
         System.out.println("  1 | 2 | 3  ");
         System.out.println("-------------");
         System.out.println("  4 | 5 | 6  ");
         System.out.println("--------- ---");
         System.out.println("  7 | 8 | 9  ");
         System.out.println();
         System.out.println("Each number represents the slot number. For example if you wanted to");
         System.out.println("Place an 'X' or an 'O' in the very middle, you would choose slot 5");
         System.out.println();

        while (true) {
           System.out.print("Type 'begin' to begin: ");
           String begin = input.next();
           if (begin.equalsIgnoreCase("begin")) {
               break;
           } else if (!begin.equalsIgnoreCase("begin")) {
               System.out.println();
               System.out.println("Incorrect Syntax");
           }
         }
          while (true) {
            System.out.print('\f');
            System.out.println("  " + board.getPosition(1) + "  |  " + board.getPosition(2) + "  | " + board.getPosition(3) + "   ");
            System.out.println("----------------");
            System.out.println("  " + board.getPosition(4) + "  |  " + board.getPosition(5) + "  | " + board.getPosition(6) + "   ");
            System.out.println("----------------");
            System.out.println("  " + board.getPosition(7) + "  |  " + board.getPosition(8) + "  | " + board.getPosition(9) + "   ");
            System.out.println();
            System.out.print("Choose A Slot: ");
            slot = input.nextInt();
            if (swap == 1 || swap == 3 || swap == 5 || swap == 7 || swap == 9 || swap == 11) {
               board.setPosition(slot, player1Letter);
               swap++;
            } else if (swap == 2 || swap == 4 || swap == 6 || swap == 8 || swap == 10 || swap == 12) {
              board.setPosition(slot, player2Letter);
              swap++;
            }
            if (winner.isWinner(board) == true) {
                if (swap == 1 || swap == 3 || swap == 5 || swap == 7 || swap == 9 || swap == 11) {  //swap%2 == 1
                    System.out.println();
                    System.out.print(player2 + " Wins!");
                    break;
                }
                if (swap == 2 || swap == 4 || swap == 6 || swap == 8 || swap == 10 || swap == 12) {
                    System.out.println();
                    System.out.print(player1 + " Wins!");
                    break;
                } else if (winner.isWinner(board) == false) {
                    System.out.println();
                    System.out.print("Tie Game");
                    break;
                }
            }
        }
        if (winner.isWinner(board) == true) {
          JFrame frame = new JFrame();
          frame.setSize(150, 250);
          frame.setTitle("A Simley Face");
          frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

          FaceComponent component = new FaceComponent();
          frame.add(component);

          frame.setVisible(true);
        }
    }
}

Board Class Code:
public class Board
{
    private String position;
        String topLeft= "1";
        String topMiddle= "2";
        String topRight= "3";
        String middleLeft= "4";
        String middleMiddle= "5";
        String middleRight= "6";
        String bottomLeft= "7";
        String bottomMiddle= "8";
        String bottomRight= "9";
    public String getPosition(int pos)
    {
        if (pos == 1)
        {
            return topLeft;//varible of position 1
        }
        else if (pos == 2)
        {
            return topMiddle;//varible of position 2
        }
        else if (pos == 3)
        {
            return topRight;//varible of position 3
        }
        else if (pos == 4)
        {
            return middleLeft;//varible of position 4
        }
        else if (pos == 5)
        {
            return middleMiddle;//varible of position 5
        }
        else if (pos == 6)
        {
            return middleRight;//varible of position 6
        }
        else if (pos == 7)
        {
            return bottomLeft;//varible of position 7
        }
        else if (pos == 8)
        {
            return bottomMiddle;//varible of position 8
        }
        else if (pos == 9)
        {
            return bottomRight;//varible of position 9
        }
        return position;
    }
    public String setPosition(int pos, String value)
    {
        if (pos == 1)
        {
            topLeft = value;
        }
        else if (pos == 2)
        {
            topMiddle = value;
        }
        else if (pos == 3)
        {
            topRight = value;
        }
        else if (pos == 4)
        {
            middleLeft = value;
        }
        else if (pos == 5)
        {
            middleMiddle = value;
        }
        else if (pos == 6)
        {
            middleRight = value;
        }
        else if (pos == 7)
        {
            bottomLeft = value;
        }
        else if (pos == 8)
        {
            bottomMiddle = value;
        }
        else if (pos == 9)
        {
            bottomRight = value;
        }
        return position;
    }
}

Rules Class Code:
public class Rules
{
    private String winner;
    private String threeInARow;

   public boolean isWinner(Board threeInARow)
   {
       String pos1 = threeInARow.getPosition(1);
       String pos2 = threeInARow.getPosition(2);
       String pos3 = threeInARow.getPosition(3);
       String pos4 = threeInARow.getPosition(4);
       String pos5 = threeInARow.getPosition(5);
       String pos6 = threeInARow.getPosition(6);
       String pos7 = threeInARow.getPosition(7);
       String pos8 = threeInARow.getPosition(8);
       String pos9 = threeInARow.getPosition(9);

       if (pos1.equals(pos2) && pos2.equals(pos3))
       {
           return true;
       }
       else if (pos4.equals(pos5) && pos5.equals(pos6))
       {
           return true;
       }
       else if (pos7.equals(pos8) && pos8.equals(pos9))
       {
           return true;
       }
       else if (pos1.equals(pos4) && pos4.equals(pos7))
       {
           return true;
       }
       else if (pos2.equals(pos5) && pos5.equals(pos8))
       {
           return true;
       }
       else if (pos3.equals(pos6) && pos6.equals(pos9))
       {
           return true;
       }
       else if (pos1.equals(pos5) && pos5.equals(pos9))
       {
           return true;
       }
       else if (pos3.equals(pos5) && pos5.equals(pos7))
       {
           return true;
       }
       else
       {
           return false;
       }

    }
}

FaceComponent class Code:
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.geom.Ellipse2D;
import java.awt.geom.Line2D;
import javax.swing.JComponent;
public class FaceComponent extends JComponent
{
   public void paintComponent(Graphics g)
   {
      // Recover Graphics2D
      Graphics2D g2 = (Graphics2D) g;

      // Draw the head
      Ellipse2D.Double head = new Ellipse2D.Double(5, 10, 100, 150);
      g2.draw(head);

      // Draw the eyes
      g2.setColor(Color.BLACK);
      Rectangle eye = new Rectangle(25, 70, 15, 15);
      g2.fill(eye);
      eye.translate(50, 0);
      g2.fill(eye);

      // Draw the mouth
      Line2D.Double mouth = new Line2D.Double(30, 110, 80, 110);
      g2.setColor(Color.RED);
      g2.draw(mouth);

      // Draw the greeting
      g2.setColor(Color.BLUE);
      g2.drawString("YOU ARE A WINNER", 5, 175);
   }
}

A:
why it won't display the last letter when someone wins.

This is happening because in your main method, after you have received the user input, you are changing the location selected by user to to letter of the player. Then you are going on to check if the player is a winner or not. If the player is not a winner then you go on to draw the board and wait for the next player input. But if the player is a winner then you simply display the message and exit the loop without redrawing the board.
The solution is you could draw the board again inside the if condition of checking the winner then display the message and exit the loop.
I would suggest that you declare a method say draw board in your class TicTacToe as shown below:
private void drawBoard(Board board){
    System.out.print('\f');
    System.out.println("  " + board.getPosition(1) + "  |  " + board.getPosition(2) + "  | " + board.getPosition(3) + "   ");
    System.out.println("----------------");
    System.out.println("  " + board.getPosition(4) + "  |  " + board.getPosition(5) + "  | " + board.getPosition(6) + "   ");
    System.out.println("----------------");
    System.out.println("  " + board.getPosition(7) + "  |  " + board.getPosition(8) + "  | " + board.getPosition(9) + "   ");
    System.out.println();
}

Now change your while loop for drawing the board and getting user input from:
      while (true) {
        System.out.print('\f');
        System.out.println("  " + board.getPosition(1) + "  |  " + board.getPosition(2) + "  | " + board.getPosition(3) + "   ");
        System.out.println("----------------");
        System.out.println("  " + board.getPosition(4) + "  |  " + board.getPosition(5) + "  | " + board.getPosition(6) + "   ");
        System.out.println("----------------");
        System.out.println("  " + board.getPosition(7) + "  |  " + board.getPosition(8) + "  | " + board.getPosition(9) + "   ");
        System.out.println();
        System.out.print("Choose A Slot: ");
        slot = input.nextInt();
        if (swap == 1 || swap == 3 || swap == 5 || swap == 7 || swap == 9 || swap == 11) {
           board.setPosition(slot, player1Letter);
           swap++;
        } else if (swap == 2 || swap == 4 || swap == 6 || swap == 8 || swap == 10 || swap == 12) {
          board.setPosition(slot, player2Letter);
          swap++;
        }
        if (winner.isWinner(board) == true) {
            if (swap == 1 || swap == 3 || swap == 5 || swap == 7 || swap == 9 || swap == 11) {  //swap%2 == 1
                System.out.println();
                System.out.print(player2 + " Wins!");
                break;
            }
            if (swap == 2 || swap == 4 || swap == 6 || swap == 8 || swap == 10 || swap == 12) {
                System.out.println();
                System.out.print(player1 + " Wins!");
                break;
            } else if (winner.isWinner(board) == false) {
                System.out.println();
                System.out.print("Tie Game");
                break;
            }
        }
    }

to :
      while (true) {
        drawBoard(board); //Replace with draw board
        System.out.print("Choose A Slot: ");
        slot = input.nextInt();
        if (swap == 1 || swap == 3 || swap == 5 || swap == 7 || swap == 9 || swap == 11) {
           board.setPosition(slot, player1Letter);
           swap++;
        } else if (swap == 2 || swap == 4 || swap == 6 || swap == 8 || swap == 10 || swap == 12) {
          board.setPosition(slot, player2Letter);
          swap++;
        }
        if (winner.isWinner(board) == true) {
            drawBoard(board); // Add the draw board.
            if (swap == 1 || swap == 3 || swap == 5 || swap == 7 || swap == 9 || swap == 11) {  //swap%2 == 1
                System.out.println();
                System.out.print(player2 + " Wins!");
                break;
            }
            if (swap == 2 || swap == 4 || swap == 6 || swap == 8 || swap == 10 || swap == 12) {
                System.out.println();
                System.out.print(player1 + " Wins!");
                break;
            } else if (winner.isWinner(board) == false) {
                System.out.println();
                System.out.print("Tie Game");
                break;
            }
        }
    }