title: No module name 'sklearn.ensemble.forest'
body: <p>I am using this code to detect <code>face_spoofing</code></p>
  <pre class="lang-py prettyprint-override"><code>import numpy as np
  import cv2
  import joblib
  from face_detector import get_face_detector, find_faces
  
  def calc_hist(img):
      &quot;&quot;&quot;
      To calculate histogram of an RGB image
  
      Parameters
      ----------
      img : Array of uint8
          Image whose histogram is to be calculated
  
      Returns
      -------
      histogram : np.array
          The required histogram
  
      &quot;&quot;&quot;
      histogram = [0] * 3
      for j in range(3):
          histr = cv2.calcHist([img], [j], None, [256], [0, 256])
          histr *= 255.0 / histr.max()
          histogram[j] = histr
      return np.array(histogram)
  
  face_model = get_face_detector()
  clf = joblib.load(0)
  cap = cv2.VideoCapture(&quot;videos/face_spoofing.mp4&quot;)
  
  sample_number = 1
  count = 0
  measures = np.zeros(sample_number, dtype=np.float)
  
  while True:
      ret, img = cap.read()
      faces = find_faces(img, face_model)
  
      measures[count%sample_number]=0
      height, width = img.shape[:2]
      for x, y, x1, y1 in faces:
          
          roi = img[y:y1, x:x1]
          point = (0,0)
          
          img_ycrcb = cv2.cvtColor(roi, cv2.COLOR_BGR2YCR_CB)
          img_luv = cv2.cvtColor(roi, cv2.COLOR_BGR2LUV)
  
          ycrcb_hist = calc_hist(img_ycrcb)
          luv_hist = calc_hist(img_luv)
  
          feature_vector = np.append(ycrcb_hist.ravel(), luv_hist.ravel())
          feature_vector = feature_vector.reshape(1, len(feature_vector))
  
          prediction = clf.predict_proba(feature_vector)
          prob = prediction[0][1]
  
          measures[count % sample_number] = prob
  
          cv2.rectangle(img, (x, y), (x1, y1), (255, 0, 0), 2)
  
          point = (x, y-5)
  
          # print (measures, np.mean(measures))
          if 0 not in measures:
              text = &quot;True&quot;
              if np.mean(measures) &gt;= 0.7:
                  text = &quot;False&quot;
                  font = cv2.FONT_HERSHEY_SIMPLEX
                  cv2.putText(img=img, text=text, org=point, fontFace=font, fontScale=0.9, color=(0, 0, 255),
                              thickness=2, lineType=cv2.LINE_AA)
              else:
                  font = cv2.FONT_HERSHEY_SIMPLEX
                  cv2.putText(img=img, text=text, org=point, fontFace=font, fontScale=0.9,
                              color=(0, 255, 0), thickness=2, lineType=cv2.LINE_AA)
          
      count+=1
      cv2.imshow('img_rgb', img)
      
      if cv2.waitKey(1) &amp; 0xFF == ord('q'):
              break
  
  cap.release()
  cv2.destroyAllWindows()
  </code></pre>
  <p>I am using the version <code>0.24.0</code> for <code>scikit</code> and I am on Python 3.8 to use <code>tensorflow</code></p>
  <p>But I get the error:</p>
  <blockquote>
  <pre><code>Traceback (most recent call last):
    File &quot;C:/Users/heman/PycharmProjects/ProctorAI/face_spoofing.py&quot;, line 29, in &lt;module&gt;
      clf = joblib.load('models/face_spoofing.pkl')
    File &quot;C:\Users\heman\PycharmProjects\ProctorAI\venv\lib\site-packages\joblib\numpy_pickle.py&quot;, line 585, in load
      obj = _unpickle(fobj, filename, mmap_mode)
    File &quot;C:\Users\heman\PycharmProjects\ProctorAI\venv\lib\site-packages\joblib\numpy_pickle.py&quot;, line 504, in _unpickle
      obj = unpickler.load()
    File &quot;C:\Users\heman\AppData\Local\Programs\Python\Python38\lib\pickle.py&quot;, line 1212, in load
      dispatch[key[0]](self)
    File &quot;C:\Users\heman\AppData\Local\Programs\Python\Python38\lib\pickle.py&quot;, line 1528, in load_global
      klass = self.find_class(module, name)
    File &quot;C:\Users\heman\AppData\Local\Programs\Python\Python38\lib\pickle.py&quot;, line 1579, in find_class
      __import__(module, level=0)
  ModuleNotFoundError: No module named 'sklearn.ensemble.forest'
  
  Process finished with exit code 1
  </code></pre>
  </blockquote>
  <p>I think I need to use the previous version of <code>scikit</code> (<code>0.19.1</code>) but I get the error: C++ build tools required. I don't know how to install these tools as I am in a virtual environment, they are already installed in my laptop.</p>