วิทยาศาสตร์ข้อมูล

ถามตอบสำหรับผู้เชี่ยวชาญด้านข้อมูลวิทยาศาสตร์ผู้เชี่ยวชาญด้านการเรียนรู้ของเครื่องจักรและผู้ที่สนใจเรียนรู้เพิ่มเติมเกี่ยวกับสาขานี้

3
การจำแนกประเภทจำแนกชั้นหนึ่งที่มีภูมิหลังติดลบแบบไม่สมดุล
ฉันกำลังพัฒนาตัวแยกประเภทที่มีการกำกับดูแลที่มีอยู่สำหรับการจัดลำดับ {โปรตีน} ว่าเป็นของคลาสเฉพาะ (สารตั้งต้นของฮอร์โมน Neuropeptide) หรือไม่ มี "ผลบวก" ที่รู้จักกันประมาณ 1,150 ตัวโดยมีพื้นหลังของลำดับโปรตีนประมาณ 13 ล้านลำดับ ("พื้นหลังที่ไม่รู้จัก / มีคำอธิบายประกอบไม่ดี") หรือมีการตรวจสอบประมาณ 100,000 รายการที่เกี่ยวข้องกับโปรตีน วิธี "ลบ") การนำไปใช้ก่อนหน้าของฉันดูที่นี่เป็นปัญหาการจำแนกเลขฐานสอง: Positive set = โปรตีนที่ทำเครื่องหมายเป็น Neuropeptides ชุดเชิงลบ: การสุ่มตัวอย่างตัวอย่าง 1,300 ตัวอย่าง (ทั้งหมด) จากบรรดาโปรตีนที่เหลืออยู่ซึ่งมีการกระจายความยาวที่คล้ายกัน ใช้งานได้ แต่ฉันต้องการปรับปรุงความสามารถในการแยกแยะอย่างมากของเครื่องจักร (ปัจจุบันมีความแม่นยำ 83-86% ในแง่ของความถูกต้อง AUC, F1 ซึ่งวัดโดย CV บนชุดลบสุ่มตัวอย่างหลายชุด) ความคิดของฉันคือ: 1) ทำให้นี่เป็นปัญหาแบบหลายคลาสโดยเลือกโปรตีน 2-3 คลาสที่จะเป็นเนกาทีฟโดยคุณสมบัติ / ชั้นเรียนการทำงานของพวกเขาพร้อมด้วย …

6
อะไรคือเหตุผลที่ทำให้การเปลี่ยนแปลงบันทึกของตัวแปรต่อเนื่องน้อย
ฉันได้รับปัญหาการจัดหมวดหมู่และฉันได้อ่านรหัสและแบบฝึกหัดของคนจำนวนมาก สิ่งหนึ่งที่ผมสังเกตเห็นก็คือว่าหลายคนใช้np.logหรือlogของตัวแปรอย่างต่อเนื่องเหมือนloan_amountหรือapplicant_incomeฯลฯ ฉันแค่ต้องการเข้าใจเหตุผลที่อยู่เบื้องหลัง มันช่วยปรับปรุงความแม่นยำในการทำนายแบบจำลองของเราหรือไม่ จำเป็นหรือไม่ หรือมีเหตุผลใด ๆ ที่อยู่เบื้องหลังมัน? โปรดระบุคำอธิบายหากเป็นไปได้ ขอขอบคุณ.

3
วิธีรับการทำนายด้วย predict_generator จากข้อมูลการทดสอบการสตรีมใน Keras
ในบล็อก Keras เกี่ยวกับการฝึกอบรมทำให้มั่นใจตั้งแต่เริ่มต้นรหัสจะแสดงเฉพาะเครือข่ายที่ทำงานกับข้อมูลการฝึกอบรมและการตรวจสอบความถูกต้อง แล้วข้อมูลทดสอบล่ะ ข้อมูลการตรวจสอบเป็นเช่นเดียวกับข้อมูลทดสอบ (ฉันคิดว่าไม่) หากมีโฟลเดอร์ทดสอบแยกต่างหากในบรรทัดที่คล้ายกันเป็นโฟลเดอร์รถไฟและการตรวจสอบความถูกต้องเราจะได้รับเมทริกซ์ความสับสนสำหรับข้อมูลการทดสอบอย่างไร ฉันรู้ว่าเราต้องใช้ scikit learn หรือชุดอื่น ๆ เพื่อทำสิ่งนี้ แต่ฉันจะทำบางสิ่งให้สอดคล้องกับความน่าจะเป็นที่ชาญฉลาดของชั้นเรียนสำหรับข้อมูลการทดสอบ ฉันหวังว่าจะใช้สิ่งนี้กับเมทริกซ์ความสับสน

3
วิธีการทำนายความน่าจะเป็นใน xgboost?
ฟังก์ชันการทำนายด้านล่างให้ค่า -ve เช่นกันดังนั้นจึงไม่น่าจะเป็น param <- list(max.depth = 5, eta = 0.01, objective="binary:logistic",subsample=0.9) bst <- xgboost(param, data = x_mat, label = y_mat,nround = 3000) pred_s <- predict(bst, x_mat_s2) ฉันลองใช้ Google แล้วpred_s <- predict(bst, x_mat_s2,type="response") แต่มันไม่ทำงาน คำถาม จะทำนายความน่าจะเป็นแทนได้อย่างไร?



1
การขยายพันธุ์กลับในซีเอ็นเอ็น
ฉันมีซีเอ็นเอ็นต่อไปนี้: ฉันเริ่มต้นด้วยภาพอินพุตขนาด 5x5 จากนั้นฉันใช้การแปลงโดยใช้เคอร์เนล 2x2 และ stride = 1 ซึ่งสร้างแผนที่คุณลักษณะขนาด 4x4 จากนั้นฉันใช้ 2x2 max-pooling ร่วมกับ stride = 2 ซึ่งจะลดขนาดของแผนที่ขนาด 2x2 จากนั้นฉันก็ใช้ sigmoid โลจิสติก จากนั้นหนึ่งเลเยอร์ที่เชื่อมต่ออย่างเต็มที่กับ 2 เซลล์ประสาท และชั้นเอาท์พุท เพื่อความเรียบง่ายสมมติว่าฉันได้ทำพาสพาสไปแล้วและคำนวณδH1 = 0.25และ δH2 = -0.15 ดังนั้นหลังจากผ่านไปข้างหน้าอย่างสมบูรณ์และทำย้อนหลังผ่านบางส่วนเครือข่ายของฉันมีลักษณะเช่นนี้: จากนั้นฉันคำนวณ delta สำหรับเลเยอร์ที่ไม่ใช่เชิงเส้น (sigmoid โลจิสติก): δ11=(0.25∗0.61+−0.15∗0.02)∗0.58∗(1−0.58)=0.0364182δ12=(0.25∗0.82+−0.15∗−0.50)∗0.57∗(1−0.57)=0.068628δ21=(0.25∗0.96+−0.15∗0.23)∗0.65∗(1−0.65)=0.04675125δ22=(0.25∗−1.00+−0.15∗0.17)∗0.55∗(1−0.55)=−0.06818625δ11=(0.25∗0.61+−0.15∗0.02)∗0.58∗(1−0.58)=0.0364182δ12=(0.25∗0.82+−0.15∗−0.50)∗0.57∗(1−0.57)=0.068628δ21=(0.25∗0.96+−0.15∗0.23)∗0.65∗(1−0.65)=0.04675125δ22=(0.25∗−1.00+−0.15∗0.17)∗0.55∗(1−0.55)=−0.06818625 \begin{align} &\delta_{11}=(0.25 * 0.61 + -0.15 * 0.02) * 0.58 …

5
การเลือกคุณสมบัติเทียบกับการแยกคุณสมบัติ จะใช้เมื่อใด
การแยกคุณลักษณะและการเลือกคุณสมบัติเป็นหลักช่วยลดมิติข้อมูล แต่การดึงคุณสมบัติยังทำให้ข้อมูลแยกกันได้มากขึ้นถ้าฉันพูดถูก เทคนิคใดจะเป็นที่ต้องการมากกว่าอีกอันและเมื่อใด ฉันคิดว่าเนื่องจากการเลือกคุณสมบัติไม่ได้แก้ไขข้อมูลต้นฉบับและคุณสมบัติของมันฉันคิดว่าคุณจะใช้การเลือกคุณสมบัติเมื่อสิ่งสำคัญคือคุณสมบัติที่คุณกำลังฝึกอบรมไม่เปลี่ยนแปลง แต่ฉันไม่สามารถจินตนาการได้ว่าทำไมคุณต้องการบางสิ่งเช่นนี้ ..

1
วิธีการให้คะแนน RandomForestClassifier OOB
การนำป่ามาใช้ในการเรียนรู้แบบ Scikit โดยใช้ความแม่นยำเฉลี่ยเป็นวิธีการให้คะแนนเพื่อประเมินข้อผิดพลาดทั่วไปกับตัวอย่างนอกถุงหรือไม่ สิ่งนี้ไม่ได้กล่าวถึงในเอกสาร แต่วิธีคะแนน () รายงานความถูกต้องเฉลี่ย ฉันมีชุดข้อมูลที่ไม่สมดุลอย่างมากและฉันใช้ AUC ของ ROC เป็นตัวชี้วัดการให้คะแนนของฉันในการค้นหากริด มีวิธีบอกลักษณนามให้ใช้วิธีการให้คะแนนแบบเดียวกันกับตัวอย่าง OOB หรือไม่?

3
วิธีการรวมฟีเจอร์อินพุตและหมวดหมู่อย่างต่อเนื่องสำหรับการฝึกอบรมโครงข่ายประสาทเทียม
สมมติว่าเรามีคุณสมบัติอินพุตสองประเภทจัดหมวดหมู่และต่อเนื่อง ข้อมูลหมวดหมู่อาจถูกแทนด้วยรหัสร้อนแรง A ในขณะที่ข้อมูลต่อเนื่องเป็นเพียงเวกเตอร์ B ในพื้นที่มิติ N ดูเหมือนว่าการใช้ concat (A, B) ไม่ใช่ทางเลือกที่ดีเพราะ A, B เป็นข้อมูลที่แตกต่างกันโดยสิ้นเชิง ตัวอย่างเช่นแตกต่างจาก B ไม่มีลำดับตัวเลขใน A. ดังนั้นคำถามของฉันคือการรวมข้อมูลสองชนิดนี้หรือมีวิธีการทั่วไปในการจัดการพวกเขา อันที่จริงฉันเสนอโครงสร้างไร้เดียงสาตามที่แสดงในภาพ ดังที่คุณเห็นเลเยอร์แรก ๆ จะใช้ในการเปลี่ยนข้อมูล (หรือแผนที่) A เป็นเอาท์พุทกลางในพื้นที่ต่อเนื่องและจากนั้นจะถูกเชื่อมโยงกับ data B ซึ่งเป็นคุณลักษณะอินพุตใหม่ในพื้นที่ต่อเนื่องสำหรับเลเยอร์ในภายหลัง ฉันสงสัยว่ามันสมเหตุสมผลหรือเป็นแค่เกม "ลองผิดลองถูก" ขอบคุณ.

2
ทำไมเราต้องละทิ้งตัวแปรจำลองหนึ่งตัว
ฉันได้เรียนรู้ว่าสำหรับการสร้างแบบจำลองการถดถอยเราต้องดูแลตัวแปรเด็ดขาดโดยการแปลงให้เป็นตัวแปรจำลอง ตัวอย่างเช่นถ้าในชุดข้อมูลของเรามีตัวแปรเช่นตำแหน่ง: Location ---------- Californian NY Florida เราต้องแปลงพวกเขาเช่น: 1 0 0 0 1 0 0 0 1 อย่างไรก็ตามขอแนะนำให้เราทิ้งตัวแปรดัมมี่หนึ่งตัวไม่ว่าจะมีตัวแปรจำลองกี่ตัว ทำไมเราต้องละทิ้งตัวแปรจำลองหนึ่งตัว

8
ฉันจะเรียนรู้เครือข่ายประสาทได้อย่างไร
ฉันเป็นนักศึกษาระดับปริญญาตรีครั้งแรก (พูดถึงเรื่องนี้ดังนั้นคุณอาจให้อภัยความไม่คุ้นเคยของฉัน) ที่กำลังทำวิจัยโดยใช้เครือข่ายประสาท ฉันเขียนรหัสเครือข่ายประสาทสามโหนด (ใช้งานได้) ตามคำแนะนำของอาจารย์ อย่างไรก็ตามฉันต้องการทำงานใน AI และ Data Science และฉันต้องการสอนตัวเองเกี่ยวกับสิ่งเหล่านี้อย่างละเอียด มีหนังสือหรือแหล่งข้อมูลใดบ้างที่จะสอนเพิ่มเติมเกี่ยวกับโครงสร้างเครือข่ายประสาทการเรียนรู้อย่างลึกล้ำและอื่น ๆ มีคำแนะนำหรือไม่? หมายเหตุ: ฉันมีความเชี่ยวชาญใน Java, Python, Bash, JavaScript, Matlab และรู้ C ++ เล็กน้อย

2
การถดถอยแบบปรับพารามิเตอร์ของมุมการหมุน
สมมติว่าฉันมีรูปลูกศรจากบนลงล่างและฉันต้องการทำนายมุมที่ลูกศรนี้สร้างขึ้น นี้จะอยู่ระหว่างและองศาหรือระหว่างและ2ปัญหาคือเป้าหมายนี้มีลักษณะเป็นวงกลมและองศาเหมือนกันทุกประการซึ่งเป็นค่าคงที่ที่ฉันต้องการรวมไว้ในเป้าหมายของฉันซึ่งจะช่วยให้การวางนัยทั่วไปเป็นนัยสำคัญ (นี่คือสมมุติฐานของฉัน) ปัญหาคือฉันไม่เห็นวิธีการแก้ปัญหานี้ที่สะอาดมีเอกสารใดบ้างที่พยายามแก้ไขปัญหานี้ (หรือสิ่งที่คล้ายกัน)? ฉันมีความคิดบางอย่างกับข้อเสียที่เป็นไปได้:0003603603600002 π2π2\pi000360360360 ใช้การเปิดใช้งาน sigmoid หรือ tanh ปรับขนาดเป็นช่วง (และรวมคุณสมบัติแบบวงกลมในฟังก์ชันการสูญเสีย ฉันคิดว่าสิ่งนี้จะล้มเหลวอย่างหนักเพราะถ้าอยู่บนเส้นขอบ (การคาดคะเนที่เลวร้ายที่สุด) เพียงเสียงเล็ก ๆ เท่านั้นที่จะผลักดันให้น้ำหนักไปทางใดทางหนึ่ง นอกจากนี้ค่าที่ใกล้กับชายแดนของและจะเข้าถึงได้ยากขึ้นเนื่องจากค่าการเปิดใช้งานแบบสัมบูรณ์จะต้องใกล้เคียงกับอนันต์0 , 2 π)0,2π)0, 2\pi)0002 π2π2\pi ถอยกลับไปที่ค่าสองค่า aและและคำนวณการสูญเสียตามมุมทั้งสองค่าทำ ฉันคิดว่าอันนี้มีศักยภาพมากกว่า แต่บรรทัดฐานของเวกเตอร์นี้ไม่มีขอบเขตซึ่งอาจนำไปสู่ความไม่แน่นอนของตัวเลขและอาจนำไปสู่การระเบิดหรือเป็น 0 ในระหว่างการฝึก สิ่งนี้สามารถแก้ไขได้โดยใช้ regularizer แปลก ๆ เพื่อป้องกันบรรทัดฐานนี้ไม่ให้อยู่ห่างจาก 1 มากเกินไปyxxxyyy ตัวเลือกอื่น ๆ กำลังทำอะไรบางอย่างกับฟังก์ชั่นไซน์และโคไซน์ แต่ฉันรู้สึกเหมือนความจริงที่ว่าแผนที่การเปิดใช้งานล่วงหน้าหลายรายการไปยังเอาต์พุตเดียวกันจะทำให้การเพิ่มประสิทธิภาพและการสรุปทั่วไปทำได้ยากมาก

3
วิธีเพิ่มหมวดหมู่ใหม่ในรูปแบบการเรียนรู้ลึก
สมมติว่าฉันถ่ายโอนการเรียนรู้บนเครือข่ายที่ผ่านการฝึกอบรมมาแล้วเพื่อรับรู้วัตถุ 10 รายการ เพิ่มรายการที่ 11 ที่เครือข่ายสามารถจำแนกได้อย่างไรโดยไม่สูญเสีย 10 หมวดหมู่ทั้งหมดที่ฉันได้รับการฝึกฝนแล้วหรือข้อมูลจากแบบจำลองที่ผ่านการฝึกอบรมมาก่อน เพื่อนบอกฉันว่างานวิจัยที่กำลังเกิดขึ้นในสาขานี้ แต่ฉันไม่สามารถหาเอกสารที่เกี่ยวข้องหรือชื่อที่จะค้นหา? ขอขอบคุณ.

3
ความแตกต่างระหว่าง RNNs การสร้างข้อความที่อิงกับคำและการเขียนคืออะไร?
ในขณะที่อ่านเกี่ยวกับการสร้างข้อความด้วยเครือข่ายประสาทที่เกิดขึ้นอีกฉันสังเกตเห็นว่ามีตัวอย่างบางส่วนที่ถูกนำไปใช้เพื่อสร้างคำแบบข้อความต่อคำและตัวละครอื่น ๆ เป็นตัวละครโดยไม่ได้ระบุว่าทำไม ดังนั้นสิ่งที่เป็นความแตกต่างระหว่างรุ่น RNN ที่คาดการณ์ข้อความต่อคำพื้นฐานและคนที่คาดการณ์ข้อความต่อถ่านพื้นฐาน? การใช้ RNN แบบคำต้องใช้ขนาดคลังใหญ่กว่าหรือไม่? RNN ที่ใช้ถ่านเป็นแบบอย่างที่ดีกว่าหรือไม่? บางทีความแตกต่างเพียงอย่างเดียวคือการป้อนข้อมูล (การเข้ารหัสแบบร้อนแรงหรือการใส่คำศัพท์) รายการใดที่จะเลือกสำหรับการสร้างข้อความ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.