• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Machine Learning / Robotics / Future Programming langs

Fiszki IT
Fiszki IT
+2 głosów
252 wizyt
pytanie zadane 21 lipca 2019 w Inne języki przez Teslum_369 Gaduła (4,190 p.)

Witam,

Chciałbym zapytać, jaki jest najlepszy / godny uwagi język do Machine learningu, robotyki, sterowników / kontrolerów urządzeń, wspomagania maszyn etc.

Zrobiłem również mały research. Dużo osób poleca pythona lecz dużo jest bajerów tylko pod Linuxa, a bardziej zależy mi na pisaniu dla Windows'a. Jestem głównie programistą C++'a  i robiąc research napotkałem się na różne zdania wobec tego języka. Chciałbym zapytać jak z tym sprawa wygląda, czy da się za pomocą Cpp robić wspomniane rzeczy, czy ma to jakąś przyszłość, etc. Prosiłbym o skomentowanie czy są właśnie jakieś dobre szanse dla C++'a. A może znasz inny ciekawy język do machine learningu i sztucznej  inteligencji? Podziel się ze mną!

 

Pozdrawiam! 

wink

komentarz 21 lipca 2019 przez tkz Nałogowiec (39,540 p.)
Dlaczego C, a nie C++?
komentarz 21 lipca 2019 przez jpacanowski VIP (102,440 p.)
A dlaczego C++, a nie C?
komentarz 21 lipca 2019 przez tkz Nałogowiec (39,540 p.)
Bogatsza biblioteka standardowa. Pierwszy z brzegu argument.

3 odpowiedzi

+1 głos
odpowiedź 21 lipca 2019 przez Eliro Stary wyjadacz (12,160 p.)
Jakie znowu bajery tylko na Linux w Pythonie? W życiu się z czymś takim nie spotkałem.

Python jest językiem wysokiego poziomu. A to oznacza, że możesz w nim napisać jakiś program bez zagłębiania się w szczegóły "Dlaczego to tak działa?". Pozwala to zaoszczędzić mnóstwo czasu i wysiłku, co sprawia że Python jest popularnym językiem jeśli chodzi o Machine Learning i to z nim widziałem najwięcej ofert pracy w tym kierunku. Możesz napisać w pojedynkę skomplikowane programy, do których napisania w innym języku potrzebowałbyś znacznie więcej czasu lub ludzi.

Języki z rodziny C już są językami trochę niższego poziomu. To z kolei oznacza, że musisz wiedzieć czemu coś działa tak, a nie inaczej. Niestety efektem jest to, że musisz więcej czasu spędzić na pisaniu kodu oraz włożyć w to więcej wysiłku. Jednak programy napisane w C++ będą wydajniejsze.

Wymieniłeś dużo zastosowań, więc trudno jest coś konkretnego polecić. Do robotyki masz C i Assembler (Arduino i mikrokontrolery), ewentualnie komputery typu Raspberry Pi - do obsługi portów GPIO używa się Pythona lub C. Sterowniki urządzeń - PLC.

Ja osobiście wybrałem Pythona do Machine Learningu.
komentarz 21 lipca 2019 przez Sebek421 Nowicjusz (130 p.)

@Eliro,  bez Linuxa (cmd) nie da się zainstalować plików potrzebnych do Voice Recognition

(nie ma takich komend w windosowym cmd-eku)

 

komentarz 21 lipca 2019 przez Eliro Stary wyjadacz (12,160 p.)
Powiedz z jakimi plikami masz problem. Jesteś pewien, że nie zainstalujesz potrzebnych modułów poprzez polecenie "pip"?
komentarz 21 lipca 2019 przez Sebek421 Nowicjusz (130 p.)
Jeżeli masz na to sposób chętnie przeczytam, pip nie działa w windosowym cmd ani powershell'u
komentarz 21 lipca 2019 przez Eliro Stary wyjadacz (12,160 p.)
Jesteś pewien, że podczas instalacji Pythona dodałeś tak zwaną "zmienną środowiskową"? Pozwala to właśnie używać w Windowsowym cmd takich komend jak "python" albo "pip". Ja programuję w Pythonie z poziomu Windowsa i problemów nie mam.
+1 głos
odpowiedź 21 lipca 2019 przez DragonCoder Nałogowiec (36,520 p.)

Chciałbym zapytać, jaki jest najlepszy / godny uwagi język do Machine learningu, robotyki, sterowników / kontrolerów urządzeń, wspomagania maszyn etc.

Robotyka to szeroko pojmowana dziedzina, wiec zalezy co masz dokladnie na mysli. Oprogramowanie, typu rozpoznawanie twarzy, czy interakcja, a moze oprogramowanie do sterowania itd itp. Zreszta nie ma takiego jezyka, ktory laczy by wszystko i jesli ktos napisze, python bo mozesz w nim napisac wszystko, no to sie myli. (nie myli sie, ze napisze wszystko, bo w c++ tez da sie pisac ai. Chodzi tu raczej o sens uzywania danego języka). Glownie w AI wykorzystuje sie pythona, R. Do robotyki nizszy poziom, czyli kontrolery to zazwyczaj w dalszym ciagu C/C++, ale raczej wiekszosc w C, tak samo sterowniki.

Co oznacza wspomaganie maszyn?

Prosiłbym o skomentowanie czy są właśnie jakieś dobre szanse dla C++'a.

Skoro masz już kolo (python), to po co chcesz je wynaleźć na nowo? Pythona ma sporo liczbe libel do AI, wiec wybierz pythona zamiast meczyc sie w C++.

Chciałbym zapytać jak z tym sprawa wygląda, czy da się za pomocą Cpp robić wspomniane rzeczy, czy ma to jakąś przyszłość, etc.

Da sie, przyszłościowo nie jestem przekonany. 

A teraz najrozsadniejsze podejscie do problemu, to nauka w dalszym ciagu C++(C) i Pythona/R, skoro chcesz pojsc w stronie sztucznej inteligencji

komentarz 21 lipca 2019 przez Teslum_369 Gaduła (4,190 p.)
Dziękuję za twoją odpowiedź!

Czyli polecasz, abym pisał w obu językach lecz bardziej skupił się na Wężu?
komentarz 21 lipca 2019 przez DragonCoder Nałogowiec (36,520 p.)
To zalezy na co kładziesz nacisk, jezeli chcesz pozniej pracowac w branzy AI, big data etc. to wybierz Pythona. Ale jezeli bardziej interesuje Cie dlubanie przy tym robocie, zabawa z sensorami i noce zarwane na udoskonalaniu algorytmow to wybierz C++ (chodzo tu o obejście sie z sensorami, by ich pomiary byly jak najlepsze itp). Ja osobiście wole dlubac przy robocie, wiec wybrałbym C++.

 

Ale jezeli kiedys i tak pewnie staniesz przed wyborem, jezeli nie ma to byc tylko hobby, czy chcesz bawic sie mikrokontrolerami i byc odpowiedzialny za ta widzialna czesc robota, czy chcesz nyc odpowiedzialny np za soft rozpoznawania twarzy
0 głosów
odpowiedź 21 lipca 2019 przez mokrowski VIP (145,460 p.)
1. Odklej się od MS Windows. W tym sensie że nie powinien być on Twoim jedynym systemem. Zarzut (niejawny), "dlaczego wszystko jest na GNU/Linux", to stwierdzenie faktu że w tym środowisku i łatwiej rozwijać oprogramowanie i łatwiej je osadzić w dużych lub bardzo dużych instalacjach.

2. Na pierwszy ogień, Python. Później C++/C. W zależności w co będziesz wnikał, albo pozostaniesz na języku Python (bo analiza danych, bo AI itp), lub zejdziesz niżej do C++/C (bo czas rzeczywisty, bo CUDA/OpenCL itp.)

3. Język to tylko narzędzie. Porzuć wszelką nadzieję że będziesz znał 1 i "po 25 latach pracy" przejdziesz z nim na emeryturę. Oczywiście może się tak zdarzyć, ale to raczej mało rozsądny cel kariery.

Podobne pytania

0 głosów
3 odpowiedzi 110 wizyt
+1 głos
1 odpowiedź 186 wizyt
+1 głos
1 odpowiedź 243 wizyt
pytanie zadane 10 grudnia 2018 w Inne języki przez smokolisz Mądrala (6,370 p.)
Porady nie od parady
Publikując kody źródłowe korzystaj ze specjalnego bloczku koloryzującego składnię (przycisk z napisem code w edytorze). Nie zapomnij o ustawieniu odpowiedniego języka z rozwijanego menu oraz czytelnym formatowaniu kodu.Przycisk code

84,746 zapytań

133,553 odpowiedzi

295,968 komentarzy

56,007 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...