Отговори на тема  [ 51 мнения ]  Отиди на страница Предишна  1, 2, 3, 4
Deep learning development stick for embedded AI applications 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Ное 06, 2018 4:18 pm
Мнения: 1188
Мнение Re: Deep learning development stick for embedded AI applicat
ps66 написа:
така че класификатора ми е още под разработка :( … още се колебая и кои "фичъри" да ползвам :)

При SensiML използват binary tree search, а за питона - явно не го познаваш добре.


Пет Юни 14, 2019 7:45 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Дек 14, 2004 12:31 pm
Мнения: 3284
Мнение Re: Deep learning development stick for embedded AI applicat
Модата с питна тръгна от необходимостта за качествен crawling и scrapping и последващото обработване на изображенията. В крайна сметка 80% от цялата ML наука е генерирането на качествени dataset-ове. А тук питона улеснява много с брезбройните си готови модули като Scrapy/GoogleScrapper. После Google се решиха да интегрират Keras в Tensorflow и питона стана цар. Съдейки по дискусиите в Kaggle и TDS това няма да се промени скоро. Това на високо ниво разбира се. Tool-овете се пишат на C/++ все още :)


Пет Юни 14, 2019 8:00 am
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Яну 19, 2007 8:16 am
Мнения: 1063
Местоположение: путинофили: "иди н***й"
Мнение Re: Deep learning development stick for embedded AI applicat
HCL написа:
Модата с питна тръгна от необходимостта за качествен crawling и scrapping и последващото обработване на изображенията. В крайна сметка 80% от цялата ML наука е генерирането на качествени dataset-ове. А тук питона улеснява много с брезбройните си готови модули като Scrapy/GoogleScrapper. После Google се решиха да интегрират Keras в Tensorflow и питона стана цар. Съдейки по дискусиите в Kaggle и TDS това няма да се промени скоро. Това на високо ниво разбира се. Tool-овете се пишат на C/++ все още :)


проблема ми с питона е ... че пак се опира до C/C++ и е напълно безполезно и ненадежно (за мен) да го ползваш при положение, че всички обработки са на C/C++. а да вградя в мое приложение питон java или нещо интерпредиращо - никога :)

за писанее на дисертации от PhD е идеален :)

наскоро един мой клиент PhD от щатски университет, ми беше изпратил 10-на забележки към мой софтуер. всички забележки бяха към интерфейса (бутони, менюта и т.н) ... защото го управлявал от питонски скрип разпознавайки бутони изображения (имам и камера-микроскоп) и тн.
Искаше всичката статус информация да бъде видима, за да може да я разпознава визуално с питон скрипт :)
(почти всичко му го направих - защото ме впечатли с нестандартния си подход към проблема :))

т.е. използва ми софтуера чрез потребителския интерфейс управлявайки го през питонски скрипт - целта да автоматизира процес, който е доста времеотнемащ (2D трансформация на векторно изображение - с над 200-300 контролни точки) и се извършва от оператор (така съм го предвидил) и е за производство в малки серии ... :)

(беше ми изпратил и скрипта за да видя проблемите му - но така и не го разгледах!)

така че питона е доста мощно средство (ако имаш наличните библиотеки), но за мен си остава вариант за екзотични приложение.


Пет Юни 14, 2019 8:35 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 10:53 pm
Мнения: 4174
Местоположение: Brussels / Пловдив
Мнение Re: Deep learning development stick for embedded AI applicat
Проблемът с питона е, че не можеш да го търкаляш в браузърите - там царя е JS ... и последните години след появата на node.js единственото предимство на питона остана набраната инерция.

Чисто технически е абсолютно все едно на кой бавен динамичен език ще пишеш юзер интерфейс и ще напасваш чужди библиотеки (java, .net, python, js, ruby, scala и т.н.) - при тях няма по хубав, има само по лош :D

Та решението на кой калпав език да заложиш вече не е толкова техничарско и свързано с възможностите на езика колкото е свързано с това колко му е голямо комюнитито, къде можеш да го изпълняваш, колко готови библиотеки можеш да ползваш и не на последно място в коя сфера са заложили на него а не на друг.

Когато трябва да се изтиска максимума от хардуера езиците са съвсем други и там все още C/C++ си остава най читавото решение. Rust е интересен и дано да се наложи, че иначе ще продължим да си пишем на 40+ годишното C ... :)

_________________
Мразя да мразя ...


Пет Юни 14, 2019 9:38 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Ное 06, 2018 4:18 pm
Мнения: 1188
Мнение Re: Deep learning development stick for embedded AI applicat
Питона за С е като С за Асемблера, за да може да го ползваш пълноценно е желателно да знаеш какво става "отдолу". Ако пък не познаваш хардуера със С ще истискаш на бай си уя ... бицепсите.


Пет Юни 14, 2019 10:18 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пон Мар 13, 2006 12:59 pm
Мнения: 3855
Местоположение: Габрово
Мнение Re: Deep learning development stick for embedded AI applicat
Не знам дали някой се е замислял какъв процент от кода в едно устройство, било то и ембедед, има някаква зависимост от хардуер. Имам предвид че има един слой на обслужване на хардуера, да го кажем HAL, и оттам насетне има вече подготвени/типизирани данни и изчислителни алгоритми, протоколи и други хардуерно незасивими слоеве. Ако видя накой в примерно в модбъс протокола да слага арм или пик специфични неща направо е на борсата.
Всички опити да се оправдаят разни мазаници в кода с това че на еди кой си хардуер така ще е по-добре са индикация на неправилно разпределение на задачите и непознаване на проблемите.
А там където свършва I/O-то и почва приложението е логично да търсиш удобен начин да изразиш идеите си - т.е. език и стил в който да пишеш малко а да казваш много. Там C/C++ все още куцат и искат още работа, но май е мисия невъзможна без счупване на обратната съвсемстимост. Питон, JS, arduino - все примери как се прави по-изразителен език, при който не само че тракаш по-малко по клавиатурата, ами по-лесно променят (рефакторираш), както и все по-малко се месиш на компилатора/интерпретатора/рънтайма да прецени как най-добре да свърши нещо. Докато на C все още ползването на for е по-често от обхождане на списък (поради липсата на такъв в стандарната библиотека примерно).
В питон/js работата с данните е по-лесна, ясна, изразителна и води до по-малко бъгове. В зависимост от реализациата на интерпретатора може да има забавяне в изпълнението, ама може и да няма - щото един на C обикаля масива от 0 до MAX_ITEMS, което примерно е 1024, докато на другия език някой ползва свързан списък и обхожда активните към момента 3 нода, вместо 1024.
За пример да кажем че на питон съм ползвал map(fn, list) за да обработя тия 1024 елемента, на C си е пак фор до 1024. И да кажем че и 1024-те вече са активни. На 8-кора/16 треда питона спокойно може да сцепи 1024 на 16 зони по 64 елемента и ги пуска на отделните ядра, На C 15 ядра спят/бичат фейсбук, а едното дъни последователно 1024 елемента...
И ако обработката от ниско ниво на един от тия елементи примерно е на C, т.е. питоня я ползва компилирана, не знам дали C няма да пуши нервно в ъгъла...

Точно в подобен стил е смисълът на "скриптирането" на разните големи приложения - да можеш лесно да накараш аутокада да извърти и обработи 1024 детайла, описани в едно csv примерно. Там потребителят не иска да се бори с ansi c за да си парсира csv или json, че да извърти един фор - предпочита нещо в стила на foreach най-малкото. Със сигурност обработката им ще е по-бърза, ако писачите на аутокада вкарат меню "csv/json to render" или нещо такова, в смисъл да кодират точно use case-а на тоя потребител. Само дето едното ще го направи стажант на половин работен ден, а другото ... няма да се случи щото само времето да ти дадат quote колко ще искат няма да можеш да си го позволиш.

Не бива да се оценяват езиците само по това какво е постигнато в съществуващите интерпретатори, а доколко самия синтаксис на езика позволява в бъдеще един по-качествен интерпретатор или що не компилатор да разбере смисъла на писанията и да генерира ефективен код. Т.е. до колко всички аспекти на задачата имат формално описание в сорс кода. При Си обикновено трябва една хубава камара документация, за да може някой да разбере какво прави тоя код. При питонЯ и js според мен има дупка в смисъла на липсата на типове - което е решено в typescript примерно. И нямам предвид на всеки ред да трябва да пишеш типове - силните езици има "магическата сила" да проследяват йерархията на типовете, предаването на данни и викане на функции и да се усещат сами какво е това, дето се движи по веригата и къде се опитваш да шмекериш. Там типовете се описват по-детайлно, но само веднъж.

Всъщност не съм се ровил дали някой не е направил "питон с типове"?

В тая посока rust се опитва да покрие голяма част от аспектите на проблема. Другото са чисто функционалните езици.

Цитат:
така че питона е доста мощно средство (ако имаш наличните библиотеки), но за мен си остава вариант за екзотични приложение.

Представи си своето приложение като библиотека, която се опитваш да продадеш - т.е. колкото повече потребители я ползват, толкова по-добре? Не смяташ ли че от маркетингова гледна точка ще е ценно да кажеш че твоето приложение може да се командва от питон/js през скриптинг интерфейс?
То това няма общо с питон или Си дебат - много от качествените опън сорс проекти на Си се предлагат като библиотека и приложение - обикновено приложението е съвсем прост wrapper който вика библиотеката.


Нед Авг 04, 2019 2:02 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 51 мнения ]  Отиди на страница Предишна  1, 2, 3, 4

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 4 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни