Задать вопрос
  • Не работает бинарный классификатор в Keras. В чем может быть проблема?

    @nikosias Автор вопроса
    Вместо бинарного классификатора оказолось лучше в данном случае использовать категорийный
    import numpy as np
    import pandas as pd
    from sklearn.metrics import roc_auc_score
    from keras.models import Sequential
    from keras.layers import Dense, Dropout
    from sklearn.cross_validation import train_test_split
    
    
    SEED = 12345
    np.random.seed(SEED)
    
    count = 30
    Xtrain = np.random.rand(count*10)
    
    
    Xtrain=Xtrain.reshape(count,10)
    
    dummy = np.random.rand(count)
    
    
    
    dummy_y=np.array(range(count*2)).reshape(count,2)
    for i in xrange(count):
        dummy[i]= 1 if dummy[i]<0.8 else 0
        dummy_y[i,0] = 1*(dummy[i]==0)
        dummy_y[i,1] = 1*(dummy[i]==1)
    
    
    
    def baseline_model():
        # create model
        model = Sequential()
        model.add(Dense(1024, input_dim=Xtrain.shape[1], init='normal', activation='relu'))
        model.add(Dropout(0.6))
        model.add(Dense(64, init='normal', activation='relu'))
        model.add(Dropout(0.6))
        model.add(Dense(2, init='normal', activation='softmax'))
        
        model.compile(loss='categorical_crossentropy', optimizer='adadelta', metrics=['accuracy'])  #logloss
        return model
    
    model=baseline_model()
    
    X_train, X_val, y_train, y_val = train_test_split(Xtrain, dummy_y, test_size=0.2, random_state=42)
    cl_weight = pd.Series(dummy).value_counts()
    
    fit= model.fit(X_train,y_train,
                             nb_epoch=50,
                             #validation_data=(X_val, y_val), 
                             verbose=True,
                             
    )
    
    # evaluate the model
    scores_val = model.predict(X_train)
    
    print('roc_auc_score val {}'.format(roc_auc_score(y_train.flatten(), scores_val.flatten())))
    
    scores_val = model.predict(X_val)
    print (scores_val.flatten())
    print (y_val.flatten())
    print('roc_auc_score val {}'.format(roc_auc_score(y_val.flatten(), scores_val.flatten())))

    python ./test.py
    Using Theano backend.
    /usr/lib64/python2.7/site-packages/sklearn/cross_validation.py:44: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed in 0.20.
    "This module will be removed in 0.20.", DeprecationWarning)
    Epoch 1/50
    24/24 [==============================] - 0s - loss: 0.6895 - acc: 0.4583
    Epoch 2/50
    24/24 [==============================] - 0s - loss: 0.6849 - acc: 0.5417
    Epoch 3/50
    24/24 [==============================] - 0s - loss: 0.6436 - acc: 0.8333
    Epoch 4/50
    24/24 [==============================] - 0s - loss: 0.6684 - acc: 0.8333
    Epoch 5/50
    24/24 [==============================] - 0s - loss: 0.6346 - acc: 0.8750
    Epoch 6/50
    24/24 [==============================] - 0s - loss: 0.6492 - acc: 0.7500
    Epoch 7/50
    24/24 [==============================] - 0s - loss: 0.6372 - acc: 0.8333
    Epoch 8/50
    24/24 [==============================] - 0s - loss: 0.6169 - acc: 0.8333
    Epoch 9/50
    24/24 [==============================] - 0s - loss: 0.6219 - acc: 0.8333
    Epoch 10/50
    24/24 [==============================] - 0s - loss: 0.6079 - acc: 0.8333
    Epoch 11/50
    24/24 [==============================] - 0s - loss: 0.5828 - acc: 0.8333
    Epoch 12/50
    24/24 [==============================] - 0s - loss: 0.5869 - acc: 0.8333
    Epoch 13/50
    24/24 [==============================] - 0s - loss: 0.5633 - acc: 0.8333
    Epoch 14/50
    24/24 [==============================] - 0s - loss: 0.5732 - acc: 0.8333
    Epoch 15/50
    24/24 [==============================] - 0s - loss: 0.5874 - acc: 0.8333
    Epoch 16/50
    24/24 [==============================] - 0s - loss: 0.5641 - acc: 0.8333
    Epoch 17/50
    24/24 [==============================] - 0s - loss: 0.5293 - acc: 0.8333
    Epoch 18/50
    24/24 [==============================] - 0s - loss: 0.5501 - acc: 0.8333
    Epoch 19/50
    24/24 [==============================] - 0s - loss: 0.5411 - acc: 0.8333
    Epoch 20/50
    24/24 [==============================] - 0s - loss: 0.5245 - acc: 0.8333
    Epoch 21/50
    24/24 [==============================] - 0s - loss: 0.5410 - acc: 0.8333
    Epoch 22/50
    24/24 [==============================] - 0s - loss: 0.5301 - acc: 0.8333
    Epoch 23/50
    24/24 [==============================] - 0s - loss: 0.5027 - acc: 0.8333
    Epoch 24/50
    24/24 [==============================] - 0s - loss: 0.4847 - acc: 0.8333
    Epoch 25/50
    24/24 [==============================] - 0s - loss: 0.4581 - acc: 0.8333
    Epoch 26/50
    24/24 [==============================] - 0s - loss: 0.4954 - acc: 0.8333
    Epoch 27/50
    24/24 [==============================] - 0s - loss: 0.4515 - acc: 0.8333
    Epoch 28/50
    24/24 [==============================] - 0s - loss: 0.5454 - acc: 0.8333
    Epoch 29/50
    24/24 [==============================] - 0s - loss: 0.5059 - acc: 0.8333
    Epoch 30/50
    24/24 [==============================] - 0s - loss: 0.4639 - acc: 0.8333
    Epoch 31/50
    24/24 [==============================] - 0s - loss: 0.4487 - acc: 0.8333
    Epoch 32/50
    24/24 [==============================] - 0s - loss: 0.4825 - acc: 0.8333
    Epoch 33/50
    24/24 [==============================] - 0s - loss: 0.4811 - acc: 0.8333
    Epoch 34/50
    24/24 [==============================] - 0s - loss: 0.4678 - acc: 0.8333
    Epoch 35/50
    24/24 [==============================] - 0s - loss: 0.4447 - acc: 0.8333
    Epoch 36/50
    24/24 [==============================] - 0s - loss: 0.4182 - acc: 0.8333
    Epoch 37/50
    24/24 [==============================] - 0s - loss: 0.4401 - acc: 0.8333
    Epoch 38/50
    24/24 [==============================] - 0s - loss: 0.3984 - acc: 0.8333
    Epoch 39/50
    24/24 [==============================] - 0s - loss: 0.4578 - acc: 0.8333
    Epoch 40/50
    24/24 [==============================] - 0s - loss: 0.4232 - acc: 0.8333
    Epoch 41/50
    24/24 [==============================] - 0s - loss: 0.4517 - acc: 0.8333
    Epoch 42/50
    24/24 [==============================] - 0s - loss: 0.4737 - acc: 0.8333
    Epoch 43/50
    24/24 [==============================] - 0s - loss: 0.3670 - acc: 0.8333
    Epoch 44/50
    24/24 [==============================] - 0s - loss: 0.4164 - acc: 0.8333
    Epoch 45/50
    24/24 [==============================] - 0s - loss: 0.4500 - acc: 0.8333
    Epoch 46/50
    24/24 [==============================] - 0s - loss: 0.4243 - acc: 0.8333
    Epoch 47/50
    24/24 [==============================] - 0s - loss: 0.3858 - acc: 0.8333
    Epoch 48/50
    24/24 [==============================] - 0s - loss: 0.4698 - acc: 0.8333
    Epoch 49/50
    24/24 [==============================] - 0s - loss: 0.4444 - acc: 0.8333
    Epoch 50/50
    24/24 [==============================] - 0s - loss: 0.4683 - acc: 0.8333
    roc_auc_score val 0.930555555556
    [ 0.16673177 0.83326823 0.1581582 0.84184182 0.29502279 0.70497721
    0.1026172 0.8973828 0.20092192 0.79907811 0.10272423 0.89727575]
    [0 1 0 1 0 1 0 1 1 0 0 1]
    roc_auc_score val 0.916666666667

    Ответ написан
    Комментировать
  • Почему выпадает ошибка ( Uncaught TypeError: Cannot read property '0' of undefined ) и как ее исправить ???

    @nikosias
    '<p><b>Weather:</b> <span id="weather">' + ((res.weather && res.weather[0] && res.weather[0].main)?res.weather[0].main:'') + '</span></p>'+
    Ответ написан
    Комментировать
  • Перебрать элементы на странице и массива?

    @nikosias
    https://jsfiddle.net/nyebtb1x/
    Не срабатывает что то джавасккрипт но код типа такого.
    var ysums=[123,456,789];
    function Sum(ysums) {
    	for(var i=0;i<ysums.length;i++){
      	$('.y_sums h1 span').eq(i).text(ysums[i]);
      }
    }
    Sum(ysums);


    Хотя в данном случае может лучше удалять все h1->span создавать снова по количеству переменных?
    Ответ написан
    Комментировать
  • Как реализовать выбор квартиры?

    @nikosias
    Попробуйте использовать тег map(https://webref.ru/html/map) Тогда не придется делать множество картинок.
    Ответ написан
  • Как должен отработать код?

    @nikosias
    current_filedatas = JSON.parse(response); Означает что ответ вам приходит в формате JSON
    используйте json_encode (php.net/manual/ru/function.json-encode.php) когда возвращаете результат работы скрипта.
    Ответ написан
    Комментировать
  • Как сделать переменную видимой в цикле?

    @nikosias
    Выводы в консоль одинаковы?
    var tpbl = $(this).prev().prev().prev().prev('blocks');
    console.log(1,tpbl,tpbl.length)
    $("blocks").each(function(){
    var tpbl = $(this).prev().prev().prev().prev('blocks');
    console.log(2,tpbl,tpbl.length)
      if (tpbl.length)
      {
        var top = tpbl.css('top');
        var hei = tpbl.children('scrl').height() - 295 + parseFloat(top);
        $(this).css('top', hei);
      }
    });
    var tpbl = $(this).prev().prev().prev().prev('blocks');
    Ответ написан
  • Как определить находится ли мышка над элементом в данный момент?

    @nikosias
    var info;
    $('body').mousemove(function(e){
      if (info !==e.target){
      	console.log(e.target);
        info =e.target;
      }
    });
    Ответ написан
    Комментировать
  • Resize картинок?

    @nikosias
    Оберните картинку в div с прописанными значениями высоты и ширины
    https://jsfiddle.net/435rpzym/2/
    Ответ написан
  • На какое направление стоит поступать, чтобы затем работать в сфере Data Science?

    @nikosias
    Зная математику выучить питон или r гораздо легче, чем зная программирование выучить математику.
    Ответ написан
    Комментировать
  • Веб-сервер для разработчика (Ubuntu)?

    @nikosias
    по Docker на каждый сервис.
    Проще будет и тестить и на продакшен выдавать, и в последствии перенастраивать на разные машины.
    Ответ написан
    Комментировать
  • Какую СУБД выбрать для связки Node.js + React?

    @nikosias
    Попробуйте стек MEAN - meanjs.org
    Хорошый цикл статей для ачала - https://www.ibm.com/developerworks/ru/library/wa-mean1/
    А вообще вам Лучше от задачь плясать. Если NoSQL то Mongo если Реляционные то Maria или Postgree
    Ответ написан
    Комментировать
  • Как составить такой запрос?

    @nikosias
    select t1.id,t1.title,t2.file_name from tovari as t1 left join files as t2 on t1.id=t2.id where t1.id in (2,3,4)
    Ответ написан
    Комментировать
  • Какой вариант правильнее?

    @nikosias
    первый вариант можно сделать
    (function(){
    function someFunction(){
    //some code
    }
    $(document).ready(someFunction);
    })();

    Второй вариант только если вы хотите замкнуть функцию в области видимости $(document).ready(function(){
    ...
    });
    Ответ написан
    Комментировать
  • Не срабатывает расчет покрытия кода при использовании phpUnit из-под Netbeans

    @nikosias
    Такая же ошибка.
    Проблема возникает если каталог проекта установлен на другой диск.
    Для решения
    простое:
    Переносим проект на диск где установлена netbeans.
    сложное:
    в директории создаем файл с таким содержанием:
    <?php
    class NetBeansSuite extends PHPUnit_Framework_TestSuite {
        public static function suite() {
            $suite = new NetBeansSuite();
            $array=self::rglob("*[Tt]est.php", getcwd());
            foreach ($array as $file) {
                $suite->addTestFile($file);
            }
            return $suite;
        }
        private static function rglob($pattern = '*', $path = '', $flags = 0) {
            $paths = glob($path.'*', GLOB_MARK | GLOB_ONLYDIR | GLOB_NOSORT) or array();
            $files = glob($path.$pattern, $flags) or array();
            foreach ($paths as $path) {
                $files = array_merge($files, self::rglob($pattern, $path, $flags));
            }
            return $files;
        }
    }
    ?>

    Это художественно порезанный файл:
    C:\Users\%username%\AppData\Roaming\NetBeans\7.3\phpunit\NetBeansSuite.php

    В свойства проекта -> PHPUnit-> использовать пользовательский набор тестов устанавливаем ссылку на файл этот файл.

    После этого охват кода начинает работать.
    Ответ написан