Реализация нейронных сетей с использованием C против C ++?

0

Я использую Neural Networks, используя язык C для класса. Я не программировал с C++, ни с C в течение длительного времени. Я начал свои первые реализации с использованием языка C, и это была боль в шее! Теперь, я не уверен, что это из-за языка или того, как NN с любым языком? BTW, нам не разрешено использовать ни один набор инструментов или библиотеки NN.

Некоторые люди сказали мне, что это намного проще сделать в C++. Но я нахожусь в очень плотном графике, и, боюсь, я смогу потратить "ценное" время на переход к C++, чтобы узнать, какая польза маргинальна!

Значит, я думал, что ты можешь направить меня на это? Будет ли стоить (эффективность времени разумно) переключиться на C++ или нет?

благодаря

  • 6
    Нейронные сети - довольно продвинутые понятия. Разве вы не должны быть опытным программистом, прежде чем заняться этим? Язык не должен быть камнем преткновения.
  • 0
    Я опытный веб-разработчик. И в моем вопросе нет ничего, связанного со сложностью программирования! Если вы опытный программист, вы должны были знать разницу между этим и сложностью «реализации» с использованием того или иного языка!
Показать ещё 2 комментария
Теги:
neural-network

2 ответа

0
Лучший ответ

Переход на C++ может стоить вашего времени, особенно если вы уже разработали некоторые объектно-ориентированные навыки и понимание (даже если не с языком C++). Однако, если OO вам сложно, переход может принести больше вреда, чем пользы. Это зависит от вас как программиста.

Переход не будет таким сложным, как вы думаете. По-моему, это меньше похоже на изучение нового языка в целом, но вместо этого больше похоже на изучение новых функций на языке. Имейте в виду, что весь написанный вами код C все еще будет компилироваться в C++ (в основном, я думаю? См. Комментарий Kitsune на этот ответ), потому что C++ является почти надмножеством C.

Там нет... прямой выгоды, так сказать. Вы все еще можете решить проблему на C, но C++ и Ориентация объектов могут помочь вам создать лучшее, более доступное и понятное решение, хотя, хотя я не так много знаю о Nueral Networks, я уверен, что некоторые из характеристик может быть аккуратно абстрагирован благодаря ориентации объекта.

Опять же, если OO не ваш пирог, то это может привести к еще большему вам усложнению. Подумайте о своих силах в качестве программиста: не могли бы вы нарисовать диаграмму классов, чтобы выяснить, как все удобно сочетается? У вас есть хорошее понимание и понимание концепций ОО, таких как взаимодействие и абстракция? Если нет, то ОО может принести больше вреда, чем пользы.

  • 2
    C ++ не является строгим надмножеством C, но он довольно близок. Некоторый код C не является допустимым кодом C ++, и компиляторы C ++ обычно немного более анальные, чем компиляторы C (это было одной из причин, по которой GCC переключился с компиляции как C на компиляцию как C ++).
  • 0
    -1 для того, чтобы говорить об ОО (термин, который не имеет четкого значения), не упоминая единственную выгоду или как она может помочь в этом случае.
Показать ещё 1 комментарий
2

Как и любая другая задача программирования (которая не зависит от какой-либо структуры, доступной только на 1 языке), нет волшебного преимущества, получаемого при использовании специального языка для нейронных сетей.

Если вы согласны с тем, что писать код в C++ в целом намного проще, чем писать код на C, то писать код Neural Networks в C++ намного проще, чем писать код Neural Networks в C. Но это тема с высоким уровнем мнения.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню