Makine öğrenenlerde bulmak zor Becerileri?


71

Veri madenciliği ve makine öğrenmesi o kadar popüler hale gelmiş gibi görünüyor ki, artık hemen hemen her CS öğrencisi sınıflandırıcılar, kümeleme, istatistiksel NLP… vb.

Sorum şu: Bir veri madencisinin onu diğerlerinden farklı kılacak beceriler nelerdir? Onu o kadar kolay olmayan, onun gibi biri gibi biri yapması için.


6
Farklı bir sorunun cevabı olsa da, eski bir cevabımdaki bazı noktalar buraya taşınabilir. Assad, aşağıdaki çok güzel cevabında da benzer açıklamalar yaptı.
kardinal

Yanıtlar:


62

Geliştiricilerin ML tekniklerini kullandığını defalarca gördüm. Bu her zamanki modeldir:

  1. fantezi adı ile kütüphane indir;
  2. nasıl kullanılacağını okumak için 10 dakika harcamak (herhangi bir istatistik, matematik vb. atlama);
  3. veri ile besleyin (ön işleme tabi değil);
  4. performansı ölçün (örneğin, sınıflar tamamen dengesiz olsa bile doğruluk) ve% 99 doğrulukla herkese bunun ne kadar harika olduğunu söyleyin;
  5. destansı başarısız sonuçlarla üretimde konuşlandırmak;
  6. kullanım kılavuzuna hiç bir şey ifade etmiyor, çünkü onlara yardım edecekleri anlayan birini bulun.

Basit cevap, (çoğu) yazılım mühendisinin istatistik ve matematik açısından çok zayıf olduğudur. Bu, onlarla rekabet etmek isteyen herkesin avantajıdır. Tabii ki istatistikler, üretim kodunu yazmaları gerektiğinde insanlar konfor bölgelerinin dışındalar. Çok nadir görülen bir rol de Data Scientist'tir. Muazzam miktarda veriye erişmek ve oynamak için kod yazabilen ve içindeki değeri bulan kişidir .


14
LOL "% 99 doğruluğu ile herkese ne kadar harika olduğunu söyleyin"
Jack Twain

2
+1 Her şeye katılıyorum. “[...] Veri Bilimcisi. Muazzam miktarda veriye erişmek ve oynamak için kod yazabilen ve içindeki değeri bulan kişi.”. Bana göre bunun doğal olarak nadir kalması gerektiğini öne sürüyor, çünkü çoğu ölümlü için karmaşık istatistiksel ve temel sorunları ele almanın yanı sıra bir şeyi üretim koduna dönüştürmenin uygun olmadığını gösteriyor. Ayrıca neden kalp damar cerrahları, anestezistler, nörologlar, hemşireler, hastane yöneticileri vb. Neden olduğumuzu da açıklar. Sivil, havacılık, madencilik, kimya, makine mühendisleri vb.
Thomas Speidel

2
Bana göre, bu gerçekten birinin bir ML adayı olarak öne çıkması gereken şeyin bir açıklaması değil - bir ML bash daha. Görünüşe göre, sorunun ne olduğundan emin olmadan önce “cevabı” almaya odaklanan birini tarif ediyorsun. Temel olarak, "tipik ML" kişiniz, zayıf planlama becerisine sahip bir kişidir ve ileriye doğru sürmeden önce "müşteri" ile ne yapmak istediklerini tartışamayan ve "cevap" ile geri dönecek olan kişidir. Bu, iyi matematik / istatistiklere sahip olmanın yardımı değil, iyi iletişim becerileri gerektiren bir şeydir.
Olasılık

61

Bu ne hakkında

Sadece teknikleri bilmek, hayvanat bahçesindeki hayvanları tanımaya benzer - onları adlandırabilir, özelliklerini tanımlayabilir, belki de vahşi doğada tanımlayabilirsiniz.

Bunları ne zaman kullanacağınızı, uygulama alanlarındaki çalışma matematiksel modellerini formüle etmek, inşa etmek, test etmek ve yerleştirmek, tuzaklardan kaçınırken --- bunlar bence ayırt edici olan yeteneklerdir.

İş dünyasında, sınai ve ticari sorunlara sistematik, bilimsel bir yaklaşım uygulayarak vurgu bilim üzerinde olmalıdır . Ancak bu, Robin Bloor'un "A Data Science Rant" da ikna edici bir şekilde savunduğu gibi, veri madenciliği ve makine öğrenmesinden daha geniş beceriler gerektirir .

Peki biri ne yapabilir?

Uygulama alanları : ilginize veya işvereninize yakın olan çeşitli uygulama alanları hakkında bilgi edinin. Alan, modelin nasıl inşa edildiğini ve bu alana değer katmak için nasıl kullanıldığını anlamaktan daha az önemlidir. Bir alanda başarılı olan modeller çoğu zaman benzer şekilde çalışan farklı alanlara nakledilebilir ve uygulanabilir.

Yarışmalar : Tercihen başka bir takıma katılan , veri madenciliği rekabet sitesi Kaggle'ı deneyin . (Kaggle: prediktif modelleme yarışmalarına yönelik bir platform. Şirketler, hükümetler ve araştırmacılar veri setleri ve sorunları sunar ve dünyanın en iyi veri bilimcileri en iyi çözümleri üretmek için rekabet eder.)

Temelleri : Dört tane var: (1) istatistikte sağlam bir temel, (2) oldukça iyi programlama becerileri, (3) karmaşık veri sorgularının nasıl yapılandırılacağını anlamak, (4) veri modellerini oluşturmak. Eğer zayıfsa, başlamak için önemli bir yer.


Bu konuda birkaç alıntı :

“Bir şeyin adını bilmekle bir şeyi bilmek arasındaki farkı çok erken öğrendim. Dünyanın bütün dillerinde bir kuşun adını biliyorsunuz, ama işiniz bittiğinde, kuş hakkında hiçbir şey bilmeyeceksiniz ... O halde kuşa bakalım ve ne yaptığını görelim - bu Önemli olan '' - Richard Feynman, "Bir Bilim İnsanının Yapılması", p14, Başkalarının Ne Düşündüğünü Önemsiyor, 1988

Aklında tut:

“Bu işletme bilimi [veri bilimi] projelerini yürütmek için gereken becerilerin birleşimi nadiren bir kişide bulunur. Biri (i) işin ne yaptığı, (ii) istatistiklerin nasıl kullanılacağı ve (iii) veri ve veri akışlarının nasıl yönetileceği hakkında üçlü alanda kapsamlı bilgiye ulaşmış olabilir . Öyleyse, gerçekten de belirli bir sektörde bir işletme bilimcisi (yani, “veri bilimcisi”) olduğunu iddia edebilir. Ancak bu tür bireyler neredeyse dişlerin dişleri kadar nadirdir. '' - Robin Bloor, Bir Veri Bilim Rantı , Ağustos 2013, İç Analiz

Ve sonunda:

`` Harita Bölge Değil. '' - Alfred Korzybski, 1933, Science & Sanity.

Gerçek, uygulanan sorunların çoğuna yalnızca “haritadan” erişilemez. Matematiksel modelleme ile pratik şeyler yapmak için, detaylar, incelikler ve istisnalar ile pisleşmeye istekli olmak gerekir. Bölgeyi ilk elden tanımanın yerini hiçbir şey tutamaz.



6
+1. Kutudan çıkan çözümler, kuruluşunuzun belirli bir işletme sorunu için nadiren çalışır. Terzilik ve iyileştirme yapmanız gerekir ve bunun için kaputun altında ne olduğunu anlamanız gerekir.
Zhubarb

4
@ Zhubarb - Bunun sadece kısmen doğru olduğunu düşünüyorum. "Kutunun dışında" çözümleri, her zaman değil, aynı zamanda genellikle baştan sona bir görevi tamamlamak için değil, büyük bir etki için kullanılabilir. İşin püf noktası, “kutudan çıkan çözümleri” kullanarak ne zaman kurtulabileceğinizi ve daha özel bir yaklaşıma ihtiyaç duyulduğunu bilmek.
Olasılık

41

Söylenen her şeye katılıyorum. Benim için öne çıkan şey:

  1. Makine uzmanı öğrenme uzmanları ne kadar çok ML uygulamak istedikleri ile ilgileniyorlar?
  2. Tahmini doğruluk ve doğru puanlama kurallarını ne kadar az gerçekten anlayan
  3. Doğrulama ilkelerini ne kadar az anlar
  4. Geleneksel bir regresyon modeline karşı kara kutuyu ne zaman kullanacağını çok az bilir
  5. “Uzmanlardan” hiçbirinin Bayes optimum karar veya kayıp / fayda / maliyet fonksiyonlarını hiç incelemediği görülüyor [bu anlayış eksikliği, birileri öngörülen risk yerine sınıflandırma kullandığında neredeyse her zaman ortaya çıkıyor]

3
4 üzerinde detaylandırmak ister misiniz? Ne demek istediğinizi tam olarak anlamadım

17
Bu maddenin anlaşılması en kolay olduğunu düşünürdüm. İşte size bir örnek: belirli bir çalışma alanında, değişkenlerin çoğunun ilave olarak çalıştığı konusunda önceki deneyimlerimiz olduğunu varsayalım. Doğrusal çalışmayı öngören tahmincileri kabul etmeyen ilave bir regresyon modelinin (örneğin, regresyon spline'larının kullanılması) takılması, yorumlanabilir ve kullanışlı bir istatistiksel model sağlayacaktır. Öte yandan, svm veya rastgele ormanları kullanmak yorumlaması çok zor olacak, ayrılabilir etkisi olmayacak ve doğrusal olmayan katkı modelinden daha iyi tahmin edemez.
Frank Harrell

7
Evet, konunun sığlığına kesinlikle. ML dünyasında bile, bu ham veriyi bir sihirli kutuya sokmak ve harika bir fikir ortaya çıkarmak isteme eğilimini sık sık görüyorum. Bu insanların aradığı şey yapay bir beyin.
DarenW

3
Özellikle 1 numaralı ürün için +1. Alandaki ilgisizliğin kanıtı, alan bilgisinin uygulanmasının kara kutuyu nasıl açacağınızı ve değiştirmeyi bilmeyi gerektireceğidir. Kara kutu ile, ML giriş seviyesinin büyük bir kısmı için temel istatistiksel modelleme teknikleri bile bu kara kutuda bulunuyor. Eğer ilgi / yetenek orada değilse, etki alanı bilgisini uygulamak daha zordur.
Meadowlark Bradsher

7
@DarenW: Eğilim aynı zamanda: “Makine Öğrenmesi” ismine de yansımıştır: makinenin öğrendiği çağrışımla ... kendi başına ... sadece ham verileri toplar. Hastie, Tibshirani, et.al .: "İstatistiksel Öğrenme" tarafından seçilen daha az çekici olan isim (ancak daha doğru IMO) ile karşılaştırınız. Farklı çağrışım, farklı açıklamalar, hepsi istatistiksel ilkelere atıfta bulunuyor.
Esad Ebrahim

11

Kalabalıktan sıyrılmanızı sağlayacak birkaç şey:

  • Uygulama etki alanını veya etki alanlarını anlayın. Yani, iş ortamı ya da diğer bağlamlar.
  • Büyük resmi anlayın. Bu çok önemli! Makine öğrenimi yapan insanlar genellikle ayrıntılarda kayboluyorlar. ML modelinizin sığacağı genel resmi düşünün. Genellikle ML kısmı, çok daha büyük bir sistemin sadece küçük bir kesimidir. Bütün sistemi anlayın.
  • Sadece "normal" ML modelleri olarak kabul edilen şeyleri değil, fayda ve karar teorisini ve Bayesci çıkarımı inceleyin. Bayesci çıkarım, bütün bağlamsal bilgilerin bir soruna katlanması fikrini biçimlendirmenin bir yoludur. Fayda ve karar teorisi, tabloya değer katmakla ilgilidir.

Üç nokta için de geçerli olan genel ileti: Büyük resme bakın, ayrıntılarda kaybolmayın.


4

Bir veri madencisini diğerlerinden ayıran beceri, makine öğrenim modellerini yorumlayabilme yeteneğidir. Çoğu makine üretiyor, hatayı bildiriyor ve sonra duruyor. Özellikler arasındaki matematiksel ilişkiler nelerdir? Etkiler katkı maddesi midir, katkı maddesi içermez mi yoksa her ikisi de midir? Özelliklerden herhangi biri alakasız mı? Makine, boş hipotez altında, verilerde sadece şans kalıplarının olduğunu düşünüyor mu? Model bağımsız verilere genelleştiriliyor mu? Bu kalıplar çalışılan problem için ne anlama geliyor? Çıkarım nedir? İçgörüler nelerdir? Bir etki alanı uzmanı neden heyecanlanmalı? Makine, etki alanı uzmanına yeni sorular sormaya ve yeni deneyler tasarlamaya yöneltecek mi? Veri madencisi modeli ve bunun sonuçlarını dünyaya etkili bir şekilde iletebilir mi?


8
+1 Anlaştık - tanımladığınız şeye istatistik denir.
Thomas Speidel

4

Orada “yumuşak beceriler” kavramını ortaya koyardım.

  • “Uzman” ın X yöntemi için kim olduğunu ve onların bilgisini kullanabildiğini fark etmek (eritmeyle ilgili her şeyi bilmemelisiniz veya beklememelisiniz). Başkalarıyla işbirliği yapma yeteneği ve isteği.

  • ML'de kullanılan matematik ile "gerçek dünyayı" çevirme veya temsil etme becerisi.

  • Yöntemlerinizi farklı izleyicilere farklı şekillerde açıklayabilme - ayrıntılara ne zaman odaklanacağınızı ve ne zaman daha geniş bağlamı izleyeceğinizi ve ne zaman izleyeceğinizi bilmek.

  • Düşünme, rolünüzün işin diğer alanlarına nasıl girdiğini ve bu alanların işinize nasıl geri beslendiğini görebilme.

  • belirsizliğin takdir edilmesi ve anlaşılması ve bununla başa çıkacak bazı yapılandırılmış yöntemlere sahip olmak. Varsayımların ne olduğunu açıkça ifade edebilmek.


4

İyi genelleme yapabilmek

Bu iyi bir modelin özüdür. Ve makine öğrenimi sanatının en iyi uygulayıcılarını kalabalığın arasından sıyrılan şeyin özüdür.

Hedefin, eğitim kaybını en aza indirgemek değil, görünmeyen verilerdeki performansı optimize etmek olduğunu anlamak. Hem aşırı hem de yetersiz montajdan nasıl kaçınacağını bilmek. Sorunun tanımlanmasında çok karmaşık olmayan ancak çok basit olmayan modellerle geliyor. Bir eğitim setinin özünü çıkarmak, mümkün olan maksimum değerden ziyade.

Deneyimli makine öğrenimi uygulayıcılarının bile bu prensibi takip etmemesinin ne kadar şaşırtıcı olduğu şaşırtıcı. Bunun bir nedeni, insanların iki büyük teoriye karşı-pratik büyüklük farkını takdir edememesidir :

  • Eğitim verisi çok büyük olsa bile, eldeki eğitim verisine kıyasla tüm olası örneklerin alanı ne kadar büyük?
  • Tam "hipotez alanı" ne kadar büyükse : pratik "çözüm alanı" na kıyasla bir problem için olası modellerin sayısı: aklınıza gelebilecek her şey ve yazılım / araçlarınızın temsil edebileceği her şey.

İkincisi, özellikle anlaşılmaz çünkü girişleri ve ikili sonuçlarla ilgili en basit problem için bile , olası giriş örneği ve üstel olarak daha büyük bir 2 ^ olası model var.2 N 2 NN2N2N

Ayrıca, yukarıdaki cevapların çoğunun daha somut ve somut yollarla söylediği şey de budur. iyi genelleme yapmak , düşünebilmemin en kısa yoludur.


2

Uygulamada makine öğrenmesi ile uğraşırken iki bölüm olduğunu görüyorum.

  1. Mühendislik (tüm algoritmaları kapsar, farklı paketler öğrenir, programlama).

  2. Merak / Muhakeme (verilere daha iyi sorular sorma yeteneği).

Bence 'merak / muhakeme', birini diğerlerinden ayıran beceridir. Örneğin, kaggle tamamlamalarının lider panolarını görürseniz, birçok kişi ortak (benzer) algoritmalar kullanmış olabilir, fark yaratan şey, verileri mantıksal olarak nasıl sorgulayan ve formüle eden olabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.