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

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

5
การตรวจจับแมวด้วยสายตาโดยการตรวจจับความผิดปกติ
ฉันมีโครงการงานอดิเรกที่ฉันคิดจะทำเพื่อเพิ่มประสบการณ์การเรียนรู้ของเครื่องจักรที่ จำกัด ฉันใช้ Coursera MOOC ไปแล้วในหัวข้อนี้ คำถามของฉันเกี่ยวกับความเป็นไปได้ของโครงการ ภารกิจมีดังต่อไปนี้: เพื่อนบ้านแมวมาเยี่ยมสวนของฉันเป็นครั้งคราวซึ่งฉันไม่ชอบเพราะพวกเขามักจะถ่ายอุจจาระบนสนามหญ้าของฉัน ฉันต้องการระบบเตือนที่แจ้งเตือนฉันเมื่อมีแมวอยู่เพื่อที่ฉันจะได้ไล่มันออกไปโดยใช้ super soaker ของฉัน เพื่อความเรียบง่ายบอกว่าฉันแค่ดูแลแมวที่มีสีดำและสีขาว ฉันได้ติดตั้งราสเบอร์รี่ pi พร้อมโมดูลกล้องที่สามารถจับภาพวิดีโอและ / หรือรูปภาพของส่วนหนึ่งของสวน ภาพตัวอย่าง: ความคิดแรกของฉันคือการฝึกลักษณนามเพื่อระบุวัตถุแมวหรือแมว แต่หลังจากทราบว่าฉันจะไม่สามารถรับตัวอย่างเชิงบวกจำนวนมากได้ ฉันคาดว่าถ้าฉันถ่ายภาพทุก ๆ วันฉันจะได้รูปแมวที่มีแมวห้าภาพ (ประมาณ 60,000 กับแสงอาทิตย์) ต่อวัน สิ่งนี้เป็นไปได้โดยใช้การตรวจจับความผิดปกติหรือไม่? ถ้าเป็นเช่นนั้นคุณสมบัติอะไรที่คุณจะแนะนำ? ความคิดของฉันคือการนับจำนวนพิกเซลด้วยสีที่แน่นอน ทำการตรวจจับหยด / การแบ่งส่วนภาพบางส่วน (ซึ่งฉันไม่ทราบว่าจะทำอย่างไรและต้องการหลีกเลี่ยง) และทำการวิเคราะห์สีแบบเดียวกันกับพวกมัน

1
พารามิเตอร์ validation_split ของฟังก์ชัน fit ของ Keras ทำงานอย่างไร
การตรวจสอบแยกใน Keras ลำดับฟังก์ชั่นรุ่นพอดีเป็นเอกสารดังต่อไปนี้ในhttps://keras.io/models/sequential/ : validation_split: ลอยระหว่าง 0 และ 1 เศษส่วนของข้อมูลการฝึกอบรมที่จะใช้เป็นข้อมูลการตรวจสอบ แบบจำลองจะแยกส่วนของข้อมูลการฝึกอบรมนี้จะไม่ฝึกอบรมและจะประเมินการสูญเสียและตัวชี้วัดแบบจำลองใด ๆ กับข้อมูลนี้ในตอนท้ายของแต่ละยุค ข้อมูลการตรวจสอบความถูกต้องถูกเลือกจากตัวอย่างสุดท้ายในข้อมูล x และ y ที่ให้ไว้ก่อนที่จะสับ โปรดสังเกตบรรทัดสุดท้าย: ข้อมูลการตรวจสอบความถูกต้องถูกเลือกจากตัวอย่างสุดท้ายในข้อมูล x และ y ที่ให้ไว้ก่อนที่จะสับ หมายความว่าข้อมูลการตรวจสอบความถูกต้องคงที่และนำมาจากด้านล่างของชุดข้อมูลหลักหรือไม่? มีวิธีใดบ้างที่จะสามารถทำการสุ่มเลือกสัดส่วนของข้อมูลจากชุดข้อมูลหลักได้?

2
เหตุใดจึงต้องใช้ทั้งชุดการตรวจสอบและชุดการทดสอบ
พิจารณาโครงข่ายประสาทเทียม: สำหรับชุดข้อมูลที่กำหนดเราแบ่งเป็นชุดฝึกอบรมตรวจสอบและทดสอบ สมมติว่าเราทำในอัตราส่วน 60:20:20 คลาสสิคจากนั้นเราป้องกันการ overfitting โดยตรวจสอบความถูกต้องของเครือข่ายโดยตรวจสอบในชุดการตรวจสอบความถูกต้อง ถ้าอย่างนั้นจำเป็นต้องทำการทดสอบอะไรในชุดทดสอบเพื่อตรวจสอบประสิทธิภาพ? ข้อผิดพลาดในชุดทดสอบจะค่อนข้างเหมือนกับชุดการตรวจสอบความถูกต้องสำหรับเครือข่ายเป็นข้อมูลที่มองไม่เห็นเหมือนกับชุดการตรวจสอบความถูกต้องและทั้งสองอย่างมีจำนวนเท่ากันหรือไม่ เราไม่สามารถเพิ่มชุดฝึกอบรมได้โดยรวมชุดทดสอบเข้าด้วยกันเพื่อให้เรามีข้อมูลการฝึกอบรมมากขึ้นและเครือข่ายฝึกอบรมได้ดีขึ้นจากนั้นใช้ชุดการตรวจสอบเพื่อป้องกันการ overfitting? ทำไมเราไม่ทำเช่นนี้?

4
"กฏเกณฑ์ง่ายๆ" ในจำนวนของคุณสมบัติกับจำนวนอินสแตนซ์? (ชุดข้อมูลขนาดเล็ก)
ฉันสงสัยว่าถ้ามีฮิวริสติกเกี่ยวกับคุณลักษณะหลายอย่างกับจำนวนการสังเกต เห็นได้ชัดว่าถ้าคุณสมบัติจำนวนหนึ่งเท่ากับจำนวนการสังเกตแบบจำลองจะพอดี โดยใช้วิธีการกระจัดกระจาย (LASSO, elastic net) เราสามารถลบคุณลักษณะต่าง ๆ เพื่อลดแบบจำลองได้ คำถามของฉันคือ (ในทางทฤษฎี): ก่อนที่เราจะใช้ตัวชี้วัดเพื่อประเมินการเลือกแบบจำลองจะมีข้อสังเกตเชิงประจักษ์ใดบ้างที่เกี่ยวข้องกับจำนวนคุณลักษณะที่เหมาะสมที่สุดกับจำนวนการสังเกต? ตัวอย่างเช่น: สำหรับปัญหาการจำแนกเลขฐานสองที่มี 20 อินสแตนซ์ในแต่ละชั้นจะมีขีด จำกัด บนของจำนวนคุณสมบัติที่จะใช้หรือไม่?

3
วิธีการคำนวณหน่วยความจำ mini-batch มีผลกระทบอย่างไรเมื่อฝึกอบรมโมเดลการเรียนรู้ลึก
ฉันพยายามคำนวณจำนวนหน่วยความจำที่ GPU ต้องการในการฝึกอบรมโมเดลของฉันโดยอ้างอิงจากบันทึกนี้จาก Andrej Karphaty: http://cs231n.github.io/convolutional-networks/#computational-considerations เครือข่ายของฉันมีการเปิดใช้งาน 532,752 รายการและพารามิเตอร์ 19,072,984 รายการ (น้ำหนักและอคติ) นี่คือค่าลอย 32 บิตดังนั้นแต่ละค่าใช้เวลา 4 ไบต์ในหน่วยความจำ ภาพอินพุตของฉันคือ 180x50x1 (กว้าง x สูง x ลึก) = 9,000ค่าลอย 32 ฉันไม่ได้ใช้การเพิ่มรูปภาพดังนั้นฉันคิดว่าหน่วยความจำเบ็ดเตล็ดจะเกี่ยวข้องกับขนาดมินิแบทช์เท่านั้น ฉันใช้มินิแบทช์ขนาด 128 ภาพ ตามคำแนะนำของ Andrej ฉันได้รับขนาดหน่วยความจำต่อไปนี้: การเปิดใช้งาน: 532,752 * 4 / (1024 ^ 2) = 2.03 MB พารามิเตอร์: 19,072,984 * 4 / …

2
แนะนำภาพยนตร์ที่มีคุณสมบัติเพิ่มเติมโดยใช้การกรองร่วมกัน
ฉันกำลังพยายามสร้างระบบการแนะนำโดยใช้การกรองร่วมกัน ฉันมี[user, movie, rating]ข้อมูลปกติ ฉันต้องการรวมคุณสมบัติเพิ่มเติมเช่น 'ภาษา' หรือ 'ระยะเวลาของภาพยนตร์' ฉันไม่แน่ใจว่าเทคนิคใดที่ฉันสามารถใช้สำหรับปัญหาดังกล่าว กรุณาแนะนำการอ้างอิงหรือแพคเกจในหลาม / R

2
วิธีเพิ่มความแม่นยำของตัวจําแนก
ฉันใช้ตัวอย่าง OpenCV letter_recog.cpp เพื่อทดลองบนต้นไม้แบบสุ่มและตัวแยกประเภทอื่น ๆ ตัวอย่างนี้มีการใช้งานของตัวแยกประเภทหกตัว - ต้นไม้แบบสุ่ม, การส่งเสริม, MLP, kNN, ไร้เดียงสา Bayes และ SVM ชุดข้อมูลการรู้จำจดหมาย UCI ที่มีอินสแตนซ์ 20,000 ตัวและมีฟีเจอร์ 16 ตัวซึ่งฉันแบ่งครึ่งสำหรับการฝึกอบรมและการทดสอบ ฉันมีประสบการณ์กับ SVM ดังนั้นฉันจึงตั้งค่าข้อผิดพลาดการรู้จำเป็น 3.3% หลังจากการทดลองสิ่งที่ฉันได้รับคือ: การรับรู้จดหมาย UCI: RTrees - 5.3% เพิ่ม - 13% MLP - 7.9% kNN (k = 3) - 6.5% เบย์ - 11.5% SVM - 3.3% …

5
เลือกอัลกอริทึมการจำแนกประเภทไบนารี
ฉันมีปัญหาการจำแนกเลขฐานสอง: ประมาณ 1,000 ตัวอย่างในชุดฝึกอบรม 10 คุณลักษณะรวมถึงไบนารีตัวเลขและหมวดหมู่ อัลกอริทึมใดเป็นตัวเลือกที่ดีที่สุดสำหรับปัญหาประเภทนี้ โดยค่าเริ่มต้นฉันจะเริ่มต้นด้วย SVM (เบื้องต้นมีค่าแอตทริบิวต์เล็กน้อยแปลงเป็นคุณสมบัติไบนารี) เนื่องจากถือว่าดีที่สุดสำหรับข้อมูลที่ค่อนข้างสะอาดและไม่มีเสียงดัง

1
Deep Neural Network - Backpropogation ด้วย ReLU
ฉันมีปัญหาในการได้รับการเผยแพร่กลับด้วย ReLU และฉันทำงานบางอย่าง แต่ฉันไม่แน่ใจว่าฉันกำลังถูกทาง ฟังก์ชันต้นทุน:โดยที่คือค่าจริงและเป็นค่าที่คาดการณ์ไว้ นอกจากนี้สมมติว่า > 0 เสมอ12(y−y^)212(y−y^)2\frac{1}{2}(y-\hat y)^2yyyy^y^\hat yxxx 1 Layer ReLU โดยที่น้ำหนักที่ชั้นที่ 1 คือw1w1w_1 dCdw1=dCdRdRdw1dCdw1=dCdRdRdw1\frac{dC}{dw_1}=\frac{dC}{dR}\frac{dR}{dw_1} dCw1=(y−ReLU(w1x))(x)dCw1=(y−ReLU(w1x))(x)\frac{dC}{w_1}=(y-ReLU(w_1x))(x) 2 Layer ReLU โดยที่ตุ้มน้ำหนักที่ชั้นที่ 1 คือและชั้นที่สองคือและฉันต้องการอัปเดตชั้นที่ 1w2w2w_2w1w1w_1w2w2w_2 dCdw2=dCdRdRdw2dCdw2=dCdRdRdw2\frac{dC}{dw_2}=\frac{dC}{dR}\frac{dR}{dw_2} dCw2=(y−ReLU(w1∗ReLU(w2x))(w1x)dCw2=(y−ReLU(w1∗ReLU(w2x))(w1x)\frac{dC}{w_2}=(y-ReLU(w_1*ReLU(w_2x))(w_1x) ตั้งแต่ReLU(w1∗ReLU(w2x))=w1w2xReLU(w1∗ReLU(w2x))=w1w2xReLU(w_1*ReLU(w_2x))=w_1w_2x 3 Layer ReLU โดยที่ตุ้มน้ำหนักที่ชั้นที่ 1 คือ , 2nd layer w 2และ 3rd layer w 1w3w3w_3w2w2w_2w1w1w_1 dCdw3=dCdRdRdw3dCdw3=dCdRdRdw3\frac{dC}{dw_3}=\frac{dC}{dR}\frac{dR}{dw_3} dCw3=(y−ReLU(w1∗ReLU(w2(∗ReLU(w3)))(w1w2x)dCw3=(y−ReLU(w1∗ReLU(w2(∗ReLU(w3)))(w1w2x)\frac{dC}{w_3}=(y-ReLU(w_1*ReLU(w_2(*ReLU(w_3)))(w_1w_2x) ตั้งแต่ReLU(w1∗ReLU(w2(∗ReLU(w3))=w1w2w3xReLU(w1∗ReLU(w2(∗ReLU(w3))=w1w2w3xReLU(w_1*ReLU(w_2(*ReLU(w_3))=w_1w_2w_3x เนื่องจากกฎลูกโซ่ใช้เวลาเพียง 2 อนุพันธ์เมื่อเทียบกับ …

5
ทำให้แผนที่ความร้อนของทะเลใหญ่ขึ้น
ฉันสร้างcorr()df จาก df ดั้งเดิม corr()DF ออก 70 X 70 มาและมันเป็นไปไม่ได้ที่จะเห็นภาพ heatmap ส sns.heatmap(df)... ถ้าฉันพยายามที่จะแสดงcorr = df.corr()ตารางที่ไม่พอดีกับหน้าจอและฉันสามารถดูความสัมพันธ์ทั้งหมด มันเป็นวิธีที่จะพิมพ์ทั้งdfโดยไม่คำนึงถึงขนาดของมันหรือเพื่อควบคุมขนาดของ heatmap หรือไม่?
17 visualization  pandas  plotting  machine-learning  neural-network  svm  decision-trees  svm  efficiency  python  linear-regression  machine-learning  nlp  topic-model  lda  named-entity-recognition  naive-bayes-classifier  association-rules  fuzzy-logic  kaggle  deep-learning  tensorflow  inception  classification  feature-selection  feature-engineering  machine-learning  scikit-learn  tensorflow  keras  encoding  nlp  text-mining  nlp  rnn  python  neural-network  feature-extraction  machine-learning  predictive-modeling  python  r  linear-regression  clustering  r  ggplot2  neural-network  neural-network  training  python  neural-network  deep-learning  rnn  predictive-modeling  databases  sql  programming  distribution  dataset  cross-validation  neural-network  deep-learning  rnn  machine-learning  machine-learning  python  deep-learning  data-mining  tensorflow  visualization  tools  sql  embeddings  orange  feature-extraction  unsupervised-learning  gan  machine-learning  python  data-mining  pandas  machine-learning  data-mining  bigdata  apache-spark  apache-hadoop  deep-learning  python  convnet  keras  aggregation  clustering  k-means  r  random-forest  decision-trees  reference-request  visualization  data  pandas  plotting  neural-network  keras  rnn  theano  deep-learning  tensorflow  inception  predictive-modeling  deep-learning  regression  sentiment-analysis  nlp  encoding  deep-learning  python  scikit-learn  lda  convnet  keras  predictive-modeling  regression  overfitting  regression  svm  prediction  machine-learning  similarity  word2vec  information-retrieval  word-embeddings  neural-network  deep-learning  rnn 

4
ประโยชน์ของการแยกไฟล์ tfrecord ออกมาคืออะไร?
ฉันกำลังทำงานเกี่ยวกับการจดจำเสียงด้วย Tensorflow และวางแผนที่จะฝึกอบรม LSTM NN ด้วยชุดข้อมูลคลื่นขนาดใหญ่ เนื่องจากประสิทธิภาพที่เพิ่มขึ้นฉันวางแผนที่จะใช้ tfrecords มีตัวอย่างหลายอย่างในอินเทอร์เน็ต (Inception for ex.) ที่ไฟล์ tfrecords ถูกแบ่งออกเป็นเศษ คำถามของฉันคืออะไรประโยชน์ของการมีไฟล์ tfrecords เป็นชิ้น? มีการเพิ่มประสิทธิภาพใด ๆ ของการแยกนี้หรือไม่?

5
ผสานข้อมูลที่เบาบางและหนาแน่นในการเรียนรู้ของเครื่องเพื่อปรับปรุงประสิทธิภาพ
ฉันมีคุณสมบัติเบาบางซึ่งสามารถคาดเดาได้และฉันยังมีคุณสมบัติที่หนาแน่นซึ่งสามารถคาดเดาได้ ฉันต้องรวมคุณสมบัติเหล่านี้เข้าด้วยกันเพื่อปรับปรุงประสิทธิภาพโดยรวมของตัวจําแนก ตอนนี้สิ่งที่เกิดขึ้นคือเมื่อฉันพยายามรวมสิ่งเหล่านี้เข้าด้วยกันคุณลักษณะที่หนาแน่นมีแนวโน้มที่จะครอบงำมากกว่าคุณสมบัติเบาบางดังนั้นจึงทำให้การปรับปรุง AUC เพียง 1% เมื่อเทียบกับรุ่นที่มีคุณสมบัติที่หนาแน่นเท่านั้น มีใครบางคนเจอปัญหาที่คล้ายกัน? ชื่นชมอินพุตที่ติดอยู่จริงๆ ฉันได้ลองตัวแยกประเภทที่แตกต่างกันจำนวนมากการรวมกันของตัวแยกประเภทการแปลงคุณสมบัติและการประมวลผลด้วยอัลกอริทึมที่แตกต่างกัน ขอบคุณล่วงหน้าสำหรับความช่วยเหลือ แก้ไข : ฉันได้ลองใช้คำแนะนำที่ให้ไว้ในความคิดเห็นแล้ว สิ่งที่ฉันสังเกตคือเกือบ 45% ของข้อมูลคุณสมบัติเบาบางทำงานได้ดีจริง ๆ ฉันได้รับ AUC ประมาณ 0.9 ด้วยฟีเจอร์เบาบางเท่านั้น แต่สำหรับคุณสมบัติที่หนาแน่นที่เหลืออยู่นั้นทำงานได้ดีกับ AUC ประมาณ 0.75 ฉันพยายามแยกชุดข้อมูลเหล่านี้ออก แต่ฉันได้รับ AUC เท่ากับ 0.6 ดังนั้นฉันจึงไม่สามารถฝึกอบรมโมเดลและตัดสินใจว่าจะใช้ฟีเจอร์ใด เกี่ยวกับข้อมูลโค้ดฉันได้ลองหลายสิ่งหลายอย่างแล้วซึ่งฉันไม่แน่ใจว่าจะแชร์สิ่งใดกันแน่ :(

2
เราควรใช้การทำให้เป็นมาตรฐานเพื่อทดสอบข้อมูลด้วยหรือไม่
ฉันกำลังทำโครงการเกี่ยวกับปัญหาการระบุผู้แต่ง ฉันใช้การปรับมาตรฐาน tf-idf เพื่อฝึกอบรมข้อมูลแล้วฝึก svm กับข้อมูลนั้น ตอนนี้เมื่อใช้ตัวจําแนกฉันควรทำให้ข้อมูลทดสอบเป็นปกติ ฉันรู้สึกว่าเป้าหมายพื้นฐานของการทำให้เป็นมาตรฐานคือการทำให้การเรียนรู้เพิ่มน้ำหนักให้กับคุณสมบัติที่สำคัญกว่าขณะเรียนรู้ ดังนั้นเมื่อมีการฝึกอบรมแล้วจะรู้ว่าคุณสมบัติใดมีความสำคัญซึ่งไม่ได้ ดังนั้นจำเป็นที่จะต้องใช้การทำให้เป็นมาตรฐานเพื่อทดสอบข้อมูลด้วยหรือไม่? ฉันยังใหม่กับสาขานี้ ดังนั้นโปรดเพิกเฉยหากคำถามนั้นโง่?

4
ตอนนี้แพนด้าเร็วกว่า data.table หรือไม่
https://github.com/Rdatatable/data.table/wiki/Benchmarks-%3A-Grouping มาตรฐานที่ data.table ยังไม่ได้รับการปรับปรุงตั้งแต่ปี 2014 ผมได้ยินมาว่าที่ใดที่หนึ่งคือตอนนี้เร็วกว่าPandas data.tableมันเป็นเรื่องจริงเหรอ? มีใครทำเปรียบเทียบบ้างไหม? ฉันไม่เคยใช้ Python มาก่อน แต่จะพิจารณาเปลี่ยนหากpandasสามารถเอาชนะได้data.tableหรือไม่
17 python  r  pandas  data  data.table 

3
กำลังมองหาแพ็คเกจที่ดีสำหรับการตรวจจับความผิดปกติในอนุกรมเวลา
มีแพ็คเกจโอเพ่นซอร์สที่ครอบคลุม (โดยเฉพาะอย่างยิ่งใน python หรือ R) ที่สามารถใช้สำหรับการตรวจจับความผิดปกติในอนุกรมเวลาหรือไม่? มีแพ็คเกจ SVM หนึ่งคลาสใน scikit-Learn แต่ไม่ใช่สำหรับข้อมูลอนุกรมเวลา ฉันกำลังมองหาแพ็คเกจที่มีความซับซ้อนมากขึ้นตัวอย่างเช่นใช้เครือข่ายแบบเบย์เพื่อตรวจจับสิ่งผิดปกติ

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