Вы можете заключить в метрику другую функцию, которая принимает sample_weights
в качестве аргумента:
def auc(weights):
def metric(true_labels, predictions):
auc = tf.metrics.auc(true_labels, predictions, weights=weights)[1]
K.get_session().run(tf.local_variables_initializer())
return auc
return metric
И затем определить дополнительный входной заполнитель, который будет получать веса выборки:
sample_weights = Input(shape=(1,))
[ 116] Ваша модель может быть скомпилирована следующим образом:
model.compile(
optimizer = optimizer,
loss = 'binary_crossentropy',
metrics = ['accuracy', auc(sample_weights)]
)
ПРИМЕЧАНИЕ: Не проверено.
Ваш grep, вероятно, удаляет цветовые коды ls
, потому что у него включена собственная окраска.
Вы «можете» сделать это:
ls -l --color=always | grep --color=never pattern
Однако, очень важно понимать, что именно вы здесь grep
ping. grep
ping ls
не нужен (используйте вместо него glob
), но и в этом конкретном случае grep
проверяет не только имена файлов и файлы stats, а также с помощью цветовых кодов, добавленных ls
!
Настоящий ответ на ваш вопрос: не grep
it. Нет необходимости направлять ls
во что-либо или захватывать его выходные данные. ls
предназначен только для интерпретации человеком (например, в посмотрите только в интерактивной оболочке, и для этой цели это, конечно, очень удобно). Как упоминалось ранее, вы можете отфильтровать, какие файлы перечисляются в ls
, используя globs:
ls -l *.txt # Show all files with filenames ending with `.txt'.
ls -l !(foo).txt # Show all files with filenames that end on `.txt' but aren't `foo.txt'. (This requires `shopt -s extglob` to be on, you can put it in ~/.bashrc)
Я настоятельно рекомендую вам прочитать эти два отличных документа по этому вопросу:
ls
: http://mywiki.wooledge.org/ParsingLs glob
s: http: //mywiki.wooledge. org / glob Вы должны проверить, действительно ли вы используете "настоящий" ls, просто напрямую вызвав двоичный файл:
/bin/ls ....
Потому что: Код, который вы описали, действительно должен работать, если ls не игнорирует --color = всегда по какой-то странной причине или ошибке.
Я подозреваю, что какой-то псевдоним или функция добавляет (напрямую или через переменную) некоторые параметры. Еще раз проверьте, что это не так.