脑电波之父:汉斯·贝格尔_深度学习,认识聪明的汉斯
腦電波之父:漢斯·貝格爾
Around 1900, a German farmer made an extraordinary claim: he had taught a horse basic arithmetic, and even to read and spell! Indeed, in public demonstrations, the horse, called Clever Hans, was able to answer all of its owner’s questions correctly, by a sequence of taps of its hooves.
A輪1900年,德國農民做出了非凡的要求 :他教過馬基本的算術,甚至閱讀和拼寫! 確實,在公開示威中,這匹名為“聰明漢斯”(Clever Hans)的馬能夠輕敲蹄子,就能正確回答主人的所有問題。
Oskar Pfungst, a psychologist of the time at the University of Berlin, did not quite believe the animal really possessed such human-like capabilities and designed a set of experiments to prove the farmer’s claim wrong. In 1907 he published his famous report on the matter, making a surprising observation: Clever Hans would only give the correct answer if the answer was known by the experimenter asking the question!
柏林大學當時的心理學家奧斯卡·普豐格斯特(Oskar Pfungst)不太相信這種動物確實具有像人類一樣的能力,并設計了一系列實驗來證明農民的說法是錯誤的。 1907年,他發表了有關該問題的著名報告 ,做出了令人驚訝的觀察:聰明的漢斯只會在問問題的實驗者知道答案的情況下給出正確答案!
The horse had not actually learned to solve the question by calculating or reading, but rather it recognized subtle cues in the experimenter’s body language to figure out what answer was expected of it.
這匹馬實際上并沒有學會通過計算或閱讀來解決問題,而是認識到了實驗者肢體語言中的細微線索,以期得出對它的期望。
To this day, the phenomenon of (human or animal) test subjects’ actions in psychological studies being affected by the experimenter’s expectations is known as “Clever Hans phenomenon”. Typically, special care is taken to prevent the subjects from giving the right answer without solving the real task.
為了這一天 ,現象(人或動物)考試科目在心理學的研究行動正受到實驗者的期望被稱為‘聰明的漢斯現象’。 通常,要特別注意防止受試者在解決實際任務時給出正確的答案。
Wait. I thought this article was about deep learning?
等待。 我以為這篇文章是關于深度學習的?
Indeed, in modern-day, cutting-edge deep learning systems (and even simple regression) we encounter the same problem! The Clever Hans phenomenon, or in traditional statistics literature spurious correlations, can occur when there is a feature in the data that is highly correlated with the correct outcome (like the experimenter’s body language), but is not the cause for the answer being correct (e.g. a correct calculation).
確實,在當今的尖端深度學習系統(甚至是簡單的回歸 )中,我們遇到了同樣的問題! 當數據中的某個特征與正確的結果高度相關(例如實驗者的肢體語言),但不是答案正確的原因時,就可能發生“聰明漢斯”現象,或在傳統的統計文獻中出現虛假的相關性。例如正確的計算)。
A recent Nature article by Lapuschkin et al. beautifully illustrates that this effect is really occurring in modern deep learning models, e.g. for image recognition or playing ATARI games. (See below for more examples.)
Lapuschkin等人在 Nature上最近發表的一篇文章。 漂亮地說明了這種效果確實發生在現代深度學習模型中,例如用于圖像識別或玩ATARI游戲。 (有關更多示例,請參見下文。)
So, why should we care what information the model is using? The model is outputting the correct answer after all.
那么,為什么我們要關心模型正在使用哪些信息? 該模型畢竟輸出正確的答案。
Well, for your training and test data it does.
好吧,對于您的培訓和測試數據而言,它確實可以。
But is it still correct at deployment? Can it be fooled easily because it relies on the wrong features?
但是在部署時仍然正確嗎? 難道因為它依賴錯誤的功能而容易上當?
For example, imagine you have an algorithm distinguishing Wolves and Huskies, but it mainly tells them apart by the presence of snow in the image. Or, imagine you want to identify trains and boats (e.g., given the PASCAL VOC 2012 dataset), but your algorithm actually learns to recognize water and rails. This would spell disaster for any serious application. You can actually find plenty of examples in the literature if you pay attention:
例如,假設您有一個區分狼和愛斯基摩犬的算法,但主要是通過圖像中雪的存在來區分它們 。 或者,假設您想識別火車和輪船(例如,給定PASCAL VOC 2012數據集 ),但是您的算法實際上學會了識別水和鐵軌 。 這將對任何嚴重的應用造成災難。 如果您注意以下內容,實際上可以在文獻中找到很多示例:
Identifying “father” based on the presence of a child.
根據孩子的存在來識別 “父親”。
Identifying melanoma based on surgical markings.
根據手術標記識別黑色素瘤。
Learning dumbbells as joint concept with the hands holding them.
學會啞鈴作為聯合概念用拿著他們的手。
Classifying Asians dressed in red as ping-pong ball.
將穿著紅色的亞洲人分類為乒乓球。
Associating neck-tie with male, and rosy cheeks with wearing lipstick.
關聯 領帶與男性 ,與唇膏 臉頰紅潤 。
Predicting age based on smiling and wearing glasses.
根據微笑和戴眼鏡 預測年齡。
Now, you could still argue that it’s not all that bad; after all the network is solving the task correctly, just that the problem is not posed in a good way — just fix the data! And if you do, you’re in good company. Léon Bottou, an acclaimed researcher currently at Facebook AI, thinks that fixing our problem statement can go a long way.
現在,您仍然可以辯稱,這還不算太糟。 畢竟,網絡可以正確地解決任務,只是問題沒有以好的方式提出-只需修復數據即可! 而且,如果您這樣做,則說明您相處融洽。 目前在Facebook AI上廣受贊譽的研究員LéonBottou認為,修正我們的問題陳述可能會走很長一段路。
So what’s the big deal? Why are Clever-Hans-type mistakes so bad that we have to care about them independently of typical classification mistakes?
那有什么大不了的? 為什么“聰明漢斯”式錯誤如此嚴重,以至于我們必須獨立于典型的分類錯誤來關心它們?
The fact is, that that it is really not easy to find out whether your network is making Clever-Hans-type mistakes, precisely because they are not reflected in the classification error. Basically, you have to rely on having a bias-free dataset or a test-set of sufficient quality. Not very reassuring, given the examples above.
事實是,要確定您的網絡是否犯了Clever-Hans類型的錯誤,這真的不容易,這恰恰是因為它們未反映在分類錯誤中。 基本上,您必須依靠擁有無偏差的數據集或足夠質量的測試集。 鑒于上述示例,并不是很令人放心。
If you are employing interpretability methods, and know what to look for, you might find Clever-Hans-type mistakes by just looking at what features the network is actually using. But for big datasets, this is infeasible. Researchers are starting to address the issue in a scalable way, but there is still a long way to go.
如果您正在使用可解釋性方法 ,并且知道要查找的內容,則可能僅通過查看網絡實際使用的功能來發現Clever-Hans類型的錯誤。 但是對于大型數據集,這是不可行的。 研究人員開始以可擴展的方式解決該問題 ,但是還有很長的路要走。
As researchers and practitioners, it is important to have an awareness of Clever-Hans-type mistakes and to know where to start (trying) to uncover them. Beyond that — good luck out there!
作為研究人員和從業人員,重要的是要了解聰明漢斯式的錯誤,并知道從哪里開始(嘗試)發現錯誤。 除此之外,祝您好運!
I hope you learned something useful!
希望您學到了有用的東西!
翻譯自: https://towardsdatascience.com/deep-learning-meet-clever-hans-3576144dc5a9
腦電波之父:漢斯·貝格爾
總結
以上是生活随笔為你收集整理的脑电波之父:汉斯·贝格尔_深度学习,认识聪明的汉斯的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 与对手合作!LG电子首批OLED笔记本面
- 下一篇: 三星用户请注意!One UI 5.1即将