小编PCG*_*PCG的帖子

在“Keras”分类中使用“sklearn”库中的计算类权重函数问题(Python 3.8,仅在 VS 代码中)

我编写的分类器脚本运行良好,最近在配件中添加了重量平衡。由于我使用“sklearn”库添加了重量估计函数,因此出现以下错误:

compute_class_weight() takes 1 positional argument but 3 were given
Run Code Online (Sandbox Code Playgroud)

根据文档,此错误没有意义。该脚本应该有三个输入,但不确定为什么它说只需要一个变量。完整的错误和代码信息如下所示。显然,这仅在 VS 代码中失败。我在 Jupyter 笔记本上进行了测试,工作正常。所以这似乎是 VS code 编译器的问题。有人注意到吗?(我正在使用 Python 3.8 和其他最新的其他库)

from sklearn.utils import compute_class_weight

train_classes = train_generator.classes

class_weights = compute_class_weight(
                                        "balanced",
                                        np.unique(train_classes),
                                        train_classes                                                    
                                    )
class_weights = dict(zip(np.unique(train_classes), class_weights)),
class_weights
Run Code Online (Sandbox Code Playgroud)

在 Jupyter 笔记本中,

在此输入图像描述

在此输入图像描述

python classification scikit-learn keras

35
推荐指数
2
解决办法
5万
查看次数

如何从 ASP.net 中的主体获取电子邮件地址?

我正在尝试获取与当前用户关联的电子邮件。下面显示了我在身份验证中添加 Claims 的几行。

public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
    {
        var identity = new ClaimsIdentity(context.Options.AuthenticationType);
        try
        {
            CreateDataConnection();
            R_AuthenticateUser oAuthUser = oDataConnection.Authenticate(context.UserName,context.Password);
            string DB_User_roles = oAuthUser.UserLoginRoles;

            if (oAuthUser.Authenticated)
            {
                string[] aray = DB_User_roles.Split(',');

                identity.AddClaim(new Claim(ClaimTypes.Name, oAuthUser.UserID.ToString()));                         // keeps the login_ID
                identity.AddClaim(new Claim(ClaimTypes.Email, context.UserName));

                foreach (var item in aray)
                {
          //          identity.AddClaim(new Claim(ClaimTypes.NameIdentifier, item));
                    identity.AddClaim(new Claim(ClaimTypes.Role, item));
                }
                context.Validated(identity);
            }
            else //if (context.UserName == "user" && context.Password == "user")
            {
                context.SetError("Incorrect credntials", "Provided Username and Password is incorrect");
                return;
            }
        } …
Run Code Online (Sandbox Code Playgroud)

asp.net claims-based-identity principal owin

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

Keras img_to_array 中有什么?(与 C# 中的位图数组相比)

我试图了解什么是keras.preprocessing.image.img_to_array

https://github.com/tensorflow/tensorflow/blob/r1.8/tensorflow/python/keras/_impl/keras/preprocessing/image.py

当我查看数组的内容时,它们如下(所有元素都在 float 中):

image1 = img_to_array(image.load_img(ImagePath, target_size=(128,128))) / 255

[0.16470588743686676, 0.3019607961177826, 0.07450980693101883], [0.1we23423423486676, 0.3023423423423423, 0.01353463453458483] ......
Run Code Online (Sandbox Code Playgroud)

似乎它们是图像的 RGB 通道,但为什么是分数?但是,如果我查看 C# 中的位图,它们是整数,例如 (Alpha,R,G,B)

[100,123,024,132],[021,055,243,015].... 
Run Code Online (Sandbox Code Playgroud)

有人能解释一下 C# 中从 img_to_array 和 Bitmap 数组格式生成的图像数组有什么区别吗?

谢谢,PCG

c# rgb keras

2
推荐指数
1
解决办法
8224
查看次数

如何使用Python从文件夹列表中获取基本公共文件夹?

这是来自多个文件夹/子文件夹(同一驱动器)的文件名列表。例子 :

C:\Test\GO\abc.csv
C:\Test\TEST2\TER.abc.csv
C:\Test\CAR\abc.cvs
Run Code Online (Sandbox Code Playgroud)

我需要将“C:\Test”作为上述文件列表的共享根文件夹。已经有 python 函数了吗?

python listdir

2
推荐指数
1
解决办法
311
查看次数

为什么CONCAT第一次不在mySQL表中插入文本?

我正在使用UPDATE将简单文本插入到表中,其中字段为MEDIUMTEXT(可空字段).奇怪的是,当字段最初为null时它不起作用.如果我手动输入至少一个字符/空格,那么它正在工作.

我想将新文本附加到该字段中的现有文本中.

UPDATE pen SET  
                PEN_STATUS = @PenStat,
                PEN_STATUS_CHANGE_REASON = CONCAT(PEN_STATUS_CHANGE_REASON,'\n',ChangeDate,':',EmployeeID,':',ChangeReason)
            WHERE PEN_ID = PenID;
Run Code Online (Sandbox Code Playgroud)

为什么是这样?

mysql sql sql-update

0
推荐指数
1
解决办法
47
查看次数

如何使用linq用逗号和冒号分隔字符串?

我有以下格式的传入字符串:“ LARGE:34,MEDIUM:25,SMALL:15”

我有以下课程:

public class Portion_Price
{
    [DataMember]
    public PortionSize PortionSize { get; set; }
    [DataMember]
    public Decimal ItemPrice { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我想通过分割字符串来分配PortionSize和ItemPrice。以下是我的工作代码:

str_portion_price = "LARGE:34,MEDIUM:25,SMALL:15";

            List<Portion_Price> Portion_Price_List = new List<Portion_Price>();
            if (!String.IsNullOrEmpty(str_portion_price))
                {
                List<string> str_por_pri = str_portion_price.Split(',').ToList();
                foreach (var str_port_pric in str_por_pri)
                {
                    Portion_Price single_portion_price = new Portion_Price();
                    List<string> portion_price = str_port_pric.Split(':').ToList();
                    single_portion_price.PortionSize = (PortionSize)Enum.Parse(typeof(PortionSize), portion_price[0]);
                    single_portion_price.ItemPrice = Convert.ToDecimal(portion_price[1]);
                    Portion_Price_List.Add(single_portion_price);
                }
            }
Run Code Online (Sandbox Code Playgroud)

上面的代码工作正常,但我想以Linq方式或其他任何较短的方式使其更具可读性。还有其他方法可以做到这一点吗?

c# linq split class

0
推荐指数
1
解决办法
45
查看次数

如何在C#中实现对自定义函数的处理?

我有下面列出的示例类,每次调用API时,都需要使用CreateDataConnection()打开数据库连接。

public class FlowerController : ApiController
    {
        DataConnection oDataConnection { get; set; }
        public void CreateDataConnection() 
        {
            ConnectionParameters oParams = new ConnectionParameters();

            oParams.strDatabaseName = "123123123123";
            oParams.strPassword = "123123123123";  
            oParams.strSchemaName = "123123123123";
            oParams.strServerIP = "192.168.1.1";
            oParams.strServerPort = "12313";
            oParams.strUsername = "123123123";
            oDataConnection = new DataConnection(oParams);
        }

        [HttpPost]
        [AllowAnonymous]
        [Route("api/flower/Activate")]
        public DBStatus Activate(W_Flower oFlower)
        {
            CreateDataConnection();
            DBStatus result = oDataConnection.Activate(oFlower);
            return result;
        }
}
Run Code Online (Sandbox Code Playgroud)

我想如下实现Activate API

public DBStatus Activate(W_Flower oFlower)
{
   using (CreateDataConnection())
   {
       DBStatus result = oDataConnection.Activate(oFlower);
   }
   return result;
} …
Run Code Online (Sandbox Code Playgroud)

c# dispose

0
推荐指数
1
解决办法
66
查看次数