肉體之愛的解釋圣經_可以解釋的AI簡介,以及我們為什么需要它

肉體之愛的解釋圣經

by Patrick Ferris

帕特里克·費里斯(Patrick Ferris)

可以解釋的AI簡介,以及我們為什么需要它 (An introduction to explainable AI, and why we need it)

Neural networks (and all of their subtypes) are increasingly being used to build programs that can predict and classify in a myriad of different settings.

神經網絡(及其所有子類型)被越來越多地用于構建可以在多種不同設置中進行預測和分類的程序。

Examples include machine translation using recurrent neural networks, and image classification using a convolutional neural network. Research published by Google DeepMind has sparked interest in reinforcement learning.

示例包括使用遞歸神經網絡的機器翻譯和使用卷積神經網絡的圖像分類 。 谷歌DeepMind發表的研究引發了人們對強化學習的興趣 。

All of these approaches have advanced many fields and produced usable models that can improve productivity and efficiency.

所有這些方法已在許多領域取得了進展,并產生了可提高生產率和效率的可用模型。

However, we don’t really know how they work.

但是, 我們真的不知道它們是如何工作的

I was fortunate enough to attend the Knowledge Discovery and Data Mining (KDD) conference this year. Of the talks I went to, there were two main areas of research that seem to be on a lot of people’s minds:

我很幸運地參加了今年的知識發現和數據挖掘 (KDD)會議。 在我參加的演講中,很多人似乎都想到了兩個主要的研究領域:

  • Firstly, finding a meaningful representation of graph structures to feed into neural networks. Oriol Vinyals from DeepMind gave a talk about their Message Passing Neural Networks.

    首先,找到圖結構的有意義的表示以饋入神經網絡。 來自DeepMind的Oriol Vinyals發表了他們的消息通過神經網絡的演講。

  • The second area, and the focus of this article, are explainable AI models. As we generate newer and more innovative applications for neural networks, the question of ‘How do they work?’ becomes more and more important.

    第二個領域以及本文的重點是可解釋的AI模型。 隨著我們為神經網絡生成更新,更具創新性的應用程序,“它們如何工作?”的問題開始了。 變得越來越重要。

為什么需要可解釋的模型? (Why the need for Explainable Models?)

Neural Networks are not infallible.

神經網絡并非萬無一失。

Besides the problems of overfitting and underfitting that we’ve developed many tools (like Dropout or increasing the data size) to counteract, neural networks operate in an opaque way.

除了我們開發了許多工具(例如Dropout或增加數據大小)來抵消過擬合和欠擬合的問題之外,神經網絡還以不透明的方式運行。

We don’t really know why they make the choices they do. As models become more complex, the task of producing an interpretable version of the model becomes more difficult.

我們真的不知道他們為什么做出選擇。 隨著模型變得越來越復雜,生成模型的可解釋版本的任務變得更加困難。

Take, for example, the one pixel attack (see here for a great video on the paper). This is carried out by using a sophisticated approach which analyzes the CNNs and applies differential evolution (a member of the evolutionary class of algorithms).

以單像素攻擊為例(請參閱此處,獲得紙質視頻 )。 這是通過使用一種復雜的方法來執行的,該方法可以分析CNN并應用差分進化(算法進化類的成員)。

Unlike other optimisation strategies which restrict the objective function to be differentiable, this approach uses an iterative evolutionary algorithm to produce better solutions. Specifically, for this one pixel attack, the only information required was the probabilities of the class labels.

與其他限制目標函數可微的優化策略不同,此方法使用迭代進化算法來產生更好的解決方案。 具體來說,對于這一像素攻擊,所需的唯一信息是類別標簽的概率。

The relative ease of fooling these neural networks is worrying. Beyond this lies a more systemic problem: trusting a neural network.

愚弄這些神經網絡的相對容易性令人擔憂。 除此之外,還有一個系統性的問題:信任神經網絡。

The best example of this is in the medical domain. Say you are building a neural network (or any black-box model) to help predict heart disease given a patient’s records.

最好的例子是在醫學領域。 假設您正在建立神經網絡(或任何黑匣子模型)以幫助根據患者的病情預測心臟病。

When you train and test your model, you get a good accuracy and a convincing positive predictive value. You bring it to a clinician and they agree it seems to be a powerful model.

在訓練和測試模型時,您將獲得良好的準確性和令人信服的積極預測價值。 您將其帶給臨床醫生,他們同意這似乎是一個強大的模型。

But they will be hesitant to use it because you (or the model) cannot answer the simple question: “Why did you predict this person as more likely to develop heart disease?”

但是他們會猶豫使用它,因為您(或模型)無法回答一個簡單的問題:“您為什么預測這個人患心臟病的可能性更大?”

This lack of transparency is a problem for the clinician who wants to understand the way the model works to help them improve their service. It is also a problem for the patient who wants a concrete reason for this prediction.

對于臨床醫生來說,這種缺乏透明度是一個問題,他們希望了解該模型如何幫助他們改善服務質量。 對于想要該預測的具體原因的患者來說也是一個問題。

Ethically, is it right to tell a patient that they have a higher probability of a disease if your only reasoning is that “the black-box told me so”? Health care is as much about science as it is about empathy for the patient.

從倫理上講,如果您唯一的理由是“黑匣子告訴我”,告訴患者他們患病的可能性較高是否正確? 衛生保健既關乎科學,也關乎病人的同理心。

The field of explainable AI has grown in recent years, and this trend looks set to continue.

近年來,可解釋的AI領域不斷發展,而且這種趨勢似乎還將繼續。

What follows are some of the interesting and innovative avenues researchers and machine learning experts are exploring in their search for models which not only perform well, but can tell you why they make the choices they do.

接下來是研究人員和機器學習專家在尋找模型的過程中探索的一些有趣且創新的途徑,這些模型不僅性能良好,而且可以告訴您為什么他們做出選擇。

逆時注意模型(RETAIN) (Reversed Time Attention Model (RETAIN))

The RETAIN model was developed at Georgia Institute of Technology by Edward Choi et al. It was introduced to help doctors understand why a model was predicting patients to be at risk of heart failure.

RETAIN模型是由Edward Choi等人在喬治亞理工學院開發的。 引入它是為了幫助醫生了解為什么模型預測患者有心力衰竭的風險。

The idea is, given a patients’ hospital visits records which also contain the events of the visit, they could predict the risk of heart failure.

這個想法是,給定患者的醫院就診記錄(其中也包含就診事件),他們可以預測心力衰竭的風險。

The researchers split the input into two recurrent neural networks. This let them use the attention mechanism on each to understand what the neural network was focusing on.

研究人員將輸入分為兩個循環神經網絡。 這樣一來,他們就可以利用每種注意力機制來了解神經網絡所關注的內容。

Once trained, the model could predict a patient’s risk. But it could also make use of the alpha and beta parameters to output which hospital visits (and which events within a visit) influenced its choice.

訓練后,該模型可以預測患者的風險。 但是它也可以利用alpha和beta參數來輸出哪些醫院就診(以及一次就診中的哪些事件)影響了其選擇。

本地可解釋模型不可知的解釋(LIME) (Local Interpretable Model-Agnostic Explanations (LIME))

Another approach that has become fairly common in use is LIME.

LIME是另一種已變得相當普遍使用的方法。

This is a post-hoc model — it provides an explanation of a decision after it has been made. This means it isn’t a pure ‘glass-box’, transparent model (like decision trees) from start to finish.

這是事后模型-做出決定后提供了解釋。 這意味著從始至終,它并不是一個純粹的“玻璃盒子”,透明模型(例如決策樹)。

One of the main strengths of this approach is that it’s model agnostic. It can be applied to any model in order to produce explanations for its predictions.

這種方法的主要優勢之一是它與模型無關。 它可以應用于任何模型,以便為其預測提供解釋。

The key concept underlying this approach is perturbing the inputs and watching how doing so affects the model’s outputs. This lets us build up a picture of which inputs the model is focusing on and using to make its predictions.

這種方法的基本概念是擾動輸入并觀察這樣做如何影響模型的輸出。 這使我們可以建立模型所關注的輸入并用于進行預測的圖片。

For instance, imagine some kind of CNN for image classification. There are four main steps to using the LIME model to produce an explanation:

例如,想象一下用于圖像分類的CNN。 使用LIME模型產生解釋的主要步驟有四個:

  • Start with a normal image and use the black-box model to produce a probability distribution over the classes.

    從正常圖像開始,并使用黑盒模型在類上產生概率分布。
  • Then perturb the input in some way. For images, this could be hiding pixels by coloring them grey. Now run these through the black-box model to see the how the probabilities for the class it originally predicted changed.

    然后以某種方式干擾輸入。 對于圖像,這可以通過將像素著色為灰色來隱藏像素。 現在,通過黑盒模型運行它們,以查看其最初預測的類的概率如何變化。
  • Use an interpretable (usually linear) model like a decision tree on this dataset of perturbations and probabilities to extract the key features which explain the changes. The model is locally weighted — meaning that we care more about the perturbations that are most similar to the original image we were using.

    在這種擾動和概率數據集上使用諸如決策樹之類的可解釋(通常是線性)模型來提取解釋這些變化的關鍵特征。 該模型是局部加權的-意味著我們更關心與我們使用的原始圖像最相似的擾動。
  • Output the features (in our case, pixels) with the greatest weights as our explanation.

    輸出權重最大的特征(在本例中為像素)作為說明。

分層相關傳播(LRP) (Layer-wise Relevance Propagation (LRP))

This approach uses the idea of relevance redistribution and conservation.

這種方法使用了相關性重新分配和保護的思想。

We start with an input (say, an image) and its probability of a classification. Then, work backwards to redistribute this to all of the inputs (in this case pixels).

我們從輸入(例如圖像)及其分類概率開始。 然后,向后工作以將其重新分配給所有輸入(在本例中為像素)。

The redistribution process is fairly simple from layer to layer.

每一層的重新分配過程非常簡單。

In the above equation, each term represents the following ideas:

在上述等式中,每個術語表示以下想法:

  • x_j — the activation value for neuron j in layer l

    x_j —第l層中神經元j的激活值

  • w_j,k — the weighting of the connection between neuron j in layer l and neuron k in layer l + 1

    w_j,k —層l中的神經元j和層l + 1中的神經元k之間的連接權重

  • R_j — Relevance scores for each neuron in layer l

    R_j —第l層中每個神經元的相關性得分

  • R_k — Relevance scores for each neuron in layer l+1

    R_kl + 1層中每個神經元的相關性得分

The epsilon is just a small value to prevent dividing by zero.

ε只是一個很小的值,以防止被零除。

As you can see, we can work our way backwards to determine the relevance of individual inputs. Further, we can sort these in order of relevance. This lets us extract a meaningful subset of inputs as our most useful or powerful in making a prediction.

如您所見,我們可以倒退確定各個輸入的相關性。 此外,我們可以按照相關性對它們進行排序。 這使我們可以提取有意義的輸入子集,作為我們進行預測時最有用或最有效的輸入。

接下來是什么? (What next?)

The above methods for producing explainable models are by no means exhaustive. They are a sample of some of the approaches researchers have tried using to produce interpretable predictions from black-box models.

以上產生可解釋模型的方法絕不是窮舉。 他們是研究人員嘗試從黑盒模型中產生可解釋的預測的一些方法的樣本。

Hopefully this post also sheds some light onto why it is such an important area of research. We need to continue researching these methods, and develop new ones, in order for machine learning to benefit as many fields as possible — in a safe and trustworthy fashion.

希望這篇文章也能闡明為什么它是如此重要的研究領域。 我們需要繼續研究這些方法,并開發新方法,以使機器學習以安全和可信賴的方式從盡可能多的領域中受益。

If you find yourself wanting more papers and areas to read about, try some of the following.

如果發現自己想論文和領域,請嘗試以下一些方法。

  • DeepMind’s research on Concept Activation Vectors, as well as the slides from Victoria Krakovna’s talk at Neural Information Processing Systems (NIPS) conference.

    DeepMind對概念激活向量的研究,以及Victoria Krakovna在神經信息處理系統(NIPS)會議上的演講的幻燈片 。

  • A paper by Dung Huk Park et al. on datasets for measuring explainable models.

    一紙由糞學今公園等。 在測量可解釋模型的數據集上。

  • Finale Doshi-Velez and Been Kim’s paper on the field in general

    總決賽Doshi-Velez和Been Kim在該領域的論文

Artificial intelligence should not become a powerful deity which we follow blindly. But neither should we forget about it and the beneficial insight it can have. Ideally, we will build flexible and interpretable models that can work in collaboration with experts and their domain knowledge to provide a brighter future for everyone.

人工智能不應成為我們盲目跟隨的強大神靈。 但是我們也不應該忘記它以及它可以擁有的有益的見識。 理想情況下,我們將構建可以與專家及其領域知識協作的靈活且可解釋的模型,從而為每個人提供光明的未來。

翻譯自: https://www.freecodecamp.org/news/an-introduction-to-explainable-ai-and-why-we-need-it-a326417dd000/

肉體之愛的解釋圣經

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/393499.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/393499.shtml
英文地址,請注明出處:http://en.pswp.cn/news/393499.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python可變與不可變類型及垃圾回收機制

1. 可變與不可變類型 1.1 可變類型 在id不變的情況下,value可以改變,則稱之為可變類型。列表、字典與集合是可變的。 l1 [1,2,3,4,5] print(id(l1)) l1[1] 520 #改變列表元素 print(id(l1)) result: 1700748379208 …

12-1 12 防盜鏈 訪問控制 php解析 代理

2019獨角獸企業重金招聘Python工程師標準>>> 12.13 Nginx防盜鏈 12.14 Nginx訪問控制 12.15 Nginx解析php相關配置 12.16 Nginx代理 擴展 502問題匯總 http://ask.apelearn.com/question/9109location優先級 http://blog.lishiming.net/?p10012.13 Nginx防盜鏈 用來…

leetcode911. 在線選舉(二分法)

在選舉中,第 i 張票是在時間為 times[i] 時投給 persons[i] 的。 現在,我們想要實現下面的查詢函數: TopVotedCandidate.q(int t) 將返回在 t 時刻主導選舉的候選人的編號。 在 t 時刻投出的選票也將被計入我們的查詢之中。在平局的情況下&…

1-13句子逆序

題目描述 將一個英文語句以單詞為單位逆序排放。例如“I am a boy”,逆序排放后為“boy a am I”所有單詞之間用一個空格隔開,語句中除了英文字母外,不再包含其他字符 接口說明 /** * 反轉句子 * * param sentence 原句子 * return 反轉后的…

單例模式實現DB類

創建一個類 class DB_class {//public $name andy;//私有的屬性private static $db;//公共的靜態方法public static function index(){if (self::$db ! null ){return self::$db;}self::$dbnew DB_class();return self::$db;}//私有的構造方法private function __construct()…

終端定時任務 開始緩沖_如何開始使用終端以提高生產力

終端定時任務 開始緩沖by Luciano Strika通過盧西亞諾斯特里卡(Luciano Strika) 如何開始使用終端以提高生產力 (How to start using the terminal to be more productive) As developers, the terminal can be our second home.作為開發人員,碼頭可以成為我們的第…

圖片預覽------photoswipe 使用

photoswipe 使用 預覽圖片后,需要點擊關閉按鈕才能關閉,點擊圖片事件效果是放大圖片,和微信的效果不一致,最后改用微信預覽圖片的接口了,但是例子可以用,記錄一下!! http://www.cnbl…

SSKeychain

Keychain 使用? ---為了實用最大化我覺得我應該直接先說使用! 當然是使用第三方庫啦:sskeychain 3000星星的庫不開玩笑。github地址:https://github.com/soffes/sskeychain 導入完之后首先,編譯一下有無錯。 如果是自己手動導入&…

shell高級-----正則表達式

正則表達式概述 正則表達式是一種定義的規則,Linux工具可以用它來過濾文本。 基礎正則表達式 純文本 [rootnode1 ~]# echo "this is a cat" | sed -n /cat/p this is a cat [rootnode1 ~]# echo "this is a cat" | gawk /cat/{print $0} this …

leetcode130. 被圍繞的區域(bfs)

給定一個二維的矩陣,包含 ‘X’ 和 ‘O’(字母 O)。 找到所有被 ‘X’ 圍繞的區域,并將這些區域里所有的 ‘O’ 用 ‘X’ 填充。 示例: X X X X X O O X X X O X X O X X 運行你的函數后,矩陣變為: X X…

linux mysql提交_MySQL 事務提交過程

開發老大要求通過binlog查詢一條被修改的數據,數據被查出后問我,有沒有可能binlog中不會記錄,回答不會,因為數據被修改,若失敗直接回滾,不會在binlog中記錄,此刻一個朋友用了洪荒之力告訴我&…

spray.json_如何使用Spray-json(Un)在Akka HTTP中封送JSON

spray.jsonby Miguel Lopez由Miguel Lopez 如何使用Spray-json(Un)在Akka HTTP中封送JSON (How to (Un)marshal JSON in Akka HTTP with spray-json) In the previous post, we added JSON support to our Akka HTTP API using circe.在上一篇文章中 ,我們使用circ…

React單元測試:Jest + Enzyme(二)

前言 在上一篇教程中,我們成功搭建了基于Jest和Enzyme的單元測試框架并成功地跑起來第一個單元測試,可以點擊這里回顧一下。今天,我們重點討論如何通過Jest來mock數據。 什么是Mock Mock的簡單翻譯就是模擬。既可以模擬數據,也可以…

input file 文件上傳,js控制上傳文件的大小和格式

文件上傳一般是用jquery的uploadify,比較好用。后面會出文章介紹uploadify這個插件。 但是,有時候為了偷懶,直接就用input 的file進行文件和圖片等的上傳,input file 可以控制上傳的格式,但是是html5,很多瀏…

leetcode面試題 17.08. 馬戲團人塔(二分法)

有個馬戲團正在設計疊羅漢的表演節目,一個人要站在另一人的肩膀上。出于實際和美觀的考慮,在上面的人要比下面的人矮一點且輕一點。已知馬戲團每個人的身高和體重,請編寫代碼計算疊羅漢最多能疊幾個人。 示例: 輸入:…

如何選擇適合自己的CMS建站系統

如今做網站已不像過去那樣必須找網站公司才能建,因為網上針對建站的各種CMS建站系統層出不窮。像PageAdmin、DEDECMS、帝國CMS、Discuz等,這些CMS系統各有各的特點和優勢,小熊優化的小編我從事網站制作和網站優化多年,和很多建站朋…

python dict hash算法_2020年3月26日python學習筆記——hash

什么是哈希?hash,一般翻譯做散列、雜湊,或音譯為哈希,是把任意長度的輸入(又叫做預映射pre-image)通過散列算法變換成固定長度的輸出,該輸出就是散列值。這種轉換是一種壓縮映射,也就是,散列值的空間通常遠…

數據處理不等式:Data Processing Inequality

我是在差分隱私下看到的,新解決方案的可用性肯定小于原有解決方案的可用性,也就是說信息的后續處理只會降低所擁有的信息量。 那么如果這么說的話為什么還要做特征工程呢,這是因為該不等式有一個巨大的前提就是數據處理方法無比的強大&#x…

aws架構_如何使用AWS構建可擴展架構

aws架構What I learned building the StateOfVeganism ?我學到的建立素食主義的方法是什么? By now, we all know that news and media shape our views on the topics we discuss. Of course, this is different from person to person. Some might be influence…

gulp 實現sass自動化 ,監聽同步

實現功能 監聽scss文件   sass自動化 準備條件 1 .安裝gulp npm init ---->一直enter,會在當前目錄下生成一個package.json文件,記錄安裝的依賴模塊 npm install gulp --save-dev 2 .安裝gulp-ruby-sass npm install gulp-ruby-sass 你還需要安裝ruby環境…