সি (বা সি ++) তে ডেটা সায়েন্স


40

আমি একটি Rভাষা প্রোগ্রামার। আমি এমন লোকদের দলে রয়েছি যারা ডেটা সায়েন্টিস্ট হিসাবে বিবেচিত তবে যারা সিএস ব্যতীত একাডেমিক শাখা থেকে আসে।

এটি ডেটা সায়েন্টিস্ট হিসাবে আমার ভূমিকায় ভালভাবে কাজ করে, তবে আমার ক্যারিয়ার শুরু করে Rএবং কেবলমাত্র অন্যান্য স্ক্রিপ্টিং / ওয়েব ভাষার প্রাথমিক জ্ঞান অর্জন করে আমি 2 টি মূল ক্ষেত্রে কিছুটা অপ্রতুল বোধ করেছি:

  1. প্রোগ্রামিং তত্ত্বের শক্ত জ্ঞানের অভাব।
  2. মত দ্রুত এবং আরো ব্যাপকভাবে ব্যবহৃত ভাষায় দক্ষতা একটি প্রতিযোগিতামূলক স্তর অভাব C, C++এবং Java, যা পাইপলাইন এবং বড় তথ্য কম্পিউটেশন গতি বৃদ্ধি সেইসাথে ডিএস / ডাটা পণ্য যা আরো নির্দ্ধিধায় ফাস্ট মধ্যে উন্নত করা যেতে পারে তৈরি করতে ব্যবহার করা যেতে পারে ব্যাক-এন্ড স্ক্রিপ্ট বা স্বতন্ত্র অ্যাপ্লিকেশন।

সমাধানটি অবশ্যই সহজ - প্রোগ্রামিং সম্পর্কে শিখুন, যা আমি কিছু ক্লাসে (বর্তমানে সি প্রোগ্রামিং) ভর্তি করে যা করেছিলাম।

তবে, এখন যেহেতু আমি উপরের # 1 এবং # 2 সমস্যাগুলি সমাধান করতে শুরু করেছি, আমি নিজেকে জিজ্ঞাসা করে রেখেছি " ডেটা সায়েন্সের মতো ভাষা Cএবং এর C++জন্য ভাষা কতটা কার্যকর ? "?

উদাহরণস্বরূপ, আমি খুব দ্রুত ডেটা সরাতে পারি এবং ব্যবহারকারীদের সাথে ঠিক সূক্ষ্মভাবে ইন্টারেক্ট করতে পারি তবে উন্নত রিগ্রেশন, মেশিন লার্নিং, টেক্সট মাইনিং এবং আরও উন্নত পরিসংখ্যানিক ক্রিয়াকলাপগুলি সম্পর্কে কী বলা যায়?

So. Cকাজটি করতে পারে - উন্নত পরিসংখ্যান, এমএল, এআই এবং ডেটা সায়েন্সের অন্যান্য ক্ষেত্রগুলির জন্য কোন সরঞ্জামগুলি উপলব্ধ? বা স্ক্রিপ্ট বা অন্যান্য ভাষায় Cফোন করে প্রোগ্রামিংয়ের মাধ্যমে অর্জিত দক্ষতার বেশিরভাগ অংশই আমাকে ছেড়ে দিতে হবে R?

সেরা রিসোর্স আমি দূর পর্যন্ত সি পেয়েছি একটি লাইব্রেরি বলা হয় হাঙ্গর , যা দেয় C/ C++সাপোর্ট ভেক্টর মেশিন, রৈখিক নির্ভরণ (না অ রৈখিক এবং MULTINOMIAL probit মত অন্যান্য উন্নত রিগ্রেশন, ইত্যাদি) এবং অন্যান্য একটি বাছাই ব্যবহার করার ক্ষমতা (দুর্দান্ত তবে) পরিসংখ্যান সংক্রান্ত ফাংশন।


5
এই প্রশ্নটি প্রাথমিকভাবে মতামত ভিত্তিক বলে মনে হচ্ছে। অনুগ্রহ করে পুনরায় বিবেচনা করুন। সি / সি ++ এর জন্য কি ধরণের ডেটা বিজ্ঞানের সরঞ্জামগুলি পাওয়া যায় বা কোন ধরণের অ্যাপ্লিকেশনগুলি এই ভাষাগুলি ব্যবহার করে তা জিজ্ঞাসা করুন।
শেলডোনক্রেগার

1
@ শেলডোনক্রেগার এটাই আমি জিজ্ঞাসা করছি, আমি এটিকে আরও পরিষ্কার করব, ধন্যবাদ
হ্যাক-আর

1
আমি বিদ্যমান সি ++ ইঞ্জিনগুলিতে মেশিন লার্নিং অন্তর্ভুক্ত করতে ওয়াফলস (সি ++) ব্যবহার করেছি।
পিট

@ পিট যদি আপনি কোনও উত্তরের সাথে এটি যুক্ত করতে পারেন তবে আমি সমাধান হিসাবে চিহ্নিত করতে পারব
হ্যাক-আর

1
মেটা টুলকিট সি ++ এ উপলব্ধ: মেটা- টলকিট . github.io/meta । কুরসেরাতে একটি কোর্স রয়েছে যা এটি ব্যবহার করে, এটি এখনও সপ্তাহ 1-এ রয়েছে, তাই আপনি একবার দেখে নিতে পারেন। কোর্সটির নাম "পাঠ্য পুনরুদ্ধার এবং অনুসন্ধান ইঞ্জিন"।
লৌরিক

উত্তর:


35

অথবা আর সি স্ক্রিপ্টস বা অন্যান্য ভাষায় ফোন করে সি তে প্রোগ্রামিংয়ের মাধ্যমে অর্জিত দক্ষতার বেশিরভাগ অংশই আমাকে ছেড়ে দিতে হবে?

বিপরীতটি করুন: আর এক্সটেনশানগুলি লিখতে C / C ++ শিখুন। কেবলমাত্র আপনার নতুন অ্যালগরিদমের পারফরম্যান্স সমালোচনামূলক বিভাগগুলির জন্য সি / সি ++ ব্যবহার করুন, আপনার বিশ্লেষণ তৈরি করতে ডেটা আমদানি করুন, প্লট তৈরি করুন ইত্যাদি ব্যবহার করুন use

আপনি যদি আর ছাড়িয়ে যেতে চান তবে আমি অজগর শেখার পরামর্শ দেব। অনেক যেমন প্রাপ্তিসাধ্য লাইব্রেরি হয় scikit-শিখতে মেশিন আলগোরিদিম বা শেখার জন্যে PyBrain (এবং ব্যবহার pylab / নিউরাল নেটওয়ার্ক ইত্যাদি নির্মাণের জন্য matplotlib ষড়যন্ত্র এবং জন্য iPython নোটবুক আপনার বিশ্লেষণ বিকাশ)। আবার সি / সি ++ পাইথন এক্সটেনশন হিসাবে সময় সমালোচনামূলক অ্যালগরিদমগুলি প্রয়োগ করতে কার্যকর।


1
ধন্যবাদ, আন্দ্রে আমি পাইব্রাইন ব্যবহার করি অনেক; আমার জন্য পাইথনটি আর এবং সি এর মধ্যে একটি মাঝের ক্ষেত্র, তবে আমি কোডের গতি এবং বিস্তৃত প্রয়োগের জন্য সি শিখতে চেয়েছিলাম। আমি সমাধান হিসাবে এটি নির্বাচন করেছি কারণ আমি আর এক্সটেনশানগুলি লিখতে সি / সি ++ ব্যবহার করার কথা ভাবিনি, যা সত্যিই দুর্দান্ত ধারণা যা আমি একেবারেই করতে যাচ্ছি। ধন্যবাদ !!
হ্যাক-আর

1
আমি পাইথন শেখার ধারণাকে দ্বিতীয় করেছিলাম। আমি বড় ডেটাসেট এবং ডেটা বিজ্ঞানী সেই ডেটাসেটগুলি বিশ্লেষণ করতে আর ব্যবহার করে কাজ করি। যদিও আমি খুব অল্প বয়সেই সি শিখেছি, পাইথন হ'ল এক ভাষা যা সত্যই আমাকে প্রোগ্রামার হিসাবে মূল্য দেয় এবং এই তথ্য বিজ্ঞানীকে সহায়তা করে। অতএব, নিজেকে নয়, দলের প্রশংসা করার দিকে তাকান।
গ্লেন সোয়ান

1
একইভাবে পাইথনকে সাইথনে লিখে আবার গজানো হয়েছে (আবার মূলত সি)। আমাকে বলতে হবে আমার এখনও এটি ব্যবহার করতে হবে use বিদ্যমান গ্রন্থাগারগুলি ব্যবহার করে খুব কম কাজ করা যায় না (যেমন, সাইকিট-লার্ন, পাইথনে পান্ডাস [যা সিথনে লেখা আছে তাই আপনার দরকার নেই!])।
seanv507

অল্প কিছু পাইথন লাইব্রেরির মধ্যে রয়েছে: পান্ডাস, নাম্পি, স্কিপি ইত্যাদি p অজগর শেখার সমর্থনে এটি যুক্ত করা :)
শাগুন সোধানী

এটি স্পট অন। আমি লক্ষ করব যে আপনার যদি কোনও সিএস ব্যাকগ্রাউন্ড না থাকে তবে আরথের জন্য পাইথন বা প্যাকেজগুলির অন্তর্নিহিত ফাংশনগুলির চেয়ে আপনি কোডটি আরও দক্ষতার সাথে লেখার সুযোগটি বেশ দূরবর্তী। আমি সি ++ এ 13 বছর প্রোগ্রাম করেছি এবং এখনও মনে করি মেমরি পরিচালনা এবং পারফরম্যান্স অপ্টিমাইজেশনের কিছু দিক রয়েছে যা আমি ভালভাবে করতে পারি নি। তদ্ব্যতীত, পাইথন অ্যান্ড আর এর খুব স্মার্ট কম্পিউটার বিজ্ঞানীরা বন্টন সম্পর্কিত বিষয়গুলির অনুকূলকরণ করেছেন, সুতরাং সি ভাষাগুলি সত্যই চূড়ান্ত নিম্ন বিলম্বিত সিস্টেমগুলিতে প্রেরণ করা হবে।
জাগার্টনার

10

আন্দ্রে হলজনার যেমন বলেছেন, সি / সি ++ এক্সটেনশনের সাহায্যে আর প্রসারিত করা উভয় পক্ষের সেরাটির সুবিধা নেওয়ার একটি খুব ভাল উপায়। এছাড়াও আপনি বিপরীতটি চেষ্টা করতে পারেন, সি ++ এর সাথে কাজ করে এবং অনিয়মিতভাবে আরআইএসাইড প্যাকেজ ও আর এর মাধ্যমে আর এর কলিং ফাংশনটি এখানে দেখতে পারেন যে কীভাবে

http://cran.r-project.org/web/packages/RInside/index.html http://dirk.eddelbuettel.com/code/rinside.html

আপনি একবার সি ++ এ কাজ করার পরে আপনার অনেকগুলি লাইব্রেরি থাকে, এর মধ্যে অনেকগুলি নির্দিষ্ট সমস্যার জন্য তৈরি করা হয়, অন্যান্য সাধারণ

http://www.shogun-toolbox.org/page/features/ http://image.diku.dk/shark/sphinx_pages/build/html/index.html

http://mlpack.org/


9

আমি সম্মত হই যে বর্তমান প্রবণতাটি পাইথন / আর ব্যবহার করা এবং গণনাভিত্তিক ব্যয়বহুল কাজের জন্য কিছু সি / সি ++ এক্সটেনশনের সাথে আবদ্ধ করা।

তবে, আপনি যদি সি / সি ++ এ থাকতে চান, আপনি ডলিবের দিকে নজর রাখতে পারেন :

ডিলিব হ'ল একটি সাধারণ উদ্দেশ্য ক্রস-প্ল্যাটফর্ম সি ++ গ্রন্থাগার যা চুক্তি প্রোগ্রামিং এবং আধুনিক সি ++ কৌশল ব্যবহার করে ডিজাইন করা হয়েছে। এটি ওপেন সোর্স সফ্টওয়্যার এবং বুস্ট সফটওয়্যার লাইসেন্সের আওতায় লাইসেন্সযুক্ত।

এখানে চিত্র বর্ণনা লিখুন


আরেকটি অত্যন্ত দরকারী উত্তর। আপনি কি জানেন যে আমাদের যদি সেই চিত্রটি অবাধে পুনরুত্পাদন করার অনুমতি দেওয়া হয় (যদি আমি এটি কোনও উপস্থাপনা বা ব্লগে রাখতে চান তবে)? এছাড়াও, যখন এটি "> 20 কে নমুনা" এর মতো জিনিসগুলি বলে তখন আমি অবাক হই যে এর সত্যিকারের অর্থ "নমুনা" বা "আপনার নমুনায় পর্যবেক্ষণ" আছে কিনা?
হ্যাক-আর

2
আমি dlib লেখক। আপনি যেখানে চান সেখানে এই ছবি পোস্ট করতে নির্দ্বিধায় :)। এছাড়াও,> 20 কে নমুনার অর্থ আপনার 20k ভেক্টর বা যা কিছু আছে। প্রতিটি নমুনায় কতগুলি ভেরিয়েবল হয় তা একটি পৃথক সমস্যা।
ডেভিস কিং

@ হ্যাক-আর "নমুনা" হ'ল পরিসংখ্যান / মেশিন লার্নিংয়ের একটি ওভারলোড হওয়া পদগুলির মধ্যে একটি যেখানে কখনও কখনও এর অর্থ জনসংখ্যা থেকে আঁকা উদাহরণগুলির একটি সেট (যেমন "নমুনার আকার", "নমুনা গড়" ইত্যাদি), এবং কখনও কখনও এটি হয় স্বতন্ত্র দৃষ্টান্তগুলি বোঝায় (যেমন "10 কে নমুনায় শ্রেণিবদ্ধ প্রশিক্ষিত")।
টিম গুডম্যান

6

আমার মতে, আদর্শভাবে, আরও সুদৃ professional় পেশাদার হওয়ার জন্য, সর্বাধিক জনপ্রিয় প্রোগ্রামিং প্যারাডিমগুলির ( পদ্ধতিগত , অবজেক্ট-ওরিয়েন্টেড , ক্রিয়ামূলক ) জন্য কমপক্ষে একটি প্রোগ্রামিং ভাষা জানা ভাল লাগবে । অবশ্যই, আমি আর এবং পাইথনকে ডেটা বিজ্ঞানের জন্য দুটি সর্বাধিক জনপ্রিয় প্রোগ্রামিং ভাষা এবং পরিবেশ হিসাবে বিবেচনা করি এবং তাই প্রাথমিক তথ্য বিজ্ঞানের সরঞ্জামগুলি।

জুলিয়া নির্দিষ্ট দিকগুলিতে চিত্তাকর্ষক, তবে এটি two দুটির সাথে যোগাযোগ করার এবং নিজেকে একটি প্রধান তথ্য বিজ্ঞানের সরঞ্জাম হিসাবে প্রতিষ্ঠিত করার চেষ্টা করে। যাইহোক, আমি এই যে কোনো সময় ঘটছে শীঘ্রই, সহজভাবে কারণে দেখতে না আর / পাইথন এর জনপ্রিয়তা , খুব বড় সম্প্রদায়ের সেইসাথে বিরাট বাস্তুতন্ত্র বিদ্যমান এবং নতুন বিকশিত প্যাকেজ / লাইব্রেরি , এর ডোমেইনের / ক্ষেত্র একটি খুব বিস্তৃত আচ্ছাদন অধ্যয়ন.

এটি বলার পরেও, অনেকগুলি প্যাকেজ এবং লাইব্রেরি, ডেটা সায়েন্স, এমএল এবং এআই অঞ্চলের উপর দৃষ্টি নিবদ্ধ রেখে প্রয়োগ করা হয় এবং / অথবা আর বা পাইথন ব্যতীত অন্য ভাষাগুলিতে এপিআই সরবরাহ করে (প্রমাণের জন্য, এই সজ্জিত তালিকা এবং এই সজ্জিত তালিকাটি দেখুন , উভয়ই চমৎকার এবং ক্ষেত্রের বিভিন্নতা সম্পর্কে একটি দৃ perspective় দৃষ্টিভঙ্গি দিন)। এটি বিশেষত পারফরম্যান্স-ভিত্তিক বা বিশেষায়িত সফ্টওয়্যারগুলির ক্ষেত্রে সত্য। সেই সফ্টওয়্যারটির জন্য, আমি বেশিরভাগ জাভা, সি এবং সি ++ এ বাস্তবায়ন এবং / অথবা এপিআইয়ের প্রকল্পগুলি দেখেছি (জাভা বিশেষত ডেটা সায়েন্সের বিগ ডাটা বিভাগে জনপ্রিয় - হ্যাডোপ এবং এর বাস্তুতন্ত্রের ঘনিষ্ঠতার কারণে - এবং এনএলপিতেবিভাগ), তবে অন্যান্য বিকল্পগুলি অনেক বেশি সীমাবদ্ধ, ডোমেন-ভিত্তিক, সীমাবদ্ধতার জন্য উপলব্ধ available এই ভাষাগুলির কোনওটিই সময়ের অপচয় নয়, তবে আপনার বর্তমান কাজের পরিস্থিতি, প্রকল্পগুলি এবং আগ্রহগুলি নিয়ে আপনার যে কোনও একটিতেও দক্ষতা অর্জনকে অগ্রাধিকার দিতে হবে। সুতরাং, সি / সি ++ (এবং জাভা) এর কার্যকারিতা সম্পর্কে আপনার প্রশ্নের উত্তর দেওয়ার জন্য আমি বলব যে এগুলি সবগুলি কার্যকর , তবে প্রাথমিক তথ্য বিজ্ঞানের সরঞ্জাম হিসাবে নয় , তবে মাধ্যমিক হিসাবে রয়েছে।

1) আপনার প্রশ্নের উত্তর সি হিসেবে সম্ভাব্য তথ্য বিজ্ঞান টুল এবং 2) তার দক্ষতা , আমি যা বলতে চাই: 1) যখন এটি ব্যবহার করা সম্ভব সি তথ্য বিজ্ঞান জন্য, আমি বিরুদ্ধে সুপারিশ করবে , তা করছেন কারণ আপনি একটি খুব আছে চাই সংশ্লিষ্ট গ্রন্থাগারগুলি খুঁজে পেতে বা এমনকি আরও বেশি, নিজের দ্বারা অনুরূপ আলগোরিদিমগুলি প্রয়োগ করার চেষ্টা করা কঠিন সময়; 2) আপনার দক্ষতার বিষয়ে চিন্তা করা উচিত নয়, কোডের অনেকগুলি পারফরম্যান্স-সমালোচনা বিভাগগুলি সি এর মতো নিম্ন-স্তরের ভাষায় প্রয়োগ করা হয়, পাশাপাশি, সি এর সাথে জনপ্রিয় ডেটা বিজ্ঞানের ভাষাগুলির ইন্টারফেস করার বিকল্প রয়েছে (উদাহরণস্বরূপ, Rcppপ্যাকেজ সি / সি ++ এর সাথে একীকরণ আর: http://dirk.eddelbuettel.com/code/rcpp.html)। এটি সরল, তবে প্রায়শই বরং কার্যকরী ছাড়াও, পারফরম্যান্সের দিকে এগিয়ে যায় যেমন R তে ভেক্টরাইজেশনের ধারাবাহিকভাবে ব্যবহারের পাশাপাশি বিভিন্ন সমান্তরাল প্রোগ্রামিং ফ্রেমওয়ার্ক, প্যাকেজ এবং লাইব্রেরি ব্যবহার করে। আর বাস্তুতন্ত্রের উদাহরণগুলির জন্য, CRAN টাস্ক ভিউটি "হাই-পারফরম্যান্স এবং আর এর সাথে সমান্তরাল কম্পিউটিং" দেখুন

ডেটা সায়েন্স সম্পর্কে বলতে গিয়ে , আমি মনে করি যে এই ধারণাটিকে সমর্থন করে প্রজননযোগ্য গবেষণা পদ্ধতির গুরুত্বের পাশাপাশি বিভিন্ন সরঞ্জামের প্রাপ্যতা উল্লেখ করা যথেষ্ট পরিমাণে বুদ্ধিমান হয়েছে (আরও তথ্যের জন্য, দয়া করে আমার প্রাসঙ্গিক উত্তরটি দেখুন )। আমি আশা করি আমার উত্তরটি সহায়ক হবে।


5

আর ডেটা সায়েন্টিস্টের অন্যতম অন্যতম প্রধান সরঞ্জাম যা আপনি কখনও এটি ব্যবহার বন্ধ করবেন না।

এখন সি, সি ++ বা জাভা সম্পর্কে কথা বলছি। তারা ভাল জনপ্রিয় ভাষা। আপনার যেগুলি আরও প্রয়োজন তাদের প্রয়োজন বা আপনার প্রয়োজন কাজ বা প্রজেক্টের ধরণের উপর নির্ভর করে। ব্যক্তিগত অভিজ্ঞতা থেকে, ডেটা সায়েন্টিস্টের জন্য অনেকগুলি সরঞ্জাম রয়েছে যা আপনার সর্বদাই অনুভব করবে যে আপনার অবিচ্ছিন্নভাবে শেখা দরকার।

আপনি চাইলে পাইথন বা মতলবগুলিকে জিনিসগুলিতে যুক্ত করতে পারেন এবং যুক্ত করা চালিয়ে যেতে পারেন। শেখার সর্বোত্তম উপায় হ'ল অন্য সরঞ্জামগুলি ব্যবহার করে কোনও কাজের প্রকল্প গ্রহণ করা যা আপনি স্বাচ্ছন্দ্য বোধ করেন না। আমি যদি আপনি হয় তবে সি এর আগে পাইথন শিখতাম এটি সম্প্রদায়ের সি এর চেয়ে বেশি ব্যবহৃত হয় তবে সি শেখা আপনার সময়ের অপচয় নয়।


আমি জানি আপনি অপ্রতিরোধ্য সংখ্যক সরঞ্জামগুলির অর্থ কী! আমি আমার ইন্টার্নকে বিভ্রান্ত না হওয়ার এবং মাত্র 1 বা 2 জিনিসের দিকে মনোনিবেশ করতে বলি, তবে আমার নিজের পরামর্শ নেওয়া শক্ত।
হ্যাক-আর

5

যখন আপনাকে একটি বিদ্যমান উত্পাদন ইঞ্জিনে মেশিন লার্নিং অন্তর্ভুক্ত করা দরকার তখন ডেটা বিজ্ঞানী হিসাবে অন্যান্য ভাষা (সি ++ / জাভা) কার্যকর হয়।

ওয়াফলস হ'ল উভয়ই সু-রক্ষণাবেক্ষণ করা সি ++ শ্রেণির গ্রন্থাগার এবং কমান্ড-লাইন বিশ্লেষণ প্যাকেজ। এটি তত্ত্বাবধানে এবং নিরীক্ষণযোগ্য শেখা, প্রচুর পরিমাণে ডেটা ম্যানিপুলেশন সরঞ্জাম, স্পার্স ডেটা সরঞ্জাম এবং অডিও প্রসেসিংয়ের মতো অন্যান্য জিনিস পেয়েছে। যেহেতু এটি একটি শ্রেণিবদ্ধ গ্রন্থাগার, তাই আপনি এটি আপনার প্রয়োজনমতো প্রসারিত করতে পারেন। এমনকি আপনি সি ++ ইঞ্জিন বিকাশকারী না হলেও (সম্ভাবনাগুলি আপনি হবেন না), এটি আপনাকে প্রোটোটাইপ, পরীক্ষা করতে এবং বিকাশকারীদের হাতে কিছু হস্তান্তর করতে দেয়।

সর্বাধিক গুরুত্বপূর্ণ, আমি বিশ্বাস করি যে আমার সি ++ এবং জাভা সম্পর্কে জ্ঞান সত্যই পাইথন এবং আর কীভাবে কাজ করে তা বুঝতে আমাকে সহায়তা করে। কোনও ভাষা কেবল তখনই সঠিকভাবে ব্যবহৃত হয় যখন আপনি নীচে কী চলছে সে সম্পর্কে কিছুটা বোঝেন। ভাষার মধ্যে পার্থক্য শিখলে আপনি আপনার মূল ভাষার শক্তি ব্যবহার করতে শিখতে পারেন।

হালনাগাদ

বড় ডেটা সেট সহ বাণিজ্যিক অ্যাপ্লিকেশনগুলির জন্য, অ্যাপাচি স্পার্ক - এমএললিব গুরুত্বপূর্ণ। এখানে আপনি স্কালা, জাভা বা পাইথন ব্যবহার করতে পারেন।


2

আপনার লক্ষ্যটি যদি "তবে উন্নত প্রতিরোধ, মেশিন লার্নিং, টেক্সট মাইনিং এবং আরও উন্নত পরিসংখ্যানমূলক ক্রিয়াকলাপগুলি কী তবে" আপনার কেন অন্য ভাষা প্রয়োজন (পাইথন রূপে পৃথক হতে হবে) তা বুঝতে আগ্রহী।
এই জাতীয় জিনিস জন্য, সি সময় অপচয়। জাভা বেরিয়ে আসার পর থেকে 20 বছরের মধ্যে এটি খুব ভাল সরঞ্জাম, তবে আমি খুব কমই সি কোড করেছিলাম,
আপনি যদি আর এর আরও কার্যকরী-প্রোগ্রামিং দিক পছন্দ করেন, সি এর সাথে কোডিংয়ের মাধ্যমে অনেকগুলি প্রক্রিয়াগত খারাপ অভ্যাসে যাওয়ার আগে স্কালা শিখুন ।
সর্বশেষে হ্যাডলি আপনি Wickham এর লাইব্রেরি ব্যবহার শিখতে - তারা আপনি ডাটা ম্যানিপুলেশন করছেন অনেক সময় সংরক্ষণ করব।


কারণ সি এবং পাইথনের মতো ভাষা সি এর মতো ভাষার তুলনায় খুব ধীর / অদক্ষ Thus সুতরাং প্রচুর ডেটা এবং কম্পিউটেশনের সাথে কথা বলার সময় আপনি যদি সি তে কিছু করতে পারেন তবে আপনি আর-তে এটি করতে পারলে তার চেয়ে দ্রুত হয় I আমি ভালবাসি এবং ব্যবহার করি হ্যাডলির প্যাকেজগুলি!
হ্যাক-আর

2

ROOT https://root.cern.ch/drupal/ , BAT https://www.mppmu.mpg.de/bat/ , boost, বা OpenCV এর মতো পরিসংখ্যান এবং ডেটা বিজ্ঞানের জন্য কিছু সি ++ সরঞ্জাম রয়েছে


অসাধারণ! ধন্যবাদ. আমি কেবল ইচ্ছুক যে তারা প্লেইন সি এর জন্যও ছিল তবে এখনও সহায়ক
হ্যাক-আর

1

এটি এখনও উল্লেখ করা হয়েছে কিনা তা নিশ্চিত নন, তবে স্বরযুক্ত ওয়াবিটও রয়েছে তবে এটি কেবল নির্দিষ্ট ধরণের সমস্যার ক্ষেত্রেই নির্দিষ্ট হতে পারে।


1
বেশ মজার তো. আমি কেবল লিঙ্কটিতে এক নজরে চেয়েছি, তবে উল্লিখিত মডেলগুলির ধরণগুলি অত্যন্ত কার্যকর হবে। এটি কোনও নিয়মিত সি লাইব্রেরি আপনি যদি কোনও প্রোগ্রামে ব্যবহার করতে পারেন তবে? আমাকে আরও তদন্ত করতে হবে।
হ্যাক-আর

0

চলমান ইন্টেল ডিএএল একবার দেখুন । এটি ইন্টেল সিপিইউ আর্কিটেকচারের জন্য অত্যন্ত অনুকূল এবং এটি বিতরণকৃত গণনাগুলিকে সমর্থন করে।


0

বিগ ডেটার জন্য স্কেলেবল মেশিন লার্নিং সলিউশন:

আমি আমার 0 .02 যুক্ত করব কারণ একটি মূল ক্ষেত্র রয়েছে যা মনে হয় আগের সমস্ত পোস্টগুলিতে সম্বোধন করা হয়নি - বড় ডেটাতে মেশিন লার্নিং !

বড় ডেটার জন্য, স্কেলাবিলিটি কী এবং আর অপর্যাপ্ত। তদ্ব্যতীত, পাইথন এবং আর এর মতো ভাষাগুলি কেবলমাত্র স্কেলযোগ্য সমাধানগুলির সাথে ইন্টারফেস করার জন্য দরকারী যা সাধারণত অন্যান্য ভাষায় লেখা হয়। আমি এই পার্থক্যটি এই কারণে করছি না যে আমি তাদের ব্যবহার করা লোকদের তুলনা করতে চাই না, কেবলমাত্র তথ্য বিজ্ঞান সম্প্রদায়ের সদস্যদের জন্য সত্যিকারের স্কেলযোগ্য মেশিন লার্নিং সমাধানগুলি দেখতে কেমন তা বোঝার জন্য এটি এত গুরুত্বপূর্ণ।

আমি আমার বেশিরভাগ কাজ বিতরণ মেমরি ক্লাস্টারে বড় ডেটা দিয়ে করি । এটি, আমি কেবল একটি 16 কোর মেশিন ব্যবহার করি না (একটি মাদারবোর্ডে 4 কোয়াড কোর প্রসেসর that মাদারবোর্ডের স্মৃতি ভাগ করে নেওয়ার জন্য), আমি 64 core 16 কোর মেশিনের একটি ছোট ক্লাস্টার ব্যবহার করি। ভাগ করা মেমরি পরিবেশের চেয়ে এই বিতরণ করা মেমরি ক্লাস্টারের জন্য প্রয়োজনীয়তাগুলি খুব আলাদা এবং বড় ক্ষেত্রে মেশিন লার্নিংয়ের ক্ষেত্রে অনেক ক্ষেত্রে বিতরণযোগ্য মেমরি পরিবেশের মধ্যে স্কেলযোগ্য সমাধান প্রয়োজন।

মালিকানাধীন ডাটাবেস পণ্যের মধ্যে আমরা সর্বত্র সি এবং সি ++ ব্যবহার করি। আমাদের উচ্চ স্তরের সমস্ত জিনিস সি ++ এবং এমপিআইতে পরিচালিত হয়, তবে নিম্ন স্তরের স্টাফগুলি যা ডেটা স্পর্শ করে তা পণ্যটিকে খুব দ্রুত রাখার জন্য সমস্ত লম্বা এবং সি স্টাইলের চরিত্রের অ্যারে থাকে। স্ট্যান্ড স্ট্রিংগুলির সুবিধাদি কেবল গণনা ব্যয়ের জন্য মূল্যবান নয়।

সেখানে না অনেক সি ++ লাইব্রেরি উপলব্ধ যা বিতরণ করা অফার, আকার পরিবর্তনযোগ্য মেশিন ক্ষমতা শেখার - MLPACK

তবে, এপিআই সহ অন্যান্য স্কেলযোগ্য সমাধান রয়েছে:

অ্যাপাচি স্পার্কে এমএলিব নামে একটি স্কেলযোগ্য মেশিন লার্নিং লাইব্রেরি রয়েছে যা আপনি ইন্টারফেস করতে পারবেন।

এছাড়াও টেনসরফ্লো এখন টেনসরফ্লো বিতরণ করেছে এবং এর সি ++ এপিআই রয়েছে

আশাকরি এটা সাহায্য করবে!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.