小编Kle*_*ios的帖子

Keras 调谐器 Hyperband 仅运行 2 个时期

下面的代码是来自 kera-tuner 网站的相同 Hello-World 示例,但使用 Hyperband 而不是 RandomSearch。

from tensorflow import keras
from tensorflow.keras import layers

from kerastuner.tuners import RandomSearch, Hyperband
from kerastuner.engine.hypermodel import HyperModel
from kerastuner.engine.hyperparameters import HyperParameters

(x, y), (val_x, val_y) = keras.datasets.mnist.load_data()
x = x.astype('float32') / 255.
val_x = val_x.astype('float32') / 255.

x = x[:10000]
y = y[:10000]

def build_model(hp):
    model = keras.Sequential()
    model.add(layers.Flatten(input_shape=(28, 28)))
    for i in range(hp.Int('num_layers', 2, 20)):
        model.add(layers.Dense(units=hp.Int('units_' + str(i), 32, 512, 32),
                               activation='relu'))
    model.add(layers.Dense(10, activation='softmax'))
    model.compile(
        optimizer=keras.optimizers.Adam(
            hp.Choice('learning_rate', [1e-2, 1e-3, 1e-4])),
        loss='sparse_categorical_crossentropy', …
Run Code Online (Sandbox Code Playgroud)

keras keras-tuner

14
推荐指数
1
解决办法
1642
查看次数

为什么format("kafka")失败并且"找不到数据源:kafka".(即使是超级罐)?

我使用HDP-2.6.3.0和Spark2包2.​​2.0.

我正在尝试使用Structured Streaming API编写Kafka使用者,但是在将作业提交到群集后我收到以下错误:

Exception in thread "main" java.lang.ClassNotFoundException: Failed to find data source: kafka. Please find packages at http://spark.apache.org/third-party-projects.html
at org.apache.spark.sql.execution.datasources.DataSource$.lookupDataSource(DataSource.scala:553)
at org.apache.spark.sql.execution.datasources.DataSource.providingClass$lzycompute(DataSource.scala:89)
at org.apache.spark.sql.execution.datasources.DataSource.providingClass(DataSource.scala:89)
at org.apache.spark.sql.execution.datasources.DataSource.sourceSchema(DataSource.scala:198)
at org.apache.spark.sql.execution.datasources.DataSource.sourceInfo$lzycompute(DataSource.scala:90)
at org.apache.spark.sql.execution.datasources.DataSource.sourceInfo(DataSource.scala:90)
at org.apache.spark.sql.execution.streaming.StreamingRelation$.apply(StreamingRelation.scala:30)
at org.apache.spark.sql.streaming.DataStreamReader.load(DataStreamReader.scala:150)
at com.example.KafkaConsumer.main(KafkaConsumer.java:21)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$runMain(SparkSubmit.scala:782)
at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:180)
at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:205)
at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:119)
at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
Caused by: java.lang.ClassNotFoundException: kafka.DefaultSource
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.apache.spark.sql.execution.datasources.DataSource$anonfun$22$anonfun$apply$14.apply(DataSource.scala:537)
at org.apache.spark.sql.execution.datasources.DataSource$anonfun$22$anonfun$apply$14.apply(DataSource.scala:537)
at scala.util.Try$.apply(Try.scala:192)
at org.apache.spark.sql.execution.datasources.DataSource$anonfun$22.apply(DataSource.scala:537)
at org.apache.spark.sql.execution.datasources.DataSource$anonfun$22.apply(DataSource.scala:537)
at scala.util.Try.orElse(Try.scala:84)
at …
Run Code Online (Sandbox Code Playgroud)

uberjar apache-spark apache-spark-sql spark-structured-streaming

10
推荐指数
2
解决办法
8348
查看次数

如何使用HTML IFrame自动调整宽度

我正在尝试使用iframe打开其他网址.但由于原因,宽度iframe固定在155px.

我需要调整宽度iframe的大小以适应整个SRC iframe.

<!DOCTYPE html>
<html>
    <body>
        <iframe frameborder="0" scrolling="no" height="100%" width="100%" src="http://www.gnu.org/"></iframe>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我试过width ="100%",但没有用.

html iframe

8
推荐指数
2
解决办法
3万
查看次数

了解Spark结构化流式并行

我是Spark世界中的新手,正在努力解决一些概念。

使用Kafka的Spark结构化流式采购时,并行性如何发生?

让我们考虑以下代码段代码:

SparkSession spark = SparkSession
          .builder()
          .appName("myApp")
          .getOrCreate();   

Dataset<VideoEventData> ds = spark
  .readStream()
  .format("kafka")
  ...

gDataset = ds.groupByKey(...)

pDataset = gDataset.mapGroupsWithState(
      ...
      /* process each key - values */
      loop values
        if value is valid - save key/value result in the HDFS
      ... 
)

StreamingQuery query = pDataset.writeStream()
          .outputMode("update")
          .format("console")
          .start();

//await
query.awaitTermination();
Run Code Online (Sandbox Code Playgroud)

我已经读到并行性与数据分区的数量有关,而数据集的分区数量是基于spark.sql.shuffle.partitions参数的。

  1. 对于每一批(从Kafka中抽出),提取的物品是否会在spark.sql.shuffle.partitions?例如,spark.sql.shuffle.partitions=5Batch1=100行,我们将最终得到5个分区,每个分区20行吗?

  2. 考虑到提供的代码段代码,由于groupByKey后面还有一个mapGroups/mapGroupsWithState函数,我们是否仍在利用Spark并行性?

更新:

在里面gDataset.mapGroupsWithState,我处理每个键/值并将结果存储在HDFS中。因此,输出接收器仅用于在控制台中输出某些统计信息。

apache-spark apache-spark-sql spark-structured-streaming

6
推荐指数
1
解决办法
2334
查看次数

Mongodb 聚合$匹配文档或全部

我有一个参数化的 mongodb 聚合查询,其中参数接收要过滤的给定 ObjectID 或 NULL(如果我想返回所有文档)。我的意思是,我想使用相同的管道返回一个或所有文档。

我的管道查询是:

db.user.aggregate([
  {'$match': { _id : <MYUSERPARAM> } }
]);
Run Code Online (Sandbox Code Playgroud)

MYUSERPARAM的值将具有要过滤的给定 ObjectId,或者如果我不想过滤单个文档而想返回所有文档,则 MYUSERPARAM 的值将具有某个值。

然后我的系统将替换MYUSERPARAM并运行查询,例如:

过滤单个文档:

db.user.aggregate([
  {'$match': { _id : ObjectId("5e2b9ab8b1dbae5124e4b635") } }
]);
Run Code Online (Sandbox Code Playgroud)

或以某种方式返回所有文档:

db.user.aggregate([
  {'$match': { _id : $all } }
]);
Run Code Online (Sandbox Code Playgroud)

但上面的方法不起作用。

如何使用管道查询来过滤单个文档或返回所有文档,只需更改查询中的单个值/参数(如上面的示例所示)?

mongodb mongodb-query

6
推荐指数
1
解决办法
7524
查看次数

如何使用存储变量解密“明文 YAML 文件”?

我正在使用 ansible 2.7.16。

\n\n

ansible 文档说:

\n\n
Single Encrypted Variable\n\nAs of version 2.3, Ansible can now use a vaulted variable that lives in an otherwise \xe2\x80\x98clear text\xe2\x80\x99 YAML file:\n\nnotsecret: myvalue\nmysecret: !vault |\n          $ANSIBLE_VAULT;1.1;AES256\n          66386439653236336462626566653063336164663966303231363934653561363964363833313662\n          6431626536303530376336343832656537303632313433360a626438346336353331386135323734\n          62656361653630373231613662633962316233633936396165386439616533353965373339616234\n          3430613539666330390a313736323265656432366236633330313963326365653937323833366536\n          34623731376664623134383463316265643436343438623266623965636363326136\nother_plain_text: othervalue\n
Run Code Online (Sandbox Code Playgroud)\n\n

我有以下 .yml 文件:

\n\n
user: dbuser\npass: !vault |\n          $ANSIBLE_VAULT;1.1;AES256\n          33633131346338633461336438656463643539396535656432306564636466353338373135346166\n          3838313236383739616239333265323131376231656633350a613333613239646263393330353930\n          31303935646330643831396130343031613063393839353433646338343034386432656435623934\n          6537356530643136310a373835323666393337346562613831613962323261346232323331343631\n          3838\n
Run Code Online (Sandbox Code Playgroud)\n\n

我想获得解密的文件,然后我尝试了以下命令:

\n\n

ansible-playbook --vault-password-file pass.txt config.yml

\n\n

但我收到以下错误:

\n\n
 [WARNING]: Unable to parse /etc/ansible/hosts as an inventory source\n\n [WARNING]: No inventory was parsed, only implicit …
Run Code Online (Sandbox Code Playgroud)

ansible ansible-vault

6
推荐指数
1
解决办法
5148
查看次数

使用“:”的脚本命令导致 .gitlab-ci.yml 执行错误

在我的.gitlab-ci.yml文件下面:

image: docker:latest

services:
    - docker:dind

stages:
    - deploy_dev_env

Deploy DEV Environment:

    stage: deploy_dev_env

    script:

        - curl -v -H "Content-Type: multipart/form-data" -X PUT -F uploadInput=@schema/schema.xml -F overwrite=true -F xmlaEnabledFlag=true -F parameters="DataSource=outputDS" -F parameters="EnableXmla=true" -u $PENTAHO_DEPLOY_USER:$PENTAHO_DEPLOY_PASSWORD http://$PENTAHO_HOST/pentaho/plugin/data-access/api/datasource/analysis/catalog/sca
Run Code Online (Sandbox Code Playgroud)

这个非常简单的脚本会导致错误,因为这部分中的冒号(:) "Content-Type: multipart/form-data"

在脚本中运行 CI Lint 我得到以下信息:

Status: syntax is incorrect

jobs:deploy dev environment:script config should be a string or an array containing strings and arrays of strings
Run Code Online (Sandbox Code Playgroud)

如果我替换"Content-Type: multipart/form-data""Content-Type multipart/form-data"(删除了“:”),我会得到我的 .gitlab-ci.yml 文件的正确语法。

这是一个错误还是我应该以不同的方式重写我的 curl 命令?

gitlab gitlab-ci

6
推荐指数
1
解决办法
1518
查看次数

如何使用 FastAPI + uvicorn 在工作人员之间共享数据库连接?

我正在尝试使用 FastAPI + uvicorn 创建一个应用程序。

此应用程序必须能够处理同时连接。我不能保证所有代码都可以以异步/等待方式执行。

然后,我想使用--workers Xuvicorn 中的选项来处理同时连接,但我需要在所有工作人员之间共享相同的数据库连接。

我尝试了以下示例:

import time
from pymongo.database import Database
from fastapi import Depends, FastAPI
from dynaconf import settings
from pymongo import MongoClient

print("-------> Creating a new MongoDB connection")
db_conn = MongoClient(settings.MONGODB_URI)
db = db_conn.get_database('mydb')

app = FastAPI()

def get_db():
    return db

@app.get("/{id}")
async def main(id: str, db: Database = Depends(get_db)):
    print("Recebido id: " + id)
    time.sleep(10)
    return { 'id': id }
Run Code Online (Sandbox Code Playgroud)
$uvicorn main:app --workers 2
INFO:     Uvicorn running on http://127.0.0.1:8000 (Press …
Run Code Online (Sandbox Code Playgroud)

python mongodb fastapi uvicorn

6
推荐指数
1
解决办法
802
查看次数

如何在`return FileResponse(file_path)`后删除文件

我正在使用 FastAPI 接收图像,对其进行处理,然后将图像作为 FileResponse 返回。

但是返回的文件是临时文件,端点返回后需要删除。

@app.post("/send")
async def send(imagem_base64: str = Form(...)):

    # Convert to a Pillow image
    image = base64_to_image(imagem_base64)

    temp_file = tempfile.mkstemp(suffix = '.jpeg')
    image.save(temp_file, dpi=(600, 600), format='JPEG', subsampling=0, quality=85)

    return FileResponse(temp_file)

    # I need to remove my file after return it
    os.remove(temp_file)

Run Code Online (Sandbox Code Playgroud)

返回后如何删除文件?

python python-asyncio starlette fastapi

6
推荐指数
2
解决办法
1105
查看次数

无法连接 Mongodb Atlas 端口

我正在使用 M0 GCP 实例。

我可以使用以下字符串连接到集群:

'mongodb+srv://my_user:my_pass@my_cluster-mbsnz.gcp.mongodb.net/db?retryWrites=true&w=majority'
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用另一个需要传递主机和端口的客户端,但无法连接。

我尝试远程登录到端口 27017,但由于某种原因我无法直接连接到该端口。

curl http://my_cluster-mbsnz.gcp.mongodb.net:27017
curl: (7) Failed to connect to my_cluster-mbsnz.gcp.mongodb.net port 27017: Connection timed out
Run Code Online (Sandbox Code Playgroud)

或者

telnet my_cluster-mbsnz.gcp.mongodb.net 27017
Trying 185.82.212.199...
^C -> After a long time waiting
Run Code Online (Sandbox Code Playgroud)

可能出了什么问题?

mongodb mongodb-atlas

5
推荐指数
1
解决办法
9008
查看次数