Обновить
7
0

Indie game developer

Отправить сообщение
Судя по данной и другим статьям из этого блога, у них просто есть кто-то, кто любит рисовать картинки.
Такая солянка! Статью следовало назвать — «Про энтерпрайз за кружкой пива», потому что она не отвечает на вопрос «зачем нужны системы бизнес-аналитики», а описывает, какие бывают направления деятельности больших компаний. Здесь и логистика, и закупки, и оценка показателей персонала — и все это под единой чертой BI.
Хабы «визуализация данных», «администрирование бд» и «data mining» здесь, на мой взгляд, не к месту.
В общем полностью соглашусь Joshua и не писал бы свой комментарий, если бы не ощущение обманутости после прочтения этой статьи.
Графика и стиль мне весьма понравились! А вот над геймплеем еще много работать. С трудом доиграл второй уровень и дальше играть желания не возникает. Жать на каждого противника по два раза, каждый раз жать на защитника, чтобы его активировать, и… все.
Вероятно, дальше будут какие-то навороты, но, боюсь, большинство до них не дойдет.
Но в целом игра выглядит так, что ее, на мой взгляд, не стыдно показать миру. Желаю успехов в развитии, перспективы у вас однозначно есть!
А еще каждый разработчик должен иметь самописный уникальный фреймворк. Который только он должен уметь конфигурировать.
Каждый должен ездить на собственном велосипеде, собранном из запчастей через слезы и страдания. Человек, который едет на покупном — начинающий велосипедист. Такого придется учить собирать велосипеды год.
Именно этот комментарий должен идти к этой статье первым, а не странные обсуждения «зачем мне ехать на лифте, если я умею подниматься по лестнице» :)
Сейчас докер, да.
С другой стороны, тем выгоднее оказаться в верхних 20% разработчиков.
Да, Corona тоже по вашему желанию возвращает деньги или повышает уровень до Enterprise на срок действия оплаченной подписки.
Cordova делает гибридное приложение.
cocos2d, Unity и Corona делают нативные приложения.
React Native, как я понял, делает нативное приложение.
Я спрашивал, чем React Native отличается от cocos2d, Unity и Corona. Как я понял, тем в первую очередь, что на нем предполагается делать бизнес-приложения, а не игры.
Правильно ли я понял, что это суть новый cocos2d/Unity/Corona, только заточенный под приложения, а не под игры, как вышеперечисленные системы?
А сколько времени заняла разработка с момента появления желания «что-нибудь сделать» до выпуска в маркет? И как распределялись роли в команде из пяти человек?
Хорошая статья, спасибо! Она не конкурирует, безусловно, с книгами, не пытается заменить Крокфорда. Но ее несомненная и весомая польза в том, что она уменьшает общую энтропию вокруг предмета изучения.
Лаконично и точно ответил на этот вопрос Андрей Райгородский (на видео 3:17, а в текстовой транскрипции почему-то его нет): «Если хочешь… не иметь вообще над собой никакого потолка, то математику совершенно необходимо знать».
Я не хотел сказать, что это банальный совет в каком-то негативном смысле :) Мысль «чтобы добиться, надо серьезно работать» кажется довольно простой и распространенной. Я своим комментарием согласился с вами и подчеркнул, что эта простая мысль действительно важна.
На счет абсолютно всего времени я тоже согласен. Ваше пояснение воспринимаю не на свой счет, а как пояснение для читателей :)
Собственно, мой опыт заключался в том, что после двух лет вялого изучения передо мной встал вопрос: либо бросить аспирантуру, либо взять себя в руки и как раз полностью погрузиться. После серьезных размышлений и обсуждений с семьей (см.совет 7) принял решение погрузиться. Погружение являло собой полгода круглосуточной научной работы с небольшими перерывами на работу обычную. И потом еще год в режиме 50/50 до самой защиты.
Да, напряга и затрат умственных и психологических очень много. Когда кто-то спрашивает, стоило ли оно того, с уверенностью отвечаю — стоило. Когда спрашивают, что это дало в плане материальном/вещественном, отправляю к пеньку №6 :) Впрочем, это уже другая тема.
Очень хорошая статья.
Частично не согласен с пнём №1. Проводить сравнительный анализ научных руководителей — в большинстве случаев слишком большая роскошь. Хоть в теории вы и можете поступать в аспирантуру без научного руководителя (то есть с расчетом на то, что его назначит кафедра, или в надежде попасть к кому-то конкретному, но с кем вы лично пока не знакомы), но на практике при поступлении вас спросят, кто ваш научный руководитель. Дело также в том, что вроде как априори предполагается, что вы еще до поступления в аспирантуру примерно на протяжении последнего года обучения уже вели научную деятельность со своим руководителем и теперь поступаете к нему для продолжения научной работы на новом уровне. В итоге, хорошо если у вас есть один ваш научный руководитель, который просто согласен вас взять. Если же он по совместительству еще и увлеченно ведет свою научную работу, то вам повезло (хотя и это даже еще нельзя утверждать с уверенностью).

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

Кажется, что это довольно банальный совет. Но в этом простом совете заключается вся истина успеха, возможно, в любом деле. В написании диссертации — однозначно. Самая важная идея всей статьи.

Все остальное — верно. Также отдельно соглашусь с последним пнём. Поддержка семьи, понимание и терпение со стороны вашей второй половины — очень важно.
Небольшая поправка. Я написал:
Что интересно, если пройти по предложенному выше дереву, то мы попадем в нужный класс 2, но это будет почти что совпадение.

Потом я посмотрел еще раз псевдокод и обнаружил, что как раз-таки первоначальное дерево не соответствует вашему псевдокоду. Дерево, которое представил я, псевдокоду соответствовать будет, как раз из-за дополнительной строки в обучающем множестве: (1 1 1 1 1)=1.
Грубо говоря, да. А лучше, чтобы обучающая выборка была с пересекающимися данными. Модель для того и нужна, чтобы из кучи данных выявить тренд. Смотрите мой комментарий выше, я попытался показать на вашем же примере.
Прекрасный пример!
По поводу дерева, которое представил stemm. У меня тоже получилось такое дерево (ура, наши модели написаны без ошибок! :). Но стоит заметить, что атрибуты Х2 и Х3 не то чтобы не имеют значения, они равнозначны (что очевидно) атрибуту Х1. В данном дереве везде вместо Х1 можно смело подставить, например Х2. Алгоритм просто выбрал первый по счету атрибут из равнозначных. Атрибуты Х4 и Х5 тоже равнозначны между собой (это тоже понятно уже по исходному виду таблицы), поэтому корнем дерева вполне мог бы быть и Х5.

Теперь по поводу полной таблицы:
(1 1 1 * *) => 1
(* * * 1 1) => 2
(* * * 1 0) => 3
(* * * 0 1) => 4
(* * * 0 0) => 5
Полная таблица как раз не совпадает с кодом :)
Строка (1 1 1 1 1) будет удовлетворять сразу классам 1 и 2. Псевдокод, конечно, распределит как надо, но обучаемая модель не поймет. В общем-то, никто не поймет, куда распределить строку из всех единиц, если не смотреть псевдокод.
Что интересно, если пройти по предложенному выше дереву, то мы попадем в нужный класс 2, но это будет почти что совпадение.
Если к таблице добавить строку (1 1 1 1 1)=2, то вид дерева не изменится.
Если к таблице добавить строку (1 1 1 1 1)=1, то дерево станет таким:

Вывод: чем больше размер обучающего множества, чем больше в нём «нахлестов», тем точнее будет модель.
В первую очередь из-за симпатии к языку, а также из-за желания также разобраться в D3js.
Такой вопрос концептуально не совсем корректен для задачи использования деревьев решений. Я бы не стал применять дерево решений при такой выборке (ну или как минимум хорошо бы обдумал сначала задачу).
Сама модель дерева решений относится к моделям прогнозного анализа, то есть на основе статистических данных (истории) строится дерево, задачей которого является создание прогноза о том, к какому классу будет отнесен новый объект.
В свою очередь прогнозный анализ основывается на главном предположении о сохранении тренда: если какая-то закономерность имела место в прошлом, то она будет иметь место и в будущем.
Деревья решений, впрочем, лишь модель. Применять ее можно как угодно, если это получается эффективно.

При этом система должна «понять», что первые три параметра значимы только если все три установлены, и тогда игнорируются последние два, а иначе игнорируются первые три и значимы только последние два.

В общем случае модель для этого и предназначена. Но это не значит, что модель определит так же, как предполагаете вы. Для модели могут оказаться важными не первые три параметра, а, например, первый и четвертый.
Советую почитать предыдущую статью автора.
Если кратко, то приоритет одного параметра перед другим четко определяется самой моделью через понятие энтропии. И порядок атрибутов обучающей выборки неважен. В этом, собственно, и состоит весь изюм этой модели: она сама определяет, какой атрибут наиболее важен на данной стадии, и разбивает обучающую выборку на подмножества по значениям этого атрибута. На следующем шаге анализ «важности» происходит снова, и каждое подмножество в свою очередь разбивается. И так до тех пор, пока в очередном подмножестве не окажутся только те объекты, которые принадлежат одному и тому же классу. В этот момент дальнейшее разбиение по этой ветке больше не нужно, потому что мы получили путь, эффективно классифицирующий эту часть изначальной выборки.

Если ваш вопрос касался того, что делать с ситуацией, когда в обучающей выборке могут оказаться противоречивые данные, то ответ прост: представленный алгоритм ID3 не обрабатывает такие ситуации. Дерево он, конечно, построит, но часть объектов из самой же обучающей выборке потом будут классифицироваться им с ошибкой, что естественно. Разумеется, существуют методы предварительной проверки данных на противоречивость, оценка достоверности и так далее. В реальных системах все это должно применяться в комплексе.

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность